[HN Gopher] Mathpad: A mathematical keypad for students and prof...
       ___________________________________________________________________
        
       Mathpad: A mathematical keypad for students and professionals
        
       Author : todsacerdoti
       Score  : 72 points
       Date   : 2025-05-25 10:24 UTC (1 days ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | eviks wrote:
       | Interesting idea! Though since it doesn't have a more ergonomic
       | keypad-like layout, but repeats the slanted mistake of default
       | keyboards, and requires software companion, what's the advantage
       | over adding math layers to your current keyboard, where you also
       | have access to more keys and modifiers?
        
         | asdf_snar wrote:
         | Seconded. This looks like a fun toy, but it solves a problem
         | that I don't have (and I believe I am the target audience).
         | Modern typesetters are very good (e.g., TexMacs). There is also
         | a limited set of characters by design, and I would have to
         | remove my hand from my keyboard only for those.
        
       | ubj wrote:
       | Love this idea, although I wonder if this can also be done with
       | QMK keyboards. I'll have to try setting up similar macros in my
       | Ergodox EZ.
        
       | WillAdams wrote:
       | Interesting idea, but back when I needed to enter such I use
       | DEC's compose.exe (while it still worked) and then Allchars:
       | 
       | https://sourceforge.net/projects/allchars/
       | 
       | or used a stylus and the drawing input in TeXview.app on my NeXT
       | Cube or https://www.inftyproject.org/en/software.html --- since
       | then, didn't Microsoft's Journal and various other stylus note-
       | taking apps get math support?
       | 
       | These days I just press the touch keyboard icon in the task bar
       | and use that to get special characters.
       | 
       | A further concern is one has to be entering things more than just
       | as a lineal stream --- superscripts and subscripts need to be
       | entered into, things need to be put over or under a fraction bar,
       | &c. --- do the hard-wired buttons actually accelerate things that
       | much?
       | 
       | Why not just use a programmable keypad such as a Streamdeck?
        
         | dr_kiszonka wrote:
         | I love the idea of a physical device (esp. with buttons) but I
         | get that it is not always practical. I wonder how much work it
         | would take to add math symbols to something like Touch Portal.
         | I haven't used it but read that many people do for controlling
         | various software, including DAWs (which can be latency-
         | sensitive).
         | 
         | https://www.touch-portal.com/
        
         | layer8 wrote:
         | WinCompose [0] is the spiritual successor to AllChars.
         | 
         | [0] https://github.com/samhocevar/wincompose
        
       | threatofrain wrote:
       | Y'all should try espanso for your latex needs.
        
         | JadeNB wrote:
         | > Y'all should try espanso for your latex needs.
         | 
         | I definitely understand why macro-expander programs can be
         | useful, but I'm always a bit puzzled about the idea of
         | combining them with a macro language like (La)TeX. Why
         | introduce two layers of macro indirection? Maybe it just
         | doesn't fit my use case, which doesn't mean it can't fit
         | anybody's; but, more intriguingly, maybe it would come to fit
         | my use case if I understood what it can add, so I wonder if you
         | could describe how it's useful to you.
        
           | red_admiral wrote:
           | > Why introduce two layers of macro indirection
           | 
           | TeX already has more than enough layers of macro indirection
           | :/
           | 
           | Try debugging an \makeatletter\expandafter and you're going
           | to have a bad day. I think the macro system is even Turing-
           | complete in some sense, certainly the number of times you
           | potentially need to run TeX to guarantee a complete output
           | reduces to the halting problem.
        
             | JadeNB wrote:
             | > > Why introduce two layers of macro indirection
             | 
             | > TeX already has more than enough layers of macro
             | indirection :/
             | 
             | Sure, I should have said "another layer of macro
             | indirection" instead of just two!
             | 
             | > Try debugging an \makeatletter\expandafter and you're
             | going to have a bad day. I think the macro system is even
             | Turing-complete in some sense, certainly the number of
             | times you potentially need to run TeX to guarantee a
             | complete output reduces to the halting problem.
             | 
             | So is the indirect (har!) answer that, for you, which I
             | know isn't the same as the person I was originally
             | responding to, introducing the new macro layer allows you
             | to replace some of the TeX-level indirection by a more
             | concretely understandable macro expander?
             | 
             | (By the way, you are right that TeX's macro system is
             | Turing-complete, not just incidentally but intentionally;
             | Knuth didn't plan to make it so, but did so by request from
             | Steele.)
        
       | stevejb wrote:
       | This is super cool. When I was doing a lot of math-related
       | typesetting I found that I got really fast with Emacs + AuCTeX. I
       | have no idea of the state of that project, but if you were fast
       | you go at nearly the speed at which you could write.
        
       | altairprime wrote:
       | For those interested in purchase rather than DIY, the above page
       | links to:
       | 
       | https://www.crowdsupply.com/summa-cogni/mathpad
        
       | zokier wrote:
       | it is frustrating that nowhere does it tell how it actually
       | works. generally keyboards can not send specific unicode
       | codepoints to host system, they only send scancodes that get
       | interpreted by operating systems keymap. But most keymaps do not
       | define any keys for these symbols, so there is something going on
       | here. Based on the docs, I'll guess it attempts to send a
       | _sequence_ of keypresses to trigger some compose mode (thus
       | requiring additional software on windows). I find such hacks
       | slightly frustrating because they are so fragile, they depend on
       | the keyboard predicting perfectly how the host will handle the
       | keypress sequences which obviously can break quite easily, e.g.
       | simply by switching layouts or having some timing /focus related
       | aspects.
       | 
       | I would really love to see new keyboard HID designed specifically
       | for modern advanced keyboards (qmk etc) where you wouldn't need
       | to resort on this kind of trickery. Or alternatively make the
       | input stacks of OSs more easily configurable with custom physical
       | layouts and modifiers etc instead of assuming that all keyboards
       | follow basic ISO/ANSI layout.
        
         | a5c11 wrote:
         | Maybe it's as simple as sending popular ALT+<unicode> sequence,
         | at least for Windows and Linux. But that's still hacky.
        
         | a5c11 wrote:
         | Ya, I was right. The driver is built around popular QMK
         | framework. Here you can read how it handles unicode input:
         | https://docs.qmk.fm/features/unicode.
        
         | glitchc wrote:
         | It's likely the driver handling the conversion. Which makes me
         | wonder, can I use the same driver to remap extra keys on my
         | existing QMK compatible keyboard?
        
       | agcat wrote:
       | This is pretty cool!
        
       | genpfault wrote:
       | Prior art: https://en.wikipedia.org/wiki/Space-cadet_keyboard
        
       | mcphage wrote:
       | Why no Aleph?!
        
         | layer8 wrote:
         | To infinity and beyond!
        
         | efavdb wrote:
         | Why no omicron!?
        
       | challenger-derp wrote:
       | Am eagerly anticipating the commercial availability of Mathpad.
       | 
       | At the moment I'm using Espanso, an open source software that
       | lets users map typed character sequences to unicode. So it's
       | possible to set things up in such a way that typing the character
       | sequence ";" "a" ";" makes Espanso replace the entire ;a; string
       | with the greek symbol alpha a.
       | 
       | Symbols like = that can kind of be "drawn" with common keyboard
       | characters "=" ">" is possibly nice to be mapped to the character
       | sequence ;=>; This is a personal preference inspired by Typst's
       | math notation design choice.
        
         | IngoBlechschmid wrote:
         | I like Vim's digraphs, which go in a similar direction. For
         | instance, Ctrl-K = > gives =, Ctrl-K a * gives a. An overview
         | of available digraphs is available at :digraphs.
         | 
         | Otherwise I like the Agda input method of Emacs, where \to
         | gives = and \alpha (or \Ga) gives a.
        
           | JNRowe wrote:
           | Somewhat predictably zsh also has a digraphs1 feature, via
           | the insert-composed-char function2. Supported characters can
           | be seen in source3, and beyond that there is the insert-
           | unicode-char2 function for when you need it.
           | 
           | I flit between regular compose key input and zsh/vim digraphs
           | in a way that makes no sense to me whatsoever. Compose ^1,
           | AltGr+1 or C-k 1S all kind of feel natural _to me_ , but the
           | advantage of the ZLE method is that you can also use it to
           | preview characters which can be useful if you want to test
           | something out while in another widget or find the hex value
           | to insert using some other tool.
           | 
           | 1 https://datatracker.ietf.org/doc/html/rfc1345#section-2.3
           | 
           | 2 https://zsh.sourceforge.io/Doc/Release/User-
           | Contributions.ht...
           | 
           | 3 https://github.com/zsh-
           | users/zsh/blob/master/Functions/Zle/d...
        
         | layer8 wrote:
         | I prefer using a Compose key [0] (remapped Caps Lock, for me),
         | which can be installed/configured on all major platforms.
         | Configuration is sharable via XCompose configuration files.
         | 
         | [0] https://en.wikipedia.org/wiki/Compose_key
        
       | Unearned5161 wrote:
       | It looks nice, but I'm not sure I'd jump ship from my snippets
       | setup I have with vim. At the end of the day it would be very
       | similar to a mouse hand movement and would probably take a long
       | time to get it as quick and comfortable as just typing "aa" for
       | alpha when I'm in math mode which I get into with "mk"
        
       ___________________________________________________________________
       (page generated 2025-05-26 23:00 UTC)