you can see the list of such bindings by:
For Xterm i can configure at launch time:
XTerm.*ttyModes: rprnt ^-
for rxvt: you have to recompile :(
#ifndef CRPRNT # define CRPRNT '\024' /* ^R mmc: i prefer ^R in shell! let's try with ^T */ #else #warning "mmc forces CRPRNT!" #undef CRPRNT # define CRPRNT '\024' /* ^R mmc: i prefer ^R in shell! let's try with ^T */ #endif
Since rxvt-unicode coders couldn't understand this issue (see another heated discussion), i try to explain more:
Terminal emulator, let's call it xterm, and shell are connected with a PTY. Both programs can configure it, via ioctl.
PTY is implemented in kernel, scans the byte stream and implements some rewriting (transcriptions).
To avoid such rewriting, any end of the connection (both xterm & shell) must configure it (sort of STTY).
Xterm constructs the PTY. If it does not configure it immediately (before sending first keystrokes), you might already lose. So, it's sometimes necessary to check, that it doese what you need.
I want Control-R to work reliably, so i want the xterm to configure.
ttyctl -u stty rprnt '^T' ttyctl -f