News for hackers. Stuff that matters.
Re:Vim.wasm by no-such-address on Wednesday April 24, 2019 @10:35PM (#19744540)
This is incredible. I think I needed this about 40 years when typing on a small Teletype (non-ASR33) without an escape key.
Re:Vim.wasm by midgetjones on Thursday April 25, 2019 @04:57AM (#19746246)
The reason is interesting as well. Paraphrasing from this blog post[0]

When you format the ASCII table in four columns, you can see `ESC` and `[` on the same row. Holding `CTRL` essentially ~lops off the first three bits~ subtracts 64, resulting in `ESC`

   ...
   ...
   0011000 CAN    0111000 8    1011000 X    1111000 x
   0011001 EM     0111001 9    1011001 Y    1111001 y
   0011010 SUB    0111010 :    1011010 Z    1111010 z
   0011011 ESC    0111011 ;    1011011 [    1111011 {
   0011100 FS     0111100 <    1011100 \    1111100 |
   0011101 GS     0111101 =    1011101 ]    1111101 }
   0011110 RS     0111110 >    1011110 ^    1111110 ~
   0011111 US     0111111 ?    1011111 _    1111111 DEL

[0] http://www.catb.org/esr/faqs/things-every-hacker-once-knew/
Re:Vim.wasm by jcr1488 on Thursday April 25, 2019 @05:31AM (#19746407)
> Holding `CTRL` essentially lops off the first three bits

No, it inverts the 7th bit (or subtracts 64).

The Linux `ascii(7)` man page has a similar table, but with 2 columns. The first 32 control characters listed there have their "caret notation" character in the opposite column.

Re:Vim.wasm by nothrabannosir on Thursday April 25, 2019 @06:29AM (#19746655)
Is this why the symbol for Ctrl is also commonly the symbol for xor?!
Re:Vim.wasm by jcr1488 on Thursday April 25, 2019 @06:41AM (#19746722)
I'm not sure. I think the caret is just a prefix to make it distinguishable from the normal letters.

It is the reason why Ctrl+i in a terminal is the same as Tab though. Likewise for Ctrl+m == Enter.

Re:Vim.wasm by midgetjones on Thursday April 25, 2019 @06:16AM (#19746609)
Thanks! Listen to this person ^