Sacrificing upsilon

Another build, v1.92 build 3, is now downloadable from the homepage. This is another debug build with only slight improvements. Better to say, I will need to demonstrate that the implemented changes are indeed improvements.

First, there was a bug that could crash the software if the backspace key was used in the quick-type mode to delete a line wrapper. Several other bugs and annoyances were also corrected… There are some differences in keyboard handling, specifically in Greek letter typing. I will explain in more details, if nothing else then only to have it written down somewhere.

In Math-o-mir, you can use double strokes to generate Greek letters. But ever since I switched to the double-stroke method, I am experiencing difficulties typing plain text. Here is a list of issues (some of them also take part in the math-typing mode):

  1. Some words start with a double letter (eel, aardvark…), and even many more words contains double letters within them. As a result, any double-letter typed within a word will not be converted to Greek letter. For example, when you start typing ‘aardvark’ the ‘aa’ will be converted to the alpha symbol, but as you continue to type ‘rdvark’ the alpha symbol will revert back to ‘aa’. Fine.
  2. Some languages might have a single word containing only a double-letter. I know no such word in any language, but who knows. This would be a difficult situation because Math-o-mir would not be able to tell if user wanted to type a Greek symbol or a two-letter word… That is why double strokes are timed and you should double-stroke relatively quickly to generate Greek symbols. If a two-letter word is needed instead, you can type it slowly. (Both things are annoying: the need to type Greek symbols quickly and the need to type a potential two letter word slowly.)
  3. I lied – I know a two-letter word that has two identical letters. It is ‘mm’ (millimetre). In fact, a mathematician can came up with any two-letter variable name including aa, bb, cc … or whatever. That is why I cannot just ignore such two-letter words. So I implemented a not-very-perfect solution to triple-stroke letter and revert it back to double stroke (still faster than to type it slowly). For example, if you want to type ‘bb’ you can quickly type ‘bbb’ to revert the beta symbol into bb… Another example, you need to type a variable called Vcc (where ‘cc’ is in the index): V <spacebar held> c c c <spacebar released>. Huh. Huuuhuuh…. Not a nice solution, but it works. Do you think that this solution is good enough to be used in all cases so that I can stop timing the double strokes and just convert them to Greek letters invariably of the typing speed? Damn millimetre! Who wants to type mmm instead of mm?
  4. But how do you type micrometre? mmm? (first two ‘mm’ are to generate the Greek mu letter). No, it wont work… Here is my solution that I implemented in this version. The Greek mu letter can now be generated by ‘uu’ double-stroke. Then you can type micrometre as ‘uum’. As you can see I sacrificed the Greek upsilon symbol. The only way to make the upsilon now is to use the \upsilon (or \Upsilon) command. To make things easier, I also implemented \ups (\Ups) to do the same. Fortunately the lowercase upsilon is rarely used.
  5. Still I retained the mm keystroke and it still generates the mu letter. The big question is should I discontinue the ‘mm’ keystroke for mu letter generation? By doing so, you would be free to type the millimetre in a normal way. The problem is that inexperienced users might get confused searching for the mu. (btw, note that ‘uu’ is so much easier to stroke than ‘mm’). In any case I will be discouraging ‘mm’ in favor of ‘uu’.
  6. There are some words that contain mixed letters, Greek and Latin. You don’t believe? A common example is uP (microprocessor, an abbreviation). So in this version I added several exceptions to the general algorithm that Greek letters are reverted back to double letters as you continue to type a word. Exceptions are: if the second letter is the uppercase while the leading Greek symbol is lowercase (as in the uP example above); if the second letter is ‘m’ or ‘g’ or ‘s’ while the first letter is the Greek mu letter (as in micrometer, microgram, microsecond); and if the first Greek letter is the uppercase Greek delta letter invariably of the second letter. I just hope there are not many words worldwide that start with ‘uum’, ‘uug’ and ‘uus’.
  7. Why the uppercase Greek delta letter has special handling? I wanted an easy way to type variables like deltaX etc. Now you can just type: DDx… This is far from perfect, because what if you want to enter a word that actually starts with DD? For example, DDT, DDE, DDCMP and any of many other acronyms. In this case you need to type DDDT, DDDE, DDDCMP (or type it slowly) – very, very annoying. In addition, stroking ‘DD’ to generate Greek uppercase delta is not that handy… The right solution, that I don’t have yet, is to have a special keystroke that would generate Greek uppercase delta (equal in appearance as the one generated by DD, but different in behavior because it would stick to the variable that follows). But I cannot find a suitable keystroke (all keystrokes are taken already).
  8. Finally, how do you type kiloohm? kWW? It won’t work because WW is only converted to Greek omega if it is typed at the beginning of the word. I don’t have the solution for this. [To type a kiloohm in plain text you can either switch to math typing mode and type .kohm, or you can type ‘k WW’ (with space bar in between to generate ‘k’ and ‘omega’ separately) and then use Shift+Backspace to splice the two letters together.]
  9. Unrelated to Greek letters, there is another issue with plain-text typing. The usage of the underline character. In Math-o-mir the underline is used to generate variable index, so there are difficulties when you want to type something_like_that. To type the underline, you need to hit the underline key twice. Annoying as hell. I was thinking to disable the underline key as the index generator in plain-text typing mode. Undecided yet.

I wrote a long article to clear my mind. I am still not sure if the upsilon key is a good sacrifice. By the way, this version also implements the \varpi command so that you can generate the alternate Greek pi symbol.

Math-o-mir 1.92 build 2

Well, I made a slight upgrade, the build 2, and you can download it from here.

There was a bug that under certain circumstances caused crash if someone tried to open a .mom file by just clicking at the file (from Windows). In addition, Carlos H. Consoni reported a problem with internal calculator – results were not completely finished and the software would show something like 3 4/5 – a result that would be looking like a mixed fraction (while in fact, the result should be shown as 12/5). I hope this nuisance will be less common now… There are several other minor bugs corrected.

(The Math-o-mir software does not know mixed fractions. At the moment I have no plans to support it because I find this notation somewhat ambiguous… Or should I better quote Isaac Rabi: “Who ordered that?”)

I was working long and hard to improve the ‘Presentation mode’ rendering. Specifically the problem that font glyphs can only be integer number of pixels wide… But my progress is zero. I see no improvements and I am afraid I even made things worse. Again your old document might look slightly different when you open it in the new MoM version.

Math-o-mir 1.92 official release

And so… you can download the new Math-o-mir 1.92 from the homepage.

I was struggling very much to finish this release. My goal was to establish the Final and Definitive Keyboard Usage Scheme. I had plans to find the best possible keystroke arrangement and to never think about it again. But I failed miserably. My indecisiveness was legendary. And I am not sure what happened.

But we still have some keyboard news – I think for the better.

  • To enter a measurement unit, start typing it with the period (dot) key. For example, to enter 10.3kg you can type Why? It’s fast and general – the software does not need to have the list of all units. You can, for example, enter .myfreakingunit

This is it. The invention that measurement units can be typed by starting them with the period (dot) key is the coolest invention in this release. Related to it, there are some additional keyboard readjustments.

  • To execute the Autocomplete, use the comma key instead of the period (dot) key.
  • To paste from Auto-clipboard, use the Spacebar+period instead of the Spacebar+comma (or you can still use the Insert key).
  • To enter degree-of-arc you can type .deg or .”’ or just type the apostrophe (prime) three times behind a number: 37.3”’
  • To enter degree-of-Celsius you can type .degC or .’C or just type ‘C behind a number: 23.3’C
  • To enter the ohm symbol (resistance unit), type .ohm

Of course, there are several other keyboard-related changes. Some of them are dubious so I hope I will hear from you how you like them.

  • Shift+Backspace can be used to splice single-letter variables into a multi-letter variable. If you type a b c and then hit the Shift+Backspace two times, variables a, b and c will join into one variable abc… Much more useful than you might think.
  • If you start typing digits behind an already existing number, these digits will be appended to the existing number
  • After you create a function, you can delete its argument box by hitting the Del key (the Enter key can still be used for the same)
  • The Enter key will not wrap a text line if the line is inside a table cell. Instead, the cursor will jump into the next cell. To wrap the text line, you should use Alt+Enter keystroke. This is the dubious one.
  • Usage of Del and Backspace keys is a bit different in tables/matrices. It is not possible to delete content of neighboring cells any more.
  • Symbols %, $ and ? are always cast in upright font when typing math
  • Say you started a new equation box and toggled the typing mode to plain-text. If you now move the empty box around (using cursor keys) the plain-text mode will persist.

Only now, I am revealing another ‘big’ news: by default Math-o-mir will use serif italic font when you type mathematics. I decided to switch from upright sans-serif to italic serif in order to better distinguish between uppercase i and lowercase L. If you are an ‘old’ user you might not see any difference because Math-o-mir will import your current settings instead to force factory defaults.

Finally, let me conclude the what’s new list:

  • I reworked the font-handling user interface. The new one is, I hope easier to understand. You can now choose from 8 uniform and one mixed font sets. Here is how the interface looks now:



  • The maximum number of guidelines is increased from 8 to 12
  • The ‘Headline‘ toolbar button now behaves in a different way. By pressing this button repetitively you can choose between three various headline sizes.
  • The watt-hour measurement unit is added
  • You can add line endings to opened lines/curves (ones without branches, vertices and loops). Just right-click at the curve and the pop-up menu will display options:


  • Curly brackets and section lines that you can quickly draw with the mouse cursor (without entering the drawing mode) are now thinner a bit
  • Height of parentheses is increased a bit. Integral sign shape is corrected. Round parentheses are thicker in presentation mode.
  • I renamed ‘General variable mode’ into ‘Prefer Multi-Letter variables‘ and I also renamed ‘Simple variable mode’ into ‘Prefer Single-Letter variables‘. I think it is clearer so.
  • In both these modes, Multi-letter and Single-letter, rules when typing indexes are identical now. There is a new menu option: Options->Keyboard->Use complex indexes that you can use to change typing rules when indexes are typed.
  • When the typing mode is inactive, you can quickly select an object by pointing your mouse pointer at it and hitting the Enter key (until now it was Alt+Spacebar keystroke that was used for the same).

Last, I removed the feature to automatically store all deleted text/math into the Auto-clipboard (implemented in v1.91). I found it to be annoying.

I updated the Users Manual without increasing number of pages – very proud. The size of the User Manual is terrifying already. I also updated the MoM’s ridiculously complex math-typing tutorial with some new examples.

The German version of Math-o-mir is also available from the homepage, but the translation suffers. I need to find a nice German gentlemen to help me with translation.

MoM 1.92 beta8 – a slight keyboard redefinition

I quickly uploaded the new Math-o-mir version, 1.92 beta8 – you can download from here.

I am struggling to redefine some keystrokes, but my progress is slow. Here is what I did up to now:

  • Hitting the comma key twice will not toggle the typing mode any more. Instead, you can now hit the backslash key twice to toggle the typing mode… I am not very satisfied with this solution and I am looking for something better. Various bizarre ideas come to mind, like using j+f combination to toggle the typing mode.
  • Instead of the period (dot) key to execute the Autocomplete functionality, you must now use the comma key to do the same… I am somewhat satisfied with this solution – it is fast enough. The dot key is now free so that you can type numbers like 0.4 even without typing the leading zero.
  • Instead of using Alt+Spacebar to quickly select objects (when the typing mode is not active) you should now use the Enter key. This is more handy, in my opinion, but might need some refinements.

There are some other news also:

  • The ‘general variable mode’ is renamed ‘prefer multi-letter variables’; the ‘simple variable mode’ is renamed ‘prefer single-letter variables’. I think that this is easier to understand.
  • Typing indexes in both variable modes (multi-letter and single-letter) is now implemented the same. If you used multi-letter variable mode then it could now be more difficult for you to enter math operators into variable indexes. I am aware of this and I am thinking to add a menu option: ‘Allow complex indexes’.
  • It is possible to delete function argument by using the Del key (when the argument is empty). Until now this was only possible using the Enter key but I figured that some users may find the Del key more intuitive.

Anyway I am not too unhappy… Only if I knew how your minds work, dear users.

Math-o-mir 1.92 beta 7

You can download the new 1.92 beta 7 from here.

I was mostly concentrated on bugs, so there are not many news. It is possible to type measurement units by starting them with the period key as it is easier to type the period than the backslash symbol on many keyboard layouts. For example, if you type .um this will turn into micrometer (micrometre) unit.

I also removed the recently implemented feature that any deleted math/text is automatically stored into a special clipboard buffer. I just didn’t like it. However, the popup menu invoked by Ins or Space+comma still exists and gives a short list of recently used objects.

There are some subtle changes regarding keyboard-handling. But I am still thinking about more substantial changes:

  • not using the apostrophe key to start typing multi-letter variables. The problem is that the apostrophe key can be also used for other purposes, like derivation symbol.  I am however unable to find any suitable replacement for the apostrophe key (thinking of the double quotation mark – at the moment used for exponents).
  • not using the dot (period) key for the Autocomplete functionality. The problem is that the dot is heavily overloaded already. Possible replacements are the Comma key or the Space+comma (both already used for other purposes)

I am very concerned with my inability to make decisions regarding keyboard usage.

Math-o-mir 1.92 beta6

Another small increment, Math-o-mir v1.92 beta6 installation file, can be downloaded from here.

  • it is easier to ‘touch’ indexed variables
  • quick-draw curly brackets and section lines are now drawn with a thinner line
  • height of parentheses is very slightly increased
  • in math-typing mode when mixed-formatting is used, symbols %, $ and ? will be cast in upright (non-italic) font.

I corrected several bugs. For example, there was an error when Math-o-mir tried to extract a common factor from expressions like 0.001x+0.1y, producing wrong result 0.001(x+10y). Another corrected bug caused GUI problems when very long formulas were used in function plotter.

I noticed that the lowercase ‘o’ is rarely used in math so I wonder if I could better use it for some special purpose – multi-letter variables perhaps? I am undecided about many features. For example I was thinking to discontinue using double comma as a method to switch between text and math typing modes – I could use the comma key instead of the period key to trigger the autocomplete functionality. Then decimal numbers could be started by the period key.

Few days ago I used Math-o-mir to make a simple analysis of a DC motor (the text is here). What I wanted to show are papers never intended to go public – informal, unstructured, only meaningful to its author – with background calculations. This is the type of work I created Math-o-mir for. The 1.66MB Math-o-mir file is here.

Big Bad Bug

It seems that in the latest beta I made somewhat embarrassing bug. It was not possible to enter uppercase Greek symbols using the long-double-key-hit method. I know that most users do not use this feature, but because it is a unique Math-o-mir feature I decided to react promptly.

Anyway, I am sorry for inconvenience. If you use the above mentioned feature, you can download the new beta from here.


Get every new post delivered to your Inbox.