diff options
author | Dmitry Gutov <dgutov@yandex.ru> | 2017-01-29 10:41:32 +0200 |
---|---|---|
committer | Dmitry Gutov <dgutov@yandex.ru> | 2017-01-29 23:01:42 +0200 |
commit | 8ba236e772b64d0bb021aa691bd7eacf4b7f3ae4 (patch) | |
tree | 9c6a6389da74bdb5cffe5b4c6ae56fe646bc5c67 | |
parent | 52feecd3c71716ca5dbade0e8e6ae2f8ebf46e54 (diff) | |
download | emacs-8ba236e772b64d0bb021aa691bd7eacf4b7f3ae4.tar.gz emacs-8ba236e772b64d0bb021aa691bd7eacf4b7f3ae4.tar.bz2 emacs-8ba236e772b64d0bb021aa691bd7eacf4b7f3ae4.zip |
Escape dash in xref rgrep regexp
* lisp/progmodes/xref.el (xref-collect-matches): Escape dash
in REGEXP if it's the first character.
-rw-r--r-- | lisp/progmodes/xref.el | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el index d8098c5a54a..a507755d42e 100644 --- a/lisp/progmodes/xref.el +++ b/lisp/progmodes/xref.el @@ -918,6 +918,10 @@ IGNORES is a list of glob patterns." (grep-compute-defaults) (defvar grep-find-template) (defvar grep-highlight-matches) + ;; 'grep -E -foo' results in 'grep: oo: No such file or directory'. + ;; while 'grep -e -foo' inexplicably doesn't. + (when (eq (aref regexp 0) ?-) + (setq regexp (concat "\\" regexp))) (let* ((grep-find-template (replace-regexp-in-string "-e " "-E " grep-find-template t t)) (grep-highlight-matches nil) |