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

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

[elpa] master 70c5fe8 13/22: Bind "M-q" to `ivy-toggle-regexp-quote'


From: Oleh Krehel
Subject: [elpa] master 70c5fe8 13/22: Bind "M-q" to `ivy-toggle-regexp-quote'
Date: Wed, 22 Apr 2015 19:51:50 +0000

branch: master
commit 70c5fe84fda9bc6953e9014044cb3d315d825f39
Author: Oleh Krehel <address@hidden>
Commit: Oleh Krehel <address@hidden>

    Bind "M-q" to `ivy-toggle-regexp-quote'
    
    * ivy.el (ivy-minibuffer-map): Update.
    (ivy--regexp-quote): New defvar.
    (ivy-toggle-regexp-quote): New command, toggle `ivy--regex-function'
    between the value selected in `ivy-read' and `ivy--regexp-quote'.
    (ivy-read): Reset `ivy--regexp-quote' to 'regexp-quote.
    
    Fixes #48
---
 ivy.el |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/ivy.el b/ivy.el
index be4dc8e..66b3f3a 100644
--- a/ivy.el
+++ b/ivy.el
@@ -101,6 +101,7 @@ Only \"./\" and \"../\" apply here. They appear in reverse 
order."
     (define-key map (kbd "M-v") 'ivy-scroll-down-command)
     (define-key map (kbd "C-M-n") 'ivy-next-line-and-call)
     (define-key map (kbd "C-M-p") 'ivy-previous-line-and-call)
+    (define-key map (kbd "M-q") 'ivy-toggle-regexp-quote)
     map)
   "Keymap used in the minibuffer.")
 
@@ -350,6 +351,15 @@ On error (read-only), call `ivy-on-del-error-function'."
        (when ivy-on-del-error-function
          (funcall ivy-on-del-error-function))))))
 
+(defvar ivy--regexp-quote 'regexp-quote
+  "Store the regexp quoting state.")
+
+(defun ivy-toggle-regexp-quote ()
+  "Toggle the regexp quoting."
+  (interactive)
+  (setq ivy--old-re nil)
+  (cl-rotatef ivy--regex-function ivy--regexp-quote))
+
 (defun ivy-sort-file-function-default (x y)
   "Compare two files X and Y.
 Prioritize directories."
@@ -434,6 +444,7 @@ When SORT is t, refer to `ivy-sort-functions-alist' for 
sorting."
             (cdr (assoc t ivy-re-builders-alist))
             'ivy--regex))
   (setq ivy--subexps 0)
+  (setq ivy--regexp-quote 'regexp-quote)
   (let (coll sort-fn)
     (cond ((eq collection 'Info-read-node-name-1)
            (if (equal Info-current-file "dir")



reply via email to

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