Package: bash
Version: 4.4-1
Severity: minor

Dear Maintainer,

bash 4.4-1 contains an allegedly regression wrt handling of ^W
(Control-w) in vi-mode.
After having red
https://lists.gnu.org/archive/html/bug-bash/2016-09/msg00018.html, the
obvious suspect seems to be

> 2.  New Features in Readline
...
> m. The default binding for ^W in vi mode now uses word boundaries
> specified by Posix (vi-unix-word-rubout is bindable command name).

I could not find any documentation about 'vi-unix-word-rubout'. Anyway
I'm not tagging this issue as 'upstream' as I haven't checked.

$ set -o vi
$ echo REMOVE maintain

With bash-4.3-15 I can recall and modify the line positioning the cursor
on the space between 'REMOVE' and 'maintain' and using ^W:

Esc, k, e, e, l, i, Ctrl-w 

With bash-4.4-1 this doesn't work (does nothing), and I have to position
the cursor on the start of the next word:

Esc, k, w, w, i, Ctrl-w, Ctrl-w

Anyway, it DOES work if I try to remove only part of the word (e.g.:
leaving the last E):

Esc, k, e, e, i, Ctrl-w

Where it really becomes nasty is in presence of non alphanum chars:

$ echo REMOVE .maintain

Positioning the cursor on the dot succeeds in removing the space but
then stop working:

Esc, k, w, w, i, Ctrl-w, Ctrl-w

OTOH, positioning the cursor on the char following the dot works (but in
this case removes space and dot together as if there are no word
boundaries):

Esc, k, w, w, w, i, Ctrl-w, Ctrl-w

Trying to modify a line like

$ ls /tmp/ /var/

with ^W can be frustrating depending on where you start from.

As from my limited tests, this issue does not seem affected by locale
settings.

Thanks,
Gian Piero.


-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.7.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)

Versions of packages bash depends on:
ii  base-files   9.6
ii  dash         0.5.8-2.3
ii  debianutils  4.8
ii  libc6        2.24-3
ii  libtinfo5    6.0+20160910-1

Versions of packages bash recommends:
ii  bash-completion  1:2.1-4.3

Versions of packages bash suggests:
pn  bash-doc  <none>

-- no debconf information

Reply via email to