
Draw a math symbol and get the corresponding LaTeX code - MartinMond
http://detexify.kirelabs.org/classify.html
======
tdedecko
Just showed this to a math PhD grad student. Her eyes immediately lit up. She
instantly determined that who ever made this, is in fact a genius.

Great idea and great implementation. I have seen so much LaTeX frustration.
This will definitely ease a lot of pain.

~~~
scott_s
I got a similar reaction from a physics postodc.

------
scott_s
Great idea. It got my attempts and an integral and delta right off, but I had
to try a few times with a lower-case sigma.

edit: It allows you to submit training examples, which is a great idea. Just
did two for lower-case sigma.

~~~
nopassrecover
Wow it even picked up a backwards lambda as lambda.

~~~
burke
I remember in my first year statics class, we decided a backwards lambda is
called "Rhonda".

~~~
eru
Why?

~~~
burke
I've wondered that sometimes. I think it's because a lambda opens to the left,
and starts with "l". Rhonda opens to the right, and is a similar word starting
with "r". It's not supposed to make sense; it just cracks me up :P

------
gjm11
Missing feature: the ability, after training a symbol, to click a button whose
meaning is "Whoops, I didn't mean to do that". (I gave it some training
examples for a couple of arrow-type symbols. I forgot to click to switch from
one sort of arrow to the other. It now has a left-pointing arrow as a training
case for a right-pointing arrow symbol. Or maybe the other way around; I
forget which.)

Of course that was an utterly boneheaded mistake. But most people -- even
among the likely users of this thing -- are boneheaded occasionally.

(Looking at the source, it seems that un-training would be quite easy; the app
is doing nearest-neighbour classification, and what it stores is just all the
examples it's been given.)

------
dmhouse
A brilliant idea! Would love to see a blog post overviewing how it works.

~~~
kinghajj
Maybe it just uses a CAPTCHA solver to get a list of likely characters?

~~~
greendestiny
Well hopefully the author of this will give a real summary, but I had a quick
squiz at the code at its nothing like a CAPTCHA solver.

Basically its a nearest neighbour classifier based on turning the actual
stroke data in sets of equally spaced points after being centred and scaled.
The direction between points is recoded as compass directions (so sequences of
N,E,NE). These strings are matched against the training data to find the
closest matches.

------
gz
This might be nitpicking but I feel like the "Clear" button is misplaced.
There must be another position for it that allows me to quickly reset and
start drawing another character. Come to think of it, it would be great if
there was a key for it. Click and drag with the mouse, reset with a keystroke.
Almost like playing a first person shooter!

~~~
kirel
That is actually a good Idea. Thanks for the suggestion. :)

------
lutorm
This is awesome, and it works. My only quibble is that it doesn't seem to
handle accented characters, ie it finds \aa, presumably because that's a
single symbol, but it doesn't find \"{a} and it doesn't even seem to show up
in the training list.

------
cellis
Suggestion: turn off the ajax that auto-submits as soon as I "lift up" my
pencil. Alot of symbols require more than one stroke.

Instead just give me a "done" button.

~~~
rkowalick
I definitely agree with this. I tried for several minutes to get it to
recognize pi, Pi, product, or coproduct. \oint isn't easy either...

and good luck with /leq ...

~~~
andreyf
\leq and \pi work consistently now, just trained it to do \geq, and also did
\otimes and \circledast. Be careful what you say about it, it looks like a
fast learner ;)

~~~
wlievens
HN should autoformat tex symbols, because I have no idea what \oint is, by
heart.

------
lunchbox
It would be awesome if this were integrated into a LaTeX editor, so I could
(e.g.) click a "draw" button in the toolbar. Then I'd get a little drop-down
canvas, and when I get the suggestions back from the server, I could click on
the right macro, and it would be automatically inserted into my diagram.

------
pbhj
No surface integrals!? (see eg
<http://en.wikipedia.org/wiki/Divergence_theorem>, the one with the circle
showing integral over the boundary surface, there's a triple version of that
too).

------
akho
Have you guys seen Windows 7's math input thingie? It does the same thing for
formulas (as opposed to symbols) and MathML. I was amazed to see this in a
default install of a Microsoft OS.

------
netweirdo
<http://img32.imageshack.us/img32/8223/picture5vdg.png>

~~~
TriinT
There's no LaTeX symbol for "+".

~~~
JacobAldridge
Yes, noticed this also for the Ampersand symbol. LaTeX (which I'd not
previously been familiar with) must have a specific purpose, which seems great
and appears to be made greater by this nifty tool.

~~~
xel02
LaTeX is a typesetting program (related to TeX which was made by Knuth). Its
quite popular in academia (sciences at least) because it handles equations
really well.

Its analogous to a markup language in that it is not a WYSIWYG typesetting
program.

~~~
eru
LaTeX is also useful [1] for controlling Mars rovers. See page 5 of the
current Monad Reader (<http://www.haskell.org/sitewiki/images/8/85/TMR-
Issue13.pdf>).

[1] OK, not actual useful, but it can be done.

------
tybris
That's one of the most useful tools I've seen in a long time. Especially being
a non-native English speaker this is always a pain.

------
NonEUCitizen
works on firefox, but somehow on safari it didn't detect mouse (trackpad)
button up.

~~~
harpastum
My Macbook's trackpad works just fine in safari 4.

------
agravier
Pople who couldn't get somehting to work can click on "Symblos" and train it.

------
zandorg
I couldn't get Pi to work (like a little hut).

~~~
dmhouse
Works perfectly for me now. Maybe the training's working!

~~~
zandorg
Works now.

------
zackattack
I would love if you could get it to also interpret equations...

------
321abc
A while back I thought of doing the same thing for Unicode characters... am I
a genius too?

