diff options
author | Jim Porter <jporterbugs@gmail.com> | 2023-02-05 21:37:08 -0800 |
---|---|---|
committer | Jim Porter <jporterbugs@gmail.com> | 2023-02-09 22:32:51 -0800 |
commit | ab7c2f809219b0c29e7ee2b5ac66f18b0e657080 (patch) | |
tree | a2218c0fb8eca8bd391ea54be7f068ad0d56560b /lisp/emacs-lisp/hierarchy.el | |
parent | c53255f67758cbd528c3422e248c0cb979a9a676 (diff) | |
download | emacs-ab7c2f809219b0c29e7ee2b5ac66f18b0e657080.tar.gz emacs-ab7c2f809219b0c29e7ee2b5ac66f18b0e657080.tar.bz2 emacs-ab7c2f809219b0c29e7ee2b5ac66f18b0e657080.zip |
Ensure that Eshell users can run lines of command output as input
Previously, this failed to work properly because any additional input
the user entered would have no 'field' property, confusing
'eshell-get-old-input'. To fix this, we simply ensure that any
user-entered text in the output field retains said output field
(bug#61310).
* lisp/eshell/esh-util.el (eshell-command-output-properties): New
variable.
(eshell--mark-as-output, eshell--mark-yanked-as-output): New
functions, mostly copied from comint.
* lisp/eshell/esh-proc.el (eshell-interactive-process-filter):
* lisp/eshell/esh-mode.el (eshell-interactive-print): Call
'eshell--mark-as-output'.
(eshell-get-old-input): Remove properties from the returned string
just to be safe.
* test/lisp/eshell/eshell-tests.el (eshell-test-value): New variable.
(eshell-test/get-old-input/rerun-command)
(eshell-test/get-old-input/run-output): New tests.
* test/lisp/eshell/em-prompt-tests.el
(em-prompt-test/field-properties)
(em-prompt-test/field-properties/no-highlight): Use
'eshell-command-output-properties'.
Diffstat (limited to 'lisp/emacs-lisp/hierarchy.el')
0 files changed, 0 insertions, 0 deletions