[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#3447: suggest minibuffer M-< go to start of text
From: |
Juri Linkov |
Subject: |
bug#3447: suggest minibuffer M-< go to start of text |
Date: |
Wed, 13 Nov 2019 00:04:39 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) |
reopen 3447
quit
>> (define-key minibuffer-local-map "\M-<" 'my-minibuffer-beginning-of-buffer)
>
> I think something like this would be a very good idea. I frequently
> have long, multiline expressions in the minibuffer, and `M-<' not taking
> me to the start of the editable data is annoying.
>
> Does anybody object to making a change like this? (It'll have to be
> modernised a bit, of course.)
This still doesn't work with <C-home>. This can be fixed
by remapping beginning-of-buffer in the patch below.
Like 'C-a' goes to the end of the prompt exactly like <home>,
there is no reason not to do the same for 'M-<' and <C-home>.
Moreover, we don't add defcustoms for simple key bindings
because keybinding are configured with the help of define-key.
This patch should do the right thing:
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index 6e72eb73f9..d4b3cb8297 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -2240,7 +2240,7 @@ completion-help-at-point
(let ((map minibuffer-local-map))
(define-key map "\C-g" 'abort-recursive-edit)
- (define-key map "\M-<" 'minibuffer-beginning-of-buffer)
+ (define-key map [remap beginning-of-buffer] 'minibuffer-beginning-of-buffer)
(define-key map [remap recenter-top-bottom] 'minibuffer-recenter-top-bottom)
(define-key map [remap scroll-up-command] 'minibuffer-scroll-up-command)
@@ -2546,14 +2546,6 @@ insert-default-directory
`set-visited-file-name'."
:type 'boolean)
-(defcustom minibuffer-beginning-of-buffer-movement nil
- "Control how the `M-<' command in the minibuffer behaves.
-If non-nil, the command will go to the end of the prompt (if
-point is after the end of the prompt). If nil, it will behave
-like the `beginning-of-buffer' command."
- :version "27.1"
- :type 'boolean)
-
;; Not always defined, but only called if next-read-file-uses-dialog-p says so.
(declare-function x-file-dialog "xfns.c"
(prompt dir &optional default-filename mustmatch only-dir-p))
@@ -3674,8 +3666,7 @@ minibuffer-beginning-of-buffer
(prefix-numeric-value arg))
10)))
;; Go to the start of the buffer.
- ((or (null minibuffer-beginning-of-buffer-movement)
- (<= (point) (minibuffer-prompt-end)))
+ ((<= (point) (minibuffer-prompt-end))
(point-min))
;; Go to the end of the minibuffer.
(t
- bug#3447: suggest minibuffer M-< go to start of text,
Juri Linkov <=