== An index of non-letter control characters In Unix and ASCII, bytes 1 through 26 are control-A through control-Z. But there are control characters outside that range: 0, 27 through 31, and 127. As a result of writing up [[my _.screenrc ../sysadmin/MyScreenrc]] I've become curious about what all of them are, so here's my handy chart: |_. 0 | Ctrl-@ | also Ctrl-`, Ctrl-space, Ctrl-2 in _xterm_ | 27 | ESC, Ctrl-[ | also Ctrl-5 in _xterm_ | 28 | Ctrl-\ | also Ctrl-4 in _xterm_ | 29 | Ctrl-] | also Ctrl-3 in _xterm_ | 30 | Ctrl-^ | also Ctrl-~, Ctrl-6 in _xterm_ | 31 | ``Ctrl-_'' | also Ctrl-/, Ctrl-7 in _xterm_ | 127 | DEL, Ctrl-? | also Ctrl-8 in _xterm_ The canonical representation of a control character is based on what Unix prints it as when you enter it (usually with Ctrl-V followed by the character, however you generated it). It turns out that _xterm_ will generate a number of these sequences with alternate Ctrl combinations as noted in the chart (which is probably not complete). Some of these _xterm_ alternates may be more convenient under some circumstances. Your mileage on actual serial terminals and other terminal emulators may vary, although _gnome-terminal_ and _urxvt_ match up for the primary control sequences and at least some of _xterm_'s alternate ways of generating them. Historically serial terminals could be very variable outside Ctrl-A through Ctrl-Z. Backspace traditionally sends Ctrl-H. Ctrl-\ is traditionally what _stty_ will report as 'quit', ie it sends SIGQUIT ('please die down with a core dump') to programs; this can make it kind of hard to work out just what ASCII code it represents. I resorted to entering it in _vi_, saving the file, and then using _od_ to dump the file. In case you ever need to know this, Ctrl-J is the real end of line character in terminal entry, aka _\n_; the tty driver maps Return (aka Ctrl-M aka _\r_) to it normally, but this can be disabled and then you can be stuck if, eg, you crashed a program that uses [['raw mode' CBreakAndRaw]] when you were trying to work out the ASCII number for Ctrl-\. Many but not all shells will accept Return (or a literal Ctrl-M) as a synonym even in this situation, so you can type commands, but any actual command that prompts you for something probably won't. (The specific tty mode flag this is controlled by is _ICRNL_, per CBreakAndRaw. It follows that '_stty icrnl_' will help restore a broken session, although you might as well go all the way to '_stty sane_'.) === Sidebar: the odd case of _konsole_ Konsole works just like _xterm_ with the sole exception that Ctrl-? does not seem to generate a Ctrl-? (it can be generated with Ctrl-8, though). Instead konsole appears to swallow Ctrl-? outright, which may have something to do with some sort of magic DEL handling it's doing.