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

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

[elpa] master 51c5874 042/399: counsel.el (counsel-find-file-map): Bind


From: Oleh Krehel
Subject: [elpa] master 51c5874 042/399: counsel.el (counsel-find-file-map): Bind "`" to bookmarks
Date: Sat, 20 Jul 2019 14:56:45 -0400 (EDT)

branch: master
commit 51c5874c75c0f5d0d1c6ce2cce9517aa7d5a5894
Author: Oleh Krehel <address@hidden>
Commit: Oleh Krehel <address@hidden>

    counsel.el (counsel-find-file-map): Bind "`" to bookmarks
    
    * ivy.el (ivy-make-magic-action): Add.
    
    Re #1937
---
 counsel.el |  1 +
 ivy.el     | 12 ++++++++++++
 2 files changed, 13 insertions(+)

diff --git a/counsel.el b/counsel.el
index b07ad91..6afb0d4 100644
--- a/counsel.el
+++ b/counsel.el
@@ -1748,6 +1748,7 @@ currently checked out."
     (define-key map (kbd "C-DEL") 'counsel-up-directory)
     (define-key map (kbd "C-<backspace>") 'counsel-up-directory)
     (define-key map (kbd "C-M-y") 'counsel-yank-directory)
+    (define-key map (kbd "`") (ivy-make-magic-action "b"))
     map))
 
 (defun counsel-yank-directory ()
diff --git a/ivy.el b/ivy.el
index 211c110..261075c 100644
--- a/ivy.el
+++ b/ivy.el
@@ -2855,6 +2855,18 @@ Possible choices are 
'ivy-magic-slash-non-match-cd-selected,
         (ivy--cd-maybe))
     (insert last-input-event)))
 
+(defun ivy-make-magic-action (key)
+  "Return a command that does the equivalent of `ivy-read-action' and KEY.
+This happens only when the input is empty.
+The intention is to bind the result to keys that are typically
+bound to `self-insert-command'."
+  (lambda (&optional arg)
+    (interactive "p")
+    (if (string= "" ivy-text)
+        (execute-kbd-macro
+         (kbd (concat "M-o " key)))
+      (self-insert-command arg))))
+
 (defcustom ivy-magic-tilde t
   "When non-nil, ~ will move home when selecting files.
 Otherwise, ~/ will move home."



reply via email to

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