branch: externals/cape
commit 8841d1d21c64061d34fe35c46c05b661421cdab1
Author: Daniel Mendler <m...@daniel-mendler.de>
Commit: Daniel Mendler <m...@daniel-mendler.de>

    cape-tex: Do not insert backslash when already looking at \phi (Fix #71)
---
 cape-char.el | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/cape-char.el b/cape-char.el
index 81b3799586..5f49a54098 100644
--- a/cape-char.el
+++ b/cape-char.el
@@ -73,7 +73,8 @@ PREFIX are the prefix characters."
         (ann (intern (format "cape--%s-annotation" name)))
         (docsig (intern (format "cape--%s-docsig" name)))
         (exit (intern (format "cape--%s-exit" name)))
-        (properties (intern (format "cape--%s-properties" name))))
+        (properties (intern (format "cape--%s-properties" name)))
+        (thing-re (concat (regexp-opt (mapcar #'char-to-string prefix)) "[^ 
\n\t]*" )))
     `(progn
        (defvar ,hash (cape-char--translation
                       ,method
@@ -113,13 +114,13 @@ is nil the function acts like a capf." method method)
          (if interactive
              ;; NOTE: Disable cycling since replacement breaks it.
              (let (completion-cycle-threshold ,prefix-required)
-               (when (memq last-input-event ',prefix)
+               (when (and (memq last-input-event ',prefix)
+                          (not (thing-at-point-looking-at ,thing-re)))
                  (self-insert-command 1 last-input-event))
                (cape--interactive #',capf))
            (when-let (bounds
                       (cond
-                       ((thing-at-point-looking-at
-                         ,(concat (regexp-opt (mapcar #'char-to-string 
prefix)) "[^ \n\t]*" ))
+                       ((thing-at-point-looking-at ,thing-re)
                         (cons (match-beginning 0) (match-end 0)))
                        ((not ,prefix-required) (cons (point) (point)))))
              (append

Reply via email to