summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmin Bandali <amin@aminb.org>2018-07-22 17:39:52 -0400
committerAmin Bandali <amin@aminb.org>2018-07-22 17:39:52 -0400
commitbb93c9e100723ad7b5311a35f600adb856456f85 (patch)
tree12da9a586f879012c3fa517846ab615821af2dc5
parent893944495bbf6e0ae7936924d56db4ac931412bc (diff)
downloadconfigs-bb93c9e100723ad7b5311a35f600adb856456f85.tar.gz
configs-bb93c9e100723ad7b5311a35f600adb856456f85.tar.xz
configs-bb93c9e100723ad7b5311a35f600adb856456f85.zip
[emacs] add more bindings, from the awesome crux and mwim
-rw-r--r--.gitmodules6
-rw-r--r--init.org36
m---------lib/crux0
m---------lib/mwim0
4 files changed, 37 insertions, 5 deletions
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)
+ ("<home>" . mwim-beginning-of-line-or-code)
+ ("<end>" . 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
+Subproject c79985f69b7cd96edb505199bd751f71ce6d4e5
diff --git a/lib/mwim b/lib/mwim
new file mode 160000
+Subproject 462207227b98a6a4356d51419f5ad5ba9356e5c