1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-26 10:49:33 +00:00

Comint: new user option for C-c M-r and C-c M-s

This option allows the user to specify where to place point after these
commands.

* comint.el (comint-move-point-for-matching-input): New user option.
(comint-previous-matching-input-from-input): Use user option.
This commit is contained in:
Philipp Stephani 2016-10-27 00:28:34 +02:00
parent cb726e7598
commit afe2997119
2 changed files with 19 additions and 1 deletions

View File

@ -337,6 +337,12 @@ whose content matches a regexp; bound to '% g'.
*** Support for opening links to man pages in Man or WoMan mode.
** Comint
---
*** New user option 'comint-move-point-for-matching-input' to control
where to place point after C-c M-r and C-c M-s.
** Compilation mode
---

View File

@ -283,6 +283,17 @@ This variable is buffer-local in all Comint buffers."
(const others))
:group 'comint)
(defcustom comint-move-point-for-matching-input 'after-input
"Controls where to place point after matching input.
\\<comint-mode-map>This influences the commands \\[comint-previous-matching-input-from-input] and \\[comint-next-matching-input-from-input].
If `after-input', point will be positioned after the input typed
by the user, but before the rest of the history entry that has
been inserted. If `end-of-line', point will be positioned at the
end of the current logical (not visual) line after insertion."
:type '(radio (const :tag "Stay after input" after-input)
(const :tag "Move to end of line" end-of-line))
:group 'comint)
(defvaralias 'comint-scroll-to-bottom-on-output 'comint-move-point-for-output)
(defcustom comint-scroll-show-maximum-output t
@ -1222,7 +1233,8 @@ If N is negative, search forwards for the -Nth following match."
(comint-previous-matching-input
(concat "^" (regexp-quote comint-matching-input-from-input-string))
n)
(goto-char opoint)))
(when (eq comint-move-point-for-matching-input 'after-input)
(goto-char opoint))))
(defun comint-next-matching-input-from-input (n)
"Search forwards through input history for match for current input.