From: Amin Bandali Date: Sun, 22 Jul 2018 21:39:52 +0000 (-0400) Subject: [emacs] add more bindings, from the awesome crux and mwim X-Git-Url: https://git.shemshak.org/~bandali/configs/commitdiff_plain/bb93c9e100723ad7b5311a35f600adb856456f85?ds=inline [emacs] add more bindings, from the awesome crux and mwim --- diff --git a/.gitmodules b/.gitmodules index 776beaa..3916e2c 100644 --- a/.gitmodules +++ b/.gitmodules @@ -22,6 +22,9 @@ [submodule "company"] path = lib/company url = git@github.com:company-mode/company-mode.git +[submodule "crux"] + path = lib/crux + url = git@github.com:bbatsov/crux.git [submodule "dante"] path = lib/dante url = git@github.com:jyp/dante.git @@ -116,6 +119,9 @@ [submodule "memoize"] path = lib/memoize url = git@github.com:skeeto/emacs-memoize.git +[submodule "mwim"] + path = lib/mwim + url = git@github.com:alezost/mwim.el.git [submodule "no-littering"] path = lib/no-littering url = git@github.com:emacscollective/no-littering.git diff --git a/init.org b/init.org index fe307b6..a345921 100644 --- a/init.org +++ b/init.org @@ -627,8 +627,6 @@ Roll your own modal mode ("n" next-line) ("p" previous-line) ("f" forward-char) - ("a" move-beginning-of-line) - ("e" move-end-of-line) ("SPC" (("b" (("b" ibuffer-list-buffers) ("k" kill-this-buffer) ("o" other-window) @@ -642,10 +640,8 @@ Roll your own modal mode ("v" describe-variable))) ("q" (("q" save-buffers-kill-terminal))))) ("d" (("w" kill-word) - ("d" kill-whole-line) ("b" backward-kill-word))) - ("c" (("w" kill-word :exit t) - ("c" kill-whole-line :exit t)))) + ("c w" kill-word :exit t)) (ryo-modal-keys ;; First argyment to ryo-modal-keys may be a list of keywords. @@ -1137,6 +1133,36 @@ Emacs package that displays available keybindings in popup (load-theme 'eink t) #+end_src +** [[https://github.com/bbatsov/crux][crux]] + +#+begin_src emacs-lisp +(use-package crux + :bind (("C-c d" . crux-duplicate-current-line-or-region) + ("C-c M-d" . crux-duplicate-and-comment-current-line-or-region)) + :ryo + ("o" crux-smart-open-line :exit t) + ("O" crux-smart-open-line-above :exit t) + ("SPC b K" crux-kill-other-buffers) + ("d d" crux-kill-whole-line) + ("c c" crux-kill-whole-line :then '(crux-smart-open-line-above) :exit t) + ("SPC f" (("c" crux-copy-file-preserve-attributes) + ("D" crux-delete-file-and-buffer) + ("R" crux-rename-file-and-buffer)))) +#+end_src + +** [[https://github.com/alezost/mwim.el][mwim]] + +#+begin_src emacs-lisp +(use-package mwim + :bind (("C-a" . mwim-beginning-of-code-or-line) + ("C-e" . mwim-end-of-code-or-line) + ("" . mwim-beginning-of-line-or-code) + ("" . mwim-end-of-line-or-code)) + :ryo + ("a" mwim-beginning-of-code-or-line) + ("e" mwim-end-of-code-or-line)) +#+end_src + * Email ** [[https://notmuchmail.org][notmuch]] diff --git a/lib/crux b/lib/crux new file mode 160000 index 0000000..c79985f --- /dev/null +++ b/lib/crux @@ -0,0 +1 @@ +Subproject commit c79985f69b7cd96edb505199bd751f71ce6d4e58 diff --git a/lib/mwim b/lib/mwim new file mode 160000 index 0000000..4622072 --- /dev/null +++ b/lib/mwim @@ -0,0 +1 @@ +Subproject commit 462207227b98a6a4356d51419f5ad5ba9356e5cf