X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=FAQ;h=9d29335ea15555631f2408d4d3a18f0dbad3f58f;hb=1c1621da699adae49a4344b145f856dacb57270c;hp=b6241454860f40139ecc1844770d5367fe871c79;hpb=5facd29f75401891fbac9c83d64c684bdb8f7c39;p=st.git diff --git a/FAQ b/FAQ index b624145..9d29335 100644 --- a/FAQ +++ b/FAQ @@ -37,4 +37,59 @@ back mode aka “copy mode”, it’s C-a ESC. You probably want defscrollback [0] http://en.wikipedia.org/wiki/GNU_Screen [1] http://en.wikipedia.org/wiki/Tmux -- +Why doesn't the Del key work in some programs? + +Taken from the terminfo manpage: + + If the terminal has a keypad that transmits codes when the keys + are pressed, this information can be given. Note that it is not + possible to handle terminals where the keypad only works in + local (this applies, for example, to the unshifted HP 2621 keys). + If the keypad can be set to transmit or not transmit, tive these + codes as smkx and rmkx. Otherwise the keypad is assumed to + always transmit. + +In the st case smkx=\E[?1h\E= and rmkx=\E[?1l\E>, so it is mandatory that +applications which want to test against keypad keys, have to send these +sequences. + +But buggy applications like bash and irssi for example don't do this. A fast +solution for them is to use the following command: + + $ printf "\033?1h\033=" >/dev/tty + +or + $ echo $(tput smkx) >/dev/tty + +In the case of bash readline is used. Readline has a different note in its +manpage about this issue: + + enable-keypad (Off) + When set to On, readline will try to enable the + application keypad when it is called. Some systems + need this to enable arrow keys. + +Adding this option to your .inputrc will fix the keypad problem for all +applications using readline. + +If you are using zsh, then read the zsh FAQ +(http://zsh.sourceforge.net/FAQ/zshfaq03.html#l25): + + It should be noted that the O / [ confusion can occur with other keys + such as Home and End. Some systems let you query the key sequences + sent by these keys from the system's terminal database, terminfo. + Unfortunately, the key sequences given there typically apply to the + mode that is not the one zsh uses by default (it's the "application" + mode rather than the "raw" mode). Explaining the use of terminfo is + outside of the scope of this FAQ, but if you wish to use the key + sequences given there you can tell the line editor to turn on + "application" mode when it starts and turn it off when it stops: + + function zle-line-init () { echoti smkx } + function zle-line-finish () { echoti rmkx } + zle -N zle-line-init + zle -N zle-line-finish + +Putting these lines into your .zshrc will fix the problems. +--