From 804f5acda4bd947f058c6843e373797202314467 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Fri, 23 Apr 2021 09:25:35 +0300 Subject: [PATCH] Revert "Remove the binding for xref-quit-and-goto-xref" This reverts commit 522c34f0e80f60969861b0dc34bc7105249f9994. Making changes to which there was an explicit disagreement and a long discussion is unacceptable. (Bug#44611) --- doc/emacs/maintaining.texi | 7 ++++--- etc/NEWS | 10 +--------- lisp/progmodes/xref.el | 1 + 3 files changed, 6 insertions(+), 12 deletions(-) diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi index 32f5cb9a439..dfe4eb0ea30 100644 --- a/doc/emacs/maintaining.texi +++ b/doc/emacs/maintaining.texi @@ -2242,9 +2242,10 @@ display it in the other window (@code{xref-prev-group}). Display the reference on the current line in the other window (@code{xref-show-location-at-point}). -@kindex C-u RET -To bury the @file{*xref*} buffer before displaying the reference, call -@code{xref-goto-xref} with a prefix argument: @kbd{C-u RET}. +@item @key{TAB} +@findex xref-quit-and-goto-xref +Display the reference on the current line and bury the @file{*xref*} +buffer (@code{xref-quit-and-goto-xref}). @item r @var{pattern} @key{RET} @var{replacement} @key{RET} Perform interactive query-replace on references that match diff --git a/etc/NEWS b/etc/NEWS index 34aeaf028b8..61904767b94 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1644,19 +1644,11 @@ in 'project-list-file'. ** xref -+++ +--- *** Prefix arg of 'xref-goto-xref' quits the "*xref*" buffer. So typing 'C-u RET' in the "*xref*" buffer quits its window before navigating to the selected location. -+++ -*** The TAB binding in *xref* buffers has been removed. Use 'C-u RET' instead. -To restore the old binding, say something like: - - (require 'xref) - (define-key xref--xref-buffer-mode-map - (kbd "TAB") #'xref-quit-and-goto-xref) - *** New user options 'xref-search-program' and 'xref-search-program-alist'. So far 'grep' and 'ripgrep' are supported. 'ripgrep' seems to offer better performance in certain cases, in particular for case-insensitive diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el index 1e52318ba7b..63d25de50a7 100644 --- a/lisp/progmodes/xref.el +++ b/lisp/progmodes/xref.el @@ -817,6 +817,7 @@ ITEMS is an xref item which " (define-key map (kbd "P") #'xref-prev-group) (define-key map (kbd "r") #'xref-query-replace-in-results) (define-key map (kbd "RET") #'xref-goto-xref) + (define-key map (kbd "TAB") #'xref-quit-and-goto-xref) (define-key map (kbd "C-o") #'xref-show-location-at-point) ;; suggested by Johan Claesson "to further reduce finger movement": (define-key map (kbd ".") #'xref-next-line) -- 2.39.2