From 129645a7a7129f2a63c1daf2743c2d901460b9fa Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 7 Dec 2016 19:13:05 -0500 Subject: [PATCH 01/14] Make make-dist --snapshot do some sanity checks * make-dist: Snapshot mode no longer disables checks. Checks now includes checks for freshness. (Bug#25084) Checks now exits with an error if problems were found. --- make-dist | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/make-dist b/make-dist index 1cd1a50d75a..6182b4931a1 100755 --- a/make-dist +++ b/make-dist @@ -100,7 +100,6 @@ while [ $# -gt 0 ]; do clean_up=yes make_tar=yes update=no - check=no ;; ## Include the test/ directory. @@ -205,6 +204,8 @@ them, and try again." >&2 fi if [ $check = yes ]; then + error=no + ls -1 lisp/[a-zA-Z]*.el lisp/[a-z]*/[a-zA-Z0-9]*.el \ lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el > /tmp/el @@ -218,6 +219,7 @@ if [ $check = yes ]; then bogosities=`comm -13 /tmp/elelc /tmp/elc` if [ x"${bogosities}" != x"" ]; then + error=yes echo "The following .elc files have no corresponding .el files:" echo "${bogosities}" fi @@ -226,6 +228,19 @@ if [ $check = yes ]; then sed 's/\.elc$/.el/' /tmp/elc > /tmp/elcel losers=`comm -23 /tmp/el /tmp/elcel` + bogosities= + while read elc; do + el=`echo $elc | sed 's/c$//'` + [ -e $el ] || continue + [ $elc -nt $el ] || bogosities="$bogosities $elc" + done < /tmp/elc + + if [ x"${bogosities}" != x"" ]; then + error=yes + echo "The following .elc files are older than their .el files:" + echo "${bogosities}" + fi + rm -f /tmp/el /tmp/elc /tmp/elcel /tmp/elelc bogosities= @@ -239,9 +254,34 @@ if [ $check = yes ]; then done if [ x"${bogosities}" != x"" ]; then + error=yes echo "The following .el files have no corresponding .elc files:" echo "${bogosities}" fi + + + ## This is only a crude check, eg it does not handle .info + ## files with multiple .texi source files. + find doc -name '*.texi' > /tmp/el + + bogosities= + while read texi; do + info=`sed -n 's/^@setfilename //p' $texi | sed 's|.*info/||'` + [ x"${info}" != x"" ] || continue + info=info/$info + [ -e $info ] || continue + [ $info -nt $texi ] || bogosities="$bogosities $info" + done < /tmp/el + + rm -f /tmp/el + + if [ x"${bogosities}" != x"" ]; then + error=yes + echo "The following .info files are older than their .texi files:" + echo "${bogosities}" + fi + + [ $error = yes ] && exit 1 fi if [ $update = yes ]; then From 953bf67fbea6298cb68b7610fdc09c3fcdf8aeec Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 7 Dec 2016 19:43:36 -0500 Subject: [PATCH 02/14] Improve previous make-dist change * make-dist: Let make check the info files more thoroughly. --- make-dist | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/make-dist b/make-dist index 6182b4931a1..31fa53a6f4d 100755 --- a/make-dist +++ b/make-dist @@ -281,6 +281,13 @@ if [ $check = yes ]; then echo "${bogosities}" fi + ## This exits with non-zero status if any .info files need + ## rebuilding. + if [ -e Makefile ]; then + echo "Checking to see if info files are up-to-date..." + make --question info || error=yes + fi + [ $error = yes ] && exit 1 fi From 5531e75385ca3d02287f4df7788e38090f70b6b7 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 7 Dec 2016 19:45:48 -0500 Subject: [PATCH 03/14] Further improve make-dist checking * make-dist: Print status messages when checking. --- make-dist | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/make-dist b/make-dist index 31fa53a6f4d..e454e924480 100755 --- a/make-dist +++ b/make-dist @@ -204,6 +204,9 @@ them, and try again." >&2 fi if [ $check = yes ]; then + + echo "Sanity checking (use --no-check to disable this)..." + error=no ls -1 lisp/[a-zA-Z]*.el lisp/[a-z]*/[a-zA-Z0-9]*.el \ @@ -288,7 +291,11 @@ if [ $check = yes ]; then make --question info || error=yes fi - [ $error = yes ] && exit 1 + if [ $error = yes ]; then + echo "Failed checks" >&2 + exit 1 + fi + fi if [ $update = yes ]; then From 08decbd04b8346323b80f0dea84a462fe1f46b3f Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 7 Dec 2016 22:53:58 -0800 Subject: [PATCH 04/14] Doc fix for vc-git * lisp/vc/vc-git.el (vc-git-region-history): Add a doc string. --- lisp/vc/vc-git.el | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 9eac5b26f03..eba5be9cbec 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -1009,6 +1009,8 @@ or BRANCH^ (where \"^\" can be repeated)." (buffer-string)))) (defun vc-git-region-history (file buffer lfrom lto) + "Insert into BUFFER the history of FILE for lines LFROM to LTO. +This requires git 1.8.4 or later, for the \"-L\" option of \"git log\"." ;; The "git log" command below interprets the line numbers as applying ;; to the HEAD version of the file, not to the current state of the file. ;; So we need to look at all the local changes and adjust lfrom/lto From e4ac4507968b839569b5ce12a9c4d0374dd46768 Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Fri, 2 Dec 2016 00:03:57 -0500 Subject: [PATCH 05/14] Define struct predicate before acccesors The accessor functions use the predicate function, which causes problems when reloading after unload-feature: the compiler-macro property is still present on the predicate symbol, and the compiler fails to find the definition when trying to inline it into the accessor function (Bug#25088). * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Move predicate definition before field accessor definitions. --- lisp/emacs-lisp/cl-macs.el | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el index c51ed9d8770..b3a60b1b225 100644 --- a/lisp/emacs-lisp/cl-macs.el +++ b/lisp/emacs-lisp/cl-macs.el @@ -2687,6 +2687,14 @@ non-nil value, that slot cannot be set via `setf'. (= safety 1)) (cons 'and (cl-cdddr pred-form)) `(,predicate cl-x)))) + (when pred-form + (push `(cl-defsubst ,predicate (cl-x) + (declare (side-effect-free error-free)) + ,(if (eq (car pred-form) 'and) + (append pred-form '(t)) + `(and ,pred-form t))) + forms) + (push `(put ',name 'cl-deftype-satisfies ',predicate) forms)) (let ((pos 0) (descp descs)) (while descp (let* ((desc (pop descp)) @@ -2741,14 +2749,6 @@ non-nil value, that slot cannot be set via `setf'. (setq pos (1+ pos)))) (setq slots (nreverse slots) defaults (nreverse defaults)) - (when pred-form - (push `(cl-defsubst ,predicate (cl-x) - (declare (side-effect-free error-free)) - ,(if (eq (car pred-form) 'and) - (append pred-form '(t)) - `(and ,pred-form t))) - forms) - (push `(put ',name 'cl-deftype-satisfies ',predicate) forms)) (and copier (push `(defalias ',copier #'copy-sequence) forms)) (if constructor From 442e2f61b742b315bbaec81085df9ee4e79495b1 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 10 Dec 2016 18:11:56 -0800 Subject: [PATCH 06/14] Fixes related to select-enable-clipboard * lisp/menu-bar.el (clipboard-yank, clipboard-kill-ring-save) (clipboard-kill-region): * lisp/eshell/esh-io.el (eshell-virtual-targets) (eshell-clipboard-append): Replace option gui-select-enable-clipboard with select-enable-clipboard; renamed October 2014. (Bug#25145) --- lisp/eshell/esh-io.el | 4 ++-- lisp/menu-bar.el | 8 +++----- lisp/term/pc-win.el | 2 +- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/lisp/eshell/esh-io.el b/lisp/eshell/esh-io.el index 1b4f4093168..e88a4e0f66d 100644 --- a/lisp/eshell/esh-io.el +++ b/lisp/eshell/esh-io.el @@ -125,7 +125,7 @@ from executing while Emacs is redisplaying." 'eshell-kill-append) t) ("/dev/clip" (lambda (mode) (if (eq mode 'overwrite) - (let ((gui-select-enable-clipboard t)) + (let ((select-enable-clipboard t)) (kill-new ""))) 'eshell-clipboard-append) t)) "Map virtual devices name to Emacs Lisp functions. @@ -325,7 +325,7 @@ last execution result should not be changed." (defun eshell-clipboard-append (string) "Call `kill-append' with STRING, if it is indeed a string." (if (stringp string) - (let ((gui-select-enable-clipboard t)) + (let ((select-enable-clipboard t)) (kill-append string nil)))) (defun eshell-get-target (target &optional mode) diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index ba1bf34d1a5..bc182834bdf 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -530,12 +530,10 @@ (gui-backend-selection-exists-p 'CLIPBOARD)) (not buffer-read-only))))) -(defvar gui-select-enable-clipboard) - (defun clipboard-yank () "Insert the clipboard contents, or the last stretch of killed text." (interactive "*") - (let ((gui-select-enable-clipboard t)) + (let ((select-enable-clipboard t)) (yank))) (defun clipboard-kill-ring-save (beg end &optional region) @@ -543,7 +541,7 @@ If the optional argument REGION is non-nil, the function ignores BEG and END, and saves the current region instead." (interactive "r\np") - (let ((gui-select-enable-clipboard t)) + (let ((select-enable-clipboard t)) (kill-ring-save beg end region))) (defun clipboard-kill-region (beg end &optional region) @@ -551,7 +549,7 @@ BEG and END, and saves the current region instead." If the optional argument REGION is non-nil, the function ignores BEG and END, and kills the current region instead." (interactive "r\np") - (let ((gui-select-enable-clipboard t)) + (let ((select-enable-clipboard t)) (kill-region beg end region))) (defun menu-bar-enable-clipboard () diff --git a/lisp/term/pc-win.el b/lisp/term/pc-win.el index 8ca98c6ec91..85c4144ad22 100644 --- a/lisp/term/pc-win.el +++ b/lisp/term/pc-win.el @@ -263,7 +263,7 @@ Consult the selection. Treat empty strings as if they were unset." (if (w16-selection-owner-p selection) t) ;; FIXME: Other systems don't obey - ;; gui-select-enable-clipboard here. + ;; select-enable-clipboard here. (with-demoted-errors "w16-set-clipboard-data: %S" (w16-set-clipboard-data value)) value)) From 5f7d906e88d692db7d60cb8112af9a1825e95627 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 10 Dec 2016 18:23:51 -0800 Subject: [PATCH 07/14] Bump makeinfo requirement from 4.7 to 4.13 * configure.ac: Bump makeinfo version requirement from 4.7 to 4.13. We need at least 4.8, and that may be buggy, so go for the last of the 4 series, which is 8 years old. (Bug#25108) --- configure.ac | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac index d12b12b61aa..4ce7e21ba73 100644 --- a/configure.ac +++ b/configure.ac @@ -1189,14 +1189,13 @@ esac AC_SUBST([PAXCTL_dumped]) AC_SUBST([PAXCTL_notdumped]) -## Need makeinfo >= 4.7 (?) to build the manuals. +## Require makeinfo >= 4.13 (last of the 4.x series) to build the manuals. if test "$MAKEINFO" != "no"; then if test "$MAKEINFO" = "${am_missing_run}makeinfo"; then MAKEINFO=makeinfo fi case `($MAKEINFO --version) 2>/dev/null` in - *' (GNU texinfo) '4.[[7-9]]* | \ - *' (GNU texinfo) '4.[[1-9][0-9]]* | \ + *' (GNU texinfo) '4.1[[3-9]]* | \ *' (GNU texinfo) '[[5-9]]* | \ *' (GNU texinfo) '[[1-9][0-9]]* ) ;; *) MAKEINFO=no;; @@ -1219,7 +1218,7 @@ if test "$MAKEINFO" = "no"; then if test "x${with_makeinfo}" = "xno"; then HAVE_MAKEINFO=no elif test ! -e "$srcdir/info/emacs" && test ! -e "$srcdir/info/emacs.info"; then - AC_MSG_ERROR( [You do not seem to have makeinfo >= 4.7, and your + AC_MSG_ERROR( [You do not seem to have makeinfo >= 4.13, and your source tree does not seem to have pre-built manuals in the 'info' directory. Either install a suitable version of makeinfo, or re-run configure with the '--without-makeinfo' option to build without the manuals.] ) From 6db78ae97e602f7ec06045df7e0388e4c14d0b1d Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 10 Dec 2016 19:44:14 -0800 Subject: [PATCH 08/14] Fix a typo in define-abbrev-table * lisp/abbrev.el (define-abbrev-table): Fix typo in docstring handling. --- lisp/abbrev.el | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lisp/abbrev.el b/lisp/abbrev.el index 8c4f6eb01b2..165b24735a0 100644 --- a/lisp/abbrev.el +++ b/lisp/abbrev.el @@ -979,10 +979,10 @@ Properties with special meaning: ;; We used to manually add the docstring, but we also want to record this ;; location as the definition of the variable (in load-history), so we may ;; as well just use `defvar'. - (if (and docstring props (symbolp docstring)) - ;; There is really no docstring, instead the docstring arg - ;; is a property name. - (push docstring props) (setq docstring nil)) + (when (and docstring props (symbolp docstring)) + ;; There is really no docstring, instead the docstring arg + ;; is a property name. + (push docstring props) (setq docstring nil)) (eval `(defvar ,tablename nil ,@(if docstring (list docstring)))) (let ((table (if (boundp tablename) (symbol-value tablename)))) (unless table From 467768f64ee109fe127619e75fee7f3b5de1fec1 Mon Sep 17 00:00:00 2001 From: Michael Albinus Date: Sun, 11 Dec 2016 10:50:17 +0100 Subject: [PATCH 09/14] Fix Bug#25162 * doc/emacs/files.texi (Reverting): Document auto-revert-remote-files and auto-revert-verbose. * lisp/autorevert.el (auto-revert-verbose, auto-revert-mode) (auto-revert-tail-mode, global-auto-revert-mode): Fix docstring. --- doc/emacs/files.texi | 8 +++++++- lisp/autorevert.el | 11 ++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi index fc46ef7879a..264154be66f 100644 --- a/doc/emacs/files.texi +++ b/doc/emacs/files.texi @@ -937,6 +937,8 @@ discard your changes.) @findex auto-revert-mode @findex auto-revert-tail-mode @vindex auto-revert-interval +@vindex auto-revert-remote-files +@vindex auto-revert-verbose You can also tell Emacs to revert buffers periodically. To do this for a specific buffer, enable the minor mode Auto-Revert mode by typing @kbd{M-x auto-revert-mode}. This automatically reverts the @@ -944,7 +946,8 @@ current buffer every five seconds; you can change the interval through the variable @code{auto-revert-interval}. To do the same for all file buffers, type @kbd{M-x global-auto-revert-mode} to enable Global Auto-Revert mode. These minor modes do not check or revert remote -files, because that is usually too slow. +files, because that is usually too slow. This behavior can be changed +by setting the variable @code{auto-revert-remote-files} to non-@code{nil}. One use of Auto-Revert mode is to ``tail'' a file such as a system log, so that changes made to that file by other programs are @@ -955,6 +958,9 @@ the end, use Auto-Revert Tail mode instead (@code{auto-revert-tail-mode}). It is more efficient for this. Auto-Revert Tail mode works also for remote files. + When a buffer is auto-reverted, a message is generated. This can be +suppressed by setting @code{auto-revert-verbose} to @code{nil}. + @xref{VC Undo}, for commands to revert to earlier versions of files under version control. @xref{VC Mode Line}, for Auto Revert peculiarities when visiting files under version control. diff --git a/lisp/autorevert.el b/lisp/autorevert.el index b8693dfb210..d2a6213c3a8 100644 --- a/lisp/autorevert.el +++ b/lisp/autorevert.el @@ -168,7 +168,7 @@ Thus, with this setting, Emacs might be non-responsive at times." (defcustom auto-revert-verbose t "When nil, Auto-Revert Mode does not generate any messages. -When non-nil, a message is generated whenever a file is reverted." +When non-nil, a message is generated whenever a buffer is reverted." :group 'auto-revert :type 'boolean) @@ -346,6 +346,9 @@ Auto Revert mode is a minor mode that affects only the current buffer. When enabled, it reverts the buffer when the file on disk changes. +When a buffer is reverted, a message is generated. This can be +suppressed by setting `auto-revert-verbose' to nil. + Use `global-auto-revert-mode' to automatically revert all buffers. Use `auto-revert-tail-mode' if you know that the file will only grow without being changed in the part that is already in the buffer." @@ -388,6 +391,9 @@ You can edit the buffer and turn this mode off and on again as you please. But make sure the background process has stopped writing before you save the file! +When a buffer is reverted, a message is generated. This can be +suppressed by setting `auto-revert-verbose' to nil. + Use `auto-revert-mode' for changes other than appends!" :group 'find-file :lighter auto-revert-tail-mode-text (when auto-revert-tail-mode @@ -452,6 +458,9 @@ documentation of that variable. It ignores buffers with modes matching `global-auto-revert-ignore-modes', and buffers with a non-nil vale of `global-auto-revert-ignore-buffer'. +When a buffer is reverted, a message is generated. This can be +suppressed by setting `auto-revert-verbose' to nil. + This function calls the hook `global-auto-revert-mode-hook'. It displays the text that `global-auto-revert-mode-text' specifies in the mode line." From b19fb4995efd7490527400c89becfcf2b6ed4b53 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Fri, 16 Dec 2016 10:49:31 +0200 Subject: [PATCH 10/14] Improve documentation of 'define-coding-system' * lisp/international/mule.el (define-coding-system): Warn against possible infinite recursion in pre-write-conversion and post-read-conversion functions. (Bug#25203) --- lisp/international/mule.el | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/lisp/international/mule.el b/lisp/international/mule.el index 21ab7e176d7..08d37b45a3d 100644 --- a/lisp/international/mule.el +++ b/lisp/international/mule.el @@ -713,7 +713,11 @@ decoded by the coding system itself and before any functions in `after-insert-functions' are called. This function is passed one argument: the number of characters in the text to convert, with point at the start of the text. The function should leave point -unchanged, and should return the new character count. +unchanged, and should return the new character count. Note that +this function should avoid reading from files or receiving text +from subprocesses -- anything that could invoke decoding; if it +must do so, it should bind `coding-system-for-read' to a value +other than the current coding-system, to avoid infinite recursion. `:pre-write-conversion' @@ -722,7 +726,12 @@ VALUE must be a function to call after all functions in called, and before the text is encoded by the coding system itself. This function should convert the whole text in the current buffer. For backward compatibility, this function is -passed two arguments which can be ignored. +passed two arguments which can be ignored. Note that this +function should avoid writing to files or sending text to +subprocesses -- anything that could invoke encoding; if it +must do so, it should bind `coding-system-for-write' to a +value other than the current coding-system, to avoid infinite +recursion. `:default-char' From 43022f9860d00b0f1baad34c6ea7ffd51f3cfc1d Mon Sep 17 00:00:00 2001 From: Dmitry Gutov Date: Sat, 17 Dec 2016 01:52:12 +0200 Subject: [PATCH 11/14] Ignore forward-sexp-function in js-mode indentation code * lisp/progmodes/js.el (js--multi-line-declaration-indentation) (js--maybe-goto-declaration-keyword-end): Bind forward-sexp-function to nil (bug#25215). --- lisp/progmodes/js.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el index 6d995a095e6..9aa459d1bc7 100644 --- a/lisp/progmodes/js.el +++ b/lisp/progmodes/js.el @@ -1851,7 +1851,8 @@ nil." "Helper function for `js--proper-indentation'. Return the proper indentation of the current line if it belongs to a declaration statement spanning multiple lines; otherwise, return nil." - (let (at-opening-bracket) + (let (forward-sexp-function ; Use Lisp version. + at-opening-bracket) (save-excursion (back-to-indentation) (when (not (looking-at js--declaration-keyword-re)) @@ -1928,6 +1929,7 @@ indentation is aligned to that column." (let ((bracket (nth 1 parse-status)) declaration-keyword-end at-closing-bracket-p + forward-sexp-function ; Use Lisp version. comma-p) (when (looking-at js--declaration-keyword-re) (setq declaration-keyword-end (match-end 0)) From 3d94931cec5850fc4dc5ffc9f1bf88a291aa3a5b Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 17 Dec 2016 19:05:21 +0200 Subject: [PATCH 12/14] Repair desktop restoration on text terminals * lisp/desktop.el (desktop-restoring-frameset-p): Test for the GUI frame here, instead of in desktop-restoring-frameset. That's because desktop-read wants to know whether frameset will actually be restored, and has fallback procedures up its sleeve when it won't be; these fallbacks need to be invoked when the frameset is not going to be restored. (Bug#24298) --- lisp/desktop.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lisp/desktop.el b/lisp/desktop.el index 1f460b7a3ed..e83891bf05d 100644 --- a/lisp/desktop.el +++ b/lisp/desktop.el @@ -1157,13 +1157,13 @@ This function also sets `desktop-dirname' to nil." ;; ---------------------------------------------------------------------------- (defun desktop-restoring-frameset-p () "True if calling `desktop-restore-frameset' will actually restore it." - (and desktop-restore-frames desktop-saved-frameset t)) + (and desktop-restore-frames desktop-saved-frameset (display-graphic-p) t)) (defun desktop-restore-frameset () "Restore the state of a set of frames. This function depends on the value of `desktop-saved-frameset' being set (usually, by reading it from the desktop)." - (when (and (display-graphic-p) (desktop-restoring-frameset-p)) + (when (desktop-restoring-frameset-p) (frameset-restore desktop-saved-frameset :reuse-frames (eq desktop-restore-reuses-frames t) :cleanup-frames (not (eq desktop-restore-reuses-frames 'keep)) From 229315c0e248fb921e986d28bcd20a7f83fe3109 Mon Sep 17 00:00:00 2001 From: Philipp Stephani Date: Sun, 18 Dec 2016 22:27:42 +0100 Subject: [PATCH 13/14] ; Add missing symbol quoting. * lisp/vc/ediff-util.el (ediff-janitor): Add missing symbol quoting. --- lisp/vc/ediff-util.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/vc/ediff-util.el b/lisp/vc/ediff-util.el index 10b84fa8851..6781f504894 100644 --- a/lisp/vc/ediff-util.el +++ b/lisp/vc/ediff-util.el @@ -2624,7 +2624,7 @@ temporarily reverses the meaning of this variable." (defun ediff-janitor (ask keep-variants) "Kill buffers A, B, and, possibly, C, if these buffers aren't modified. In merge jobs, buffer C is not deleted here, but rather according to -ediff-quit-merge-hook. +`ediff-quit-merge-hook'. ASK non-nil means ask the user whether to keep each unmodified buffer, unless KEEP-VARIANTS is non-nil, in which case buffers are never killed. A side effect of cleaning up may be that you should be careful when comparing From 9adb101353e1f3d41a8f822fa4164e9b41e82ce5 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Mon, 19 Dec 2016 19:57:22 +0200 Subject: [PATCH 14/14] Document 'describe-fontset' * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'. (Bug#25216) --- doc/emacs/mule.texi | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/emacs/mule.texi b/doc/emacs/mule.texi index 882d75f5e61..a0925747ff2 100644 --- a/doc/emacs/mule.texi +++ b/doc/emacs/mule.texi @@ -1369,6 +1369,13 @@ Resources}). characters the font does not cover. The standard fontset is only used if explicitly requested, despite its name. +@findex describe-fontset + To show the information about a specific fontset, use the +@w{@kbd{M-x describe-fontset}} command. It prompts for a fontset +name, defaulting to the one used by the current frame, and then +displays all the subranges of characters and the fonts assigned to +them in that fontset. + A fontset does not necessarily specify a font for every character code. If a fontset specifies no font for a certain character, or if it specifies a font that does not exist on your system, then it cannot