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

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

[elpa] master 8907fd1 14/40: Escape yas-selected-text for new snippet.


From: Noam Postavsky
Subject: [elpa] master 8907fd1 14/40: Escape yas-selected-text for new snippet.
Date: Wed, 26 Oct 2016 23:06:32 +0000 (UTC)

branch: master
commit 8907fd1d42cc56d293e5a3bc028570eef6bce0d9
Author: rubikitch <address@hidden>
Commit: Noam Postavsky <address@hidden>

    Escape yas-selected-text for new snippet.
    
    * yasnippet.el (yas-escape-text): New function.
    (yas-new-snippet-default): Call it on yas-selected-text.
    
    Close #709.
---
 yasnippet.el |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/yasnippet.el b/yasnippet.el
index bfe5590..00ff3d2 100644
--- a/yasnippet.el
+++ b/yasnippet.el
@@ -207,7 +207,7 @@ created with `yas-new-snippet'. "
 # name: $1
 # key: ${2:${1:$(yas--key-from-desc yas-text)}}
 # --
-$0`yas-selected-text`"
+$0`(yas-escape-text yas-selected-text)`"
   "Default snippet to use when creating a new snippet.
 If nil, don't use any snippet."
   :type 'string
@@ -1926,6 +1926,11 @@ foo\"bar\\! -> \"foo\\\"bar\\\\!\""
                                     string
                                     t)
           "\""))
+
+(defun yas-escape-text (text)
+  "Escape TEXT for snippet."
+  (replace-regexp-in-string "[\\$]" "\\\\\\&" text))
+
 
 ;;; Snippet compilation function
 



reply via email to

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