diff --git a/core/autoload/minibuffer.el b/core/autoload/minibuffer.el index 1b78cda75..89815ff86 100644 --- a/core/autoload/minibuffer.el +++ b/core/autoload/minibuffer.el @@ -1,30 +1,25 @@ ;;; ../core/autoload/minibuffer.el ;;;###autoload -(defun doom-minibuffer-kill-word () +(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) - (call-interactively - (cond ((> (point) (minibuffer-prompt-end)) - 'backward-kill-word) - ((and (fboundp 'evil-ex-p) (evil-ex-p)) - 'evil-ex-delete-backward-char) - (t - 'ivy-backward-delete-char)))) + (when (> (point) (minibuffer-prompt-end)) + (call-interactively #'backward-kill-word))) ;;;###autoload -(defun doom-minibuffer-kill-line () +(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))) + (call-interactively #'backward-kill-sentence))) ;;;###autoload -(defun doom-minibuffer-undo () +(defun doom/minibuffer-undo () "Undo an edit in the minibuffer without throwing errors." (interactive) - (ignore-errors (call-interactively 'undo))) + (ignore-errors (call-interactively #'undo))) diff --git a/modules/completion/ivy/autoload/ivy.el b/modules/completion/ivy/autoload/ivy.el index 6a77d973d..c6715ae40 100644 --- a/modules/completion/ivy/autoload/ivy.el +++ b/modules/completion/ivy/autoload/ivy.el @@ -228,3 +228,13 @@ counsel-rg)." (when (doom-popup-p) (doom/popup-close)) (ivy-resume)) + +;;;###autoload +(defun +ivy/backward-kill-word () + "Kill a word backwards, but only if cursor is after `minibuffer-prompt-end', +to prevent the 'Text is read-only' warning from monopolizing the minibuffer." + (interactive) + (call-interactively + (if (> (point) (minibuffer-prompt-end)) + #'backward-kill-word + #'ivy-backward-delete-char))) diff --git a/modules/completion/ivy/config.el b/modules/completion/ivy/config.el index f1a7a2c6c..76ec0b56a 100644 --- a/modules/completion/ivy/config.el +++ b/modules/completion/ivy/config.el @@ -48,8 +48,8 @@ session)." "C-k" #'ivy-previous-line "C-j" #'ivy-next-line "C-l" #'ivy-alt-done - "C-w" #'doom-minibuffer-kill-word - "C-u" #'doom-minibuffer-kill-line + "C-w" #'+ivy/backward-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 444598144..b48923739 100644 --- a/modules/private/hlissner/+bindings.el +++ b/modules/private/hlissner/+bindings.el @@ -384,11 +384,11 @@ (:map (evil-ex-completion-map evil-ex-search-keymap read-expression-map) "C-a" #'move-beginning-of-line - "C-w" #'doom-minibuffer-kill-word - "C-u" #'doom-minibuffer-kill-line + "C-w" #'doom/minibuffer-kill-word + "C-u" #'doom/minibuffer-kill-line "C-b" #'backward-word "C-f" #'forward-word - "M-z" #'doom-minibuffer-undo) + "M-z" #'doom/minibuffer-undo) (:after view (:map view-mode-map "" #'View-quit-all)))