Hacker News new | ask | show | jobs
by jstanley 943 days ago
I'm guessing it works out how many digits to expect for each codepoint by looking at the first digit (i.e. if it starts with a 1 then it has to be 3 digits, otherwise it is only 2).

Does this mean it's impossible to type a newline character, or a backspace, for example?

1 comments

You could dial 013 and 010.
Ah, so the logic is that if it starts with either a 0 or a 1 then you need to type 3 digits, otherwise 2? Nice.
No idea, I didn't build the thing, just suggesting how it could work. If you want to cover [extended] ASCII, then every first digit could indicate a one or two digit code, one and two also a three digit code. So one possibility would be to have three digits for first digits zero, one, and two and otherwise two digits. All single digit ASCII codes require two leading zeros and all two digits ASCII codes starting with one or two require one leading zero. You could of course also make everything three digits with leading zeros as needed, would be easier at the cost of more dialing. Or use a timeout, if no new digits arrives within a specific time, then a new character starts.
You both are 100% correct! Originally I was going to have a wait (say, no new digits after 3 seconds, mark the ascii character), but I figured just scrapping everything after 20 as an immediate character and anything under as a 3 digit one, it made typing a lot faster.