GNU bug report logs - #27239
25.1; grep: current symbol substitutes part of grep-command

Previous Next

Package: emacs;

Reported by: Yuri Khan <yuri.v.khan <at> gmail.com>

Date: Sun, 4 Jun 2017 17:50:02 UTC

Severity: minor

Tags: confirmed

Found in version 25.1

To reply to this bug, email your comments to 27239 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#27239; Package emacs. (Sun, 04 Jun 2017 17:50:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yuri Khan <yuri.v.khan <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 04 Jun 2017 17:50:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Yuri Khan <yuri.v.khan <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.1; grep: current symbol substitutes part of grep-command
Date: Mon, 5 Jun 2017 00:48:30 +0700
$ emacs -Q

(setq grep-command "git --no-pager grep --no-index -Hn -E -e ") C-x C-e
(setq grep-use-null-device nil) C-x C-e

M-x grep RET

⇒ Run grep (like this): git --no-pager grep --no-index -Hn -E -e

<down>

⇒ Run grep (like this): git --no-pager '' --no-index -Hn -E -e


Observed behavior: ‘grep’ takes the last command from the history and
replaces the first argument that does not start with a hyphen-minus with
the current symbol. This is not documented anywhere.

Expected behavior: It would probably make sense to just generate the new
command by concatenating ‘grep-command’ and the current symbol, without
any heuristics to remove the search pattern from the previous command.



In GNU Emacs 25.1.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9)
 of 2016-12-13, modified by Debian built on lgw01-55
Windowing system distributor 'The X.Org Foundation', version 11.0.11804000
System Description:    Ubuntu 16.04.2 LTS

Configured using:
 'configure --build x86_64-linux-gnu --prefix=/usr
 --sharedstatedir=/var/lib --libexecdir=/usr/lib
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --with-pop=yes
 --enable-locallisppath=/etc/emacs25:/etc/emacs:/usr/local/share/emacs/25.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/25.1/site-lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --build x86_64-linux-gnu --prefix=/usr
 --sharedstatedir=/var/lib --libexecdir=/usr/lib
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --with-pop=yes
 --enable-locallisppath=/etc/emacs25:/etc/emacs:/usr/local/share/emacs/25.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/25.1/site-lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --with-x=yes --with-x-toolkit=gtk3
 --with-toolkit-scroll-bars 'CFLAGS=-g -O2 -fstack-protector-strong
 -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time
 -D_FORTIFY_SOURCE=2' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro''

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11

Important settings:
  value of $LC_MONETARY: en_RU.UTF-8
  value of $LC_NUMERIC: en_RU.UTF-8
  value of $LC_TIME: en_RU.UTF-8
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  shell-dirtrack-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
"git --no-pager grep -Hn -E -e "
Quit
M-g RET is undefined
user-error: End of history; no default available
Quit [2 times]

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message dired format-spec rfc822 mml
mml-sec password-cache epg epg-config gnus-util mm-decode mm-bodies
mm-encode mailabbrev gmm-utils mailheader sendmail mail-utils mail-parse
rfc2231 rfc2047 rfc2045 ietf-drums mm-util help-fns help-mode easymenu
cl-loaddefs pcase cl-lib mail-prsvr mailcap shell pcomplete thingatpt
grep compile comint ansi-color ring time-date mule-util tooltip eldoc
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list newcomment elisp-mode lisp-mode prog-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core frame cl-generic cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese charscript case-table epa-hook jka-cmpr-hook help
simple abbrev minibuffer cl-preloaded nadvice loaddefs button faces
cus-face macroexp files text-properties overlay sha1 md5 base64 format
env code-pages mule custom widget hashtable-print-readable backquote
dbusbind inotify dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 106114 9489)
 (symbols 48 20561 0)
 (miscs 40 49 171)
 (strings 32 22533 4220)
 (string-bytes 1 586703)
 (vectors 16 12930)
 (vector-slots 8 441229 4253)
 (floats 8 166 267)
 (intervals 56 264 0)
 (buffers 976 17)
 (heap 1024 43106 995))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27239; Package emacs. (Sat, 12 Dec 2020 12:55:02 GMT) Full text and rfc822 format available.

Message #8 received at 27239 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Yuri Khan <yuri.v.khan <at> gmail.com>
Cc: 27239 <at> debbugs.gnu.org
Subject: Re: bug#27239: 25.1; grep: current symbol substitutes part of
 grep-command
Date: Sat, 12 Dec 2020 13:54:36 +0100
Yuri Khan <yuri.v.khan <at> gmail.com> writes:

> $ emacs -Q
>
> (setq grep-command "git --no-pager grep --no-index -Hn -E -e ") C-x C-e
> (setq grep-use-null-device nil) C-x C-e
>
> M-x grep RET
>
> ⇒ Run grep (like this): git --no-pager grep --no-index -Hn -E -e
>
> <down>
>
> ⇒ Run grep (like this): git --no-pager '' --no-index -Hn -E -e
>
> Observed behavior: ‘grep’ takes the last command from the history and
> replaces the first argument that does not start with a hyphen-minus with
> the current symbol. This is not documented anywhere.

(This bug report unfortunately didn't get any response at the time.)

This behaviour is still present in Emacs 28.

> Expected behavior: It would probably make sense to just generate the new
> command by concatenating ‘grep-command’ and the current symbol, without
> any heuristics to remove the search pattern from the previous command.

Yes, I think so, too.  Anybody have an opinion here?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) confirmed. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sat, 12 Dec 2020 12:55:02 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 186 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.