3 ms·
Most modern keyboard layouts no longer map nicely to ASCII, except for one: Japanese. On the JIS keyboard layout, every single key* with an ASCII symbol flips a
by marcan_42 7y ago
Most modern keyboard layouts no longer map nicely to ASCII, except for one: Japanese. On the JIS keyboard layout, every single key* with an ASCII symbol flips a single bit when shifted (0x10 for codes < 0x40 and 0x20 for codes >= 0x40). It's called a bit-paired keyboard: https://en.wikipedia.org/wiki/Bit-paired_keyboard https://en.wikipedia.org/wiki/Bit-paired_keyboard
Interestingly, shift-0 would logically be a space character, and indeed on the JIS layout there is nothing printed above 0 (actually pressing shift-0 doesn't give you a space on modern OSes, it just gives you a 0, but you could map it to a space if you were so inclined).
* except that ¥ is where \ would be in ASCII, because Japanese charsets replaced \ with ¥. On the JIS layout, the \ label is next to _ (0x5f), which means it's filling the empty spot of 0x7f, which is otherwise a nonprintable DEL.