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

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

[elpa] master 47f53b6 073/167: counsel.el (counsel--find-symbol): Resolv


From: Oleh Krehel
Subject: [elpa] master 47f53b6 073/167: counsel.el (counsel--find-symbol): Resolve name clash better
Date: Tue, 08 Dec 2015 10:49:58 +0000

branch: master
commit 47f53b605abadccf19e3c6b55aef5360ae197249
Author: Oleh Krehel <address@hidden>
Commit: Oleh Krehel <address@hidden>

    counsel.el (counsel--find-symbol): Resolve name clash better
    
    * counsel.el (counsel--find-symbol): When the symbol is both bound and
      fbound, prefer the fbound one, unless the :caller is
      `counsel-describe-variable'.
    (counsel-describe-variable): Declare :caller.
    (counsel-describe-function): Declare :caller.
    
    One example is going to the definition of `isearch-forward' (also with
    `counsel-M-x').
---
 counsel.el |   12 +++++++++---
 1 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/counsel.el b/counsel.el
index ef67be9..eab1a3c 100644
--- a/counsel.el
+++ b/counsel.el
@@ -175,10 +175,14 @@
     (if full-name
         (find-library full-name)
       (let ((sym (read x)))
-        (cond ((boundp sym)
+        (cond ((and (eq (ivy-state-caller ivy-last)
+                        'counsel-describe-variable)
+                    (boundp sym))
                (find-variable sym))
               ((fboundp sym)
                (find-function sym))
+              ((boundp sym)
+               (find-variable sym))
               ((or (featurep sym)
                    (locate-library
                     (prin1-to-string sym)))
@@ -224,7 +228,8 @@
      :sort t
      :action (lambda (x)
                (describe-variable
-                (intern x))))))
+                (intern x)))
+     :caller 'counsel-describe-variable)))
 
 (ivy-set-actions
  'counsel-describe-variable
@@ -255,7 +260,8 @@
               :sort t
               :action (lambda (x)
                         (describe-function
-                         (intern x))))))
+                         (intern x)))
+              :caller 'counsel-describe-function)))
 
 (defvar info-lookup-mode)
 (declare-function info-lookup->completions "info-look")



reply via email to

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