[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/evil-lisp-state 63e3183d14 101/125: Disabel auto-switch to
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/evil-lisp-state 63e3183d14 101/125: Disabel auto-switch to lisp state for some commands |
Date: |
Thu, 6 Jan 2022 04:58:44 -0500 (EST) |
branch: elpa/evil-lisp-state
commit 63e3183d14093faa6022760d281bedc76d9dc820
Author: syl20bnr <sylvain.benner@gmail.com>
Commit: syl20bnr <sylvain.benner@gmail.com>
Disabel auto-switch to lisp state for some commands
Test, goto, eval commands etc...
---
README.md | 32 +++++++++++++++++++---------
evil-lisp-state.el | 62 +++++++++++++++++++++++++++++++-----------------------
2 files changed, 58 insertions(+), 36 deletions(-)
diff --git a/README.md b/README.md
index 680d3eb8b4..cf6ca10372 100644
--- a/README.md
+++ b/README.md
@@ -44,7 +44,8 @@ both `evil`, `evil-leader` and `smartparens` to be installed.
To execute a command while in normal state, the evil-leader is used.
By default, the prefix for each command is `<leader> m`.
-Each command when executed set the current state to `lisp state`.
+
+Some commands when executed set the current state to `lisp state`.
Examples:
@@ -56,7 +57,11 @@ Examples:
<leader> m w 2 n
-## Commands and key bindings
+## Key Bindings
+
+### Auto-switch commands
+
+These commands switch to `lisp state`.
Key Binding | Function
----------------------------|------------------------------------------------------------
@@ -68,14 +73,10 @@ Key Binding | Function
<kbd>\<leader\> m $</kbd> | go to the end of current sexp
<kbd>\<leader\> m 0</kbd> | go to the beginning of current sexp
<kbd>\<leader\> m a</kbd> | absorb expression
+<kbd>\<leader\> m A</kbd> | transpose expression
<kbd>\<leader\> m b</kbd> | forward barf expression
<kbd>\<leader\> m B</kbd> | backward barf expression
<kbd>\<leader\> m c</kbd> | convolute expression
-<kbd>\<leader\> m d</kbd> | describe elisp thing at point (show
documentation)
-<kbd>\<leader\> m e $</kbd> | go to end of line and evaluate last sexp
-<kbd>\<leader\> m e e</kbd> | evaluate last sexp
-<kbd>\<leader\> m e f</kbd> | evaluate current defun
-<kbd>\<leader\> m g</kbd> | go to definition
<kbd>\<leader\> m h</kbd> | backward char
<kbd>\<leader\> m H</kbd> | previous symbol
<kbd>\<leader\> m i</kbd> | switch to `insert state`
@@ -94,9 +95,6 @@ Key Binding | Function
<kbd>\<leader\> m q</kbd> | unwrap current expression and kill all symbols
after point
<kbd>\<leader\> m Q</kbd> | unwrap current expression and kill all symbols
before point
<kbd>\<leader\> m r</kbd> | raise expression (replace parent expression by
current one)
-<kbd>\<leader\> m t b</kbd> | execute buffer tests
-<kbd>\<leader\> m t q</kbd> | ask for test function to execute
-<kbd>\<leader\> m T</kbd> | transpose expression
<kbd>\<leader\> m u</kbd> | undo
<kbd>\<leader\> m C-r</kbd> | redo
<kbd>\<leader\> m v</kbd> | switch to `visual state`
@@ -109,6 +107,20 @@ Key Binding | Function
<kbd>\<leader\> m xx</kbd> | delete expression
<kbd>\<leader\> m y</kbd> | copy expression
+### Other commands
+
+These command does not change the current state.
+
+Key Binding | Function
+----------------------------|------------------------------------------------------------
+<kbd>\<leader\> m e $</kbd> | go to end of line and evaluate last sexp
+<kbd>\<leader\> m e e</kbd> | evaluate last sexp
+<kbd>\<leader\> m e f</kbd> | evaluate current defun
+<kbd>\<leader\> m d d</kbd> | describe elisp thing at point (show
documentation)
+<kbd>\<leader\> m g g</kbd> | go to definition
+<kbd>\<leader\> m t b</kbd> | execute buffer tests
+<kbd>\<leader\> m t q</kbd> | ask for test function to execute
+
## Configuration
Key bindings are set only for `emacs-lisp-mode` by default.
diff --git a/evil-lisp-state.el b/evil-lisp-state.el
index a794adfb7c..fd5319cc23 100644
--- a/evil-lisp-state.el
+++ b/evil-lisp-state.el
@@ -5,7 +5,7 @@
;; Author: Sylvain Benner <sylvain.benner@gmail.com>
;; Keywords: convenience editing evil smartparens lisp mnemonic
;; Created: 9 Oct 2014
-;; Version: 6.1
+;; Version: 6.2
;; Package-Requires: ((evil "1.0.9") (evil-leader "0.4.3") (smartparens
"1.6.1"))
;; URL: https://github.com/syl20bnr/evil-lisp-state
@@ -34,14 +34,17 @@
;; To execute a command while in normal state, the evil-leader is used.
;; By default, the prefix for each command is `<leader> m`.
-;; Each command when executed set the current state to `lisp state`.
+;; Some commands when executed set the current state to `lisp state`.
+
;; By example, to slurp three times while in normal state:
;; <leader> m 3 n
;; Or to wrap a symbol in parenthesis then slurping two times:
;; <leader> m w 2 n
-;; Commands and key bindings:
-;; --------------------------
+;; Auto-switch to lisp state commands:
+;; ----------------------------------
+
+;; These commands switch the current state to `lisp state'.
;; Key Binding | Function
;; ---------------|------------------------------------------------------------
@@ -53,14 +56,10 @@
;; `leader m $' | go to the end of current sexp
;; `leader m 0' | go to the beginning of current sexp
;; `leader m a' | absorb expression
+;; `leader m A' | transpose expression
;; `leader m b' | forward barf expression
;; `leader m B' | backward barf expression
;; `leader m c' | convolute expression
-;; `leader m d' | describe elisp thing at point (show documentation)
-;; `leader m e $' | go to end of line and evaluate last sexp
-;; `leader m e e' | evaluate last sexp
-;; `leader m e f' | evaluate current defun
-;; `leader m g' | go to definition
;; `leader m h' | backward char
;; `leader m H' | previous symbol
;; `leader m i' | switch to `insert state`
@@ -76,12 +75,9 @@
;; `leader m N' | backward slurp expression
;; `leader m p' | paste after
;; `leader m P' | paste before
-;; `leader m q' | unwrap current expression and kill all symbols after point
-;; `leader m Q' | unwrap current expression and kill all symbols before point
+;; `leader m q' | (splice) unwrap current expression and kill all symbols
after point
+;; `leader m Q' | (splice) unwrap current expression and kill all symbols
before point
;; `leader m r' | raise expression (replace parent expression by current one)
-;; `leader m t b' | execute buffer tests
-;; `leader m t q' | ask for test function to execute
-;; `leader m T' | transpose expression
;; `leader m u' | undo
;; `leader m C-r' | redo
;; `leader m v' | switch to `visual state`
@@ -94,6 +90,21 @@
;; `leader m xx' | delete expression
;; `leader m y' | copy expression
+;; Other commands:
+;; ---------------
+
+;; These commands don't change the current state.
+
+;; Key Binding | Function
+;; ---------------|------------------------------------------------------------
+;; `leader m e $' | go to end of line and evaluate last sexp
+;; `leader m e e' | evaluate last sexp
+;; `leader m e f' | evaluate current defun
+;; `leader m d d' | describe elisp thing at point (show documentation)
+;; `leader m g g' | go to definition
+;; `leader m t b' | execute buffer tests
+;; `leader m t q' | ask for test function to execute
+
;; Configuration:
;; --------------
@@ -160,14 +171,20 @@
;; escape
(define-key evil-lisp-state-map [escape] 'evil-normal-state)
-
;; toggle lisp state
(define-key evil-lisp-state-map ",," 'lisp-state-toggle-lisp-state)
-(dolist (mm evil-lisp-state-major-modes)
- (evil-leader/set-key-for-mode mm "m," 'lisp-state-toggle-lisp-state))
-
;; leader
(define-key evil-lisp-state-map (kbd evil-leader/leader)
evil-leader--default-map)
+;; commands that wont switch to lisp state
+(dolist (mm evil-lisp-state-major-modes)
+ (evil-leader/set-key-for-mode mm "me$" 'lisp-state-eval-sexp-end-of-line)
+ (evil-leader/set-key-for-mode mm "mee" 'eval-last-sexp)
+ (evil-leader/set-key-for-mode mm "mef" 'eval-defun)
+ (evil-leader/set-key-for-mode mm "mgg"
'elisp-slime-nav-find-elisp-thing-at-point)
+ (evil-leader/set-key-for-mode mm "mhd"
'elisp-slime-nav-describe-elisp-thing-at-point)
+ (evil-leader/set-key-for-mode mm "m," 'lisp-state-toggle-lisp-state)
+ (evil-leader/set-key-for-mode mm "mtb" 'spacemacs/ert-run-tests-buffer)
+ (evil-leader/set-key-for-mode mm "mtq" 'ert))
;; auto-switch to lisp state commands
(defconst evil-lisp-state-commands
@@ -187,14 +204,10 @@
("8" . digit-argument)
("9" . digit-argument)
("a" . sp-absorb-sexp)
+ ("A" . sp-transpose-sexp)
("b" . sp-forward-barf-sexp)
("B" . sp-backward-barf-sexp)
("c" . sp-convolute-sexp)
- ("d" . elisp-slime-nav-describe-elisp-thing-at-point)
- ("e$" . lisp-state-eval-sexp-end-of-line)
- ("ee" . eval-last-sexp)
- ("ef" . eval-defun)
- ("g" . elisp-slime-nav-find-elisp-thing-at-point)
("h" . evil-backward-char)
("H" . sp-backward-symbol)
("i" . evil-insert-state)
@@ -213,9 +226,6 @@
("q" . sp-splice-sexp-killing-forward)
("Q" . sp-splice-sexp-killing-backward)
("r" . sp-raise-sexp)
- ("tb" . spacemacs/ert-run-tests-buffer)
- ("tq" . ert)
- ("T" . sp-transpose-sexp)
("u" . undo-tree-undo)
("C-r" . undo-tree-redo)
("v" . evil-visual-char)
- [nongnu] elpa/evil-lisp-state 24b9a1dfb6 038/125: Add sp-(backward)-delete-char bindings to `x` and `X`, (continued)
- [nongnu] elpa/evil-lisp-state 24b9a1dfb6 038/125: Add sp-(backward)-delete-char bindings to `x` and `X`, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 47c4f4ca30 043/125: Swap `H` and `h`, `L` and `l`, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 3ab17e7007 046/125: Version 1.5, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 0a5381ce70 055/125: Update readme, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state cf8c984612 057/125: Minor change, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 692507643f 064/125: Fix `o` and `O` behavior, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 3f575dc466 081/125: Update commentary and fix some typos, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 0476f83b72 089/125: Update address of MELPA, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 758166a1a4 092/125: Fix macro for backward functions, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 159e849c2c 102/125: Tweak key bindings, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 63e3183d14 101/125: Disabel auto-switch to lisp state for some commands,
ELPA Syncer <=
- [nongnu] elpa/evil-lisp-state 77bc863b7c 113/125: Fix default value for evil-lisp-state-enter-lisp-state-on-command, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 9d07f9efad 116/125: Reapply fix of confusion message when toggling state, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 12f974b74d 124/125: Allow navigation for braces and brackets with j/k., ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state b4c54ee3a0 122/125: Bump version to 8.1, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 3c65fecd99 125/125: Bump version to 8.2, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 0e7f902c74 029/125: Use directions for delete functions, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 5df70d1088 035/125: Bind sp-foward-symbol to `w`, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 36d945c5db 071/125: Add autoload cookie to required custom variable, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 45bbdfce7f 072/125: Insert sibling before/after bindings on `(` and `)` respectively, ELPA Syncer, 2022/01/06
- [nongnu] elpa/evil-lisp-state 3953f28dd2 078/125: Keep regular `r` binding for evil-replace, raise an sexp with `R`, ELPA Syncer, 2022/01/06