emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/evil-escape 0346740ff1 031/133: Correctly handle the evil


From: ELPA Syncer
Subject: [nongnu] elpa/evil-escape 0346740ff1 031/133: Correctly handle the evil function properties
Date: Wed, 3 Jan 2024 21:59:50 -0500 (EST)

branch: elpa/evil-escape
commit 0346740ff16897f9d0a5db092331769cc6af821e
Author: syl20bnr <sylvain.benner@gmail.com>
Commit: syl20bnr <sylvain.benner@gmail.com>

    Correctly handle the evil function properties
    
    Fix weird behavior where `f` motion acts like `t` motion
---
 README.md      | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
 evil-escape.el | 11 +++++++----
 2 files changed, 56 insertions(+), 4 deletions(-)

diff --git a/README.md b/README.md
index 070ab09ada..43402d0c76 100644
--- a/README.md
+++ b/README.md
@@ -11,6 +11,7 @@
     - [Customization](#customization)
         - [Key sequence](#key-sequence)
         - [Delay between keys](#delay-between-keys)
+    - [Limitations](#limitations)
 
 <!-- markdown-toc end -->
 
@@ -84,4 +85,52 @@ composed with the two same characters it is recommended to 
set the delay to
 **Note:** The variable `evil-escape-delay` must be set before requiring
 `evil-escape`.
 
+## Limitations
+
+Due to the current implementation only the following characters can be used
+as the first character of the key sequence:
+
+|   Keys     |
+|:----------:|
+|<kbd>b</kbd>|
+|<kbd>B</kbd>|
+|<kbd>e</kbd>|
+|<kbd>E</kbd>|
+|<kbd>f</kbd>|
+|<kbd>F</kbd>|
+|<kbd>G</kbd>|
+|<kbd>h</kbd>|
+|<kbd>H</kbd>|
+|<kbd>j</kbd>|
+|<kbd>k</kbd>|
+|<kbd>l</kbd>|
+|<kbd> </kbd>|
+|<kbd>K</kbd>|
+|<kbd>L</kbd>|
+|<kbd>M</kbd>|
+|<kbd>n</kbd>|
+|<kbd>N</kbd>|
+|<kbd>t</kbd>|
+|<kbd>T</kbd>|
+|<kbd>w</kbd>|
+|<kbd>W</kbd>|
+|<kbd>{</kbd>|
+|<kbd>}</kbd>|
+|<kbd>#</kbd>|
+|<kbd>%</kbd>|
+|<kbd>`</kbd>|
+|<kbd>'</kbd>|
+|<kbd>(</kbd>|
+|<kbd>)</kbd>|
+|<kbd>*</kbd>|
+|<kbd>,</kbd>|
+|<kbd>/</kbd>|
+|<kbd>;</kbd>|
+|<kbd>?</kbd>|
+|<kbd>|</kbd>|
+|<kbd>^</kbd>|
+|<kbd>+</kbd>|
+|<kbd>_</kbd>|
+|<kbd>-</kbd>|
+
 [MELPA]: http://melpa.org/
diff --git a/evil-escape.el b/evil-escape.el
index 59cf16c88d..9296895429 100644
--- a/evil-escape.el
+++ b/evil-escape.el
@@ -5,7 +5,7 @@
 ;; Author: Sylvain Benner <sylvain.benner@gmail.com>
 ;; Keywords: convenience editing evil
 ;; Created: 22 Oct 2014
-;; Version: 2.05
+;; Version: 2.06
 ;; Package-Requires: ((emacs "24") (evil "1.0.9"))
 ;; URL: https://github.com/syl20bnr/evil-escape
 
@@ -128,13 +128,16 @@ with a key sequence."
 
 `:delete-func FUNCTION'
      Specify the delete function to call when deleting the first key."
-  (let ((shadowed-func (plist-get properties :shadowed-func))
-        (insert-func (plist-get properties :insert-func))
-        (delete-func (plist-get properties :delete-func)))
+  (let* ((shadowed-func (plist-get properties :shadowed-func))
+         (evil-func-props (when shadowed-func
+                            (evil-get-command-properties shadowed-func)))
+         (insert-func (plist-get properties :insert-func))
+         (delete-func (plist-get properties :delete-func)))
     `(progn
        (define-key ,map ,(evil-escape--first-key)
          (evil-define-motion ,(evil-escape--escape-function-symbol from)
            (count)
+           ,@evil-func-props
            ;; called by the user
            (if (called-interactively-p 'interactive)
                (evil-escape--escape ,evil-escape-key-sequence



reply via email to

[Prev in Thread] Current Thread [Next in Thread]