Show HN: Mathpad – Physical keypad for typing math symbols
crowdsupply.comHere's something different than your usual fare: A physical keypad that lets you directly type math!
Ever tried typing mathematical equations in your code IDE, email, or on Slack? You might know it can be tricky. Mathpad solves this with dedicated keys for Greek letters, calculus symbols, and more. Press the ∫ key and get ∫, in any application that accepts text. It uses Unicode composition, so it works everywhere: Browsers, chat apps, code editors, Word, you name it. Basically, anywhere you can type text, Mathpad lets you type mathematics.
I built Mathpad after getting frustrated with the friction of typing equations in e.g. Word, and what a pain in the ass it was to find the specific symbols I needed. I assumed that a product like Mathpad already existed, but that was not true and I had to build it myself.
It turned out to be pretty useful! Three years of solo development later, I'm launching on Crowd Supply. One of the trickiest parts of this project was finding someone who could manufacture custom keycaps with mathematical symbols. Shoutout to Loic at 3dkeycap.com for making it possible!
Fully open source (hardware + software): https://github.com/Summa-Cogni/Mathpad Campaign: https://www.crowdsupply.com/summa-cogni/mathpad Project log: https://hackaday.io/project/186205-mathpad-the-math-keypad
That looks very cool. I wonder how hard it was to get those printed keycaps made.
Ideally you want access to everything without moving your hands off the keyboard. The DIY keyboard scene makes a lot of use of layered keymaps. It seems like the endgame for this kind of thing is not separate "keypads," but rather wider support, standardisation and adoption of multiple-layer keymaps. Half the problem is designing good maps and the other half is learning them. Sharing maps, and better software for learning/practicing the maps would help. Then you might need a few more keys to select layers. A minimum implementation might be adding a two thumb buttons below the space bar to select layers.
EDIT: inserted more text
> and what a pain in the ass it was to find the specific symbols I needed.
But that's exactly the same issue with the hardware solution - you can't use Ctrl+F to find by name and you can't see all the many symbols on the keyboard itself. You'd need a software solution to show a visual searchable "cheat sheet", and also you can map more mathy keys to an existing bigger keyboard, where entering some symbols will be way more natural, e.g., for greeks you can map most of them to different A and B latin keys instead of having both αβ on the same key. Similarly, you could do map ℤ to Z and ℕ to N, so these would be simpler to remember/input than using a dedicated keypad, so the printed symbols on the keypad aren't that useful anymore.
So, like a scaled down space-cadet keyboard. ;) Looks neat for people who write a lot of scientific papers.
With 3 modifier keys, this offers 8 potential modes. What's done with the other 2?
Why only 12 keys and 3 modifier keys? Granted, 6+ modifier keys of the SCK is probably 1 or 2 too many.
Also, I miss graphing calculators / CAS like the HP 48 where math symbols were (usually) easier-ish to access.
As an intermediate alternative between a hardware keyboard and a graphical symbol picker, I use an .XCompose file with contents that look like this:
I've used this for perhaps the last 10 years now and I don't think I could go back to working on a machine without configurable compose key functionality at this point.This. Using a Compose key [0] covers a vast range of input use cases and is eminently customizable. For Windows there is WinCompose [1]. For macOS there is [2].
[0] https://en.wikipedia.org/wiki/Compose_key
[1] https://github.com/SamHocevar/wincompose
[2] https://github.com/Granitosaurus/macos-compose
Compose functionality is absolutely awesome. I don't understand why it's not more widespread. I use it for all sorts of stuff, from emojis, to symbols, to diacretics. It's great!
$140, lol. How about just selling the keycaps for an existing numeric pad or even small mech keyboard, and that's only if the physical keys are really needed.
The main slowdown I face as an occasional TeX user is remembering the TeX names of less frequently used symbols. For that purpose there is detexify (draw the character and find the name, doesn't work all that well) but a popup graphical menu or (if you must) a phone app would be fine.
Low tech solution here. Found a cheat sheet and printed it and stuck it on the wall next to my monitor.
Low² tech solution here: just google it.
(Or use Unicode search extension for Raycast—like I do—which is fundamentally the same as googling, but with fewer key presses.)
my 2c
* the way unicode input works in qmk is pretty janky imho. this is not something you can plug into any random computer and expect to always work perfectly without doing any configuring.
* you can accomplish the same thing if you have qmk (or similar) based keyboard by throwing the symbols on another layer or whatever you prefer. for $140 you can get a whole keyboard.
the keycaps are a nice touch though
QMK won't allow you to search for the symbols, which is a big limitation since there are hundreds of them
Very cool. I've long wanted something that's a bit of a cross between a calculator and a numpad; something that could be used as a calculator or just to send symbols to the computer that are easier to type on such a device.
Question: the description says it has access to all the Greek alphabet letters but only the lower case ones are shown on the keypad: do you get (e.g. ∆) by using the shift key on the regular keyboard plus δ on the Mathpad?
I think this is super cool and intend to donate because I love the love and thought you’ve put into this. With that said, did you consider using something like an Elgato Stream Deck programmable control pad?
https://www.elgato.com/us/en/p/stream-deck
Thank you for the kind words. I did orginally consider using a programmable stream deck, but quickly realized that it would not be sufficient. My requirements were:
1) Over 100 symbols immediately accessible
2) Single-hand use
3) Small size
The elgato stream deck meets some of these requirements, but it would not have been possible to support the amount of symbols I wanted.
I do use an Elgato stream deck for entering Unicode symbols, and I think what's really needed in this space is a cross between a stream deck and the Mathpad: programmable keys with LCD key caps, and some shift keys to increase the number of available symbols. Then it could support configurable symbol sets.
How much faster is Mathpad than creating a per-document table of symbols with their Unicode numbers and/or latex values and copy/pasting until you remember the Ctrl-Shift-u nnnn sequence?
Not much faster if you only need a few symbols, and if you only work in one document. I used to make such tables for large documents before I created Mathpad.
Mathpad's killer feature is working anywhere you can type text, not only document editors. I've found it particularly useful when putting together technical presentations in Powerpoint, and when documenting the algorithms I write at work which are rather math and physics heavy.
Amazing project and glad to see something like this exits. While my current setup dosnt allow for this, if that ever changes and I start taking more latex notes I will be ordering one of these.
Thank you!
The killer feature of Mathpad is not LaTeX (although that is supported) - it's letting you directly type mathematical Unicode symbols practically anywhere you can type regular text.
Mathpad will remain available on Crowd Supply long after the campaign ends (albeit at a higher price), so just come back later when you need one!
In some circles "not typeset in LaTeX" is a strong smell, and not a pleasant one. Simple use of Unicode symbols will not overcome that.
1. Cool!
2. Why use a staggered layout? Because people are used to it? Counterpoint: the numpad is not staggered and people are easily able to use both parts of a normal keyboard)
1) Thank you!
2) The staggered layout has been carefully chosen to allow for single-hand use. The user must be able to press up to three keys at the same time (2 modifiers and 1 symbol key). The layout I settled on for Mathpad makes this as easy as possible.
Interesting. Perhaps the fingers do want to go at a slight angle so making it a good choice :)
they don't, lateral moves (especially diagonal) are the least ergonomic for the fingers, your numpad insticts are closer to reality, though the best would be to "stagger" vertically to reflect the difference in finger length
IMO a software-based search interface is cognitively nicer. I use way too many symbols, like i𐝒.