From 79bc7d39f2d6df8a5d252e02e785e9af57d4ae5d Mon Sep 17 00:00:00 2001
From: Stefan Kangas <stefankangas@gmail.com>
Date: Fri, 26 Jul 2019 12:49:35 +0200
Subject: [PATCH] Bind 'g' to 'package-menu-refresh' in package menu

* lisp/emacs-lisp/package.el (package-menu-mode-map): Bind 'g' to
'package-menu-refresh' instead of 'revert-buffer'.  (Bug#35504)
* doc/emacs/package.texi (Package Menu): Document it.
* etc/NEWS: Announce it.
---
 doc/emacs/package.texi     | 12 ++++++++++++
 etc/NEWS                   |  5 +++++
 lisp/emacs-lisp/package.el |  1 +
 3 files changed, 18 insertions(+)

diff --git a/doc/emacs/package.texi b/doc/emacs/package.texi
index 4b33f250c4..35fa1f86d2 100644
--- a/doc/emacs/package.texi
+++ b/doc/emacs/package.texi
@@ -85,16 +85,19 @@ Package Menu
 
 @table @kbd
 @item h
+@findex package-menu-quick-help
 Print a short message summarizing how to use the package menu
 (@code{package-menu-quick-help}).
 
 @item ?
 @itemx @key{RET}
+@findex package-menu-describe-package
 Display a help buffer for the package on the current line
 (@code{package-menu-describe-package}), similar to the help window
 displayed by the @kbd{C-h P} command (@pxref{Packages}).
 
 @item i
+@findex package-menu-mark-install
 Mark the package on the current line for installation
 (@code{package-menu-mark-install}).  If the package status is
 @samp{available}, this adds an @samp{I} character to the start of the
@@ -102,6 +105,7 @@ Package Menu
 package.
 
 @item d
+@findex package-menu-mark-delete
 Mark the package on the current line for deletion
 (@code{package-menu-mark-delete}).  If the package status is
 @samp{installed}, this adds a @samp{D} character to the start of the
@@ -110,6 +114,7 @@ Package Menu
 entails.
 
 @item ~
+@findex package-menu-mark-obsolete-for-deletion
 Mark all obsolete packages for deletion
 (@code{package-menu-mark-obsolete-for-deletion}).  This marks for
 deletion all the packages whose status is @samp{obsolete}.
@@ -120,6 +125,7 @@ Package Menu
 current line by an @kbd{i} or @kbd{d} command.
 
 @item U
+@findex package-menu-mark-upgrades
 Mark all package with a newer available version for upgrading
 (@code{package-menu-mark-upgrades}).  This places an installation mark
 on the new available versions, and a deletion mark on the old
@@ -127,26 +133,32 @@ Package Menu
 
 @item x
 @vindex package-menu-async
+@findex package-menu-execute
 Download and install all packages marked with @kbd{i}, and their
 dependencies; also, delete all packages marked with @kbd{d}
 (@code{package-menu-execute}).  This also removes the marks.
 
+@item g
 @item r
+@findex package-menu-refresh
 Refresh the package list (@code{package-menu-refresh}).  This fetches
 the list of available packages from the package archive again, and
 recomputes the package list.
 
 @item f
+@findex package-menu-filter
 Filter the package list (@code{package-menu-filter}).  This prompts
 for a keyword (e.g., @samp{games}), then shows only the packages
 that relate to that keyword.  To restore the full package list,
 type @kbd{q}.
 
 @item H
+@findex package-menu-hide-package
 Permanently hide packages that match a regexp
 (@code{package-menu-hide-package}).
 
 @item (
+@findex package-menu-toggle-hiding
 Toggle visibility of old versions of packages and also of versions
 from lower-priority archives (@code{package-menu-toggle-hiding}).
 @end table
diff --git a/etc/NEWS b/etc/NEWS
index 252c6bf9b9..29b9c6c354 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -971,6 +971,11 @@ early init file.
 ---
 *** Imenu support has been added to 'package-menu-mode'.
 
++++
+*** 'g' is now bound to 'package-menu-refresh'.
+'g' used to be bound to 'revert-buffer', which now requires you to
+type 'M-x revert-buffer' instead.
+
 ** Info
 
 +++
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index ef0c5171de..a79759c976 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -2619,6 +2619,7 @@ package-menu-mode-map
     (define-key map "d" 'package-menu-mark-delete)
     (define-key map "i" 'package-menu-mark-install)
     (define-key map "U" 'package-menu-mark-upgrades)
+    (define-key map "g" 'package-menu-refresh)
     (define-key map "r" 'package-menu-refresh)
     (define-key map "f" 'package-menu-filter)
     (define-key map "~" 'package-menu-mark-obsolete-for-deletion)
-- 
2.23.0

