Standardize M-RET/M-S-RET as an "add new item" key

This commit is contained in:
Henrik Lissner 2019-01-21 22:07:31 -05:00
parent 17c1759457
commit 3694b0d411
No known key found for this signature in database
GPG Key ID: 5F6C0EA160557395
2 changed files with 24 additions and 1 deletions

View File

@ -91,3 +91,22 @@ If ARG (universal argument), runs `compile' from the current directory."
(interactive)
(cond ((featurep! :completion ivy) (+ivy/tasks)
(featurep! :completion helm) (+helm/tasks))))
;;;###autoload
(defun +default/newline-above ()
"Insert an indented new line before the current one."
(interactive)
(if (featurep 'evil)
(call-interactively 'evil-open-above)
(beginning-of-line)
(save-excursion (newline))
(indent-according-to-mode)))
;;;###autoload
(defun +default/newline-below ()
"Insert an indented new line after the current one."
(interactive)
(if (featurep 'evil)
(call-interactively 'evil-open-below)
(end-of-line)
(newline-and-indent)))

View File

@ -147,7 +147,11 @@
;; Pressing it again will send you to the true bol. Same goes for C-e, except
;; it will ignore comments+trailing whitespace before jumping to eol.
(map! :gi "C-a" #'doom/backward-to-bol-or-indent
:gi "C-e" #'doom/forward-to-last-non-comment-or-eol)
:gi "C-e" #'doom/forward-to-last-non-comment-or-eol
;; Standardize the behavior of M-RET/M-S-RET as a "add new item
;; below/above" key.
:gi [M-return] #'+default/newline-below
:gi [M-S-return] #'+default/newline-above)
(if (featurep 'evil)
(load! "+evil-bindings")