From 5d83fe83ca013f8a51f550a702d9725b8e404499 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Sat, 6 May 2017 22:56:15 +0200 Subject: [PATCH] Prevent 'Text is read-only' monopolizing minibuffer (ivy/evil/minibuffer) --- core/autoload/minibuffer.el | 19 +++++++++++++++++++ modules/completion/ivy/config.el | 4 ++-- modules/private/hlissner/+bindings.el | 5 ++--- 3 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 core/autoload/minibuffer.el diff --git a/core/autoload/minibuffer.el b/core/autoload/minibuffer.el new file mode 100644 index 000000000..2563e4fce --- /dev/null +++ b/core/autoload/minibuffer.el @@ -0,0 +1,19 @@ +;;; ../core/autoload/minibuffer.el + +;;;###autoload +(defun doom-minibuffer-kill-word () + "Kill a word, backwards, but only if the cursor is after +`minibuffer-prompt-end', to prevent the 'Text is read-only' warning from +monopolizing the minibuffer." + (interactive) + (when (> (point) (minibuffer-prompt-end)) + (call-interactively 'backward-kill-word))) + +;;;###autoload +(defun doom-minibuffer-kill-line () + "Kill the entire line, but only if the cursor is after +`minibuffer-prompt-end', to prevent the 'Text is read-only' warning from +monopolizing the minibuffer." + (interactive) + (when (> (point) (minibuffer-prompt-end)) + (call-interactively 'backward-kill-sentence))) diff --git a/modules/completion/ivy/config.el b/modules/completion/ivy/config.el index 639b51478..eaaa5cef2 100644 --- a/modules/completion/ivy/config.el +++ b/modules/completion/ivy/config.el @@ -47,8 +47,8 @@ "C-k" #'ivy-previous-line "C-j" #'ivy-next-line "C-l" #'ivy-alt-done - "C-w" #'backward-kill-word - "C-u" #'backward-kill-sentence + "C-w" #'doom-minibuffer-kill-word + "C-u" #'doom-minibuffer-kill-line "C-b" #'backward-word "C-f" #'forward-word) diff --git a/modules/private/hlissner/+bindings.el b/modules/private/hlissner/+bindings.el index 0ecda788b..e2a299f6e 100644 --- a/modules/private/hlissner/+bindings.el +++ b/modules/private/hlissner/+bindings.el @@ -373,8 +373,8 @@ (:map (evil-ex-completion-map evil-ex-search-keymap read-expression-map) "C-a" 'move-beginning-of-line - "C-w" 'backward-kill-word - "C-u" 'backward-kill-sentence + "C-w" 'doom-minibuffer-kill-word + "C-u" 'doom-minibuffer-kill-line "C-b" 'backward-word "C-f" 'forward-word) @@ -387,4 +387,3 @@ "h" nil "g" nil))) -