Configuration Information [Automatically generated, do not change]: Machine: i486 OS: linux-gnu Compiler: gcc Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='i486' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i486-pc-linux-gnu' -DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I../bash -I../bash/include -I../bash/lib -g -O2 -Wall uname output: Linux turki 2.6.26-1-686 #1 SMP Fri Mar 13 18:08:45 UTC 2009 i686 GNU/Linux Machine Type: i486-pc-linux-gnu
Bash Version: 3.2 Patch Level: 39 Release Status: release Description: When retrieving a command from bash's history, emacs keybindings CTRL-E & CTRL-A do not move the cursor to the end and beginning of the retrieved command. CTRL+E moves the cursor to a point that is short of the end of command CTRL+A moves the cursor to a point that is within the bash prompt When the cursor is moved to a location within the prompt, an ensuing CTL+K erases not only the retrieved command, but also the part of the prompt that is to the right of the cursor. This was first noticed on a debian "lenny" system running the default 3.2.39 version of bash running in a color xterm, but was later reproduced on ubuntu 9.04 with bash 3.2.48 in gnome terminal. This was also verified to happen on the linux console - kernel 2.6.26. Repeat-By: $ export PS1="\[\033[0;41m\][$(date +%T)]...@\h:\w]\$\[\033[0m\] " [11:47:48][c...@turki:~]$ echo try as you may CTRL+R may (reverse-i-search)`may': echo try as you may ^ (cursor position) CTRL+E [11:47:48][c...@turki:~]$ echo try as you may ^ (new cursor position) CTRL+A [11:47:48][c...@turki:~]$ echo try as you may ^ (cursor now in prompt) CTRL+K [11:47:48][cjns (erases part of prompt) Note, that this does not occur when doing the (reverse-i-search) on "echo", "try", or "as" - it only occurs when searching for "you" or "may". Fix: Not fixes, but either of the following corrects the problem: 1. Removing the escape sequences from the prompt. 2. Switching the locale from UTF-8 (en_US.UTF-8) to ISO-8859-1 (en_US.iso88591).