diff options
author | Pengji Zhang <me@pengjiz.com> | 2024-12-10 18:55:36 +0800 |
---|---|---|
committer | Jim Porter <jporterbugs@gmail.com> | 2024-12-11 11:56:45 -0800 |
commit | 3959ea66448fb371cdc67bd963cd539a90f99ee5 (patch) | |
tree | 8f4094a990a4eda26381e5cc7ece15365d17db04 /lisp/emacs-lisp/byte-opt.el | |
parent | 6a07dc19ac65eaa3ee1eeb814af85bde7fd2c509 (diff) | |
download | emacs-3959ea66448fb371cdc67bd963cd539a90f99ee5.tar.gz emacs-3959ea66448fb371cdc67bd963cd539a90f99ee5.tar.bz2 emacs-3959ea66448fb371cdc67bd963cd539a90f99ee5.zip |
Rework history Isearch for Eshell
This is to make history Isearch for Eshell similar to that of
'comint-mode', by hooking into Isearch properly instead of
defining new commands to emulate Isearch (bug#74287).
* lisp/eshell/em-hist.el (eshell-history-isearch): New user
option.
(eshell-goto-history, eshell--isearch-setup)
(eshell-history-isearch-end, eshell-history-isearch-search)
(eshell-history-isearch-message, eshell-history-isearch-wrap)
(eshell-history-isearch-push-state): New functions.
(eshell-isearch-backward-regexp, eshell-isearch-forward-regexp):
New commands.
(eshell--history-isearch-message-overlay)
(eshell--stored-incomplete-input, eshell--force-history-isearch):
New internal variables.
(eshell-hist-mode-map): Bind 'M-r' to
'eshell-isearch-backward-regexp' and free 'M-s' binding for
normal in-buffer search commands.
(eshell-isearch-backward, eshell-isearch-forward): Use the new
way to start searching.
(eshell-hist-initialize): Use the new Isearch setup function.
(eshell-previous-matching-input): Use 'eshell-goto-history'.
Also inhibit messages when searching.
(eshell-isearch-map, eshell-isearch-repeat-backward)
(eshell-isearch-abort, eshell-isearch-delete-char)
(eshell-isearch-return, eshell-isearch-cancel)
(eshell-isearch-repeat-forward, eshell-test-imatch)
(eshell-return-to-prompt, eshell-prepare-for-search): Remove.
These are for the old history Isearch implementation.
* doc/misc/eshell.texi (History): Document changes.
* etc/NEWS: Annouce changes.
Diffstat (limited to 'lisp/emacs-lisp/byte-opt.el')
0 files changed, 0 insertions, 0 deletions