]> git.eshelyaron.com Git - emacs.git/commitdiff
Introduce xref-prompt-for-identifier
authorDmitry Gutov <dgutov@yandex.ru>
Sun, 26 Apr 2015 15:08:56 +0000 (18:08 +0300)
committerDmitry Gutov <dgutov@yandex.ru>
Sun, 26 Apr 2015 15:08:56 +0000 (18:08 +0300)
* lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
(xref--read-identifier): Use it
(http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).

lisp/progmodes/xref.el

index 0257210a6c74a5496988688e99d5c4f41c564bd0..9f1068668b126d2e46d762bebc304c29e03a70c7 100644 (file)
@@ -276,6 +276,15 @@ backward."
   :type 'integer
   :version "25.1")
 
+(defcustom xref-prompt-for-identifier nil
+  "When non-nil, always prompt for the identifier name.
+
+Otherwise, only prompt when there's no value at point we can use,
+or when the command has been called with the prefix argument."
+  :type '(choice (const :tag "always" t)
+                 (const :tag "auto" nil))
+  :version "25.1")
+
 (defvar xref--marker-ring (make-ring xref-marker-ring-length)
   "Ring of markers to implement the marker stack.")
 
@@ -559,7 +568,7 @@ Return an alist of the form ((FILENAME . (XREF ...)) ...)."
 (defun xref--read-identifier (prompt)
   "Return the identifier at point or read it from the minibuffer."
   (let ((id (funcall xref-identifier-at-point-function)))
-    (cond ((or current-prefix-arg (not id))
+    (cond ((or current-prefix-arg xref-prompt-for-identifier (not id))
            (completing-read prompt
                             (funcall xref-identifier-completion-table-function)
                             nil t nil