Hacker News new | ask | show | jobs
by YeGoblynQueenne 2772 days ago
What I would like is a set of characters and a font that I could use to enter immediately readable math formulae into my text editor, so that I can take quick notes at a conference, or whenever.

I can already do it, to some extent, for instance, this is the summation equation from page 5 in the pdf above:

             ₙ   ⎛n⎞
  (a + b)ⁿ = ∑   ⎜ ⎟ aᵏbⁿ⁻ᵏ
             ᵏ⁼⁰ ⎝k⎠
               
But, the scale is off (the summation is too small) and the characters are a mix of sub- and super-scripts and modifiers (in other cases, diacriticals), and multiple characters in the case of the long parentheses. I have to go hunting each of those characters down every time I want to use them, because I'm never sure exactly what characters are available. And even when I do, I still have to look them up most of the time, because of course I can't remember the unicode number for Modifier Letter Small k off the top of my head every time I need it (although by now I've learned the ones for super/subscript i and n by heart, mostly)

Worse, there is basically only one free monospaced font that will display all of those characters (DejaVu Sans Mono) and even that doesn't cover all the symbols I might want to use. For instance, I use the "entails" symbol a lot and that renders as a ⊨ in DejaVu Sans Mono, so I have to put it togehter with what I got: |= or \= for the negative.

Each of the methods discussed in the pdf above (as far as I've read in it, which is not too far) are far from ideal. They're all markups, so they all require at least some mental rendering. Why can't I have a script that lets me write each special symbol as one character, or at worse, a few of them like for the large parens, above?

____________________

Edit: And you'll need to set your broswer's font to a monospaced font to see the equation above properly :/

1 comments

> They're all markups, so they all require at least some mental rendering.

Unicode maintains the position that plain text is unsuitable for this sort of thing and markup languages are preferred. That's also why there are no "formatting" modifiers except in cases where the result actually has different semantics that are important to distinguish (cf. RTL and LTR override). Overall I'd say Unicode does a fairly good job keeping too weirdness out of the standard. Emoji are obviously a much-contended addition, albeit one that already had a history of existence and widespread use in plain-text. And while you find all symbols needed for math rendering in Unicode, some of the weirder ones sometimes came from older character encodings and their existence does not mean that full math markup should be part of Unicode.

Eh, I do still wish super/subscript characters in unicode were a bit more thorough. Several times a day I randomly remember the fact that every lowercase letter in the English alphabet except q has a unicode superscript character, and every single time it ruins my day.
My problem is still with the fonts- I can't find one that even has all of (i,j,k,x,y,m,n,p,q,r) as both super- and sub-scripts. I end up either using capitals or just sucking it up and writing X_i^r or something.
>> Unicode maintains the position that plain text is unsuitable for this sort of thing and markup languages are preferred.

Well, I think that's an unreasonable position. The most intuitive way to enter mathematical text with a keyboard is to enter the symbols you want to enter, directly, as characters. I mean, nobody asks me, as a Greek speaker, to enter (hypothetical markup) \{greek_letter_xi} for χ or \{greek_letter_ypsilon} for υ, etc, thank the gods. Why do I have to use markup for the simplest things, like fractions and exponentials?

All symbols for math may be in Unicode, but there is no font supporting all of them. It's not Unicode that's at fault here, of course.