mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
Handle escaped characters in Eshell special references (e.g. buffers)
* lisp/eshell/esh-arg.el (eshell-parse-special-reference): Unescape escaped characters. * test/lisp/eshell/eshell-tests-helpers.el (with-temp-eshell): Restore current buffer after evaluating BODY. * test/lisp/eshell/eshell-tests.el (eshell-test/redirect-buffer) (eshell-test/redirect-buffer-escaped): New tests (bug#55204).
This commit is contained in:
parent
bb40507fed
commit
32ab756d82
3 changed files with 34 additions and 12 deletions
|
|
@ -114,6 +114,25 @@ e.g. \"{(+ 1 2)} 3\" => 3"
|
|||
(eshell-wait-for-subprocess)
|
||||
(eshell-match-result "OLLEH\n")))
|
||||
|
||||
(ert-deftest eshell-test/redirect-buffer ()
|
||||
"Check that piping to a buffer works"
|
||||
(with-temp-buffer
|
||||
(rename-buffer "eshell-temp-buffer" t)
|
||||
(let ((bufname (buffer-name)))
|
||||
(with-temp-eshell
|
||||
(eshell-insert-command (format "echo hi > #<%s>" bufname)))
|
||||
(should (equal (buffer-string) "hi")))))
|
||||
|
||||
(ert-deftest eshell-test/redirect-buffer-escaped ()
|
||||
"Check that piping to a buffer with escaped characters works"
|
||||
(with-temp-buffer
|
||||
(rename-buffer "eshell\\temp\\buffer" t)
|
||||
(let ((bufname (buffer-name)))
|
||||
(with-temp-eshell
|
||||
(eshell-insert-command (format "echo hi > #<%s>"
|
||||
(string-replace "\\" "\\\\" bufname))))
|
||||
(should (equal (buffer-string) "hi")))))
|
||||
|
||||
(ert-deftest eshell-test/inside-emacs-var ()
|
||||
"Test presence of \"INSIDE_EMACS\" in subprocesses"
|
||||
(with-temp-eshell
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue