1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-16 00:01:05 -08:00
emacs/lisp/eshell
Jim Porter a37df90276 Treat escaped newlines in Eshell as the empty string
This fixes a regression introduced during Emacs 29's development.

* lisp/eshell/esh-arg.el (eshell-parse-argument): Handle
'eshell-empty-token' as the result of an argument-parsing hook.
(eshell-parse-argument-hook): Document 'eshell-empty-token'.
(eshell-parse-backslash): Return 'eshell-empty-token' when
encountering an escaped newline.

* test/lisp/eshell/eshell-tests.el (eshell-test/escape-nonspecial)
(eshell-test/escape-nonspecial-unicode)
(eshell-test/escape-nonspecial-quoted)
(eshell-test/escape-special-quoted): Move from here...

* test/lisp/eshell/esh-arg-tests.el (esh-arg-test/escape/nonspecial)
(esh-arg-test/escape/nonspecial-unicode)
(esh-arg-test/escape-quoted/nonspecial)
(esh-arg-test/escape-quoted/special): ... to here.
(esh-arg-test/escape/special, esh-arg-test/escape/newline)
(esh-arg-test/escape-quoted/newline): New tests.

* doc/misc/eshell.texi (Arguments): Explain escaping logic in more
detail (bug#59622).
2022-12-07 21:39:07 -08:00
..
em-alias.el
em-banner.el
em-basic.el
em-cmpl.el
em-dirs.el
em-elecslash.el
em-extpipe.el
em-glob.el
em-hist.el
em-ls.el
em-pred.el
em-prompt.el
em-rebind.el
em-script.el
em-smart.el
em-term.el
em-tramp.el
em-unix.el
em-xtra.el
esh-arg.el
esh-cmd.el
esh-ext.el
esh-io.el
esh-mode.el
esh-module.el
esh-opt.el
esh-proc.el
esh-util.el
esh-var.el
eshell.el