From 6cfd68d4d7c3e577ba1ed55b304229fc6e78718b Mon Sep 17 00:00:00 2001 From: "Basil L. Contovounesios" Date: Sun, 19 May 2019 13:52:26 +0100 Subject: Fix Hideshow key binding typo in Emacs manual * doc/emacs/programs.texi (Hideshow): Add missing function and key index entries. Fix hs-toggle-hiding binding typo. (bug#35798) --- doc/emacs/programs.texi | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi index 9d712eb66cc..df14fd8a05a 100644 --- a/doc/emacs/programs.texi +++ b/doc/emacs/programs.texi @@ -1332,8 +1332,11 @@ count as blocks. @findex hs-show-block @findex hs-show-region @findex hs-hide-level +@findex hs-toggle-hiding +@findex hs-mouse-toggle-hiding @kindex C-c @@ C-h @kindex C-c @@ C-s +@kindex C-c @@ C-c @kindex C-c @@ C-M-h @kindex C-c @@ C-M-s @kindex C-c @@ C-r @@ -1346,7 +1349,7 @@ Hide the current block (@code{hs-hide-block}). @item C-c @@ C-s Show the current block (@code{hs-show-block}). @item C-c @@ C-c -@itemx C-x @@ C-e +@itemx C-c @@ C-e Either hide or show the current block (@code{hs-toggle-hiding}). @item S-mouse-2 Toggle hiding for the block you click on (@code{hs-mouse-toggle-hiding}). -- cgit v1.2.1 From 1228a90c69b51c6e9084385552ff991e6915b175 Mon Sep 17 00:00:00 2001 From: "Basil L. Contovounesios" Date: Mon, 20 May 2019 00:37:13 +0100 Subject: ; Fix mm-destroy-parts docstring typo * lisp/gnus/mm-decode.el (mm-destroy-parts): Fix typo in docstring copy-pasted from mm-remove-parts. --- lisp/gnus/mm-decode.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el index 21552abae73..33cb797bf69 100644 --- a/lisp/gnus/mm-decode.el +++ b/lisp/gnus/mm-decode.el @@ -1117,7 +1117,7 @@ external if displayed external." (mm-remove-part handle))))))) (defun mm-destroy-parts (handles) - "Remove the displayed MIME parts represented by HANDLES." + "Destroy the displayed MIME parts represented by HANDLES." (if (and (listp handles) (bufferp (car handles))) (mm-destroy-part handles) -- cgit v1.2.1 From eadf044e0663703af61967c1ff890043f46c9a15 Mon Sep 17 00:00:00 2001 From: Mauro Aranda Date: Fri, 17 May 2019 10:00:01 -0300 Subject: Remove repeated function call in picture.el * lisp/textmodes/picture.el (picture-mode-map): Remove repeated define-key call. (Bug#35772) --- lisp/textmodes/picture.el | 1 - 1 file changed, 1 deletion(-) diff --git a/lisp/textmodes/picture.el b/lisp/textmodes/picture.el index f0e30135f16..aed531e7694 100644 --- a/lisp/textmodes/picture.el +++ b/lisp/textmodes/picture.el @@ -622,7 +622,6 @@ Leaves the region surrounding the rectangle." (defvar picture-mode-map (let ((map (make-keymap))) - (define-key map [remap self-insert-command] 'picture-self-insert) (define-key map [remap self-insert-command] 'picture-self-insert) (define-key map [remap completion-separator-self-insert-command] 'picture-self-insert) -- cgit v1.2.1 From 015b12ebb84995386dd84ef80092f01fba882168 Mon Sep 17 00:00:00 2001 From: Mauro Aranda Date: Sun, 19 May 2019 11:36:26 -0300 Subject: Fix typo in ELisp manual * doc/lispref/variables.texi (Directory Local Variables): Fix typo in dir-locals-set-class-variables description. (Bug#35799) --- doc/lispref/variables.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/lispref/variables.texi b/doc/lispref/variables.texi index f1e0e37e6d6..153a80a4443 100644 --- a/doc/lispref/variables.texi +++ b/doc/lispref/variables.texi @@ -2009,7 +2009,7 @@ all files in those directories. The list in @var{variables} can be of one of the two forms: @code{(@var{major-mode} . @var{alist})} or @code{(@var{directory} . @var{list})}. With the first form, if the file's buffer turns on a mode that is derived from @var{major-mode}, -then the all the variables in the associated @var{alist} are applied; +then all the variables in the associated @var{alist} are applied; @var{alist} should be of the form @code{(@var{name} . @var{value})}. A special value @code{nil} for @var{major-mode} means the settings are applicable to any mode. In @var{alist}, you can use a special -- cgit v1.2.1 From 122ba1689046c53535b4d6c5142cfd81752808d0 Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Sun, 19 May 2019 13:05:55 -0400 Subject: Don't segfault on force-window-update of deleted window * src/window.c (Fforce_window_update): Do nothing for deleted windows (Bug#35784). --- src/window.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/window.c b/src/window.c index dfac3b5b879..4d5ddeea14b 100644 --- a/src/window.c +++ b/src/window.c @@ -3637,7 +3637,7 @@ displaying that buffer. */) return Qt; } - if (WINDOWP (object)) + if (WINDOW_LIVE_P (object)) { struct window *w = XWINDOW (object); mark_window_display_accurate (object, false); -- cgit v1.2.1 From 400907b3c1d94359dda38ad5f416829567d6e478 Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Wed, 15 May 2019 20:29:38 -0400 Subject: Add option to disable help completion autoloading (Bug#28607) * lisp/help-fns.el (help-enable-completion-auto-load): New option. (help--symbol-completion-table): Consult it. * doc/emacs/building.texi (Lisp Libraries): Document it. * etc/NEWS: Announce it. * doc/lispref/loading.texi (Autoload by Prefix): New section. (Autoload): Reference it. --- doc/emacs/building.texi | 6 ++++++ doc/lispref/loading.texi | 23 ++++++++++++++++++++++- etc/NEWS | 6 ++++++ lisp/help-fns.el | 18 +++++++++++++++--- 4 files changed, 49 insertions(+), 4 deletions(-) diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi index 31acfc827bf..246a04c2824 100644 --- a/doc/emacs/building.texi +++ b/doc/emacs/building.texi @@ -1499,6 +1499,12 @@ library lets Emacs properly set up the hyperlinks in the @file{*Help*} buffer). To disable this feature, change the variable @code{help-enable-auto-load} to @code{nil}. +@vindex help-enable-completion-auto-load +Automatic loading also occurs when completing names for +@code{describe-variable} and @code{describe-function}, based on the +prefix being completed. To disable this feature, change the variable +@code{help-enable-completion-auto-load} to @code{nil}. + @vindex load-dangerous-libraries @cindex Lisp files byte-compiled by XEmacs By default, Emacs refuses to load compiled Lisp files which were diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi index f0cc689d1f6..fa6b301bb0f 100644 --- a/doc/lispref/loading.texi +++ b/doc/lispref/loading.texi @@ -466,9 +466,11 @@ first call to the function automatically loads the proper library, in order to install the real definition and other associated code, then runs the real definition as if it had been loaded all along. Autoloading can also be triggered by looking up the documentation of -the function or macro (@pxref{Documentation Basics}). +the function or macro (@pxref{Documentation Basics}), and completion +of variable and function names (@pxref{Autoload by Prefix} below). @menu +* Autoload by Prefix:: Autoload by Prefix. * When to Autoload:: When to Use Autoload. @end menu @@ -703,6 +705,25 @@ symbol's new function value. If the value of the optional argument function, only a macro. @end defun +@node Autoload by Prefix +@subsection Autoload by Prefix +@cindex autoload by prefix + +@vindex definition-prefixes +@findex register-definition-prefixes +@vindex autoload-compute-prefixes +During completion for the commands @code{describe-variable} and +@code{describe-function}, Emacs will try to load files which may +contain definitions matching the prefix being completed. The variable +@code{definition-prefixes} holds a hashtable which maps a prefix to +the corresponding list of files to load for it. Entries to this +mapping are added by calls to @code{register-definition-prefixes} +which are generated by @code{update-file-autoloads} +(@pxref{Autoload}). Files which don't contain any definitions worth +loading (test files, for examples), should set +@code{autoload-compute-prefixes} to @code{nil} as a file-local +variable. + @node When to Autoload @subsection When to Use Autoload @cindex autoload, when to use diff --git a/etc/NEWS b/etc/NEWS index 573c8236b23..1b668628413 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -24,6 +24,12 @@ with a prefix argument or by typing 'C-u C-h C-n'. * Changes in Emacs 26.3 ++++ +** New option 'help-enable-completion-auto-load'. +This allows disabling the new feature introduced in Emacs 26.1 which +loads files during completion of 'C-h f' and 'C-h v' according to +'definition-prefixes'. + * Editing Changes in Emacs 26.3 diff --git a/lisp/help-fns.el b/lisp/help-fns.el index a7812e3b4b5..8684a853af2 100644 --- a/lisp/help-fns.el +++ b/lisp/help-fns.el @@ -89,11 +89,23 @@ The functions will receive the function name as argument.") (unless (help--loaded-p file) (load file 'noerror 'nomessage))))) +(defcustom help-enable-completion-auto-load t + "Whether completion for Help commands can perform autoloading. +If non-nil, whenever invoking completion for `describe-function' +or `describe-variable' load files that might contain definitions +with the current prefix. The files are chosen according to +`definition-prefixes'." + :type 'boolean + :group 'help + :version "26.3") + (defun help--symbol-completion-table (string pred action) - (let ((prefixes (radix-tree-prefixes (help-definition-prefixes) string))) - (help--load-prefixes prefixes)) + (when help-enable-completion-auto-load + (let ((prefixes (radix-tree-prefixes (help-definition-prefixes) string))) + (help--load-prefixes prefixes))) (let ((prefix-completions - (mapcar #'intern (all-completions string definition-prefixes)))) + (and help-enable-completion-auto-load + (mapcar #'intern (all-completions string definition-prefixes))))) (complete-with-action action obarray string (if pred (lambda (sym) (or (funcall pred sym) -- cgit v1.2.1 From b0da9151d880f7ae60367a4b3d3ef91209bbd06f Mon Sep 17 00:00:00 2001 From: Tom Levy Date: Tue, 21 May 2019 14:25:31 +1200 Subject: Fix a typo in ELisp manual * doc/lispref/sequences.texi (Sequence Functions): Fix a typo. (Bug#35817) Copyright-paperwork-exempt: yes --- doc/lispref/sequences.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi index 5cf2e89644d..bf2c9c8a7d6 100644 --- a/doc/lispref/sequences.texi +++ b/doc/lispref/sequences.texi @@ -601,7 +601,7 @@ returned value is a list. @defun seq-mapn function &rest sequences This function returns the result of applying @var{function} to each element of @var{sequences}. The arity (@pxref{What Is a Function, -sub-arity}) of @var{function} must match the number of sequences. +subr-arity}) of @var{function} must match the number of sequences. Mapping stops at the end of the shortest sequence, and the returned value is a list. -- cgit v1.2.1