Package: emacs-el
Version: 1:26.1+1-3
Severity: normal
File: /usr/share/emacs/26.1/lisp/shell.el.gz

(I think that this is an Emacs bug, rather than a Debian packaging bug.
I am using Emacs 26.1, amd64.)

In shell-mode, the command history can get confused by bash's syntax for
fd redirection, e.g. by "command 2> filename", and sometimes inserts a
space between the fd and the ">".

Here is a minimal example.

  $ emacs -q -nw
  M-x shell<ENTER>
  echo 2> /dev/null<ENTER>
  !echo<ENTER>
  M-p [to get the previous command in the history]

and the *shell* buffer looks like:

  $ echo 2> /dev/null

  $ !echo
  echo 2> /dev/null   [so far, so good]

  $ echo 2 > /dev/null  [that spells trouble!]

The problem is the space inserted between the "2" and the ">", which of
course changes the meaning of the command.

-Sanjoy

-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 
'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.19.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), 
LANGUAGE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages emacs-el depends on:
ii  emacs-common  1:26.1+1-3

emacs-el recommends no packages.

emacs-el suggests no packages.

-- no debconf information

Reply via email to