Math-o-mir 1.91 released

Well, I uploaded the official Math-o-mir 1.91 and you can download from the homepage. In this version I was tying to improve mouse handling, but of course, there are other improvements as well. In addition to the program itself, I also upgraded the manual and the typing tutorial… all downloadable from the homepage.

I implemented a new type of insertion point – the “newline insertion point”. This insertion point is displayed, as a green or blue vertical line, when you move your mouse pointer near the left edge, under the last line of a plain-text box or multi-line math box. You can click at it to start a new line, or you can place down something there… Until now you had to click at the end of the last line and then hit the Enter key to start the new line.

insertion_pointWhen any hand-drawing tool is selected and you move your mouse pointer above some math/text, insertion points will now be visible. But I am displaying them thin and pale. This way you know where characters will be placed if you use the quick-typing feature, but you are also aware that you cannot start the typing mode by mouse click (the mouse click will start drawing).

insertion_point2It is now possible to touch multiple objects by mouse click-and-drag action even if you are already carrying something with your mouse. Until now, to multi-touch objects while you carried something, you had to use the Shift key… In the example below we replaced the ‘2x+a’ with ‘2y’ using the mouse only: while carrying the ‘2y’ we pointed the arrow at ‘2’ clicked and dragged to ‘a’ to make the selection. Then we released the mouse button and clicked again to place the ‘2y’ over the selection.

multitouchWhile typing, if you delete something using the backspace key or the delete key, objects you deleted are stored into special auto-clipboard and you can later ‘paste’ them by using either the Insert key or the Spacebar+comma combination. This is an experimental feature and I hope it could prove useful while editing equations like in the following example: You wanted to enter ‘sin(x)=a+b’ but you forgot to hit the Enter key on time and as a result you actually wrote ‘sin(x=a+b)’… now, using the backspace, you delete the ‘=a+b’ part, hit the Enter key to exit the sinus function, and then hit the Insert key to paste the ‘=a+b’ to the place where it should be…. Anyway, It remains to be seen if there is any benefit from this feature.

Some other, less prominent, new features:

  • If you right-click at any color or line-width button inside the color box, the color/line-width of the last drawn object will be changed. This way you can quickly change line properties of a drawing if you forgot to did it before drawing.
  • When you paint lines, ellipses, rectangles… you can hold down the Shift key to force vertical/horizontal lines, circles, squares… But since now, you can also hold down the right-mouse button key for the same effect (that is, you hold both mouse buttons simultaneously). This way you don’t need to reach for the keyboard so often.
  • Even if you have ellipse or rectangle drawing tool selected, you can now still draw vertical/horizontal lines by just drawing a very thin ellipse or rectangle. If an ellipse or rectangle is only few pixels width, it will be degenerated into a line.
  • I increased inter-line spacing in multi-line text boxes for easier readability.
  • I added the ‘auto-resize’ option for the toolbox/toolbar size. If you, say, maximize the program window, the toolbox too will be enlarged.
  • Page-numbering is implemented. Only few options are available at the moment.

There are many bugs exterminated in this version. I hope not that many new ones introduced… I wish you a good luck using Math-o-mir, the charming note-taking tool for coolest engineers. Let me know how you manage.

Two days ago I was contacted by Maxim who found a bug in Math-o-mir symbolic calculator. Obviously Math-o-mir was not able to calculate quadratic equations ‘ax^2+bx+c=0′ where ‘a’ was neither 1 nor -1. I hope this is corrected in v1.91… Thanks Maxim!

Math-o-mir 1.91 beta6

The new beta6 can be downloaded from here.

This time I experiment with an “auto-clipboard” feature. The idea is that, as you edit the document, the software automatically stores some expressions into special (private) clipboard so that you can paste these expressions at some later time. The auto-clipboard can contain up to 3 expressions… Here is what gets automatically stored into the auto-clipboard:

  • expressions you ‘placed-down’ either from the toolbox or from some other source. This way you don’t need to access the toolbox every time you want to place the same symbol that you placed just a moment ago. This feature is not completely new, but is now more elaborate.
  • expressions you deleted using the backspace key or the delete key. This way you can just delete something (without using ctrl+x to cut it) and then paste it to some other place.

Note that this private auto-clipboard is a completely separate thing from the standard windows clipboard (Ctrl+X,C,V). To paste from the auto-clipboard, instead of the ‘Ctrl-V’ you need to use ‘Spacebar+comma’ (or alternatively the ‘Insert’ key) while the typing mode is active. When you hit the Spacebar+comma, the freshest expression from the auto-clipboard will be pasted – but if there is more than one expression stored in the clipboard, a semi-transparent menu will be also displayed where you can choose an alternative option (using a mouse, or using the keyboard down-arrow key).auto-clipboardThe menu is made semi-transparent not to distract you too much, and if you just continue to type it will go away. If you access the menu with the mouse or the ‘down-arrow’ key, it will become opaque.

In general, this is what I am trying to do:

  • say that you want to type something like: sin(x+y)=0.5
  • however you forgot to hit the enter key after the ‘y’ and so you typed something like: sin(x+y=0.5)
  • so you hit the backspace key 4 times to delete the ‘=0.5′ part (the MoM stores this into the auto-clipboard)
  • now you hit the enter key to exit the ‘sin(x+y)’ expression
  • finally, you hit the Spacebar+comma to paste the ‘=0.5′ part from the auto-clipboard

The experiment is to see if this can be useful in practice. There are several obstacles… First, the Spacebar+comma is not an easy keystroke to remember (but is easy to type). Second, if you hit the backspace/delete key too many times (say, one keypress more than actually needed) the software will store more than you wanted into the auto-clipboard and you will have to re-edit this after you paste.

In this beta I also tried to make the software aware when monitor resolution (or orientation) is changed to redraw itself properly. I hope this will work…. And for sure, some bugs are exterminated.

Math-o-mir 1.91 beta5

Well, the new beta5 version can be downloaded from here (781k).

This beta is somewhat selfish because some features are implemented only because I wanted to have them.

  • The keyboard-entry cursor stops blinking (and is pale-colored) when the software does not have the keyboard input focus. It happened to me many times too often to start typing into MoM just to realize that I am typing somewhere else.
  • To start the typing mode (and to do some other mouse-click operations, like ‘place-down’) you must mouse-click quickly now. If the mouse-click lasts for more than cca 300ms the operation will not be performed…. Too many times I tried to move and object or to select it with my mouse, only to start the typing mode because I did not aim correctly.
  • Similarly, you need a longer mouse-click, 100ms or longer, to paint a single point. (Note: the single-point painting is only possible with the line-drawing tool.) I guess that nobody uses this feature anyway so it is not a big drawback. On the other hand, I accidentally often mouse-clicked while holding the line-drawing tool and created many unwanted points all over my document. This is why I don’t like the touch-pad on my computer – it creates clicks when you only look at it.
  • It is possible to select the “Auto-resize” toolbox size now: View -> Toolbox and context menu -> Auto-resize. This way the toolbox size will change as you resize the main window. I actually did not implement this for myself, but I thought it could be useful to some people.
  • It is possible to draw horizontal and vertical lines even when you have rectangle or ellipse drawing tool selected: just draw a very thin rectangle/ellipse and it will be converted into a line. I think this could come handy sometimes because you don’t have to change the drawing tool so often.
  • The “vertical-spacing-adjust” feature now respects the grid (if the snap-to-grid is enabled). If you don’t remember, the vertical-spacing-adjust feature is when you mouse click-and-drag at the vertical ruler to create/reduce spacing between document elements. Until now the grid was not respected and objects would ‘fall off grid’ if this feature was used while the snap-to-grid was enabled.
  • For some time now it is possible to use the mouse for multiple pick-up operation. That is, it is possible to select more than one element of an equation by a simple mouse click-and-drag operation, and then to pick-up the selected elements by a mouse click. From this beta it is also possible to place down over multiple elements (overwrite) by similar mouse-only procedure: when you carry anything with the mouse, just mouse click-and-drag to select more than one elements, and then mouse-click to overwrite. (Until now, if you were carrying anything with your mouse, it was only possible to select multiple elements by using the shift key.)

I was trying to implement the /p command line option – printing from command line, but I am not sure if what I did is acceptable. For instance, I don’t know would it be better to close the software once the document is sent to printer or to leave it open (it stays open, at the moment).

I also changed and improved the feature from previous beta – adding a newline by a mouse click. Now this feature does not depend on guidelines any more, but is self-standing. A mark similar to an insertion point will be shown if you point your mouse pointer just below a left-bottom corner of an existing text field or an existing multi-line math field. You can click at this insertion point to start keyboard entry, you can place-down at this insertion point and you can quick-type at this insertion point.

I would like to mention several key problems where I don’t see an easy solution:

  • Typing Greek symbols (double-letter typing) interferes with the usual typing in some cases. Most notably, typing millimeters (mm) generates Greek mu (micro) symbol.
  • When the Arial font is used, there is no difference between lowercase ‘L’ and uppercase ‘I’. Using Times New Roman font would solve the difference between ‘l’ and ‘I’, but I am not sure about readability at low resolution. What do you think?
  • Typing measurement units is difficult, especially for non-common measurement units. I was thinking to provide a key (the ‘%’ key) to convert what you typed into a measurement unit. For example, if you type 10 k g m / s^2 % to be converted int 10 kg m / s^2. However I am not sure this is a good solution because I can only work this way with common measurement units (that are recognized by MoM).
  • Switching between math-typing and text-typing mode is still problematic. One often forgets to switch and enters more than few characters before realizes what he/she is doing – it must then delete and start over. I am searching for a way to quickly convert from text to math and vice versa. Found none.
  • When you draw something (a line, a rectangle, a curve… whatever), you can find that you did not preselect the right color and/or line size. There is no easy mouse-only way to select what you made and modify or even delete it – instead, you usually need to use the keyboard.

Math-o-mir 1.91 beta4

Hello… I uploaded the 1.91 beta4 and it can be downloaded from here. At this time there are only two new features:

  • A block of text (or even a multi-line block of math) can now be appended with a new line by a simple mouse-click. Just point your mouse pointer slightly below object’s lower-left edge – a guideline will appear. However, if you point close to the object, the guideline will not be yellow-colored but might be green-colored or blue-colored. If so, just click at the guideline and a new line will be added to the existing object… (Until now you had to click after the last word and then hit the enter key to start the new line)… This feature only works if guidelines are enabled and if the object is left-aligned.
  • Simple page numbering is implemented. You will find page-numbering options under ‘View->Page->Page numbering’. Only several options are available. The major disadvantage is that you cannot control margins yet.

Anyway, I hope I did not introduce new bugs. Let me know.

Bug found: quick-typing

I made a bug in previous beta so I had to quickly release this new beta3… Because of the bug it was not possible to use quick-typing feature to write down a plain text that starts with an uppercase letter.  If you use the quick-typing feature often, you better download again. Sorry for the inconvenience.

Math-o-mir 1.91 beta2

Few small improvements: v1.91 beta2

  • I ‘improved’ the way plain text is rendered when the presentation mode is enabled. I hope that the rendered text is now more readable than before. The inter-character spacing is now more uniform (on the expense of varying inter-word spacing). This might create some unwanted rendering effects as it takes some testing time to fine-tune.
  • At the beginning and at the end of a plain-text line I am now displaying insertion points a bit more distanced from the text than before. To make this possible I also had to add some more space (right and left margin) around text in a matrix/table cell. Thus, matrices/tables will be slightly wider than before.
  • The cursor-up keyboard key handling is slightly improved: if you hit it while the keyboard cursor is positioned at the first place under the root sign, the cursor will move into root ‘index’ field (if this field exists). Also, if the cursor is positioned at the first place in a variable index, it will be placed at the end of the variable.
  • When you want to use the quick-type feature to type some plain text you will do this by first hitting the spacebar key.  The difference is that when you hit the spacebar key, an empty ‘T’ object (a text placeholder) will not be created any more. Instead, the familiar green ‘T’ symbol will appear for a short time to inform you that you can now type plain text.

What I am thinking is: what if I don’t produce the famous “Save document changes?” message box every time one exits the Math-o-mir? What if I only show this option if user actually made some considerable work? What if I just save the document into a backup location and close the window when no considerable work was done?… The only reason I still did not implement such behavior is because I know that many users exploit this “Save document changes?” message box as a regular way to save the document.

Oh… and I want to thank Kevin for bringing some visitors to this site :)

Early beta, Math-o-mir 1.91

As always, when I start developing new version, I make early betas available because I am hoping for bug reports and comments. There are only few new features in this beta. You can download from here.

  • The region at the beginning/end of a line where you can point your mouse and highlight the insertion point is now enlarged. Thus, it should be easier to point-and-click in order to append text/math to existing lines.
  • Insertion points are now visible even in the drawing mode when you move your mouse pointer (pencil) over text/math. This way you should be able to use the quick-typing feature to edit existing text/math directly while still in the drawing mode
  • When rendering multi-line text, the between-line spacing is slightly increased for easier reading. Also, spacing between lines is now more even if lines contain superscripts/subscripts.
  • Double-quotation mark key is handled in a slightly different way now – in the plain-text typing mode it will not produce exponents when used after a multi-letter word.

I was thinking to use the % key as a transformation key to transform variables into measurement units. Still refining this idea.





Get every new post delivered to your Inbox.