End / Home keys don't work in Terminal

From Leo's Notes
Last edited on 1 September 2019, at 06:22.

If some of your keyboard keys don't work in the terminal, chances are, your inputrc file isn't configured to handle your keys or you misconfigured a setting in PuTTY.

Solution[edit | edit source]

Set the Home and End keys to Standard

If you are using PuTTY, ensure that your 'Home and End keys' is set to 'Standard'.

  1. Open PuTTY
  2. Click on 'Terminal -> Keyboard' in the left hand Category tree
  3. Set 'The Home and End keys' to 'Standard'

Ensure that you have /etc/inputrc contains:

# do not bell on tab-completion
#set bell-style none

set meta-flag on
set input-meta on
set convert-meta off
set output-meta on

# Completed names which are symbolic links to
# directories have a slash appended.
set mark-symlinked-directories on

$if mode=emacs

# for linux console and RH/Debian xterm
"\e[1~": beginning-of-line
"\e[4~": end-of-line
# commented out keymappings for pgup/pgdown to reach begin/end of history
#"\e[5~": beginning-of-history
#"\e[6~": end-of-history
"\e[5~": history-search-backward
"\e[6~": history-search-forward
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[5C": forward-word
"\e[5D": backward-word
"\e[1;5C": forward-word
"\e[1;5D": backward-word

# for rxvt
"\e[8~": end-of-line
"\eOc": forward-word
"\eOd": backward-word

# for non RH/Debian xterm, can't hurt for RH/DEbian xterm
"\eOH": beginning-of-line
"\eOF": end-of-line

# for freebsd console
"\e[H": beginning-of-line
"\e[F": end-of-line
$endif