aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrea Corallo2020-10-04 19:45:05 +0200
committerAndrea Corallo2020-10-04 19:45:05 +0200
commit44ef24342fd8a2ac876212124ebf38673acda35a (patch)
tree793dc4ba4197559b4bc65339d713c0807a7b2ca9
parentafb765ab3cab7b6582d0def543b23603cd076445 (diff)
parentd8665e6d3473403c90a0831e83439a013d0012d3 (diff)
downloademacs-44ef24342fd8a2ac876212124ebf38673acda35a.tar.gz
emacs-44ef24342fd8a2ac876212124ebf38673acda35a.zip
Merge remote-tracking branch 'savannah/master' into HEAD
-rw-r--r--ChangeLog.14
-rw-r--r--ChangeLog.248
-rw-r--r--ChangeLog.3238
-rw-r--r--admin/ChangeLog.14
-rw-r--r--admin/find-gc.el4
-rw-r--r--configure.ac2
-rw-r--r--doc/emacs/basic.texi15
-rw-r--r--doc/emacs/dired.texi11
-rw-r--r--doc/emacs/search.texi9
-rw-r--r--doc/lispref/loading.texi4
-rw-r--r--doc/lispref/tips.texi2
-rw-r--r--doc/misc/calc.texi8
-rw-r--r--doc/misc/cl.texi2
-rw-r--r--doc/misc/edt.texi2
-rw-r--r--doc/misc/emacs-mime.texi2
-rw-r--r--doc/misc/flymake.texi2
-rw-r--r--doc/misc/gnus.texi2
-rw-r--r--doc/misc/tramp.texi18
-rw-r--r--doc/misc/widget.texi22
-rw-r--r--etc/ChangeLog.14
-rw-r--r--etc/NEWS31
-rw-r--r--etc/compilation.txt2
-rw-r--r--lib-src/ChangeLog.18
-rw-r--r--lisp/ChangeLog.104
-rw-r--r--lisp/ChangeLog.134
-rw-r--r--lisp/ChangeLog.144
-rw-r--r--lisp/ChangeLog.1514
-rw-r--r--lisp/ChangeLog.1616
-rw-r--r--lisp/ChangeLog.1714
-rw-r--r--lisp/ChangeLog.32
-rw-r--r--lisp/ChangeLog.62
-rw-r--r--lisp/ChangeLog.76
-rw-r--r--lisp/ChangeLog.84
-rw-r--r--lisp/ChangeLog.910
-rw-r--r--lisp/align.el6
-rw-r--r--lisp/allout.el6
-rw-r--r--lisp/ansi-color.el2
-rw-r--r--lisp/autorevert.el112
-rw-r--r--lisp/calc/calc-forms.el26
-rw-r--r--lisp/calc/calc-units.el8
-rw-r--r--lisp/calendar/calendar.el2
-rw-r--r--lisp/calendar/timeclock.el2
-rw-r--r--lisp/cedet/ChangeLog.14
-rw-r--r--lisp/cedet/ede/autoconf-edit.el2
-rw-r--r--lisp/cedet/ede/detect.el2
-rw-r--r--lisp/cedet/semantic/bovine/scm.el2
-rw-r--r--lisp/cedet/semantic/java.el2
-rw-r--r--lisp/cedet/srecode/fields.el2
-rw-r--r--lisp/color.el2
-rw-r--r--lisp/comint.el2
-rw-r--r--lisp/completion.el2
-rw-r--r--lisp/descr-text.el2
-rw-r--r--lisp/dired.el54
-rw-r--r--lisp/doc-view.el6
-rw-r--r--lisp/double.el2
-rw-r--r--lisp/ebuff-menu.el1
-rw-r--r--lisp/ehelp.el4
-rw-r--r--lisp/electric.el2
-rw-r--r--lisp/emacs-lisp/autoload.el138
-rw-r--r--lisp/emacs-lisp/backtrace.el11
-rw-r--r--lisp/emacs-lisp/bytecomp.el3
-rw-r--r--lisp/emacs-lisp/cl-macs.el2
-rw-r--r--lisp/emacs-lisp/debug.el17
-rw-r--r--lisp/emacs-lisp/eieio-base.el2
-rw-r--r--lisp/emacs-lisp/ert.el4
-rw-r--r--lisp/emacs-lisp/generic.el2
-rw-r--r--lisp/emacs-lisp/package.el11
-rw-r--r--lisp/emacs-lisp/re-builder.el4
-rw-r--r--lisp/emulation/cua-base.el7
-rw-r--r--lisp/emulation/cua-rect.el4
-rw-r--r--lisp/epa-mail.el17
-rw-r--r--lisp/epa.el51
-rw-r--r--lisp/erc/ChangeLog.18
-rw-r--r--lisp/erc/erc-button.el4
-rw-r--r--lisp/erc/erc-track.el2
-rw-r--r--lisp/erc/erc.el4
-rw-r--r--lisp/eshell/esh-util.el2
-rw-r--r--lisp/eshell/esh-var.el4
-rw-r--r--lisp/faces.el2
-rw-r--r--lisp/ffap.el2
-rw-r--r--lisp/filecache.el2
-rw-r--r--lisp/files.el4
-rw-r--r--lisp/filesets.el2
-rw-r--r--lisp/find-file.el4
-rw-r--r--lisp/follow.el4
-rw-r--r--lisp/font-lock.el2
-rw-r--r--lisp/forms.el2
-rw-r--r--lisp/gnus/ChangeLog.210
-rw-r--r--lisp/gnus/ChangeLog.324
-rw-r--r--lisp/gnus/gnus-util.el8
-rw-r--r--lisp/gnus/message.el6
-rw-r--r--lisp/gnus/mm-util.el2
-rw-r--r--lisp/gnus/mml-sec.el68
-rw-r--r--lisp/gnus/nndiary.el2
-rw-r--r--lisp/gnus/nnmaildir.el2
-rw-r--r--lisp/gnus/nnrss.el2
-rw-r--r--lisp/gnus/spam-stat.el2
-rw-r--r--lisp/hexl.el4
-rw-r--r--lisp/hi-lock.el1
-rw-r--r--lisp/image-dired.el10
-rw-r--r--lisp/image.el2
-rw-r--r--lisp/international/characters.el2
-rw-r--r--lisp/international/titdic-cnv.el4
-rw-r--r--lisp/international/ucs-normalize.el6
-rw-r--r--lisp/isearch.el98
-rw-r--r--lisp/jsonrpc.el6
-rw-r--r--lisp/language/tibet-util.el2
-rw-r--r--lisp/ldefs-boot.el178
-rw-r--r--lisp/leim/quail/ipa.el2
-rw-r--r--lisp/mail/mail-extr.el4
-rw-r--r--lisp/mail/mailalias.el2
-rw-r--r--lisp/mail/rmail.el2
-rw-r--r--lisp/mail/smtpmail.el2
-rw-r--r--lisp/master.el10
-rw-r--r--lisp/menu-bar.el2
-rw-r--r--lisp/mh-e/ChangeLog.124
-rw-r--r--lisp/mh-e/mh-compat.el2
-rw-r--r--lisp/mh-e/mh-e.el110
-rw-r--r--lisp/mh-e/mh-junk.el2
-rw-r--r--lisp/mh-e/mh-thread.el2
-rw-r--r--lisp/minibuffer.el12
-rw-r--r--lisp/misearch.el6
-rw-r--r--lisp/mouse.el8
-rw-r--r--lisp/net/dbus.el3
-rw-r--r--lisp/net/eww.el8
-rw-r--r--lisp/net/gnutls.el7
-rw-r--r--lisp/net/net-utils.el2
-rw-r--r--lisp/net/newst-backend.el10
-rw-r--r--lisp/net/newsticker.el2
-rw-r--r--lisp/net/nsm.el2
-rw-r--r--lisp/net/puny.el8
-rw-r--r--lisp/net/secrets.el2
-rw-r--r--lisp/net/soap-client.el4
-rw-r--r--lisp/net/tramp-compat.el8
-rw-r--r--lisp/net/tramp-sh.el4
-rw-r--r--lisp/notifications.el2
-rw-r--r--lisp/obsolete/erc-hecomplete.el2
-rw-r--r--lisp/org/ChangeLog.178
-rw-r--r--lisp/org/ob-plantuml.el2
-rw-r--r--lisp/org/ob-ruby.el4
-rw-r--r--lisp/org/ob-sass.el2
-rw-r--r--lisp/org/ob-stan.el2
-rw-r--r--lisp/org/ol-bibtex.el2
-rw-r--r--lisp/org/org-num.el2
-rw-r--r--lisp/org/org-table.el4
-rw-r--r--lisp/org/org.el2
-rw-r--r--lisp/org/ox.el4
-rw-r--r--lisp/pcmpl-unix.el2
-rw-r--r--lisp/play/bubbles.el2
-rw-r--r--lisp/play/gametree.el4
-rw-r--r--lisp/printing.el10
-rw-r--r--lisp/progmodes/antlr-mode.el2
-rw-r--r--lisp/progmodes/bat-mode.el2
-rw-r--r--lisp/progmodes/cc-styles.el6
-rw-r--r--lisp/progmodes/cperl-mode.el2
-rw-r--r--lisp/progmodes/ebnf-abn.el2
-rw-r--r--lisp/progmodes/ebnf-dtd.el6
-rw-r--r--lisp/progmodes/ebnf-ebx.el2
-rw-r--r--lisp/progmodes/ebnf2ps.el14
-rw-r--r--lisp/progmodes/ebrowse.el2
-rw-r--r--lisp/progmodes/flymake-cc.el2
-rw-r--r--lisp/progmodes/flymake-proc.el2
-rw-r--r--lisp/progmodes/gdb-mi.el2
-rw-r--r--lisp/progmodes/gud.el2
-rw-r--r--lisp/progmodes/hideif.el2
-rw-r--r--lisp/progmodes/idlw-complete-structtag.el2
-rw-r--r--lisp/progmodes/idlw-help.el2
-rw-r--r--lisp/progmodes/idlw-shell.el6
-rw-r--r--lisp/progmodes/idlw-toolbar.el2
-rw-r--r--lisp/progmodes/idlwave.el8
-rw-r--r--lisp/progmodes/perl-mode.el2
-rw-r--r--lisp/progmodes/python.el81
-rw-r--r--lisp/progmodes/ruby-mode.el2
-rw-r--r--lisp/progmodes/sh-script.el1
-rw-r--r--lisp/progmodes/sql.el10
-rw-r--r--lisp/ps-def.el2
-rw-r--r--lisp/ps-print.el4
-rw-r--r--lisp/ps-samp.el4
-rw-r--r--lisp/recentf.el10
-rw-r--r--lisp/replace.el18
-rw-r--r--lisp/ses.el2
-rw-r--r--lisp/shell.el2
-rw-r--r--lisp/simple.el41
-rw-r--r--lisp/startup.el2
-rw-r--r--lisp/strokes.el6
-rw-r--r--lisp/subr.el9
-rw-r--r--lisp/talk.el2
-rw-r--r--lisp/tempo.el20
-rw-r--r--lisp/term.el10
-rw-r--r--lisp/term/internal.el6
-rw-r--r--lisp/textmodes/artist.el9
-rw-r--r--lisp/textmodes/css-mode.el24
-rw-r--r--lisp/textmodes/flyspell.el2
-rw-r--r--lisp/textmodes/ispell.el2
-rw-r--r--lisp/textmodes/table.el14
-rw-r--r--lisp/textmodes/tex-mode.el2
-rw-r--r--lisp/thingatpt.el2
-rw-r--r--lisp/thumbs.el2
-rw-r--r--lisp/url/ChangeLog.12
-rw-r--r--lisp/url/url-auth.el2
-rw-r--r--lisp/url/url-cache.el4
-rw-r--r--lisp/url/url-irc.el2
-rw-r--r--lisp/url/url.el2
-rw-r--r--lisp/vc/pcvs.el3
-rw-r--r--lisp/wdired.el8
-rw-r--r--lisp/whitespace.el2
-rw-r--r--lisp/wid-edit.el89
-rw-r--r--lisp/window.el4
-rw-r--r--lisp/xml.el2
-rw-r--r--m4/pkg.m42
-rw-r--r--nextstep/ChangeLog.12
-rw-r--r--src/ChangeLog.1014
-rw-r--r--src/ChangeLog.1120
-rw-r--r--src/ChangeLog.1210
-rw-r--r--src/ChangeLog.1332
-rw-r--r--src/ChangeLog.36
-rw-r--r--src/ChangeLog.810
-rw-r--r--src/ChangeLog.92
-rw-r--r--src/dbusbind.c17
-rw-r--r--src/image.c10
-rw-r--r--src/indent.c30
-rw-r--r--src/w16select.c2
-rw-r--r--src/w32.c9
-rw-r--r--src/w32select.c2
-rw-r--r--src/xdisp.c95
-rw-r--r--test/data/syntax-comments.txt68
-rw-r--r--test/lisp/calc/calc-tests.el116
-rw-r--r--test/lisp/electric-tests.el3
-rw-r--r--test/lisp/emacs-lisp/backtrace-tests.el2
-rw-r--r--test/lisp/emacs-lisp/edebug-tests.el2
-rw-r--r--test/lisp/files-tests.el4
-rw-r--r--test/lisp/gnus/gnus-util-tests.el13
-rw-r--r--test/lisp/gnus/mml-sec-tests.el32
-rw-r--r--test/lisp/mail/uudecode-tests.el4
-rw-r--r--test/lisp/net/dbus-resources/org.gnu.Emacs.TestDBus.xml49
-rw-r--r--test/lisp/net/dbus-tests.el816
-rw-r--r--test/lisp/obsolete/cl-tests.el3
-rw-r--r--test/lisp/progmodes/python-tests.el4
-rw-r--r--test/lisp/simple-tests.el2
-rw-r--r--test/lisp/vc/vc-bzr-tests.el5
-rw-r--r--test/lisp/wdired-tests.el16
-rw-r--r--test/manual/cedet/tests/testnsp.cpp2
-rw-r--r--test/src/coding-tests.el2
-rw-r--r--test/src/indent-tests.el59
-rw-r--r--test/src/regex-resources/BOOST.tests4
-rw-r--r--test/src/syntax-tests.el349
246 files changed, 3014 insertions, 1196 deletions
diff --git a/ChangeLog.1 b/ChangeLog.1
index 08343f0fd41..1fb7b78fa62 100644
--- a/ChangeLog.1
+++ b/ChangeLog.1
@@ -12,7 +12,7 @@
12 "/usr/include/glib-2.0/glib/gmem.h: ... warning: unknown attribute 12 "/usr/include/glib-2.0/glib/gmem.h: ... warning: unknown attribute
13 '__alloc_size__' ignored". Use -Werror when checking for -nopie; 13 '__alloc_size__' ignored". Use -Werror when checking for -nopie;
14 otherwise clang warns about -nopie instead of failing, and then 14 otherwise clang warns about -nopie instead of failing, and then
15 later it warns everytime the build uses -nopie. 15 later it warns every time the build uses -nopie.
16 16
172015-04-03 Ulrich Müller <ulm@gentoo.org> 172015-04-03 Ulrich Müller <ulm@gentoo.org>
18 18
@@ -1657,7 +1657,7 @@
1657 1657
16582013-12-08 Paul Eggert <eggert@cs.ucla.edu> 16582013-12-08 Paul Eggert <eggert@cs.ucla.edu>
1659 1659
1660 * configure.ac: Simplify supression of GTK deprecation warning. 1660 * configure.ac: Simplify suppression of GTK deprecation warning.
1661 Move -DGDK_DISABLE_DEPRECATION_WARNINGS out of the command line 1661 Move -DGDK_DISABLE_DEPRECATION_WARNINGS out of the command line
1662 and into config.h, to shorten the command line when doing 'make'. 1662 and into config.h, to shorten the command line when doing 'make'.
1663 Don't AC_SUBST GTK_CFLAGS, as this is not needed. 1663 Don't AC_SUBST GTK_CFLAGS, as this is not needed.
diff --git a/ChangeLog.2 b/ChangeLog.2
index 9e875c561db..ebaf3846dca 100644
--- a/ChangeLog.2
+++ b/ChangeLog.2
@@ -485,7 +485,7 @@
485 Clarify major mode switching 485 Clarify major mode switching
486 486
487 * doc/emacs/modes.texi (Major Modes): 487 * doc/emacs/modes.texi (Major Modes):
488 * doc/lispref/modes.texi (Modes, Major Modes): Explictly say that each 488 * doc/lispref/modes.texi (Modes, Major Modes): Explicitly say that each
489 buffer has exactly one major mode and can't be "turned off", only 489 buffer has exactly one major mode and can't be "turned off", only
490 switched away from (Bug#25357). 490 switched away from (Bug#25357).
491 491
@@ -1661,7 +1661,7 @@
1661 `re_match_2_internal' uses pointers to the lisp objects that it 1661 `re_match_2_internal' uses pointers to the lisp objects that it
1662 searches. Since it may call malloc when growing the "fail stack", these 1662 searches. Since it may call malloc when growing the "fail stack", these
1663 pointers may be invalidated while searching, resulting in memory 1663 pointers may be invalidated while searching, resulting in memory
1664 curruption (Bug #24358). 1664 corruption (Bug #24358).
1665 1665
1666 To fix this, we check the pointer that the lisp object (as specified by 1666 To fix this, we check the pointer that the lisp object (as specified by
1667 re_match_object) points to before and after growing the stack, and 1667 re_match_object) points to before and after growing the stack, and
@@ -2681,7 +2681,7 @@
2681 2681
2682 * doc/misc/ses.texi (Quick Tutorial): Mention the '!' 2682 * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
2683 'ses-range' modifier as an alternative to 'ses+'. 2683 'ses-range' modifier as an alternative to 'ses+'.
2684 (Advanced Features): Add a refernce to node 'Nonrelocatable 2684 (Advanced Features): Add a reference to node 'Nonrelocatable
2685 references' concerning function 'ses-rename-cell'. 2685 references' concerning function 'ses-rename-cell'.
2686 (Standard formula functions): Mention the '!' 'ses-range' 2686 (Standard formula functions): Mention the '!' 'ses-range'
2687 modifier as an alternative to 'ses-delete-blanks'. 2687 modifier as an alternative to 'ses-delete-blanks'.
@@ -3983,7 +3983,7 @@
3983 3983
39842016-05-10 Dmitry Gutov <dgutov@yandex.ru> 39842016-05-10 Dmitry Gutov <dgutov@yandex.ru>
3985 3985
3986 Don't treat JS spread as contination method call 3986 Don't treat JS spread as continuation method call
3987 3987
3988 * lisp/progmodes/js.el (js--indent-operator-re): 3988 * lisp/progmodes/js.el (js--indent-operator-re):
3989 Allow only one dot (bug#23492). 3989 Allow only one dot (bug#23492).
@@ -4530,7 +4530,7 @@
4530 cursor-type doc fix 4530 cursor-type doc fix
4531 4531
4532 * src/buffer.c (syms_of_buffer): Mention that cursor-type's 4532 * src/buffer.c (syms_of_buffer): Mention that cursor-type's
4533 WIDHT/HEIGHT can't exceed the frame char size (bug#19215). 4533 WIDTH/HEIGHT can't exceed the frame char size (bug#19215).
4534 4534
4535 (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987) 4535 (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
4536 4536
@@ -4599,7 +4599,7 @@
4599 4599
46002016-05-01 Lars Ingebrigtsen <larsi@gnus.org> 46002016-05-01 Lars Ingebrigtsen <larsi@gnus.org>
4601 4601
4602 Explictly explain that package-initialize loads the packages 4602 Explicitly explain that package-initialize loads the packages
4603 4603
4604 * lisp/emacs-lisp/package.el (package-initialize): Be explicit 4604 * lisp/emacs-lisp/package.el (package-initialize): Be explicit
4605 in saying that `package-initialize' obviates adjusting the 4605 in saying that `package-initialize' obviates adjusting the
@@ -5985,7 +5985,7 @@
5985 5985
59862016-03-30 Alan Mackenzie <acm@muc.de> 59862016-03-30 Alan Mackenzie <acm@muc.de>
5987 5987
5988 Finish fixing a cacheing bug in CC Mode (see 2016-03-09) 5988 Finish fixing a caching bug in CC Mode (see 2016-03-09)
5989 5989
5990 * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove 5990 * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
5991 superfluous invocations of c-self-bind-state-cache. 5991 superfluous invocations of c-self-bind-state-cache.
@@ -6609,7 +6609,7 @@
6609 6609
66102016-03-14 Alan Mackenzie <acm@muc.de> 66102016-03-14 Alan Mackenzie <acm@muc.de>
6611 6611
6612 Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun. 6612 Fix a caching bug, which led to inordinately slow c-beginning-of-defun.
6613 6613
6614 * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro. 6614 * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6615 6615
@@ -6624,7 +6624,7 @@
6624 6624
66252016-03-14 Alan Mackenzie <acm@muc.de> 66252016-03-14 Alan Mackenzie <acm@muc.de>
6626 6626
6627 Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun. 6627 Fix a caching bug, which led to inordinately slow c-beginning-of-defun.
6628 6628
6629 * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro. 6629 * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6630 6630
@@ -7145,7 +7145,7 @@
7145 7145
7146 Prevent infinite loop on not-well-formed xml. (Bug#16344) 7146 Prevent infinite loop on not-well-formed xml. (Bug#16344)
7147 7147
7148 * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344) 7148 * lisp/xml.el (xml-parse-tag-1): Prevent infinite loop. (Bug#16344)
7149 * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add 7149 * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
7150 test cases for Bug#16344. 7150 test cases for Bug#16344.
7151 7151
@@ -9956,7 +9956,7 @@
9956 * lisp/files.el (dir-locals-find-file): Refactor return values 9956 * lisp/files.el (dir-locals-find-file): Refactor return values
9957 9957
9958 Returning a cache remains unchanged, but the case of returning a 9958 Returning a cache remains unchanged, but the case of returning a
9959 file (or pattern) is now changed to return the contaning 9959 file (or pattern) is now changed to return the containing
9960 directory. 9960 directory.
9961 9961
9962 (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir' 9962 (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
@@ -10856,7 +10856,7 @@
10856 10856
108572016-01-18 Alan Mackenzie <acm@muc.de> 108572016-01-18 Alan Mackenzie <acm@muc.de>
10858 10858
10859 Desktop: protect users against inadvertant upgrading of desktop file. 10859 Desktop: protect users against inadvertent upgrading of desktop file.
10860 10860
10861 An upgraded (version 208) desktop file cannot be read in Emacs < 25. 10861 An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10862 10862
@@ -11212,7 +11212,7 @@
11212 11212
112132016-01-13 Eli Zaretskii <eliz@gnu.org> 112132016-01-13 Eli Zaretskii <eliz@gnu.org>
11214 11214
11215 Document the new deafault value of 'load-read-function' 11215 Document the new default value of 'load-read-function'
11216 11216
11217 * doc/lispref/loading.texi (How Programs Do Loading): Document the 11217 * doc/lispref/loading.texi (How Programs Do Loading): Document the
11218 change in the default value of 'load-read-function'. 11218 change in the default value of 'load-read-function'.
@@ -19985,7 +19985,7 @@
19985 * src/intervals.h: Don’t include dispextern.h, composite.h. 19985 * src/intervals.h: Don’t include dispextern.h, composite.h.
19986 * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h. 19986 * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
19987 Include coding.h. 19987 Include coding.h.
19988 * src/keyboard.h: Don’t incldue systime.h. 19988 * src/keyboard.h: Don’t include systime.h.
19989 * src/keymap.c: Don’t include charset.h, frame.h. 19989 * src/keymap.c: Don’t include charset.h, frame.h.
19990 * src/lread.c: Include dispextern.h and systime.h. 19990 * src/lread.c: Include dispextern.h and systime.h.
19991 Don’t include frame.h. Include systime.h. 19991 Don’t include frame.h. Include systime.h.
@@ -21808,7 +21808,7 @@
218082015-09-26 Paul Eggert <eggert@cs.ucla.edu> 218082015-09-26 Paul Eggert <eggert@cs.ucla.edu>
21809 21809
21810 * admin/MAINTAINERS: Add self, plus list some more files 21810 * admin/MAINTAINERS: Add self, plus list some more files
21811 sans maintaners. 21811 sans maintainers.
21812 21812
218132015-09-26 Zachary Kanfer <zkanfer@gmail.com> (tiny change) 218132015-09-26 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
21814 21814
@@ -22530,7 +22530,7 @@
22530 22530
22531 Omit unnecessary \ before paren in C docstrings 22531 Omit unnecessary \ before paren in C docstrings
22532 Although \( is needed in docstrings in Elisp code, it is not needed in 22532 Although \( is needed in docstrings in Elisp code, it is not needed in
22533 docstrings in C code, since C function definitiions do not start with 22533 docstrings in C code, since C function definitions do not start with
22534 a parenthesis. The backslashes made the docstrings a bit harder to 22534 a parenthesis. The backslashes made the docstrings a bit harder to
22535 read and to format in columns. Also, some C docstrings had ( in 22535 read and to format in columns. Also, some C docstrings had ( in
22536 column 1 and this did not appear to be causing any problems. So, 22536 column 1 and this did not appear to be causing any problems. So,
@@ -24607,7 +24607,7 @@
24607 24607
24608 Tweak startup screen quoting 24608 Tweak startup screen quoting
24609 * lisp/startup.el (normal-splash-screen): Use standard 24609 * lisp/startup.el (normal-splash-screen): Use standard
24610 "M-" abbrevation rather than a confusingly-different one. 24610 "M-" abbreviation rather than a confusingly-different one.
24611 (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’. 24611 (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
24612 24612
246132015-08-27 Paul Eggert <eggert@cs.ucla.edu> 246132015-08-27 Paul Eggert <eggert@cs.ucla.edu>
@@ -27510,7 +27510,7 @@
27510 Allocate and use slightly-larger cost vectors, ones based on 27510 Allocate and use slightly-larger cost vectors, ones based on
27511 FRAME_TOTAL_LINES instead of FRAME_LINES. 27511 FRAME_TOTAL_LINES instead of FRAME_LINES.
27512 27512
27513 Fix uninitalized value in encode_coding_object 27513 Fix uninitialized value in encode_coding_object
27514 * src/coding.c (encode_coding_object): Also initialize 27514 * src/coding.c (encode_coding_object): Also initialize
27515 coding->src_pos and coding->src_pos_byte when NILP (src_object). 27515 coding->src_pos and coding->src_pos_byte when NILP (src_object).
27516 This avoids later use of uninitialized storage. 27516 This avoids later use of uninitialized storage.
@@ -29884,7 +29884,7 @@
29884 file names due to deleted PWD. 29884 file names due to deleted PWD.
29885 29885
29886 * src/xsmfns.c (x_session_initialize): Avoid libSM crash 29886 * src/xsmfns.c (x_session_initialize): Avoid libSM crash
29887 when starup directory is missing. (Bug#18851) 29887 when startup directory is missing. (Bug#18851)
29888 (errno.h): Include it. 29888 (errno.h): Include it.
29889 29889
298902015-06-13 Paul Eggert <eggert@cs.ucla.edu> 298902015-06-13 Paul Eggert <eggert@cs.ucla.edu>
@@ -30029,7 +30029,7 @@
30029 because '(format "%S" '(` FOO))' returns "(\\` FOO)". A comment 30029 because '(format "%S" '(` FOO))' returns "(\\` FOO)". A comment
30030 in src/lread.c's read1 function says that the backslash will be 30030 in src/lread.c's read1 function says that the backslash will be
30031 needed starting in Emacs 25, which implies that 'format' is 30031 needed starting in Emacs 25, which implies that 'format' is
30032 correct and the old pcase documention was wrong to omit the backslash. 30032 correct and the old pcase documentation was wrong to omit the backslash.
30033 * lisp/emacs-lisp/nadvice.el (advice--make-docstring): 30033 * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
30034 * lisp/help-fns.el (help-fns--signature): 30034 * lisp/help-fns.el (help-fns--signature):
30035 * lisp/help.el (help-add-fundoc-usage): 30035 * lisp/help.el (help-add-fundoc-usage):
@@ -30117,7 +30117,7 @@
30117 (bug#20730). 30117 (bug#20730).
30118 30118
30119 * lisp/progmodes/sh-script.el: Better handle nested quotes. 30119 * lisp/progmodes/sh-script.el: Better handle nested quotes.
30120 (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683). 30120 (sh-here-doc-open-re): Don't mismatch the <<< operator (bug#20683).
30121 (sh-font-lock-quoted-subshell): Make sure double quotes within single 30121 (sh-font-lock-quoted-subshell): Make sure double quotes within single
30122 quotes don't mistakenly end prematurely the surrounding string. 30122 quotes don't mistakenly end prematurely the surrounding string.
30123 30123
@@ -31364,7 +31364,7 @@
31364 31364
313652015-05-25 Eli Zaretskii <eliz@gnu.org> 313652015-05-25 Eli Zaretskii <eliz@gnu.org>
31366 31366
31367 Fix last change in etags.c that broke tagging compresed files 31367 Fix last change in etags.c that broke tagging compressed files
31368 * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix 31368 * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
31369 quoting of decompression shell command for MS-Windows/MS-DOS. 31369 quoting of decompression shell command for MS-Windows/MS-DOS.
31370 31370
@@ -32680,7 +32680,7 @@
32680 (verilog-beg-of-statement): Fix indenting for some forms of 32680 (verilog-beg-of-statement): Fix indenting for some forms of
32681 constraintsm bug433. Reported by Brad Parker. Fix indentation of 32681 constraintsm bug433. Reported by Brad Parker. Fix indentation of
32682 continued assignment incorrect if first line ends with ']', bug437. 32682 continued assignment incorrect if first line ends with ']', bug437.
32683 Reported by Dan Dever. Fix indention of cover inside an 32683 Reported by Dan Dever. Fix indentation of cover inside an
32684 ifdef, bug 862. Reported by Bernd Beuster. Fix labeling do-while 32684 ifdef, bug 862. Reported by Bernd Beuster. Fix labeling do-while
32685 blocks, bug842. 32685 blocks, bug842.
32686 (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859. 32686 (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
@@ -35272,7 +35272,7 @@
352722015-04-11 Artur Malabarba <bruce.connor.am@gmail.com> 352722015-04-11 Artur Malabarba <bruce.connor.am@gmail.com>
35273 35273
35274 Speed up byte-compilation and autoload generation by avoiding mode-hooks 35274 Speed up byte-compilation and autoload generation by avoiding mode-hooks
35275 This prevents emacs-lisp-mode-hook from being run everytime an 35275 This prevents emacs-lisp-mode-hook from being run every time an
35276 autoload file is generated, which can account for a fraction of 35276 autoload file is generated, which can account for a fraction of
35277 package installation time depending on the hooks the user has 35277 package installation time depending on the hooks the user has
35278 configured. 35278 configured.
diff --git a/ChangeLog.3 b/ChangeLog.3
index 1a530118995..16e74f41be4 100644
--- a/ChangeLog.3
+++ b/ChangeLog.3
@@ -1669,7 +1669,7 @@
1669 1669
16702020-04-20 Juri Linkov <juri@linkov.net> 16702020-04-20 Juri Linkov <juri@linkov.net>
1671 1671
1672 * doc/emacs/windows.texi (Window Convenience): Decribe more windmove features. 1672 * doc/emacs/windows.texi (Window Convenience): Describe more windmove features.
1673 1673
1674 * doc/emacs/windows.texi (Window Convenience): Add descriptions of 1674 * doc/emacs/windows.texi (Window Convenience): Add descriptions of
1675 windmove-display-default-keybindings, 1675 windmove-display-default-keybindings,
@@ -1904,7 +1904,7 @@
1904 Improve an example in w32 FAQ 1904 Improve an example in w32 FAQ
1905 1905
1906 * doc/misc/efaq-w32.texi (Font names): Modify the expression to 1906 * doc/misc/efaq-w32.texi (Font names): Modify the expression to
1907 insert a lits of all installed fonts so as to avoid producing too 1907 insert a list of all installed fonts so as to avoid producing too
1908 long lines. Suggested by ndame <ndame@protonmail.com>. 1908 long lines. Suggested by ndame <ndame@protonmail.com>.
1909 1909
19102020-04-15 Stefan Monnier <monnier@iro.umontreal.ca> 19102020-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
@@ -2253,7 +2253,7 @@
2253 * lisp/emacs-lisp/re-builder.el (reb-while): Take the current value of 2253 * lisp/emacs-lisp/re-builder.el (reb-while): Take the current value of
2254 the counter instead of its name. 2254 the counter instead of its name.
2255 (reb-mark-non-matching-parenthesis): Bind n-reb to 0 at the start and 2255 (reb-mark-non-matching-parenthesis): Bind n-reb to 0 at the start and
2256 don't wrongly treat it as dynamicly bound. 2256 don't wrongly treat it as dynamically bound.
2257 2257
22582020-04-03 Philipp Stephani <phst@google.com> 22582020-04-03 Philipp Stephani <phst@google.com>
2259 2259
@@ -3447,7 +3447,7 @@
3447 3447
34482020-02-10 Alan Mackenzie <acm@muc.de> 34482020-02-10 Alan Mackenzie <acm@muc.de>
3449 3449
3450 c-end-of-macro: Handle block coment lines with unescaped NLs correctly 3450 c-end-of-macro: Handle block comment lines with unescaped NLs correctly
3451 3451
3452 * lisp/progmodes/cc-langs.el (c-last-open-c-comment-start-on-line-re): Make 3452 * lisp/progmodes/cc-langs.el (c-last-open-c-comment-start-on-line-re): Make
3453 obsolete, and supersede by ... 3453 obsolete, and supersede by ...
@@ -4133,7 +4133,7 @@
4133 4133
41342020-01-17 Dmitry Gutov <dgutov@yandex.ru> 41342020-01-17 Dmitry Gutov <dgutov@yandex.ru>
4135 4135
4136 Honor tags-case-fold-search during xref identifer completion 4136 Honor tags-case-fold-search during xref identifier completion
4137 4137
4138 * etc/NEWS: New entry. 4138 * etc/NEWS: New entry.
4139 4139
@@ -5245,10 +5245,10 @@
5245 Improve vc--add-line, vc--remove-regexp 5245 Improve vc--add-line, vc--remove-regexp
5246 5246
5247 * lisp/vc/vc.el (vc--add-line): Create file if it does not exist. 5247 * lisp/vc/vc.el (vc--add-line): Create file if it does not exist.
5248 Use existing buffer to avoid discrepancies with filesytem. Make sure 5248 Use existing buffer to avoid discrepancies with filesystem. Make sure
5249 that the file ends with a newline. 5249 that the file ends with a newline.
5250 (vc--remove-line): Do not create file if it does not exist. Use 5250 (vc--remove-line): Do not create file if it does not exist. Use
5251 existing buffer to avoid discrepancies with filesytem. (bug#37185) 5251 existing buffer to avoid discrepancies with filesystem. (bug#37185)
5252 5252
52532019-12-24 Dmitry Gutov <dgutov@yandex.ru> 52532019-12-24 Dmitry Gutov <dgutov@yandex.ru>
5254 5254
@@ -5437,7 +5437,7 @@
5437 5437
5438 Fix bug in flex completion style's sorting and simplify 5438 Fix bug in flex completion style's sorting and simplify
5439 5439
5440 This previous commit targetting this function introduced a bug whereby 5440 This previous commit targeting this function introduced a bug whereby
5441 the completion table's sorting function wouldn't be called. That is 5441 the completion table's sorting function wouldn't be called. That is
5442 fixed by this commit, which also simplifies the function further: it 5442 fixed by this commit, which also simplifies the function further: it
5443 now skips re-sorting the completions completely if there is no 5443 now skips re-sorting the completions completely if there is no
@@ -8423,7 +8423,7 @@
8423 8423
8424 When using this option and editing input, some transient situations 8424 When using this option and editing input, some transient situations
8425 may arise that lead to file-name shadowing, but that shouldn't 8425 may arise that lead to file-name shadowing, but that shouldn't
8426 necessarily lead to auto-delete behaviour, which will be suprising. 8426 necessarily lead to auto-delete behaviour, which will be surprising.
8427 8427
8428 In '/foo/x/bar', if the user deletes the 'x', shadowing occurs, but 8428 In '/foo/x/bar', if the user deletes the 'x', shadowing occurs, but
8429 probably shouldn't. So, somewhat like ido-mode, only auto-tidy 8429 probably shouldn't. So, somewhat like ido-mode, only auto-tidy
@@ -9718,7 +9718,7 @@
9718 'package-menu-refresh', make internal and non-interactive. 9718 'package-menu-refresh', make internal and non-interactive.
9719 (package-menu-mode-map, package-menu-mode-menu, package-menu-mode) 9719 (package-menu-mode-map, package-menu-mode-menu, package-menu-mode)
9720 (list-packages): Use the above. (Bug#35504) 9720 (list-packages): Use the above. (Bug#35504)
9721 (package-menu-refresh): Redefine as obsolete fuction alias for 9721 (package-menu-refresh): Redefine as obsolete function alias for
9722 'revert-buffer'. 9722 'revert-buffer'.
9723 * doc/emacs/package.texi (Package Menu): Document it. 9723 * doc/emacs/package.texi (Package Menu): Document it.
9724 * etc/NEWS: Announce it. 9724 * etc/NEWS: Announce it.
@@ -11191,7 +11191,7 @@
11191 11191
11192 * lisp/minibuffer.el (completions-common-part): Adjust 11192 * lisp/minibuffer.el (completions-common-part): Adjust
11193 description and change default value. 11193 description and change default value.
11194 (completions-first-difference): Ajust docstring. 11194 (completions-first-difference): Adjust docstring.
11195 (completion-pcm--hilit-commonality): Don't use 11195 (completion-pcm--hilit-commonality): Don't use
11196 completions-first-difference. 11196 completions-first-difference.
11197 11197
@@ -12738,7 +12738,7 @@
12738 * lisp/speedbar.el (speedbar-check-vc-this-line): 12738 * lisp/speedbar.el (speedbar-check-vc-this-line):
12739 Normalize boolean result. 12739 Normalize boolean result.
12740 (speedbar-this-file-in-vc): Use `run-hook-with-args-until-success' 12740 (speedbar-this-file-in-vc): Use `run-hook-with-args-until-success'
12741 to check for files under versin control. Doc fix. 12741 to check for files under version control. Doc fix.
12742 12742
127432019-10-16 Michael Albinus <michael.albinus@gmx.de> 127432019-10-16 Michael Albinus <michael.albinus@gmx.de>
12744 12744
@@ -13701,7 +13701,7 @@
13701 "\\|\r" from regular expression. 13701 "\\|\r" from regular expression.
13702 13702
13703 * lisp/progmodes/cc-mode.el (c-make-mode-syntax-table): Correct the name of 13703 * lisp/progmodes/cc-mode.el (c-make-mode-syntax-table): Correct the name of
13704 the hook normal-erase-is-backspace-MODE-hook from a non-existant hook name. 13704 the hook normal-erase-is-backspace-MODE-hook from a non-existent hook name.
13705 13705
137062019-10-11 Lars Ingebrigtsen <larsi@gnus.org> 137062019-10-11 Lars Ingebrigtsen <larsi@gnus.org>
13707 13707
@@ -15039,7 +15039,7 @@
15039 15039
150402019-10-04 Eric Abrahamsen <eric@ericabrahamsen.net> 150402019-10-04 Eric Abrahamsen <eric@ericabrahamsen.net>
15041 15041
15042 Don't manipulate gnus-newsrc-alist if it hasn't been initalized 15042 Don't manipulate gnus-newsrc-alist if it hasn't been initialized
15043 15043
15044 * lisp/gnus/gnus-group.el (gnus-group-set-info): Packages that use 15044 * lisp/gnus/gnus-group.el (gnus-group-set-info): Packages that use
15045 Gnus summary mode without actually booting Gnus might end up in this 15045 Gnus summary mode without actually booting Gnus might end up in this
@@ -15458,7 +15458,7 @@
15458 15458
15459 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): New variable 15459 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): New variable
15460 got-function-name-prefix, which is set when an operator like * (but not &) 15460 got-function-name-prefix, which is set when an operator like * (but not &)
15461 precedes the putative identifer in parentheses. Test this variable when 15461 precedes the putative identifier in parentheses. Test this variable when
15462 deciding whether or not to "move the type backwards" to the previous 15462 deciding whether or not to "move the type backwards" to the previous
15463 identifier. 15463 identifier.
15464 15464
@@ -16583,7 +16583,7 @@
16583 Verilog-Mode collected updates. 16583 Verilog-Mode collected updates.
16584 16584
16585 * lisp/progmodes/verilog-mode.el (verilog-auto-inst-param): Add regexp 16585 * lisp/progmodes/verilog-mode.el (verilog-auto-inst-param): Add regexp
16586 paramter to AUTOINSTPARAM to select which parameters to export. Reported 16586 parameter to AUTOINSTPARAM to select which parameters to export. Reported
16587 by Vish S. 16587 by Vish S.
16588 (verilog-build-defun-re): Fix `verilog-goto-defun' to find automatic 16588 (verilog-build-defun-re): Fix `verilog-goto-defun' to find automatic
16589 function/tasks, bug1492. Reported by Enze Chi. 16589 function/tasks, bug1492. Reported by Enze Chi.
@@ -22790,7 +22790,7 @@
22790 22790
227912019-08-03 Lars Ingebrigtsen <larsi@gnus.org> 227912019-08-03 Lars Ingebrigtsen <larsi@gnus.org>
22792 22792
22793 Tweak tango-dark-theme hightlight face 22793 Tweak tango-dark-theme highlight face
22794 22794
22795 * etc/themes/tango-dark-theme.el (class): Make highlight a bit 22795 * etc/themes/tango-dark-theme.el (class): Make highlight a bit
22796 less yellow to make the cursor visible on it (bug#19189). 22796 less yellow to make the cursor visible on it (bug#19189).
@@ -22940,7 +22940,7 @@
22940 CC Mode: Fix error in macro cache. This fixes bug #36802 22940 CC Mode: Fix error in macro cache. This fixes bug #36802
22941 22941
22942 * lisp/progmodes/cc-engine.el (c-invalidate-macro-cache): Add in a cond arm 22942 * lisp/progmodes/cc-engine.el (c-invalidate-macro-cache): Add in a cond arm
22943 to handle the change position being less than the recorded CPP contruct end. 22943 to handle the change position being less than the recorded CPP construct end.
22944 22944
229452019-08-02 Basil L. Contovounesios <contovob@tcd.ie> 229452019-08-02 Basil L. Contovounesios <contovob@tcd.ie>
22946 22946
@@ -23268,7 +23268,7 @@
23268 Add example for removing scroll bars/fringes from mini windows (Bug#8868) 23268 Add example for removing scroll bars/fringes from mini windows (Bug#8868)
23269 23269
23270 * doc/lispref/display.texi (Fringe Size/Pos): Mention example 23270 * doc/lispref/display.texi (Fringe Size/Pos): Mention example
23271 for how to permenantly remove fringes from minibuffer windows. 23271 for how to permanently remove fringes from minibuffer windows.
23272 (Scroll Bars): Add example for how to permanently remove 23272 (Scroll Bars): Add example for how to permanently remove
23273 scroll bars and fringes from minibuffer windows. 23273 scroll bars and fringes from minibuffer windows.
23274 23274
@@ -23719,7 +23719,7 @@
23719 23719
237202019-07-30 Lars Ingebrigtsen <larsi@gnus.org> 237202019-07-30 Lars Ingebrigtsen <larsi@gnus.org>
23721 23721
23722 Fix syntax error in previus calc-forms change 23722 Fix syntax error in previous calc-forms change
23723 23723
23724 * lisp/calc/calc-forms.el (calc-time): Fix previous decoded time 23724 * lisp/calc/calc-forms.el (calc-time): Fix previous decoded time
23725 change. 23725 change.
@@ -29144,7 +29144,7 @@
29144 * lib/strnlen.c, m4/strnlen.m4: New files, copied from Gnulib. 29144 * lib/strnlen.c, m4/strnlen.m4: New files, copied from Gnulib.
29145 * lwlib/lwlib.c (lw_separator_p): 29145 * lwlib/lwlib.c (lw_separator_p):
29146 * src/json.c (json_has_prefix): 29146 * src/json.c (json_has_prefix):
29147 Use strncmp to avoid unecessary work with strlen + memcmp. 29147 Use strncmp to avoid unnecessary work with strlen + memcmp.
29148 * src/process.c (set_socket_option): Use SBYTES instead of strlen. 29148 * src/process.c (set_socket_option): Use SBYTES instead of strlen.
29149 29149
291502019-06-25 Emilio C. Lopes <eclig@gmx.net> (tiny change) 291502019-06-25 Emilio C. Lopes <eclig@gmx.net> (tiny change)
@@ -30260,7 +30260,7 @@
30260 30260
302612019-06-20 Lars Ingebrigtsen <larsi@gnus.org> 302612019-06-20 Lars Ingebrigtsen <larsi@gnus.org>
30262 30262
30263 Leave the emtpy info and lib/sys in extraclean 30263 Leave the empty info and lib/sys in extraclean
30264 30264
30265 * lib/Makefile.in: Ditto. 30265 * lib/Makefile.in: Ditto.
30266 30266
@@ -30878,7 +30878,7 @@
30878 30878
308792019-06-19 Lars Ingebrigtsen <larsi@gnus.org> 308792019-06-19 Lars Ingebrigtsen <larsi@gnus.org>
30880 30880
30881 Tweak progess reporting in finder-compile-keywords 30881 Tweak progress reporting in finder-compile-keywords
30882 30882
30883 * lisp/finder.el (finder-compile-keywords): Use progress reporter 30883 * lisp/finder.el (finder-compile-keywords): Use progress reporter
30884 to report the processing. 30884 to report the processing.
@@ -31189,7 +31189,7 @@
31189 Output progress messages when scraping autoloads during bootstrap 31189 Output progress messages when scraping autoloads during bootstrap
31190 31190
31191 * lisp/emacs-lisp/byte-run.el (byte-compile-info-message): New 31191 * lisp/emacs-lisp/byte-run.el (byte-compile-info-message): New
31192 function to outout informational messages during byte compilation. 31192 function to output informational messages during byte compilation.
31193 31193
31194 * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Use it 31194 * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Use it
31195 to report progress when scraping autoloads during bootstrap (which 31195 to report progress when scraping autoloads during bootstrap (which
@@ -32559,7 +32559,7 @@
32559 32559
32560 Fix compilation warnings in rfc2104 32560 Fix compilation warnings in rfc2104
32561 32561
32562 * lisp/net/rfc2104.el (rfc2104-hash): Remove superflous calls to 32562 * lisp/net/rfc2104.el (rfc2104-hash): Remove superfluous calls to
32563 string-make-unibyte and avoid two compilation warnings. 32563 string-make-unibyte and avoid two compilation warnings.
32564 32564
325652019-06-12 Lars Ingebrigtsen <larsi@gnus.org> 325652019-06-12 Lars Ingebrigtsen <larsi@gnus.org>
@@ -34140,7 +34140,7 @@
34140 34140
341412019-06-01 Alan Mackenzie <acm@muc.de> 341412019-06-01 Alan Mackenzie <acm@muc.de>
34142 34142
34143 Debug and disentangle the literal cacheing in CC Mode 34143 Debug and disentangle the literal caching in CC Mode
34144 34144
34145 (Final Commit) 34145 (Final Commit)
34146 34146
@@ -34156,11 +34156,11 @@
34156 34156
341572019-06-01 Alan Mackenzie <acm@muc.de> 341572019-06-01 Alan Mackenzie <acm@muc.de>
34158 34158
34159 * lisp/progmodes/cc-engine.el: Permute certain literal cacheing functions 34159 * lisp/progmodes/cc-engine.el: Permute certain literal caching functions
34160 34160
341612019-06-01 Alan Mackenzie <acm@muc.de> 341612019-06-01 Alan Mackenzie <acm@muc.de>
34162 34162
34163 Tidy up the literal cacheing in CC Mode, optimizing c-full-pp-to-literal 34163 Tidy up the literal caching in CC Mode, optimizing c-full-pp-to-literal
34164 34164
34165 (Intermediate commit) 34165 (Intermediate commit)
34166 34166
@@ -34424,7 +34424,7 @@
34424 if the sought position is in a literal, and lies between the literal start and 34424 if the sought position is in a literal, and lies between the literal start and
34425 the entry's position. 34425 the entry's position.
34426 (c-cache-to-parse-ps-state, c-parse-ps-state-below): Amend such that instead 34426 (c-cache-to-parse-ps-state, c-parse-ps-state-below): Amend such that instead
34427 of cacheing a state for a position after a backslash or first character of a 34427 of caching a state for a position after a backslash or first character of a
34428 2-character comment delimiter, this is done for the previous character 34428 2-character comment delimiter, this is done for the previous character
34429 position. 34429 position.
34430 34430
@@ -35308,7 +35308,7 @@
35308 35308
35309 w32--os-description: Fix previous change 35309 w32--os-description: Fix previous change
35310 35310
35311 * lisp/w32-fns.el (w32--os-description): Fix inadvertant "o" added 35311 * lisp/w32-fns.el (w32--os-description): Fix inadvertent "o" added
35312 to the end of the function name in the previous patch (bug#35807). 35312 to the end of the function name in the previous patch (bug#35807).
35313 35313
353142019-05-20 Lars Ingebrigtsen <larsi@gnus.org> 353142019-05-20 Lars Ingebrigtsen <larsi@gnus.org>
@@ -36353,7 +36353,7 @@
36353 36353
363542019-05-15 John Shahid <jvshahid@gmail.com> 363542019-05-15 John Shahid <jvshahid@gmail.com>
36355 36355
36356 Avoid infinitly looping in tramp-interrupt-process (bug#35506) 36356 Avoid infinitely looping in tramp-interrupt-process (bug#35506)
36357 36357
36358 * lisp/net/tramp.el (tramp-interrupt-process): Remove with-timeout. 36358 * lisp/net/tramp.el (tramp-interrupt-process): Remove with-timeout.
36359 Instead pass a timeout to tramp-accept-process-output. 36359 Instead pass a timeout to tramp-accept-process-output.
@@ -38458,7 +38458,7 @@
38458 Fix some corner cases in the recognition of C++ raw strings. 38458 Fix some corner cases in the recognition of C++ raw strings.
38459 38459
38460 These are where changing the identifier in a raw string delimiter causes 38460 These are where changing the identifier in a raw string delimiter causes
38461 different delimiters to match eachother. 38461 different delimiters to match each other.
38462 38462
38463 * lisp/progmodes/cc-engine.el (c-raw-string-end-delim-disrupted): New 38463 * lisp/progmodes/cc-engine.el (c-raw-string-end-delim-disrupted): New
38464 variable. 38464 variable.
@@ -40585,7 +40585,7 @@
40585 * lisp/printing.el: Use lexical-binding 40585 * lisp/printing.el: Use lexical-binding
40586 40586
40587 Require easy-menu instead of adding declarations. 40587 Require easy-menu instead of adding declarations.
40588 Remove backward compatiblity. Remove redundant ':group' args. 40588 Remove backward compatibility. Remove redundant ':group' args.
40589 (pr-region-active-p): Use use-region-p. 40589 (pr-region-active-p): Use use-region-p.
40590 (pr-set-keymap-name): Delete function and callers. 40590 (pr-set-keymap-name): Delete function and callers.
40591 (pr-set-keymap-parents): Delete function; use set-keymap-parent instead. 40591 (pr-set-keymap-parents): Delete function; use set-keymap-parent instead.
@@ -41012,7 +41012,7 @@
41012 this function can be used to find JSXExpressionContainers within JSX. 41012 this function can be used to find JSXExpressionContainers within JSX.
41013 Fix bug where an enclosing JSXElement couldn’t be found when point was 41013 Fix bug where an enclosing JSXElement couldn’t be found when point was
41014 at the start of its JSXClosingElement. Return the JSXClosingElement’s 41014 at the start of its JSXClosingElement. Return the JSXClosingElement’s
41015 position as well, so the JSXClosingElement can be indentified when 41015 position as well, so the JSXClosingElement can be identified when
41016 indenting and be indented like the matching JSXOpeningElement. 41016 indenting and be indented like the matching JSXOpeningElement.
41017 41017
41018 (js-jsx--at-enclosing-tag-child-p): js-jsx--enclosing-tag-pos now 41018 (js-jsx--at-enclosing-tag-child-p): js-jsx--enclosing-tag-pos now
@@ -41930,7 +41930,7 @@
41930 Lisp_Fwd * and then back again, because the compiler can then assume 41930 Lisp_Fwd * and then back again, because the compiler can then assume
41931 that the pointer is aligned for union Lisp_Fwd * when accessing 41931 that the pointer is aligned for union Lisp_Fwd * when accessing
41932 the struct Lisp_Objfwd * components, and this assumption might 41932 the struct Lisp_Objfwd * components, and this assumption might
41933 be incorrect becase we don't force that alignment. 41933 be incorrect because we don't force that alignment.
41934 * src/lisp.h (lispfwd): New type, replacing ... 41934 * src/lisp.h (lispfwd): New type, replacing ...
41935 (union Lisp_Fwd): ... this type, which was removed. 41935 (union Lisp_Fwd): ... this type, which was removed.
41936 All uses changed. 41936 All uses changed.
@@ -45211,7 +45211,7 @@
45211 45211
45212 * lisp/progmodes/sql.el (sql-add-product): Correct argument spec. 45212 * lisp/progmodes/sql.el (sql-add-product): Correct argument spec.
45213 (sql-set-product-feature): Handle all cases as intended. 45213 (sql-set-product-feature): Handle all cases as intended.
45214 (sql-get-product-feature): Fetch varaiable value by `eval'. 45214 (sql-get-product-feature): Fetch variable value by `eval'.
45215 * test/lisp/progmodes/sql-tests.el (sql-test-feature-value-[a-d]): 45215 * test/lisp/progmodes/sql-tests.el (sql-test-feature-value-[a-d]):
45216 New test variables. 45216 New test variables.
45217 (sql-test-product-feature-harness): New test macro. 45217 (sql-test-product-feature-harness): New test macro.
@@ -46939,7 +46939,7 @@
46939 image-mode: Make parameters buffer-local 46939 image-mode: Make parameters buffer-local
46940 46940
46941 Image parameters were treated as image specific, but because they 46941 Image parameters were treated as image specific, but because they
46942 actually were global variables, their behaviour transfered to new 46942 actually were global variables, their behaviour transferred to new
46943 images. 46943 images.
46944 * lisp/image-mode.el (image-transform-resize, image-transform-scale) 46944 * lisp/image-mode.el (image-transform-resize, image-transform-scale)
46945 (image-transform-rotation): Declare with defvar-local. (Bug#33990) 46945 (image-transform-rotation): Declare with defvar-local. (Bug#33990)
@@ -47838,7 +47838,7 @@
47838 * src/frame.c (make_initial_frame): don't reset Vframe_list. 47838 * src/frame.c (make_initial_frame): don't reset Vframe_list.
47839 (init_frame_once_for_pdumper, init_frame_once): new functions. 47839 (init_frame_once_for_pdumper, init_frame_once): new functions.
47840 (syms_of_frame): remove redundant staticpro. 47840 (syms_of_frame): remove redundant staticpro.
47841 * src/fringe.c (init_fringe_once_for_pdumper): new functin. 47841 * src/fringe.c (init_fringe_once_for_pdumper): new function.
47842 (init_fringe_once): call it. 47842 (init_fringe_once): call it.
47843 * src/ftcrfont.c (syms_of_ftcrfont_for_pdumper): new function. 47843 * src/ftcrfont.c (syms_of_ftcrfont_for_pdumper): new function.
47844 (syms_of_ftcrfont): call it. 47844 (syms_of_ftcrfont): call it.
@@ -47846,7 +47846,7 @@
47846 (syms_of_ftfont): call it. 47846 (syms_of_ftfont): call it.
47847 * src/ftxfont.c (syms_of_ftxfont_for_pdumper): new function. 47847 * src/ftxfont.c (syms_of_ftxfont_for_pdumper): new function.
47848 (syms_of_ftxfont): call it. 47848 (syms_of_ftxfont): call it.
47849 * src/gmalloc.c: adjust for pdumper througout 47849 * src/gmalloc.c: adjust for pdumper throughout
47850 (DUMPED): remove weird custom dumped indicator. 47850 (DUMPED): remove weird custom dumped indicator.
47851 * src/gnutls.c (syms_of_gnutls): pdumper note for 47851 * src/gnutls.c (syms_of_gnutls): pdumper note for
47852 gnutls_global_initialized. 47852 gnutls_global_initialized.
@@ -48290,7 +48290,7 @@
48290 signal an error (due to generating a too-large bignum) contrary 48290 signal an error (due to generating a too-large bignum) contrary
48291 to its documentation. Fix things to remove the theoretical 48291 to its documentation. Fix things to remove the theoretical
48292 possibility, so that list lengths are always fixnums (and so 48292 possibility, so that list lengths are always fixnums (and so
48293 that list lenghts are always ptrdiff_t values too, since that 48293 that list lengths are always ptrdiff_t values too, since that
48294 is assumed internally anyway). 48294 is assumed internally anyway).
48295 * src/alloc.c (Fcons): Do not allocate so many conses that 48295 * src/alloc.c (Fcons): Do not allocate so many conses that
48296 a list length won’t fit into ptrdiff_t or into fixnum. 48296 a list length won’t fit into ptrdiff_t or into fixnum.
@@ -48686,7 +48686,7 @@
48686 48686
48687 Adapt test/README 48687 Adapt test/README
48688 48688
48689 * test/README: Speak about continous integration tests on hydra 48689 * test/README: Speak about continuous integration tests on hydra
48690 and emba. 48690 and emba.
48691 48691
486922019-01-03 Andrey Kotlarski <m00naticus@gmail.com> 486922019-01-03 Andrey Kotlarski <m00naticus@gmail.com>
@@ -50599,7 +50599,7 @@
50599 (tramp-gvfs-handle-file-writable-p) 50599 (tramp-gvfs-handle-file-writable-p)
50600 (tramp-gvfs-handle-write-region): Move to tramp.el. 50600 (tramp-gvfs-handle-write-region): Move to tramp.el.
50601 50601
50602 * lisp/net/tramp-rclone.el: Dont't require `tramp-adb' and 50602 * lisp/net/tramp-rclone.el: Don't require `tramp-adb' and
50603 `tramp-gvfs' anymore. 50603 `tramp-gvfs' anymore.
50604 (tramp-rclone-file-name-handler-alist): 50604 (tramp-rclone-file-name-handler-alist):
50605 Use `tramp-handle-expand-file-name', `tramp-handle-file-local-copy', 50605 Use `tramp-handle-expand-file-name', `tramp-handle-file-local-copy',
@@ -53573,7 +53573,7 @@
53573 always inserts an expressions even if no abbrevs need to be saved and 53573 always inserts an expressions even if no abbrevs need to be saved and
53574 making only write-abbrev-file check that a table has any abbrevs to 53574 making only write-abbrev-file check that a table has any abbrevs to
53575 save before calling insert-abbrev-table-description. This duplicates 53575 save before calling insert-abbrev-table-description. This duplicates
53576 the work of filtering the table for savable abbrevs, but the benefit 53576 the work of filtering the table for saveable abbrevs, but the benefit
53577 of keeping the API is worth it. 53577 of keeping the API is worth it.
53578 53578
53579 * doc/lispref/abbrevs.texi (Abbrev Tables): Update documentation. 53579 * doc/lispref/abbrevs.texi (Abbrev Tables): Update documentation.
@@ -56960,7 +56960,7 @@
56960 56960
56961 New 'configure' arg --with-mini-gmp 56961 New 'configure' arg --with-mini-gmp
56962 56962
56963 * configure.ac: It lets the builder override default of whther 56963 * configure.ac: It lets the builder override default of whether
56964 mini-gmp is used. Use AC_SEARCH_LIBS as per Autoconf manual. 56964 mini-gmp is used. Use AC_SEARCH_LIBS as per Autoconf manual.
56965 56965
569662018-08-11 Paul Eggert <eggert@cs.ucla.edu> 569662018-08-11 Paul Eggert <eggert@cs.ucla.edu>
@@ -57782,7 +57782,7 @@
57782 Fix some documentation formatting nits 57782 Fix some documentation formatting nits
57783 57783
57784 * doc/misc/ert.texi (Running Tests Interactively): Correct 57784 * doc/misc/ert.texi (Running Tests Interactively): Correct
57785 Elisp manual titile in xref. 57785 Elisp manual title in xref.
57786 * doc/lispref/edebug.texi (Edebug Misc): Use single argument 57786 * doc/lispref/edebug.texi (Edebug Misc): Use single argument
57787 form of xref. 57787 form of xref.
57788 * doc/lispref/debugging.texi (Backtraces): Add comma and 57788 * doc/lispref/debugging.texi (Backtraces): Add comma and
@@ -57831,7 +57831,7 @@
57831 57831
57832 Add commands to go to source if available, and to show and hide 57832 Add commands to go to source if available, and to show and hide
57833 Edebug's instrumentation. Make Edebug pop to backtraces instead of 57833 Edebug's instrumentation. Make Edebug pop to backtraces instead of
57834 displaying them, which makes Edebug consistant with the behavior of 57834 displaying them, which makes Edebug consistent with the behavior of
57835 ERT and the Lisp Debugger. 57835 ERT and the Lisp Debugger.
57836 * doc/lispref/edebug.texi (Edebug Misc): Document when and how you can 57836 * doc/lispref/edebug.texi (Edebug Misc): Document when and how you can
57837 jump to source code from an Edebug backtrace. Document 57837 jump to source code from an Edebug backtrace. Document
@@ -58282,7 +58282,7 @@
58282 58282
58283 "******" 58283 "******"
58284 58284
58285 It's slighly easier to visually count the number of characters in the second 58285 It's slightly easier to visually count the number of characters in the second
58286 string (Bug#32220). 58286 string (Bug#32220).
58287 58287
58288 * lisp/subr.el (read-passwd): Prefer ?* as default char instead of ?. 58288 * lisp/subr.el (read-passwd): Prefer ?* as default char instead of ?.
@@ -59002,7 +59002,7 @@
59002 (epg-config--program-alist) <OpenPGP>: Require a version in 1.4.3..2.0 59002 (epg-config--program-alist) <OpenPGP>: Require a version in 1.4.3..2.0
59003 or 2.1.6+., not just anything above 1.4.3. 59003 or 2.1.6+., not just anything above 1.4.3.
59004 (epg-check-configuration): Accept a list of required version 59004 (epg-check-configuration): Accept a list of required version
59005 intervals, in addtion to just a single minimum. 59005 intervals, in addition to just a single minimum.
59006 59006
590072018-07-15 Paul Eggert <eggert@Penguin.CS.UCLA.EDU> 590072018-07-15 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
59008 59008
@@ -59562,7 +59562,7 @@
59562 59562
59563 * lisp/vc/smerge-mode.el (smerge-refine-regions): Bind 59563 * lisp/vc/smerge-mode.el (smerge-refine-regions): Bind
59564 write-region-inhibit-fsync to t. This was reported in 59564 write-region-inhibit-fsync to t. This was reported in
59565 https://github.com/magit/magit/pull/2834 to give a noticable speedup. 59565 https://github.com/magit/magit/pull/2834 to give a noticeable speedup.
59566 59566
595672018-07-12 Noam Postavsky <npostavs@gmail.com> 595672018-07-12 Noam Postavsky <npostavs@gmail.com>
59568 59568
@@ -60247,7 +60247,7 @@
60247 60247
60248 Clean up redundant code from previous checkins 60248 Clean up redundant code from previous checkins
60249 60249
60250 * src/gnutls.c (gnutls_verify_boot): Remove reduntant setting of 60250 * src/gnutls.c (gnutls_verify_boot): Remove redundant setting of
60251 p->gnutls_certificates, which is now performed by 60251 p->gnutls_certificates, which is now performed by
60252 gnutls_deinit_certificates. 60252 gnutls_deinit_certificates.
60253 60253
@@ -61556,7 +61556,7 @@
61556 61556
61557 Don't have shr bug out on degenerate <img> tags 61557 Don't have shr bug out on degenerate <img> tags
61558 61558
61559 * lisp/net/shr.el (shr-tag-img): Protect against contructs like 61559 * lisp/net/shr.el (shr-tag-img): Protect against constructs like
61560 <img src=" ">. 61560 <img src=" ">.
61561 61561
615622018-06-10 Stefan Monnier <monnier@iro.umontreal.ca> 615622018-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
@@ -62100,7 +62100,7 @@
62100 62100
62101 Obsolete Flymake's flymake-diagnostic-types-alist 62101 Obsolete Flymake's flymake-diagnostic-types-alist
62102 62102
62103 That varaiable was an association between symbols and properties, 62103 That variable was an association between symbols and properties,
62104 effecively duplicating symbol's property lists. It is simpler to just 62104 effecively duplicating symbol's property lists. It is simpler to just
62105 put properties on symbols. Backward compatibility to the old variable 62105 put properties on symbols. Backward compatibility to the old variable
62106 has been kept. 62106 has been kept.
@@ -62803,7 +62803,7 @@
62803 (tramp-smb-conf, tramp-smb-winexe-program) 62803 (tramp-smb-conf, tramp-smb-winexe-program)
62804 (tramp-smb-winexe-shell-command) 62804 (tramp-smb-winexe-shell-command)
62805 (tramp-smb-winexe-shell-command-switch): 62805 (tramp-smb-winexe-shell-command-switch):
62806 Dont't require 'tramp. (Bug#31558) 62806 Don't require 'tramp. (Bug#31558)
62807 62807
62808 * lisp/net/tramp.el (tramp-ignored-file-name-regexp): Use type regexp. 62808 * lisp/net/tramp.el (tramp-ignored-file-name-regexp): Use type regexp.
62809 62809
@@ -63250,7 +63250,7 @@
63250 * lisp/eshell/esh-opt.el (eshell--process-args): Refactor usage of 63250 * lisp/eshell/esh-opt.el (eshell--process-args): Refactor usage of
63251 args to eshell--args, as we rely on modifications from 63251 args to eshell--args, as we rely on modifications from
63252 eshell--process-option and vice versa. These modifications were not 63252 eshell--process-option and vice versa. These modifications were not
63253 being propogated in the (if (= ai 0)) case, since popping the first 63253 being propagated in the (if (= ai 0)) case, since popping the first
63254 element of a list doesn't destructively modify the underlying list 63254 element of a list doesn't destructively modify the underlying list
63255 object. 63255 object.
63256 63256
@@ -64089,7 +64089,7 @@
64089 64089
640902018-04-20 Michael Albinus <michael.albinus@gmx.de> 640902018-04-20 Michael Albinus <michael.albinus@gmx.de>
64091 64091
64092 Revert "* etc/HELLO: Add langugae Emoji. Use utf-8 coding." 64092 Revert "* etc/HELLO: Add language Emoji. Use utf-8 coding."
64093 64093
64094 This reverts commit c4cfb5d20487f9912f5896b3f1d291fe7ccc9804. 64094 This reverts commit c4cfb5d20487f9912f5896b3f1d291fe7ccc9804.
64095 64095
@@ -64132,7 +64132,7 @@
64132 64132
64133 * lisp/international/mule-cmds.el (view-hello-file): Use utf-8 coding. 64133 * lisp/international/mule-cmds.el (view-hello-file): Use utf-8 coding.
64134 64134
64135 * etc/HELLO: Add langugae Emoji. Use utf-8 coding. 64135 * etc/HELLO: Add language Emoji. Use utf-8 coding.
64136 64136
641372018-04-19 Glenn Morris <rgm@gnu.org> 641372018-04-19 Glenn Morris <rgm@gnu.org>
64138 64138
@@ -65537,7 +65537,7 @@
65537 65537
655382018-04-11 Daniel Dehennin <daniel.dehennin@baby-gnu.org> 655382018-04-11 Daniel Dehennin <daniel.dehennin@baby-gnu.org>
65539 65539
65540 Gnus Group Mail Spliting on mailing-list headers 65540 Gnus Group Mail Splitting on mailing-list headers
65541 65541
65542 * doc/misc/gnus.texi: Document the new `list' split abbreviation and 65542 * doc/misc/gnus.texi: Document the new `list' split abbreviation and
65543 `match-list' group parameter (bug#25346). 65543 `match-list' group parameter (bug#25346).
@@ -65717,7 +65717,7 @@
65717 ‘sgml-quote’ do that. 65717 ‘sgml-quote’ do that.
65718 65718
65719 While at it, fix entiteis not being unquoted if they lack closing 65719 While at it, fix entiteis not being unquoted if they lack closing
65720 semicolon (e.g. ‘&amp’) occuring at the very end of a region. 65720 semicolon (e.g. ‘&amp’) occurring at the very end of a region.
65721 Even though unlikely, make ‘sgml-quote’ handle this scenario. 65721 Even though unlikely, make ‘sgml-quote’ handle this scenario.
65722 65722
65723 * lisp/textmodes/sgml-mode.el (sgml-quote): Handle quotation marks and 65723 * lisp/textmodes/sgml-mode.el (sgml-quote): Handle quotation marks and
@@ -69399,7 +69399,7 @@
69399 mode_line_help_echo. 69399 mode_line_help_echo.
69400 (wset_mode_line_help_echo): New function. 69400 (wset_mode_line_help_echo): New function.
69401 * src/w32fns.c (Fx_show_tip): Normalize the FRAME argument 69401 * src/w32fns.c (Fx_show_tip): Normalize the FRAME argument
69402 bevore storing it in tip_last_frame (Bug#30399). 69402 before storing it in tip_last_frame (Bug#30399).
69403 * src/xdisp.c (display_mode_lines): Calculate mode line 69403 * src/xdisp.c (display_mode_lines): Calculate mode line
69404 default help echo string here and store it in the window's 69404 default help echo string here and store it in the window's
69405 mode_line_help_echo slot (Bug#30182). 69405 mode_line_help_echo slot (Bug#30182).
@@ -69410,7 +69410,7 @@
69410 * src/xfns.c (x_hide_tip): Rewrite the GTK+ part to correctly 69410 * src/xfns.c (x_hide_tip): Rewrite the GTK+ part to correctly
69411 handle the transition from GTK+ system to Emacs tooltips and 69411 handle the transition from GTK+ system to Emacs tooltips and
69412 vice-versa (Bug#30399). 69412 vice-versa (Bug#30399).
69413 (Fx_show_tip): Normalize the FRAME argument bevore storing it 69413 (Fx_show_tip): Normalize the FRAME argument before storing it
69414 in tip_last_frame (Bug#30399). 69414 in tip_last_frame (Bug#30399).
69415 69415
694162018-02-10 Michael Albinus <michael.albinus@gmx.de> 694162018-02-10 Michael Albinus <michael.albinus@gmx.de>
@@ -76433,7 +76433,7 @@
76433 76433
764342019-08-29 Michael Albinus <michael.albinus@gmx.de> 764342019-08-29 Michael Albinus <michael.albinus@gmx.de>
76435 76435
76436 Fix accidential change in tramp-tests; do not merge with master 76436 Fix accidental change in tramp-tests; do not merge with master
76437 76437
76438 * lisp/net/trampver.el: Change version to "2.3.5.26.3". 76438 * lisp/net/trampver.el: Change version to "2.3.5.26.3".
76439 (customize-package-emacs-version-alist): Add Tramp version 76439 (customize-package-emacs-version-alist): Add Tramp version
@@ -76537,7 +76537,7 @@
76537 76537
76538 * lisp/subr.el (definition-prefixes): Reflow docstring. 76538 * lisp/subr.el (definition-prefixes): Reflow docstring.
76539 76539
76540 * lisp/svg.el (svg-create): Doc fix to allow arg higlighting. 76540 * lisp/svg.el (svg-create): Doc fix to allow arg highlighting.
76541 (svg-gradient, svg-rectangle): Improve docstring formatting. 76541 (svg-gradient, svg-rectangle): Improve docstring formatting.
76542 76542
765432019-06-15 Eli Zaretskii <eliz@gnu.org> 765432019-06-15 Eli Zaretskii <eliz@gnu.org>
@@ -82094,7 +82094,7 @@
82094 * lisp/eshell/esh-opt.el (eshell--process-args): Refactor usage of 82094 * lisp/eshell/esh-opt.el (eshell--process-args): Refactor usage of
82095 args to eshell--args, as we rely on modifications from 82095 args to eshell--args, as we rely on modifications from
82096 eshell--process-option and vice versa. These modifications were not 82096 eshell--process-option and vice versa. These modifications were not
82097 being propogated in the (if (= ai 0)) case, since popping the first 82097 being propagated in the (if (= ai 0)) case, since popping the first
82098 element of a list doesn't destructively modify the underlying list 82098 element of a list doesn't destructively modify the underlying list
82099 object. 82099 object.
82100 82100
@@ -82609,7 +82609,7 @@
82609 (tramp-smb-conf, tramp-smb-winexe-program) 82609 (tramp-smb-conf, tramp-smb-winexe-program)
82610 (tramp-smb-winexe-shell-command) 82610 (tramp-smb-winexe-shell-command)
82611 (tramp-smb-winexe-shell-command-switch): 82611 (tramp-smb-winexe-shell-command-switch):
82612 Dont't require 'tramp. (Bug#31558) 82612 Don't require 'tramp. (Bug#31558)
82613 82613
82614 * lisp/net/tramp.el (tramp-accept-process-output): 82614 * lisp/net/tramp.el (tramp-accept-process-output):
82615 * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process): 82615 * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
@@ -82939,7 +82939,7 @@
82939 Fix inaccuracies in "Shell Ring" node of Emacs manual 82939 Fix inaccuracies in "Shell Ring" node of Emacs manual
82940 82940
82941 * doc/emacs/misc.texi (Shell Ring): Don't mention 'M-s' and don't 82941 * doc/emacs/misc.texi (Shell Ring): Don't mention 'M-s' and don't
82942 insist on Shell history commands being "jsut like" similar 82942 insist on Shell history commands being "just like" similar
82943 commands that operate on minibuffer history. Reported by Jorge 82943 commands that operate on minibuffer history. Reported by Jorge
82944 <jorge+list@disroot.org> in emacs-manual-bugs. 82944 <jorge+list@disroot.org> in emacs-manual-bugs.
82945 82945
@@ -90003,7 +90003,7 @@
90003 90003
900042017-10-27 Eli Zaretskii <eliz@gnu.org> 900042017-10-27 Eli Zaretskii <eliz@gnu.org>
90005 90005
90006 Improve documentation of how faces are applied to display stings 90006 Improve documentation of how faces are applied to display strings
90007 90007
90008 * doc/lispref/display.texi (Displaying Faces): Describe how the 90008 * doc/lispref/display.texi (Displaying Faces): Describe how the
90009 faces of the "underlying" text affect overlay and display strings. 90009 faces of the "underlying" text affect overlay and display strings.
@@ -90156,7 +90156,7 @@
90156 90156
90157 Fix two js indentation problems 90157 Fix two js indentation problems
90158 90158
90159 Fix intentation problems reported in 90159 Fix indentation problems reported in
90160 https://github.com/mooz/js2-mode/issues/463. 90160 https://github.com/mooz/js2-mode/issues/463.
90161 * lisp/progmodes/js.el (js--continued-expression-p): 90161 * lisp/progmodes/js.el (js--continued-expression-p):
90162 Check syntax state after /. 90162 Check syntax state after /.
@@ -92604,7 +92604,7 @@
92604 92604
92605 flymake.el knows nothing about line/column diagnostics (except for 92605 flymake.el knows nothing about line/column diagnostics (except for
92606 backward-compatible flymake-ler-make-ler, which must yet be tested). 92606 backward-compatible flymake-ler-make-ler, which must yet be tested).
92607 It’s also the backend’s reponsibility to compute a BEG and END 92607 It’s also the backend’s responsibility to compute a BEG and END
92608 positions for the diagnostic in the relevant buffer. 92608 positions for the diagnostic in the relevant buffer.
92609 92609
92610 * lisp/progmodes/flymake-proc.el 92610 * lisp/progmodes/flymake-proc.el
@@ -92739,7 +92739,7 @@
92739 92739
92740 For essential properties like `severity', `priority', etc, a default 92740 For essential properties like `severity', `priority', etc, a default
92741 value is produced. Some properties like `evaporate' cannot be 92741 value is produced. Some properties like `evaporate' cannot be
92742 overriden. 92742 overridden.
92743 92743
92744 * lisp/progmodes/flymake.el (flymake--diag): Rename from 92744 * lisp/progmodes/flymake.el (flymake--diag): Rename from
92745 flymake-ler. 92745 flymake-ler.
@@ -93382,7 +93382,7 @@
93382 93382
93383 Bring back the busy wait after x_make_frame_visible (Bug#25521) 93383 Bring back the busy wait after x_make_frame_visible (Bug#25521)
93384 93384
93385 But wait specfically for a MapNotify event, and only for a 93385 But wait specifically for a MapNotify event, and only for a
93386 configurable amount of time. 93386 configurable amount of time.
93387 * src/xterm.c (syms_of_xterm) [x-wait-for-event-timeout]: New 93387 * src/xterm.c (syms_of_xterm) [x-wait-for-event-timeout]: New
93388 variable. 93388 variable.
@@ -94709,7 +94709,7 @@
94709 (tramp-test12-rename-file, tramp-test15-copy-directory) 94709 (tramp-test12-rename-file, tramp-test15-copy-directory)
94710 (tramp-test21-file-links): Extend tests. 94710 (tramp-test21-file-links): Extend tests.
94711 (tramp-test13-make-directory, tramp-test14-delete-directory): 94711 (tramp-test13-make-directory, tramp-test14-delete-directory):
94712 Specifiy error symbol in `should-error'. 94712 Specify error symbol in `should-error'.
94713 94713
947142017-09-12 Mark Oteiza <mvoteiza@udel.edu> 947142017-09-12 Mark Oteiza <mvoteiza@udel.edu>
94715 94715
@@ -94735,7 +94735,7 @@
94735 94735
94736 Include sxhash of object with printed bytecode 94736 Include sxhash of object with printed bytecode
94737 94737
94738 This printing, while succint, is rather opaque. At least give an 94738 This printing, while succinct, is rather opaque. At least give an
94739 immediate clue of whether different byte code printouts are for the 94739 immediate clue of whether different byte code printouts are for the
94740 same or different byte code objects. 94740 same or different byte code objects.
94741 * lisp/emacs-lisp/cl-print.el (cl-print-object): Add object sxhash to 94741 * lisp/emacs-lisp/cl-print.el (cl-print-object): Add object sxhash to
@@ -95280,7 +95280,7 @@
95280 95280
95281 Problem reported by Angelo Graziosi in: 95281 Problem reported by Angelo Graziosi in:
95282 https://lists.gnu.org/r/emacs-devel/2017-09/msg00045.html 95282 https://lists.gnu.org/r/emacs-devel/2017-09/msg00045.html
95283 * autogen.sh (git_config): Do not execut 'git' if $do_git fails. 95283 * autogen.sh (git_config): Do not execute 'git' if $do_git fails.
95284 95284
952852017-09-07 Glenn Morris <rgm@gnu.org> 952852017-09-07 Glenn Morris <rgm@gnu.org>
95286 95286
@@ -97597,13 +97597,13 @@
97597 97597
975982017-08-09 Tino Calancha <tino.calancha@gmail.com> 975982017-08-09 Tino Calancha <tino.calancha@gmail.com>
97599 97599
97600 dired-delete-file: Dont't ask for empty dirs 97600 dired-delete-file: Don't ask for empty dirs
97601 97601
97602 * lisp/dired.el (dired--yes-no-all-quit-help): New defun. 97602 * lisp/dired.el (dired--yes-no-all-quit-help): New defun.
97603 (dired-delete-file): Use it. Dont't ask for empty dirs (Bug#27940). 97603 (dired-delete-file): Use it. Don't ask for empty dirs (Bug#27940).
97604 97604
97605 * test/lisp/dired-tests.el (dired-test-with-temp-dirs): 97605 * test/lisp/dired-tests.el (dired-test-with-temp-dirs):
97606 New auxiliar macro. 97606 New auxiliary macro.
97607 (dired-test-bug27940): Add new test. 97607 (dired-test-bug27940): Add new test.
97608 97608
976092017-08-09 Tino Calancha <tino.calancha@gmail.com> 976092017-08-09 Tino Calancha <tino.calancha@gmail.com>
@@ -97928,7 +97928,7 @@
97928 Show help message when user inputs 'help'. 97928 Show help message when user inputs 'help'.
97929 (dired-do-flagged-delete): Bind locally dired-recursive-deletes 97929 (dired-do-flagged-delete): Bind locally dired-recursive-deletes
97930 so that we can overwrite its global value. 97930 so that we can overwrite its global value.
97931 Wrapp the loop within a catch '--delete-cancel to catch when 97931 Wrap the loop within a catch '--delete-cancel to catch when
97932 the user abort the directtry deletion. 97932 the user abort the directtry deletion.
97933 * doc/emacs/dired.texi (Dired Deletion): Update manual. 97933 * doc/emacs/dired.texi (Dired Deletion): Update manual.
97934 * etc/NEWS (Changes in Specialized Modes and Packages in Emacs 26.1): 97934 * etc/NEWS (Changes in Specialized Modes and Packages in Emacs 26.1):
@@ -98908,7 +98908,7 @@
98908 98908
98909 * lisp/net/shr.el (shr-put-image): Display svg images as svg 98909 * lisp/net/shr.el (shr-put-image): Display svg images as svg
98910 (bug#27799). I suspect the previous change was checked in by 98910 (bug#27799). I suspect the previous change was checked in by
98911 accident in conjuction with some other svg changes. 98911 accident in conjunction with some other svg changes.
98912 98912
989132017-07-23 Michael Albinus <michael.albinus@gmx.de> 989132017-07-23 Michael Albinus <michael.albinus@gmx.de>
98914 98914
@@ -99358,7 +99358,7 @@
99358 * doc/misc/ses.texi (Configuring what printer function 99358 * doc/misc/ses.texi (Configuring what printer function
99359 applies): Add description of keys for completing local printer 99359 applies): Add description of keys for completing local printer
99360 symbols and listing local printers in a help buffer. 99360 symbols and listing local printers in a help buffer.
99361 (Formulas): Add decription for key to list the named cell 99361 (Formulas): Add description for key to list the named cell
99362 symbols in a help buffer. 99362 symbols in a help buffer.
99363 99363
99364 * lisp/ses.el (ses-completion-keys): New constant. 99364 * lisp/ses.el (ses-completion-keys): New constant.
@@ -100624,7 +100624,7 @@
100624 * src/image.c (xbm_scan): 100624 * src/image.c (xbm_scan):
100625 * src/lread.c (read_escape): 100625 * src/lread.c (read_escape):
100626 * src/regex.c (ISXDIGIT) [emacs]: 100626 * src/regex.c (ISXDIGIT) [emacs]:
100627 Use char_hexdigit insted of doing it by hand. 100627 Use char_hexdigit instead of doing it by hand.
100628 100628
1006292017-07-06 Paul Eggert <eggert@cs.ucla.edu> 1006292017-07-06 Paul Eggert <eggert@cs.ucla.edu>
100630 100630
@@ -100970,7 +100970,7 @@
100970 Fix bug in yesterday's CC Mode commit. 100970 Fix bug in yesterday's CC Mode commit.
100971 100971
100972 * lisp/progmodes/cc-mode.el (c-quoted-number-head-before-point): Check a 100972 * lisp/progmodes/cc-mode.el (c-quoted-number-head-before-point): Check a
100973 search has succeded before using the match data. 100973 search has succeeded before using the match data.
100974 (c-quoted-number-head-before-point, c-quoted-number-head-after-point): 100974 (c-quoted-number-head-before-point, c-quoted-number-head-after-point):
100975 Specify that the position of the extremity of the head or tail is in the 100975 Specify that the position of the extremity of the head or tail is in the
100976 match data. 100976 match data.
@@ -101677,13 +101677,13 @@
101677 * src/nsfns.m (frame_parm_handler): Add entry for 101677 * src/nsfns.m (frame_parm_handler): Add entry for
101678 x_set_no_special_glyphs. 101678 x_set_no_special_glyphs.
101679 (Fx_create_frame): Handle 'no-special-glyphs' parameter. 101679 (Fx_create_frame): Handle 'no-special-glyphs' parameter.
101680 Intitialize new cursor types for dragging frame borders. 101680 Initialize new cursor types for dragging frame borders.
101681 * src/nsterm.h (struct ns_output): Add new cursor types for 101681 * src/nsterm.h (struct ns_output): Add new cursor types for
101682 dragging frame borders. 101682 dragging frame borders.
101683 * src/w32fns.c (w32_frame_parm_handlers): Add entry for 101683 * src/w32fns.c (w32_frame_parm_handlers): Add entry for
101684 x_set_no_special_glyphs. 101684 x_set_no_special_glyphs.
101685 (Fx_create_frame): Handle 'no-special-glyphs' parameter. 101685 (Fx_create_frame): Handle 'no-special-glyphs' parameter.
101686 Intitialize new cursor types for dragging frame borders. 101686 Initialize new cursor types for dragging frame borders.
101687 * src/w32term.h (struct w32_output): Add new cursor types for 101687 * src/w32term.h (struct w32_output): Add new cursor types for
101688 dragging frame borders. 101688 dragging frame borders.
101689 * src/window.c (coordinates_in_window) 101689 * src/window.c (coordinates_in_window)
@@ -103780,7 +103780,7 @@
103780 Correct and isolate the todo-mode test environment 103780 Correct and isolate the todo-mode test environment
103781 103781
103782 This avoids having to set todo-mode variables globally in the test 103782 This avoids having to set todo-mode variables globally in the test
103783 file and prevents any exisiting user todo-mode files from influencing 103783 file and prevents any existing user todo-mode files from influencing
103784 the tests. 103784 the tests.
103785 103785
103786 * test/lisp/calendar/todo-mode-tests.el: 103786 * test/lisp/calendar/todo-mode-tests.el:
@@ -104671,7 +104671,7 @@
104671 Fix and improve UI of scroll bar menu (bug#27047) 104671 Fix and improve UI of scroll bar menu (bug#27047)
104672 104672
104673 In addition, since the Emacs manual writes "scroll bar", "tool 104673 In addition, since the Emacs manual writes "scroll bar", "tool
104674 bar" and "menu bar", use this convention in the Show/Hide menues 104674 bar" and "menu bar", use this convention in the Show/Hide menus
104675 and tooltips as well. 104675 and tooltips as well.
104676 104676
104677 * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Make 104677 * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Make
@@ -105415,7 +105415,7 @@
105415 specifies how emacs should use tramp to find remote files. 105415 specifies how emacs should use tramp to find remote files.
105416 105416
105417 * doc/emacs/misc.texi (TCP Emacs server): New subsection describing 105417 * doc/emacs/misc.texi (TCP Emacs server): New subsection describing
105418 the various knobs to tune server.el for TCP opereation. 105418 the various knobs to tune server.el for TCP operation.
105419 (emacsclient Options): Reference "TCP Emacs server" from description of 105419 (emacsclient Options): Reference "TCP Emacs server" from description of
105420 --server-file. Document the new '--tramp' / '-T' options. 105420 --server-file. Document the new '--tramp' / '-T' options.
105421 * doc/emacs/emacs.texi (Top): Update the top-level menu. 105421 * doc/emacs/emacs.texi (Top): Update the top-level menu.
@@ -107412,7 +107412,7 @@
107412 instead of the sexp beginning position. Saving the 107412 instead of the sexp beginning position. Saving the
107413 CONTAINING-SEXP-START returned by `calculate-lisp-indent' is no longer 107413 CONTAINING-SEXP-START returned by `calculate-lisp-indent' is no longer
107414 needed. Don't bother stopping if we don't descend below init-depth, 107414 needed. Don't bother stopping if we don't descend below init-depth,
107415 since we now alway scan the whole buffer (via syntax-ppss) anyway. 107415 since we now always scan the whole buffer (via syntax-ppss) anyway.
107416 * test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp): Add blank 107416 * test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp): Add blank
107417 line to test case. 107417 line to test case.
107418 107418
@@ -109144,7 +109144,7 @@
109144 * doc/lispref/records.texi (Records): reference it. Document 109144 * doc/lispref/records.texi (Records): reference it. Document
109145 behavior when type slot is a record. 109145 behavior when type slot is a record.
109146 109146
109147 * admin/alloc-colors.c (Fmake_record, Frecord): mention type desciptors. 109147 * admin/alloc-colors.c (Fmake_record, Frecord): mention type descriptors.
109148 109148
1091492017-04-06 Stefan Monnier <monnier@iro.umontreal.ca> 1091492017-04-06 Stefan Monnier <monnier@iro.umontreal.ca>
109150 109150
@@ -110325,7 +110325,7 @@
110325 110325
110326 * lisp/progmodes/sql.el: Version 3.6 110326 * lisp/progmodes/sql.el: Version 3.6
110327 110327
110328 (sql-login-params): Added :must-match for completition of 110328 (sql-login-params): Added :must-match for completion of
110329 `server' and `database' login parameters. 110329 `server' and `database' login parameters.
110330 (sql-sqlite-login-params, sql-postgres-login-params): Set 110330 (sql-sqlite-login-params, sql-postgres-login-params): Set
110331 :must-match to `confirm'. 110331 :must-match to `confirm'.
@@ -113373,7 +113373,7 @@
113373 casefiddle-tests-case-table, casefiddle-tests-casing-character, 113373 casefiddle-tests-case-table, casefiddle-tests-casing-character,
113374 casefiddle-tests-casing, casefiddle-tests-casing-byte8, 113374 casefiddle-tests-casing, casefiddle-tests-casing-byte8,
113375 casefiddle-tests-casing-byte8-with-changes): New tests. 113375 casefiddle-tests-casing-byte8-with-changes): New tests.
113376 (casefiddle-tests--test-casing): New helper function for runnig 113376 (casefiddle-tests--test-casing): New helper function for running
113377 some of the tests. 113377 some of the tests.
113378 113378
1133792017-02-15 Michal Nazarewicz <mina86@mina86.com> 1133792017-02-15 Michal Nazarewicz <mina86@mina86.com>
@@ -113897,7 +113897,7 @@
113897 113897
113898 * lisp/eshell/esh-proc.el (eshell-sentinel): If called while still 113898 * lisp/eshell/esh-proc.el (eshell-sentinel): If called while still
113899 handling output of the process, make sure to close the pipes only later, 113899 handling output of the process, make sure to close the pipes only later,
113900 so that the next process in the pipeline recieves EOF only after getting 113900 so that the next process in the pipeline receives EOF only after getting
113901 all its input (Bug#25549). 113901 all its input (Bug#25549).
113902 113902
1139032017-02-09 Katsumi Yamaoka <yamaoka@jpl.org> 1139032017-02-09 Katsumi Yamaoka <yamaoka@jpl.org>
@@ -116519,7 +116519,7 @@
116519 Clarify major mode switching 116519 Clarify major mode switching
116520 116520
116521 * doc/emacs/modes.texi (Major Modes): 116521 * doc/emacs/modes.texi (Major Modes):
116522 * doc/lispref/modes.texi (Modes, Major Modes): Explictly say that each 116522 * doc/lispref/modes.texi (Modes, Major Modes): Explicitly say that each
116523 buffer has exactly one major mode and can't be "turned off", only 116523 buffer has exactly one major mode and can't be "turned off", only
116524 switched away from (Bug#25357). 116524 switched away from (Bug#25357).
116525 116525
@@ -119501,7 +119501,7 @@
119501 119501
119502 merge from trunk 119502 merge from trunk
119503 119503
119504 this merges frmo trunk and fixes various build issues. 119504 this merges from trunk and fixes various build issues.
119505 this needed a few ugly tweaks. 119505 this needed a few ugly tweaks.
119506 this hangs in "make check" now 119506 this hangs in "make check" now
119507 119507
@@ -120142,7 +120142,7 @@
120142 120142
120143 Since 2016-06-26 "Fix test-completion with completion-regexp-list", when 120143 Since 2016-06-26 "Fix test-completion with completion-regexp-list", when
120144 calling test-completion with an alist collection, the predicate was 120144 calling test-completion with an alist collection, the predicate was
120145 recieving the string value instead of the alist entry (Bug#24966). 120145 receiving the string value instead of the alist entry (Bug#24966).
120146 120146
120147 * src/minibuf.c (Ftest_completion): Don't modify the found element, just 120147 * src/minibuf.c (Ftest_completion): Don't modify the found element, just
120148 test STRING against `completion-regexp-list'. 120148 test STRING against `completion-regexp-list'.
@@ -124470,7 +124470,7 @@
124470 124470
1244712016-09-12 Michal Nazarewicz <mina86@mina86.com> 1244712016-09-12 Michal Nazarewicz <mina86@mina86.com>
124472 124472
124473 Fix compiler thinking width and height may be unitialized in frame.c 124473 Fix compiler thinking width and height may be uninitialized in frame.c
124474 124474
124475 This fixes the following warning: 124475 This fixes the following warning:
124476 124476
@@ -124486,7 +124486,7 @@
124486 124486
1244872016-09-12 Michal Nazarewicz <mina86@mina86.com> 1244872016-09-12 Michal Nazarewicz <mina86@mina86.com>
124488 124488
124489 Fix compiler thinking tmpdir may be unitialized in emacsclient 124489 Fix compiler thinking tmpdir may be uninitialized in emacsclient
124490 124490
124491 This fixes the following warning: 124491 This fixes the following warning:
124492 124492
@@ -124669,7 +124669,7 @@
124669 124669
124670 Invert y coord of NS image files (bug#7847) 124670 Invert y coord of NS image files (bug#7847)
124671 124671
124672 * src/nsterm.m (ns_dumpglyphs_image): Invert y co-ordinate of the image 124672 * src/nsterm.m (ns_dumpglyphs_image): Invert y coordinate of the image
124673 when compositing. 124673 when compositing.
124674 124674
1246752016-09-10 Noam Postavsky <npostavs@gmail.com> 1246752016-09-10 Noam Postavsky <npostavs@gmail.com>
@@ -124701,7 +124701,7 @@
124701 determine which class is failing. This happens when failure is caused 124701 determine which class is failing. This happens when failure is caused
124702 by ‘(should (equal (point) (point-max)))’ not being met. 124702 by ‘(should (equal (point) (point-max)))’ not being met.
124703 124703
124704 With per-character class tests, it is immidiatelly obvious which test 124704 With per-character class tests, it is immediately obvious which test
124705 causes issues plus tests for all classes are run even if some of them 124705 causes issues plus tests for all classes are run even if some of them
124706 fail. 124706 fail.
124707 124707
@@ -125756,7 +125756,7 @@
125756 125756
125757 * lisp/emacs-lisp/map.el (map--dispatch): Fix docstring 125757 * lisp/emacs-lisp/map.el (map--dispatch): Fix docstring
125758 125758
125759 The docstring referenced a non-existant parameter, as well as a 125759 The docstring referenced a non-existent parameter, as well as a
125760 parameter that has been renamed since the docstring was written. Fix 125760 parameter that has been renamed since the docstring was written. Fix
125761 both errors, fixing (Bug#24182). 125761 both errors, fixing (Bug#24182).
125762 125762
@@ -125828,7 +125828,7 @@
125828 125828
125829 * lisp/window.el (window--state-put-2): Set 'noforce argument 125829 * lisp/window.el (window--state-put-2): Set 'noforce argument
125830 when restoring a window's start position. This avoids that the 125830 when restoring a window's start position. This avoids that the
125831 effect of `set-window-point' gets overidden by that of 125831 effect of `set-window-point' gets overridden by that of
125832 `set-window-start' (Bug#24240). 125832 `set-window-start' (Bug#24240).
125833 125833
1258342016-08-17 Alan Mackenzie <acm@muc.de> 1258342016-08-17 Alan Mackenzie <acm@muc.de>
@@ -126205,7 +126205,7 @@
126205 126205
126206 * doc/misc/ses.texi (Quick Tutorial): Mention the '!' 126206 * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
126207 'ses-range' modifier as an alternative to 'ses+'. 126207 'ses-range' modifier as an alternative to 'ses+'.
126208 (Advanced Features): Add a refernce to node 'Nonrelocatable 126208 (Advanced Features): Add a reference to node 'Nonrelocatable
126209 references' concerning function 'ses-rename-cell'. 126209 references' concerning function 'ses-rename-cell'.
126210 (Standard formula functions): Mention the '!' 'ses-range' 126210 (Standard formula functions): Mention the '!' 'ses-range'
126211 modifier as an alternative to 'ses-delete-blanks'. 126211 modifier as an alternative to 'ses-delete-blanks'.
@@ -126449,7 +126449,7 @@
126449 126449
1264502016-08-06 Michael Albinus <michael.albinus@gmx.de> 1264502016-08-06 Michael Albinus <michael.albinus@gmx.de>
126451 126451
126452 Add missing dcstrings in Tramp, remove chec for obsolee methods 126452 Add missing dcstrings in Tramp, remove check for obsolee methods
126453 126453
126454 * lisp/net/tramp.el (tramp-progress-reporter-update) 126454 * lisp/net/tramp.el (tramp-progress-reporter-update)
126455 (tramp-unload-file-name-handlers, tramp-get-local-uid) 126455 (tramp-unload-file-name-handlers, tramp-get-local-uid)
@@ -128859,7 +128859,7 @@
128859 Call `file-name-directory' also for remote NEWNAME. 128859 Call `file-name-directory' also for remote NEWNAME.
128860 128860
128861 * test/lisp/net/tramp-tests.el (tramp-test15-copy-directory): 128861 * test/lisp/net/tramp-tests.el (tramp-test15-copy-directory):
128862 Do not skip for tramp-smb.el. Test als COPY-CONTENTS case. 128862 Do not skip for tramp-smb.el. Test also COPY-CONTENTS case.
128863 (tramp-test24-file-name-completion): Improve check for 128863 (tramp-test24-file-name-completion): Improve check for
128864 hostname completion. 128864 hostname completion.
128865 (tramp--test-rsync-p): New defun. 128865 (tramp--test-rsync-p): New defun.
@@ -129664,7 +129664,7 @@
129664 129664
129665 * lisp/international/ucs-normalize.el 129665 * lisp/international/ucs-normalize.el
129666 (ucs-normalize-hfs-nfd-pre-write-conversion): 129666 (ucs-normalize-hfs-nfd-pre-write-conversion):
129667 Prevent compiler warning for unused arguments, add coment. 129667 Prevent compiler warning for unused arguments, add comment.
129668 129668
1296692016-06-10 Paul Eggert <eggert@cs.ucla.edu> 1296692016-06-10 Paul Eggert <eggert@cs.ucla.edu>
129670 129670
@@ -130352,7 +130352,7 @@
130352 130352
130353 * lisp/wid-edit.el (link): Remove :follow-link property (bug#22434) 130353 * lisp/wid-edit.el (link): Remove :follow-link property (bug#22434)
130354 130354
130355 * lisp/recentf.el (recentf-dialog-mode-map): Remove unecessary mapping. 130355 * lisp/recentf.el (recentf-dialog-mode-map): Remove unnecessary mapping.
130356 130356
1303572016-05-29 Lars Magne Ingebrigtsen <larsi@gnus.org> 1303572016-05-29 Lars Magne Ingebrigtsen <larsi@gnus.org>
130358 130358
@@ -131429,7 +131429,7 @@
131429 4c5a00b Make package-install-from-buffer not move point 131429 4c5a00b Make package-install-from-buffer not move point
131430 9596ea1 ; Revert "* emacs-lisp/lisp-mnt.el (lm-header): save-excursion" 131430 9596ea1 ; Revert "* emacs-lisp/lisp-mnt.el (lm-header): save-excursion"
131431 f79c352 Redo the fix for bug#21839 131431 f79c352 Redo the fix for bug#21839
131432 8d2f78c Don't treat JS spread as contination method call 131432 8d2f78c Don't treat JS spread as continuation method call
131433 131433
1314342016-05-12 Chris Feng <chris.w.feng@gmail.com> 1314342016-05-12 Chris Feng <chris.w.feng@gmail.com>
131435 131435
@@ -132526,7 +132526,7 @@
132526 cursor-type doc fix 132526 cursor-type doc fix
132527 132527
132528 * src/buffer.c (syms_of_buffer): Mention that cursor-type's 132528 * src/buffer.c (syms_of_buffer): Mention that cursor-type's
132529 WIDHT/HEIGHT can't exceed the frame char size (bug#19215). 132529 WIDTH/HEIGHT can't exceed the frame char size (bug#19215).
132530 132530
1325312016-04-30 Lars Ingebrigtsen <larsi@gnus.org> 1325312016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
132532 132532
@@ -132608,7 +132608,7 @@
132608 132608
1326092016-04-30 Lars Ingebrigtsen <larsi@gnus.org> 1326092016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
132610 132610
132611 Explictly explain that package-initialize loads the packages 132611 Explicitly explain that package-initialize loads the packages
132612 132612
132613 * lisp/emacs-lisp/package.el (package-initialize): Be explicit 132613 * lisp/emacs-lisp/package.el (package-initialize): Be explicit
132614 in saying that `package-initialize' obviates adjusting the 132614 in saying that `package-initialize' obviates adjusting the
@@ -132892,7 +132892,7 @@
132892 Fix definition of nobreak-space 132892 Fix definition of nobreak-space
132893 132893
132894 * lisp/faces.el (nobreak-space): The definition to 132894 * lisp/faces.el (nobreak-space): The definition to
132895 nobreak-space was inadvertantly changed by the previous checkin. 132895 nobreak-space was inadvertently changed by the previous checkin.
132896 132896
1328972016-04-28 Lars Ingebrigtsen <larsi@gnus.org> 1328972016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
132898 132898
@@ -133217,9 +133217,9 @@
133217 calling `vc-state' on default-directory (VC state is undefined 133217 calling `vc-state' on default-directory (VC state is undefined
133218 for directories). Check that `vc-state' returns nil where it 133218 for directories). Check that `vc-state' returns nil where it
133219 returned `unregistered' before. Remove all checks comparing 133219 returned `unregistered' before. Remove all checks comparing
133220 invocations with the backend passed in explictly and without. 133220 invocations with the backend passed in explicitly and without.
133221 (vc-test--working-revision): Remove all checks comparing 133221 (vc-test--working-revision): Remove all checks comparing
133222 invocations with the backend passed in explictly and without. 133222 invocations with the backend passed in explicitly and without.
133223 Update comments, and add a new one. 133223 Update comments, and add a new one.
133224 133224
1332252016-04-24 Paul Eggert <eggert@cs.ucla.edu> 1332252016-04-24 Paul Eggert <eggert@cs.ucla.edu>
@@ -133845,7 +133845,7 @@
133845 133845
1338462016-04-10 Etienne Prud'homme <e.e.f.prudhomme@gmail.com> (tiny change) 1338462016-04-10 Etienne Prud'homme <e.e.f.prudhomme@gmail.com> (tiny change)
133847 133847
133848 Fix alignement rule for CSS 133848 Fix alignment rule for CSS
133849 133849
133850 * lisp/align.el (align-rules-list): Support CSS properties that have 133850 * lisp/align.el (align-rules-list): Support CSS properties that have
133851 multiple words. 133851 multiple words.
@@ -134121,7 +134121,7 @@
134121 a3daa34 Teach M-x disassemble a default argument. 134121 a3daa34 Teach M-x disassemble a default argument.
134122 e30c3e9 Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows 134122 e30c3e9 Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
134123 df441b3 Fix OS X specific settings in tramp-tests 134123 df441b3 Fix OS X specific settings in tramp-tests
134124 2244331 Finish fixing a cacheing bug in CC Mode (see 2016-03-09) 134124 2244331 Finish fixing a caching bug in CC Mode (see 2016-03-09)
134125 134125
134126 # Conflicts: 134126 # Conflicts:
134127 # lisp/net/tramp-sh.el 134127 # lisp/net/tramp-sh.el
@@ -134272,7 +134272,7 @@
134272 0403620 Don't misindent arguments of a method call inside continuation 134272 0403620 Don't misindent arguments of a method call inside continuation
134273 e6776f8 * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_ec... 134273 e6776f8 * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_ec...
134274 8475f3d ASCII-only etc/NEWS etc. 134274 8475f3d ASCII-only etc/NEWS etc.
134275 5cc6919 Fix a cacheing bug, which led to inordinately slow c-beginnin... 134275 5cc6919 Fix a caching bug, which led to inordinately slow c-beginnin...
134276 0ce37ea Fix Isearch prompt when invoked with an argument 134276 0ce37ea Fix Isearch prompt when invoked with an argument
134277 f3033d4 Fix a typo in the Emacs manual 134277 f3033d4 Fix a typo in the Emacs manual
134278 4235d2d Curved quotes in etc/NEWS etc. 134278 4235d2d Curved quotes in etc/NEWS etc.
@@ -137965,7 +137965,7 @@
137965 137965
1379662016-02-10 Lars Ingebrigtsen <larsi@gnus.org> 1379662016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
137967 137967
137968 Remove som XEmacs compat code from message.el 137968 Remove some XEmacs compat code from message.el
137969 137969
137970 * lisp/gnus/message.el: Remove some XEmacs compat code. 137970 * lisp/gnus/message.el: Remove some XEmacs compat code.
137971 137971
@@ -138403,7 +138403,7 @@
138403 a header while with nil argument moves to the indented text of header's 138403 a header while with nil argument moves to the indented text of header's
138404 value. 138404 value.
138405 (message-beginning-of-line): Function is now aware of folded headers and 138405 (message-beginning-of-line): Function is now aware of folded headers and
138406 either moves point to the indention of a header or, in visual-line-mode, 138406 either moves point to the indentation of a header or, in visual-line-mode,
138407 searches for the beginning of the header. 138407 searches for the beginning of the header.
138408 138408
1384092016-02-08 Michal Nazarewicz <mina86@mina86.com> 1384092016-02-08 Michal Nazarewicz <mina86@mina86.com>
@@ -139254,7 +139254,7 @@
139254 (History): XEmacs support has been removed. 139254 (History): XEmacs support has been removed.
139255 (GVFS based methods, Remote processes): Do not use emacsgvfs flag. 139255 (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
139256 (Auto-save and Backup): Use both syntax versions. 139256 (Auto-save and Backup): Use both syntax versions.
139257 (File name Syntax): Remark on IPv6 adresses is valid for 139257 (File name Syntax): Remark on IPv6 addresses is valid for
139258 unified syntax only. 139258 unified syntax only.
139259 139259
139260 * doc/misc/trampver.texi: Do not set emacsgvfs flag. 139260 * doc/misc/trampver.texi: Do not set emacsgvfs flag.
@@ -140661,7 +140661,7 @@
140661 put-text-property cannot be plainly (point), you need a 140661 put-text-property cannot be plainly (point), you need a
140662 ses-goto-print call before 140662 ses-goto-print call before
140663 140663
140664 - Second, the range itself was computed erronously, only the first 140664 - Second, the range itself was computed erroneously, only the first
140665 char was affected instead of the full cell width. This was not 140665 char was affected instead of the full cell width. This was not
140666 noticeable prior to changes (Deprecate `intangible' and 140666 noticeable prior to changes (Deprecate `intangible' and
140667 `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z 140667 `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
@@ -142220,7 +142220,7 @@
142220 the problems described in bug#20674 regarding the interaction with 142220 the problems described in bug#20674 regarding the interaction with
142221 modes such as darkroom-mode and olivetti-mode. 142221 modes such as darkroom-mode and olivetti-mode.
142222 142222
142223 A similar fix was commited to nlinum.el in ELPA.git's 142223 A similar fix was committed to nlinum.el in ELPA.git's
142224 e7f5f549fbfb740b911fb7f33b42381ecece56d8 142224 e7f5f549fbfb740b911fb7f33b42381ecece56d8
142225 142225
142226 * lisp/linum.el (linum-delete-overlays): Restore margins more 142226 * lisp/linum.el (linum-delete-overlays): Restore margins more
diff --git a/admin/ChangeLog.1 b/admin/ChangeLog.1
index 3cbc9ebbd44..7a576a03123 100644
--- a/admin/ChangeLog.1
+++ b/admin/ChangeLog.1
@@ -181,7 +181,7 @@
181 181
182 * grammars/c.by (opt-brackets-after-symbol): New. 182 * grammars/c.by (opt-brackets-after-symbol): New.
183 (multi-stage-dereference): Use it. Add rules for explicit 183 (multi-stage-dereference): Use it. Add rules for explicit
184 matching the last dereference. We cannot just juse 184 matching the last dereference. We cannot just use
185 'namespace-symbol' as a single rule, since this would match too 185 'namespace-symbol' as a single rule, since this would match too
186 greedy and mess with parsing default values of variables. 186 greedy and mess with parsing default values of variables.
187 187
@@ -1258,7 +1258,7 @@
12582012-06-13 Andreas Schwab <schwab@linux-m68k.org> 12582012-06-13 Andreas Schwab <schwab@linux-m68k.org>
1259 1259
1260 * make-emacs: Rename --union-type to --check-lisp-type. 1260 * make-emacs: Rename --union-type to --check-lisp-type.
1261 Define CHECK_LISP_OBJECT_TYPE insted of USE_LISP_UNION_TYPE. 1261 Define CHECK_LISP_OBJECT_TYPE instead of USE_LISP_UNION_TYPE.
1262 * CPP-DEFINES (DEBUG_LISP_OBJECT_TYPE): Rename from 1262 * CPP-DEFINES (DEBUG_LISP_OBJECT_TYPE): Rename from
1263 USE_LISP_UNION_TYPE. 1263 USE_LISP_UNION_TYPE.
1264 1264
diff --git a/admin/find-gc.el b/admin/find-gc.el
index 9bab3776a51..7de2474b828 100644
--- a/admin/find-gc.el
+++ b/admin/find-gc.el
@@ -73,8 +73,8 @@ Also store it in `find-gc-unsafe-list'."
73 (find-unsafe-funcs 'Fgarbage_collect) 73 (find-unsafe-funcs 'Fgarbage_collect)
74 (setq find-gc-unsafe-list 74 (setq find-gc-unsafe-list
75 (sort find-gc-unsafe-list 75 (sort find-gc-unsafe-list
76 (function (lambda (x y) 76 (lambda (x y)
77 (string-lessp (car x) (car y))))))) 77 (string-lessp (car x) (car y))))))
78 78
79;;; This does a depth-first search to find all functions that can 79;;; This does a depth-first search to find all functions that can
80;;; ultimately call the function "target". The result is an a-list 80;;; ultimately call the function "target". The result is an a-list
diff --git a/configure.ac b/configure.ac
index ead27d3dea9..5aceac6d951 100644
--- a/configure.ac
+++ b/configure.ac
@@ -454,7 +454,7 @@ OPTION_DEFAULT_ON([cairo],[don't compile with Cairo drawing])
454OPTION_DEFAULT_ON([xml2],[don't compile with XML parsing support]) 454OPTION_DEFAULT_ON([xml2],[don't compile with XML parsing support])
455OPTION_DEFAULT_OFF([imagemagick],[compile with ImageMagick image support]) 455OPTION_DEFAULT_OFF([imagemagick],[compile with ImageMagick image support])
456OPTION_DEFAULT_ON([native-image-api], [don't use native image APIs (GDI+ on Windows)]) 456OPTION_DEFAULT_ON([native-image-api], [don't use native image APIs (GDI+ on Windows)])
457OPTION_DEFAULT_IFAVAILABLE([json], [don't compile with native JSON support]) 457OPTION_DEFAULT_IFAVAILABLE([json], [compile with native JSON support])
458 458
459OPTION_DEFAULT_ON([xft],[don't use XFT for anti aliased fonts]) 459OPTION_DEFAULT_ON([xft],[don't use XFT for anti aliased fonts])
460OPTION_DEFAULT_ON([harfbuzz],[don't use HarfBuzz for text shaping]) 460OPTION_DEFAULT_ON([harfbuzz],[don't use HarfBuzz for text shaping])
diff --git a/doc/emacs/basic.texi b/doc/emacs/basic.texi
index cde7b475d95..2e03d0c04a3 100644
--- a/doc/emacs/basic.texi
+++ b/doc/emacs/basic.texi
@@ -464,13 +464,14 @@ Normally, this command undoes the last change, moving point back to
464where it was before the change. The undo command applies only to 464where it was before the change. The undo command applies only to
465changes in the buffer; you can't use it to undo cursor motion. 465changes in the buffer; you can't use it to undo cursor motion.
466 466
467 On a graphics terminal (including text-mode frames displayed by a 467 On a terminal that supports the @key{Control} modifier on all other
468terminal emulator, such as @command{xterm}), the easiest way to invoke 468keys, the easiest way to invoke @code{undo} is with @kbd{C-/}, since
469@code{undo} is with @kbd{C-/}; that doesn't need the Shift key. On a 469that doesn't need the @key{Shift} modifier. On terminals which allow
470text terminal, @kbd{C-/} does not exist, but in many cases you can type 470only the ASCII control characters, @kbd{C-/} does not exist, but for
471@kbd{C-_} without the Shift key (in effect pressing @kbd{C--}) and it 471many of them @kbd{C-/} still works because it actually sends @kbd{C-_}
472will work anyway, at least with keyboards that produce the US ASCII 472to Emacs, while many others allow you to omit the @key{Shift} modifier
473character set. 473when you type @kbd{C-_} (in effect pressing @kbd{C--}), making that
474the most convenient way to invoke @code{undo}.
474 475
475 Although each editing command usually makes a separate entry in the 476 Although each editing command usually makes a separate entry in the
476undo records, very simple commands may be grouped together. 477undo records, very simple commands may be grouped together.
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index 24fd02aac1a..fdc4703e86f 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -129,6 +129,17 @@ options (that is, single characters) requiring no arguments, and long
129options (starting with @samp{--}) whose arguments are specified with 129options (starting with @samp{--}) whose arguments are specified with
130@samp{=}. 130@samp{=}.
131 131
132@vindex dired-switches-in-mode-line
133 Dired displays in the mode line an indication of what were the
134switches used to invoke @command{ls}. By default, Dired will try to
135determine whether the switches indicate sorting by name or date, and
136will say so in the mode line. If the @code{dired-switches-in-mode-line}
137variable is @code{as-is}, the switches will be shown verbatim. If
138this variable's value is an integer, the switch display will be
139truncated to that length. This variable can also be a function, which
140will be called with @code{dired-actual-switches} as the only
141parameter, and should return a string to display in the mode line.
142
132@vindex dired-use-ls-dired 143@vindex dired-use-ls-dired
133 If your @command{ls} program supports the @samp{--dired} option, 144 If your @command{ls} program supports the @samp{--dired} option,
134Dired automatically passes it that option; this causes @command{ls} to 145Dired automatically passes it that option; this causes @command{ls} to
diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi
index d44d7bee2ac..d982a9e8787 100644
--- a/doc/emacs/search.texi
+++ b/doc/emacs/search.texi
@@ -1984,10 +1984,11 @@ the @code{search-highlight-submatches} variable. If this variable's
1984value is @code{nil}, no special highlighting is done, but if the value 1984value is @code{nil}, no special highlighting is done, but if the value
1985is non-@code{nil}, text that matches @samp{\( @dots{} \)} constructs 1985is non-@code{nil}, text that matches @samp{\( @dots{} \)} constructs
1986(a.k.a.@: ``subexpressions'') in the regular expression will be 1986(a.k.a.@: ``subexpressions'') in the regular expression will be
1987highlighted with distinct faces, named @code{isearch-group-@var{n}}. 1987highlighted with distinct faces, named @code{isearch-group-odd}
1988For instance, when searching for @samp{foo-\([0-9]+\)}, the part 1988for the odd group matches, and @code{isearch-group-even}
1989matched by @samp{[0-9]+} will be highlighted with the 1989for the even group matches. For instance, when searching for
1990@code{isearch-group-1} face. 1990@samp{foo-\([0-9]+\)}, the part matched by @samp{[0-9]+} will be
1991highlighted with the @code{isearch-group-odd} face.
1991 1992
1992@cindex lazy highlighting customizations 1993@cindex lazy highlighting customizations
1993@vindex isearch-lazy-highlight 1994@vindex isearch-lazy-highlight
diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi
index 6833af9c262..aa6ef307b18 100644
--- a/doc/lispref/loading.texi
+++ b/doc/lispref/loading.texi
@@ -577,7 +577,7 @@ macro, then an error is signaled with data @code{"Autoloading failed to
577define function @var{function-name}"}. 577define function @var{function-name}"}.
578 578
579@findex update-file-autoloads 579@findex update-file-autoloads
580@findex update-directory-autoloads 580@findex make-directory-autoloads
581@cindex magic autoload comment 581@cindex magic autoload comment
582@cindex autoload cookie 582@cindex autoload cookie
583@anchor{autoload cookie} 583@anchor{autoload cookie}
@@ -590,7 +590,7 @@ writes a corresponding @code{autoload} call into @file{loaddefs.el}.
590file generated by @code{update-file-autoloads} can be changed from the 590file generated by @code{update-file-autoloads} can be changed from the
591above defaults, see below.) 591above defaults, see below.)
592Building Emacs loads @file{loaddefs.el} and thus calls @code{autoload}. 592Building Emacs loads @file{loaddefs.el} and thus calls @code{autoload}.
593@kbd{M-x update-directory-autoloads} is even more powerful; it updates 593@kbd{M-x make-directory-autoloads} is even more powerful; it updates
594autoloads for all files in the current directory. 594autoloads for all files in the current directory.
595 595
596 The same magic comment can copy any kind of form into 596 The same magic comment can copy any kind of form into
diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi
index 1826e8f7b42..aaef85897e8 100644
--- a/doc/lispref/tips.texi
+++ b/doc/lispref/tips.texi
@@ -960,7 +960,7 @@ Using multiple top-level code sections has the advantage that it
960avoids introducing an additional nesting level but it also means that 960avoids introducing an additional nesting level but it also means that
961the section named @samp{Code} does not contain all the code, which is 961the section named @samp{Code} does not contain all the code, which is
962awkward. To avoid that, you should put no code at all inside that 962awkward. To avoid that, you should put no code at all inside that
963section; that way it can be considered a seperator instead of a 963section; that way it can be considered a separator instead of a
964section heading. 964section heading.
965 965
966Finally, we recommend that you don't end headings with a colon or any 966Finally, we recommend that you don't end headings with a colon or any
diff --git a/doc/misc/calc.texi b/doc/misc/calc.texi
index 1dab29b8a5a..a356cecf2b7 100644
--- a/doc/misc/calc.texi
+++ b/doc/misc/calc.texi
@@ -34743,15 +34743,15 @@ is defined by
34743 34743
34744@smallexample 34744@smallexample
34745(put 'calcFunc-ln\' 'math-derivative-1 34745(put 'calcFunc-ln\' 'math-derivative-1
34746 (function (lambda (u) (math-div 1 u)))) 34746 (lambda (u) (math-div 1 u)))
34747@end smallexample 34747@end smallexample
34748 34748
34749The two-argument @code{log} function has two derivatives, 34749The two-argument @code{log} function has two derivatives,
34750@smallexample 34750@smallexample
34751(put 'calcFunc-log\' 'math-derivative-2 ; d(log(x,b)) / dx 34751(put 'calcFunc-log\' 'math-derivative-2 ; d(log(x,b)) / dx
34752 (function (lambda (x b) ... ))) 34752 (lambda (x b) ... ))
34753(put 'calcFunc-log\'2 'math-derivative-2 ; d(log(x,b)) / db 34753(put 'calcFunc-log\'2 'math-derivative-2 ; d(log(x,b)) / db
34754 (function (lambda (x b) ... ))) 34754 (lambda (x b) ... ))
34755@end smallexample 34755@end smallexample
34756@end defun 34756@end defun
34757 34757
@@ -34818,7 +34818,7 @@ as properties in a manner similar to derivatives:
34818 34818
34819@smallexample 34819@smallexample
34820(put 'calcFunc-ln 'math-inverse 34820(put 'calcFunc-ln 'math-inverse
34821 (function (lambda (x) (list 'calcFunc-exp x)))) 34821 (lambda (x) (list 'calcFunc-exp x)))
34822@end smallexample 34822@end smallexample
34823 34823
34824This function can call @samp{(math-solve-get-sign @var{x})} to create 34824This function can call @samp{(math-solve-get-sign @var{x})} to create
diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi
index b5f26e004b0..2b38544dc87 100644
--- a/doc/misc/cl.texi
+++ b/doc/misc/cl.texi
@@ -4818,7 +4818,7 @@ For example:
4818@example 4818@example
4819(defun make-adder (n) 4819(defun make-adder (n)
4820 (lexical-let ((n n)) 4820 (lexical-let ((n n))
4821 (function (lambda (m) (+ n m))))) 4821 (lambda (m) (+ n m))))
4822(setq add17 (make-adder 17)) 4822(setq add17 (make-adder 17))
4823(funcall add17 4) 4823(funcall add17 4)
4824 @result{} 21 4824 @result{} 21
diff --git a/doc/misc/edt.texi b/doc/misc/edt.texi
index aeb5a261e49..b0200b47456 100644
--- a/doc/misc/edt.texi
+++ b/doc/misc/edt.texi
@@ -841,7 +841,7 @@ keys, as well. (For example, some people use it to bind the VT200
841seldom used back-tick key (@samp{`}) to the function @samp{ESC-prefix} 841seldom used back-tick key (@samp{`}) to the function @samp{ESC-prefix}
842so it will behave like an @key{ESC} key.) The second function, 842so it will behave like an @key{ESC} key.) The second function,
843@code{edt-bind-gold-key}, is used to bind emacs commands to gold key 843@code{edt-bind-gold-key}, is used to bind emacs commands to gold key
844sequences involving alpha-numeric keys, special character keys, and 844sequences involving alphanumeric keys, special character keys, and
845control keys. 845control keys.
846 846
847The third function, @code{edt-bind-function-key}, is terminal dependent 847The third function, @code{edt-bind-function-key}, is terminal dependent
diff --git a/doc/misc/emacs-mime.texi b/doc/misc/emacs-mime.texi
index 9180b4ec205..316a1baf576 100644
--- a/doc/misc/emacs-mime.texi
+++ b/doc/misc/emacs-mime.texi
@@ -476,7 +476,7 @@ to launch any external programs, set this variable to @code{nil} or
476@vindex mm-inline-font-lock 476@vindex mm-inline-font-lock
477If non-@code{nil}, inlined parts that support font locking (for 477If non-@code{nil}, inlined parts that support font locking (for
478instance, patches or code snippets) will be font-locked. This may be 478instance, patches or code snippets) will be font-locked. This may be
479overriden by callers that have their own ways of enabling/inhibiting 479overridden by callers that have their own ways of enabling/inhibiting
480font locking. 480font locking.
481 481
482@end table 482@end table
diff --git a/doc/misc/flymake.texi b/doc/misc/flymake.texi
index c7bf99c6413..b4757938e99 100644
--- a/doc/misc/flymake.texi
+++ b/doc/misc/flymake.texi
@@ -103,7 +103,7 @@ should also display a tool-tip with the same information.
103 103
104@code{flymake-goto-next-error} and @code{flymake-goto-prev-error} are 104@code{flymake-goto-next-error} and @code{flymake-goto-prev-error} are
105commands that allow easy navigation to the next/previous erroneous 105commands that allow easy navigation to the next/previous erroneous
106regions, respectively. If might be a good idea to map them to @kbd{M-n} 106regions, respectively. It might be a good idea to map them to @kbd{M-n}
107and @kbd{M-p} in @code{flymake-mode}, by adding to your init file: 107and @kbd{M-p} in @code{flymake-mode}, by adding to your init file:
108 108
109@lisp 109@lisp
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi
index a1c8b327f26..ee20d28ce66 100644
--- a/doc/misc/gnus.texi
+++ b/doc/misc/gnus.texi
@@ -29422,7 +29422,7 @@ collection of @acronym{NOV} lines.
29422@item @acronym{NOV} 29422@item @acronym{NOV}
29423@cindex @acronym{NOV} 29423@cindex @acronym{NOV}
29424@acronym{NOV} stands for News OverView, which is a type of news server 29424@acronym{NOV} stands for News OverView, which is a type of news server
29425header which provide datas containing the condensed header information 29425header which provide data containing the condensed header information
29426of articles. They are produced by the server itself; in the @code{nntp} 29426of articles. They are produced by the server itself; in the @code{nntp}
29427back end Gnus uses the ones that the @acronym{NNTP} server makes, but 29427back end Gnus uses the ones that the @acronym{NNTP} server makes, but
29428Gnus makes them by itself for some backends (in particular, @code{nnml}). 29428Gnus makes them by itself for some backends (in particular, @code{nnml}).
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi
index 5e84a36d515..1b5339b8d26 100644
--- a/doc/misc/tramp.texi
+++ b/doc/misc/tramp.texi
@@ -384,7 +384,7 @@ After one of the above commands, @file{~/emacs/tramp} will
384containing the latest version of @value{tramp}. 384containing the latest version of @value{tramp}.
385 385
386@noindent 386@noindent
387To fetch updates from the repository, use git pull: 387To fetch updates from the repository, use @code{git pull}:
388 388
389@example 389@example
390@group 390@group
@@ -1709,9 +1709,9 @@ Integration for LXD containers. A container is accessed via
1709@item magit-tramp 1709@item magit-tramp
1710@cindex method @option{git} 1710@cindex method @option{git}
1711@cindex @option{git} method 1711@cindex @option{git} method
1712Browsing git repositories with @code{magit}. A versioned file is 1712Browsing Git repositories with @code{magit}. A versioned file is
1713accessed via @file{@trampfn{git,rev@@root-dir,/path/to/file}}. 1713accessed via @file{@trampfn{git,rev@@root-dir,/path/to/file}}.
1714@samp{rev} is a git revision, and @samp{root-dir} is a virtual host 1714@samp{rev} is a Git revision, and @samp{root-dir} is a virtual host
1715name for the root directory, specified in 1715name for the root directory, specified in
1716@code{magit-tramp-hosts-alist}. 1716@code{magit-tramp-hosts-alist}.
1717 1717
@@ -4867,6 +4867,18 @@ remote files}.
4867 4867
4868 4868
4869@item 4869@item
4870I get a warning @samp{Tramp has been compiled with Emacs a.b, this is Emacs c.d}
4871
4872@value{tramp} comes with compatibility code for different Emacs
4873versions. When you see this warning, you don't use the Emacs built-in
4874version of @value{tramp}. In case you have installed @value{tramp}
4875from GNU ELPA, you must delete and reinstall it.
4876@ifset installchapter
4877In case you have installed it from its Git repository, @ref{Recompilation}.
4878@end ifset
4879
4880
4881@item
4870How to disable other packages from calling @value{tramp}? 4882How to disable other packages from calling @value{tramp}?
4871 4883
4872There are packages that call @value{tramp} without the user ever 4884There are packages that call @value{tramp} without the user ever
diff --git a/doc/misc/widget.texi b/doc/misc/widget.texi
index bccfa0ab6c1..3ce27a12a04 100644
--- a/doc/misc/widget.texi
+++ b/doc/misc/widget.texi
@@ -1740,6 +1740,28 @@ Get the item which @var{widget} is assumed to toggle.
1740This is only meaningful for radio buttons or checkboxes in a list. 1740This is only meaningful for radio buttons or checkboxes in a list.
1741@end defun 1741@end defun
1742 1742
1743@defun widget-choose title items &optional event
1744Prompt the user to choose an item from a list of options.
1745
1746@var{title} is the name of the list of options. @var{items} should be
1747a menu, with its items in the simple format or in the extended format.
1748@xref{Defining Menus,, Defining Menus, elisp, the Emacs Lisp Reference
1749Manual}. Independently of the format, you don't have to provide a
1750title for the menu, just pass the desired title in @var{title}. The
1751optional @var{event} is an input event. If @var{event} is a mouse
1752event and the number of elements in @var{items} is less than the user
1753option @code{widget-menu-max-size}, then @code{widget-choose} uses a
1754popup menu to prompt the user. Otherwise, @code{widget-choose} uses
1755the minibuffer.
1756
1757When @var{items} is a keymap menu, the returned value is the symbol in
1758the key vector, as in the argument of @code{define-key}
1759(@pxref{Changing Key Bindings,,,elisp, the Emacs Lisp Reference
1760Manual}). When @var{items} is a list whose selectable items are of
1761the form (@var{name} . @var{value}) (i.e., the simplified format),
1762then the return value is the @var{value} of the chosen element.
1763@end defun
1764
1743@node Widget Wishlist 1765@node Widget Wishlist
1744@chapter Wishlist 1766@chapter Wishlist
1745@cindex todo 1767@cindex todo
diff --git a/etc/ChangeLog.1 b/etc/ChangeLog.1
index 1229b8fec15..5a7cd59c979 100644
--- a/etc/ChangeLog.1
+++ b/etc/ChangeLog.1
@@ -1670,7 +1670,7 @@
1670 * images/icons/allout-widgets-light-bg: Icons for new 1670 * images/icons/allout-widgets-light-bg: Icons for new
1671 allout-widgets.el. 1671 allout-widgets.el.
1672 1672
1673 * images/icons/README: Include coypright and GPL 3 license for 1673 * images/icons/README: Include copyright and GPL 3 license for
1674 new icons. 1674 new icons.
1675 1675
16762011-02-16 Michael Albinus <michael.albinus@gmx.de> 16762011-02-16 Michael Albinus <michael.albinus@gmx.de>
@@ -2203,7 +2203,7 @@
2203 2203
22042009-08-13 Kenichi Handa <handa@m17n.org> 22042009-08-13 Kenichi Handa <handa@m17n.org>
2205 2205
2206 * NEWS: Mention the new coding systme `utf-8-hfs' and many 2206 * NEWS: Mention the new coding system `utf-8-hfs' and many
2207 functions for Unicode normalization. 2207 functions for Unicode normalization.
2208 2208
22092009-08-09 CHENG Gao <chenggao@gmail.com> 22092009-08-09 CHENG Gao <chenggao@gmail.com>
diff --git a/etc/NEWS b/etc/NEWS
index 10b99f413b8..88957fb01a9 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -152,6 +152,13 @@ your init file:
152 (setq frame-title-format '(multiple-frames "%b" 152 (setq frame-title-format '(multiple-frames "%b"
153 ("" invocation-name "@" system-name))) 153 ("" invocation-name "@" system-name)))
154 154
155** recentf
156
157---
158*** 'recentf-auto-cleanup' time string now repeats.
159When 'recentf-auto-cleanup' is set to a time string, it now repeats
160every day, rather than only running once after the mode is turned on.
161
155 162
156* Editing Changes in Emacs 28.1 163* Editing Changes in Emacs 28.1
157 164
@@ -318,6 +325,13 @@ time zones will use a form like "+0100" instead of "CET".
318 325
319** Dired 326** Dired
320 327
328+++
329*** New user option 'dired-switches-in-mode-line'.
330This variable controls how 'ls' switches are displayed in the mode
331line, and allows truncating them (to preserve space on the mode line)
332or showing them literally, either instead of, or in addition to,
333displaying "by name" or "by date" sort order.
334
321--- 335---
322*** Broken and circular links are shown with the 'dired-broken-symlink' face. 336*** Broken and circular links are shown with the 'dired-broken-symlink' face.
323 337
@@ -1072,6 +1086,11 @@ based on the current window size. In previous versions of Emacs, this
1072was always done (and that could lead to odd displays when resizing the 1086was always done (and that could lead to odd displays when resizing the
1073window after starting). This variable defaults to nil. 1087window after starting). This variable defaults to nil.
1074 1088
1089** Widget
1090
1091+++
1092*** 'widget-choose' now supports menus in extended format.
1093
1075** Miscellaneous 1094** Miscellaneous
1076 1095
1077--- 1096---
@@ -1083,9 +1102,12 @@ keystrokes.
1083 1102
1084+++ 1103+++
1085*** Interactive regular expression search now uses faces for sub-groups. 1104*** Interactive regular expression search now uses faces for sub-groups.
1086E.g., 'C-M-s foo-\([0-9]+\)' will now use the 'isearch-group-1' face 1105E.g., 'C-M-s foo-\([0-9]+\)' will now use the 'isearch-group-odd' face
1087on the part of the regexp that matches the sub-expression "[0-9]+". 1106on the part of the regexp that matches the sub-expression "[0-9]+".
1107The even group matches are highlighted with the 'isearch-group-even' face.
1088This is controlled by the 'search-highlight-submatches' user option. 1108This is controlled by the 'search-highlight-submatches' user option.
1109This feature is available only on terminals that have enough colors to
1110distinguish between sub-expression highlighting.
1089 1111
1090--- 1112---
1091*** New user option 'reveal-auto-hide'. 1113*** New user option 'reveal-auto-hide'.
@@ -1453,6 +1475,13 @@ ledit.el, lmenu.el, lucid.el and old-whitespace.el.
1453* Lisp Changes in Emacs 28.1 1475* Lisp Changes in Emacs 28.1
1454 1476
1455+++ 1477+++
1478*** New command 'make-directory-autoloads'.
1479This does the same as the old command 'update-directory-autoloads',
1480but has different semantics: Instead of passing in the output file via
1481the dynamically bound 'generated-autoload-file' variable, the output
1482file is now a explicit parameter.
1483
1484+++
1456*** New function 'string-search'. 1485*** New function 'string-search'.
1457This function takes two string parameters and returns the position of 1486This function takes two string parameters and returns the position of
1458the first instance of the former string in the latter. 1487the first instance of the former string in the latter.
diff --git a/etc/compilation.txt b/etc/compilation.txt
index df0b82ebc92..7e406389d44 100644
--- a/etc/compilation.txt
+++ b/etc/compilation.txt
@@ -153,7 +153,7 @@ Failing Scenarios:
153cucumber foo/cucumber.feature:6 # Scenario: assertion false (Test::Unit) 153cucumber foo/cucumber.feature:6 # Scenario: assertion false (Test::Unit)
154cucumber foo/cucumber.feature:9 # Scenario: assertion false (RSpec) 154cucumber foo/cucumber.feature:9 # Scenario: assertion false (RSpec)
155cucumber foo/cucumber.feature:12 # Scenario: backtrace in step definition 155cucumber foo/cucumber.feature:12 # Scenario: backtrace in step definition
156cucumber foo/cucumber.feature:15 # Scenario: deeep backtrace in step definition 156cucumber foo/cucumber.feature:15 # Scenario: deep backtrace in step definition
157 157
1585 scenarios (4 failed, 1 undefined) 1585 scenarios (4 failed, 1 undefined)
1595 steps (4 failed, 1 undefined) 1595 steps (4 failed, 1 undefined)
diff --git a/lib-src/ChangeLog.1 b/lib-src/ChangeLog.1
index 571eee44f1f..16f5142a01a 100644
--- a/lib-src/ChangeLog.1
+++ b/lib-src/ChangeLog.1
@@ -6944,10 +6944,10 @@
6944 when saving a tag in structtag. Callers changed. 6944 when saving a tag in structtag. Callers changed.
6945 (TOKEN): Structure changed. Now used only in C_entries. 6945 (TOKEN): Structure changed. Now used only in C_entries.
6946 (TOKEN_SAVED_P, SAVE_TOKEN, RESTORE_TOKEN): Delete. 6946 (TOKEN_SAVED_P, SAVE_TOKEN, RESTORE_TOKEN): Delete.
6947 (C_entries): nameb and savenameb deleted. Use dinamic allocation. 6947 (C_entries): nameb and savenameb deleted. Use dynamic allocation.
6948 (pfcnt): Delete. Users updated. 6948 (pfcnt): Delete. Users updated.
6949 (getit, Asm_labels, Pascal_functions, L_getit, get_scheme) 6949 (getit, Asm_labels, Pascal_functions, L_getit, get_scheme)
6950 (TEX_getit, prolog_getit): Use dinamic allocation for storing 6950 (TEX_getit, prolog_getit): Use dynamic allocation for storing
6951 the tag instead of a fixed size buffer. 6951 the tag instead of a fixed size buffer.
6952 6952
69531995-01-10 Richard Stallman <rms@mole.gnu.ai.mit.edu> 69531995-01-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
@@ -7609,7 +7609,7 @@
7609 (longopts, print_help, main, process_file): Put absolute filenames 7609 (longopts, print_help, main, process_file): Put absolute filenames
7610 in the tag file if the -A --absolute-pathnames option is used. 7610 in the tag file if the -A --absolute-pathnames option is used.
7611 (print_help): Alphabetically order the options. 7611 (print_help): Alphabetically order the options.
7612 (malloc, realloc, strcpy, strncpy, strcmp): Remove extern declar. 7612 (malloc, realloc, strcpy, strncpy, strcmp): Remove extern declare.
7613 7613
76141994-02-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) 76141994-02-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7615 7615
@@ -8239,7 +8239,7 @@
82391993-03-22 Francesco Potortì (pot@cnuce.cnr.it) 82391993-03-22 Francesco Potortì (pot@cnuce.cnr.it)
8240 8240
8241 * etags.c (YACC): Flag added to c_ext. 8241 * etags.c (YACC): Flag added to c_ext.
8242 (c_ext): No more a synonim for c_ext&C_PLPL because of YACC. 8242 (c_ext): No more a synonym for c_ext&C_PLPL because of YACC.
8243 (find_entries): Consistently use streq when reasonable. 8243 (find_entries): Consistently use streq when reasonable.
8244 (find_entries): A .y file is a yacc file. 8244 (find_entries): A .y file is a yacc file.
8245 (get_C_stab): c_ext becomes c_ext&C_PLPL. 8245 (get_C_stab): c_ext becomes c_ext&C_PLPL.
diff --git a/lisp/ChangeLog.10 b/lisp/ChangeLog.10
index 54412223248..177ca08ef3b 100644
--- a/lisp/ChangeLog.10
+++ b/lisp/ChangeLog.10
@@ -12772,7 +12772,7 @@
12772 (reftex-words-to-typekey-alist, reftex-key-to-index-macro-alist) 12772 (reftex-words-to-typekey-alist, reftex-key-to-index-macro-alist)
12773 (reftex-query-index-macro-prompt, reftex-query-index-macro-help) 12773 (reftex-query-index-macro-prompt, reftex-query-index-macro-help)
12774 (reftex-no-follow-message, reftex-no-info-message): Likewise. 12774 (reftex-no-follow-message, reftex-no-info-message): Likewise.
12775 (reftex-mode): Define systax table for bibtex parsing. 12775 (reftex-mode): Define syntax table for bibtex parsing.
12776 (reftex-syntax-table-for-bib): Syntax table for bibtex parsing. 12776 (reftex-syntax-table-for-bib): Syntax table for bibtex parsing.
12777 12777
12778 * textmodes/reftex-cite.el (reftex-format-names): %a as name 12778 * textmodes/reftex-cite.el (reftex-format-names): %a as name
@@ -15993,7 +15993,7 @@
15993 15993
15994 * progmodes/cc-vars.el (c-offsets-alist): A more sane default 15994 * progmodes/cc-vars.el (c-offsets-alist): A more sane default
15995 for `inexpr-statement'. This is not compatible, though. 15995 for `inexpr-statement'. This is not compatible, though.
15996 I think the benefit of a good default style outweights that in 15996 I think the benefit of a good default style outweighs that in
15997 this case. Besides, `inexpr-statement' is not very common. 15997 this case. Besides, `inexpr-statement' is not very common.
15998 15998
159992002-04-22 Martin Stjernholm <mast@lysator.liu.se> 159992002-04-22 Martin Stjernholm <mast@lysator.liu.se>
diff --git a/lisp/ChangeLog.13 b/lisp/ChangeLog.13
index 779a641d16a..1a2863afa97 100644
--- a/lisp/ChangeLog.13
+++ b/lisp/ChangeLog.13
@@ -4765,7 +4765,7 @@
47652007-12-30 Michael Albinus <michael.albinus@gmx.de> 47652007-12-30 Michael Albinus <michael.albinus@gmx.de>
4766 4766
4767 * net/dbus.el (dbus-name-owner-changed-handler): Make the function 4767 * net/dbus.el (dbus-name-owner-changed-handler): Make the function
4768 resistent towards wrong parameters. 4768 resistant towards wrong parameters.
4769 (dbus-handle-event): Propagate D-Bus errors only in the debug case. 4769 (dbus-handle-event): Propagate D-Bus errors only in the debug case.
4770 4770
47712007-12-30 Richard Stallman <rms@gnu.org> 47712007-12-30 Richard Stallman <rms@gnu.org>
@@ -5001,7 +5001,7 @@
5001 5001
5002 * vc.el (vc-dired-ignorable-p, vc-dired-hook): Speed optimization; 5002 * vc.el (vc-dired-ignorable-p, vc-dired-hook): Speed optimization;
5003 use completion-ignored-extensions to detect files that should be 5003 use completion-ignored-extensions to detect files that should be
5004 ignorted in VC-Dired listings, heading off lots of expensive calls 5004 ignored in VC-Dired listings, heading off lots of expensive calls
5005 to (vc-state). 5005 to (vc-state).
5006 5006
5007 * vc.el (vc-dired-hook): Show unregistered file status as "?" in 5007 * vc.el (vc-dired-hook): Show unregistered file status as "?" in
diff --git a/lisp/ChangeLog.14 b/lisp/ChangeLog.14
index 00b6a6ac41b..e9c8a8ff8be 100644
--- a/lisp/ChangeLog.14
+++ b/lisp/ChangeLog.14
@@ -10889,7 +10889,7 @@
10889 10889
10890 * menu-bar.el (menu-set-font): New function. Bind "Set Default 10890 * menu-bar.el (menu-set-font): New function. Bind "Set Default
10891 Font" menu item to it. Apply selected font to all frames, and 10891 Font" menu item to it. Apply selected font to all frames, and
10892 make it savable. 10892 make it saveable.
10893 (menu-bar-options-save): Save `default' font if changed. 10893 (menu-bar-options-save): Save `default' font if changed.
10894 10894
108952008-06-10 Stefan Monnier <monnier@iro.umontreal.ca> 108952008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
@@ -13625,7 +13625,7 @@
13625 (completion-emacs22-try-completion): Place cursor after the /, as was 13625 (completion-emacs22-try-completion): Place cursor after the /, as was
13626 done in Emacs-22's minibuffer-complete-word. 13626 done in Emacs-22's minibuffer-complete-word.
13627 Fix bug reported by David Hansen <david.hansen@gmx.net>. 13627 Fix bug reported by David Hansen <david.hansen@gmx.net>.
13628 (completion-emacs22-try-completion): Merge all mergable text rather 13628 (completion-emacs22-try-completion): Merge all mergeable text rather
13629 than just /. 13629 than just /.
13630 (completion-pcm--delim-wild-regex): New var. 13630 (completion-pcm--delim-wild-regex): New var.
13631 (completion-pcm-word-delimiters): New custom. 13631 (completion-pcm-word-delimiters): New custom.
diff --git a/lisp/ChangeLog.15 b/lisp/ChangeLog.15
index e66766eafa5..3a578da4bc7 100644
--- a/lisp/ChangeLog.15
+++ b/lisp/ChangeLog.15
@@ -2803,7 +2803,7 @@
28032010-12-29 Karl Fogel <kfogel@red-bean.com> 28032010-12-29 Karl Fogel <kfogel@red-bean.com>
2804 2804
2805 * saveplace.el (save-place-alist-to-file): Save list sorted and 2805 * saveplace.el (save-place-alist-to-file): Save list sorted and
2806 pretty-printed, so that it is mergable by line-based text merging, 2806 pretty-printed, so that it is mergeable by line-based text merging,
2807 as suggested by Iain Dalton <iain.dalton {_AT_} gmail.com>. 2807 as suggested by Iain Dalton <iain.dalton {_AT_} gmail.com>.
2808 2808
28092010-12-28 Ken Manheimer <ken.manheimer@gmail.com> 28092010-12-28 Ken Manheimer <ken.manheimer@gmail.com>
@@ -5135,10 +5135,10 @@
5135 5135
5136 * progmodes/verilog-mode.el (verilog-directive-re): Make this variable 5136 * progmodes/verilog-mode.el (verilog-directive-re): Make this variable
5137 auto-built for efficiency of execution and updating. 5137 auto-built for efficiency of execution and updating.
5138 (verilog-extended-complete-re): Support 'pure' fucntion & task 5138 (verilog-extended-complete-re): Support 'pure' function & task
5139 declarations (these have no bodies). 5139 declarations (these have no bodies).
5140 (verilog-beg-of-statement): General cleanup to enable support of 5140 (verilog-beg-of-statement): General cleanup to enable support of
5141 'pure' fucntion & task declarations (these have no bodies). 5141 'pure' function & task declarations (these have no bodies).
5142 These efforts together fix Verilog bug210 from veripool; which was also 5142 These efforts together fix Verilog bug210 from veripool; which was also
5143 noticed by Steve Pearlmutter. 5143 noticed by Steve Pearlmutter.
5144 (verilog-directive-re, verilog-directive-begin, verilog-indent-re) 5144 (verilog-directive-re, verilog-directive-begin, verilog-indent-re)
@@ -10689,7 +10689,7 @@
106892010-05-13 Agustín Martín <agustin.martin@hispalinux.es> 106892010-05-13 Agustín Martín <agustin.martin@hispalinux.es>
10690 10690
10691 * textmodes/ispell.el (ispell-init-process): Do not kill ispell 10691 * textmodes/ispell.el (ispell-init-process): Do not kill ispell
10692 process everytime when spellchecking from the minibuffer (bug#6143). 10692 process every time when spellchecking from the minibuffer (bug#6143).
10693 10693
106942010-05-13 Stefan Monnier <monnier@iro.umontreal.ca> 106942010-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10695 10695
@@ -12100,7 +12100,7 @@
121002010-03-31 Juri Linkov <juri@jurta.org> 121002010-03-31 Juri Linkov <juri@jurta.org>
12101 12101
12102 * image.el (image-animated-p): Use `image-metadata' instead of 12102 * image.el (image-animated-p): Use `image-metadata' instead of
12103 `image-extension-data'. Get GIF extenstion data from metadata 12103 `image-extension-data'. Get GIF extension data from metadata
12104 property `extension-data'. 12104 property `extension-data'.
12105 12105
121062010-03-31 Stefan Monnier <monnier@iro.umontreal.ca> 121062010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
@@ -14907,7 +14907,7 @@
14907 Use complete-with-action rather than pascal-completion-response and 14907 Use complete-with-action rather than pascal-completion-response and
14908 let it apply the predicate as well. 14908 let it apply the predicate as well.
14909 (pascal-goto-defun): Change buffer before calling pascal-comp-defun 14909 (pascal-goto-defun): Change buffer before calling pascal-comp-defun
14910 when neded. 14910 when needed.
14911 14911
149122009-12-02 Kenichi Handa <handa@m17n.org> 149122009-12-02 Kenichi Handa <handa@m17n.org>
14913 14913
@@ -18684,7 +18684,7 @@
186842009-09-24 Vinicius Jose Latorre <viniciusjl@ig.com.br> 186842009-09-24 Vinicius Jose Latorre <viniciusjl@ig.com.br>
18685 18685
18686 * whitespace.el: Does not highlight trailing spaces While point is 18686 * whitespace.el: Does not highlight trailing spaces While point is
18687 at end of line. Does not highligt spaces at beginning of buffer 18687 at end of line. Does not highlight spaces at beginning of buffer
18688 while point is at beginning of buffer. Does not highlight spaces 18688 while point is at beginning of buffer. Does not highlight spaces
18689 at end of buffer while point is at end of buffer. (Bug#4177) 18689 at end of buffer while point is at end of buffer. (Bug#4177)
18690 New version 12.0. 18690 New version 12.0.
diff --git a/lisp/ChangeLog.16 b/lisp/ChangeLog.16
index b4da88e6346..6c093790d31 100644
--- a/lisp/ChangeLog.16
+++ b/lisp/ChangeLog.16
@@ -3018,7 +3018,7 @@
3018 3018
3019 * progmodes/sql.el: Use cl-lib and lexical-binding; various cleanup. 3019 * progmodes/sql.el: Use cl-lib and lexical-binding; various cleanup.
3020 (sql-signum): Remove. Use `cl-signum' instead. 3020 (sql-signum): Remove. Use `cl-signum' instead.
3021 (sql-read-passwd): Remove; use read-passwd instread. 3021 (sql-read-passwd): Remove; use read-passwd instead.
3022 (sql-get-login-ext): Use read-string. 3022 (sql-get-login-ext): Use read-string.
3023 (sql-get-login): Use dolist and pcase. 3023 (sql-get-login): Use dolist and pcase.
3024 (sql--completion-table): Rename from sql-try-completion. 3024 (sql--completion-table): Rename from sql-try-completion.
@@ -7833,7 +7833,7 @@
7833 the form for POSITION argument. 7833 the form for POSITION argument.
7834 7834
7835 * term/x-win.el (x-menu-bar-open): 7835 * term/x-win.el (x-menu-bar-open):
7836 Use the value returend from (posn-at-point) as position 7836 Use the value returned from (posn-at-point) as position
7837 passed to `popup-menu'. 7837 passed to `popup-menu'.
7838 7838
78392012-08-09 Jay Belanger <jay.p.belanger@gmail.com> 78392012-08-09 Jay Belanger <jay.p.belanger@gmail.com>
@@ -11992,11 +11992,11 @@
11992 * progmodes/verilog-mode.el (verilog-pretty-expr): Don't line up 11992 * progmodes/verilog-mode.el (verilog-pretty-expr): Don't line up
11993 assignment with tests in ifs and for loops. 11993 assignment with tests in ifs and for loops.
11994 (verilog-extended-complete-re, verilog-complete-reg): Change so 11994 (verilog-extended-complete-re, verilog-complete-reg): Change so
11995 that DPI inport functions don't look like function declarations. 11995 that DPI import functions don't look like function declarations.
11996 (verilog-pretty-expr): Don't line up assignment 11996 (verilog-pretty-expr): Don't line up assignment
11997 operations to the test and increment in if and for loops 11997 operations to the test and increment in if and for loops
11998 (verilog-extended-complete-re, verilog-complete-reg): Change so 11998 (verilog-extended-complete-re, verilog-complete-reg): Change so
11999 that DPI inport functions don't look like function declarations. 11999 that DPI import functions don't look like function declarations.
12000 12000
120012012-05-03 Kenichi Handa <handa@m17n.org> 120012012-05-03 Kenichi Handa <handa@m17n.org>
12002 12002
@@ -15918,7 +15918,7 @@
15918 Rework verilog-pretty-expr to handle new assignment operators in system 15918 Rework verilog-pretty-expr to handle new assignment operators in system
15919 verilog, such as += *= and the like. 15919 verilog, such as += *= and the like.
15920 (verilog-assignment-operator-re): Regular expression to find the 15920 (verilog-assignment-operator-re): Regular expression to find the
15921 assigment operator in a verilog assignment. 15921 assignment operator in a verilog assignment.
15922 (verilog-assignment-operation-re): Regular expression to find an 15922 (verilog-assignment-operation-re): Regular expression to find an
15923 assignment statement for pretty-expr. 15923 assignment statement for pretty-expr.
15924 (verilog-in-attribute-p): Query returns true if point is in an 15924 (verilog-in-attribute-p): Query returns true if point is in an
@@ -20442,7 +20442,7 @@
204422011-07-03 Lars Magne Ingebrigtsen <larsi@gnus.org> 204422011-07-03 Lars Magne Ingebrigtsen <larsi@gnus.org>
20443 20443
20444 * net/network-stream.el (open-network-stream): Use the 20444 * net/network-stream.el (open-network-stream): Use the
20445 :end-of-capability command thoughout. 20445 :end-of-capability command throughout.
20446 20446
204472011-07-03 Wolfgang Jenkner <wjenkner@inode.at> (tiny change) 204472011-07-03 Wolfgang Jenkner <wjenkner@inode.at> (tiny change)
20448 20448
@@ -21496,7 +21496,7 @@
21496 * net/network-stream.el (open-network-stream): Add the keyword 21496 * net/network-stream.el (open-network-stream): Add the keyword
21497 :always-query-capabilities for the case where you want to force a 21497 :always-query-capabilities for the case where you want to force a
21498 `plain' network connection, but the protocol still requires the 21498 `plain' network connection, but the protocol still requires the
21499 capabilitiy command (i.e., SMTP and EHLO). 21499 capability command (i.e., SMTP and EHLO).
21500 21500
21501 * subr.el (process-live-p): Rename from `process-alive-p' for 21501 * subr.el (process-live-p): Rename from `process-alive-p' for
21502 consistency with other `-live-p' functions. 21502 consistency with other `-live-p' functions.
@@ -24707,7 +24707,7 @@
24707 * abbrev.el (abbrev-edit-save-to-file, abbrev-edit-save-buffer): 24707 * abbrev.el (abbrev-edit-save-to-file, abbrev-edit-save-buffer):
24708 New commands. 24708 New commands.
24709 (edit-abbrevs-map): Bind them here. 24709 (edit-abbrevs-map): Bind them here.
24710 (write-abbrev-file): New optinal arg VERBOSE. (Bug#5937) 24710 (write-abbrev-file): New optional arg VERBOSE. (Bug#5937)
24711 24711
247122011-03-29 Ken Manheimer <ken.manheimer@gmail.com> 247122011-03-29 Ken Manheimer <ken.manheimer@gmail.com>
24713 24713
diff --git a/lisp/ChangeLog.17 b/lisp/ChangeLog.17
index a1a6363cdca..1869f4e4c4a 100644
--- a/lisp/ChangeLog.17
+++ b/lisp/ChangeLog.17
@@ -8465,7 +8465,7 @@
84652014-07-28 Glenn Morris <rgm@gnu.org> 84652014-07-28 Glenn Morris <rgm@gnu.org>
8466 8466
8467 * files.el (toggle-read-only): Re-add basic doc-string. 8467 * files.el (toggle-read-only): Re-add basic doc-string.
8468 * vc/vc-hooks.el (vc-toggle-read-only): Tweak obsolescence mesage. 8468 * vc/vc-hooks.el (vc-toggle-read-only): Tweak obsolescence message.
8469 8469
8470 * progmodes/prolog.el (prolog-mode-keybindings-edit): 8470 * progmodes/prolog.el (prolog-mode-keybindings-edit):
8471 Replace missing `switch-to-prolog' with `run-prolog'. 8471 Replace missing `switch-to-prolog' with `run-prolog'.
@@ -14399,7 +14399,7 @@
14399 14399
144002014-01-05 Martin Rudalics <rudalics@gmx.at> 144002014-01-05 Martin Rudalics <rudalics@gmx.at>
14401 14401
14402 * window.el (balance-windows): Add mising t to fix Bug#16351. 14402 * window.el (balance-windows): Add missing t to fix Bug#16351.
14403 14403
144042014-01-05 Lars Magne Ingebrigtsen <larsi@gnus.org> 144042014-01-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
14405 14405
@@ -15098,7 +15098,7 @@
150982013-12-18 Juri Linkov <juri@jurta.org> 150982013-12-18 Juri Linkov <juri@jurta.org>
15099 15099
15100 * help-mode.el (help-mode-map): Bind "l" to help-go-back, 15100 * help-mode.el (help-mode-map): Bind "l" to help-go-back,
15101 and "r" to help-go-forward for compatibity with Info. (Bug#16178) 15101 and "r" to help-go-forward for compatibility with Info. (Bug#16178)
15102 15102
151032013-12-18 Leo Liu <sdl.web@gmail.com> 151032013-12-18 Leo Liu <sdl.web@gmail.com>
15104 15104
@@ -15729,7 +15729,7 @@
15729 (flymake-get-temp-dir): Remove. 15729 (flymake-get-temp-dir): Remove.
15730 (flymake-popup-menu, flymake-nop, flymake-make-xemacs-menu) 15730 (flymake-popup-menu, flymake-nop, flymake-make-xemacs-menu)
15731 (flymake-current-row, flymake-selected-frame) 15731 (flymake-current-row, flymake-selected-frame)
15732 (flymake-get-point-pixel-pos): Remove xemacs compatibity and 15732 (flymake-get-point-pixel-pos): Remove xemacs compatibility and
15733 related functions. (Bug#16077) 15733 related functions. (Bug#16077)
15734 15734
157352013-12-07 Bozhidar Batsov <bozhidar@batsov.com> 157352013-12-07 Bozhidar Batsov <bozhidar@batsov.com>
@@ -16822,7 +16822,7 @@
16822 * emacs-lisp/byte-run.el (defmacro, defun): Set their `indent' property. 16822 * emacs-lisp/byte-run.el (defmacro, defun): Set their `indent' property.
16823 16823
16824 * electric.el (electric-indent-post-self-insert-function): 16824 * electric.el (electric-indent-post-self-insert-function):
16825 Only delete trailing whitepsace if it is indeed trailing (bug#15767). 16825 Only delete trailing whitespace if it is indeed trailing (bug#15767).
16826 16826
168272013-11-04 Helmut Eller <eller.helmut@gmail.com> 168272013-11-04 Helmut Eller <eller.helmut@gmail.com>
16828 16828
@@ -17770,7 +17770,7 @@
177702013-10-13 Kenichi Handa <handa@gnu.org> 177702013-10-13 Kenichi Handa <handa@gnu.org>
17771 17771
17772 * international/mule-cmds.el (select-safe-coding-system): Remove a 17772 * international/mule-cmds.el (select-safe-coding-system): Remove a
17773 superfluous condition in chekcing whether a coding system is safe 17773 superfluous condition in checking whether a coding system is safe
17774 or not. 17774 or not.
17775 17775
177762013-10-13 Oleh Krehel <ohwoeowho@gmail.com> 177762013-10-13 Oleh Krehel <ohwoeowho@gmail.com>
@@ -23495,7 +23495,7 @@
23495 * progmodes/cc-defs.el (c-set-region-active, c-beginning-of-defun-1) 23495 * progmodes/cc-defs.el (c-set-region-active, c-beginning-of-defun-1)
23496 * progmodes/cc-mode.el (c-make-inherited-keymap): Use plain fboundp. 23496 * progmodes/cc-mode.el (c-make-inherited-keymap): Use plain fboundp.
23497 * progmodes/cc-defs.el (zmacs-region-stays, zmacs-regions) 23497 * progmodes/cc-defs.el (zmacs-region-stays, zmacs-regions)
23498 (lookup-syntax-properties): Remove unecessary cc-bytecomp-defvar. 23498 (lookup-syntax-properties): Remove unnecessary cc-bytecomp-defvar.
23499 23499
23500 * progmodes/cc-vars.el (other): Emacs has this widget since 23500 * progmodes/cc-vars.el (other): Emacs has this widget since
23501 at least 21.1, so don't (re)define it. 23501 at least 21.1, so don't (re)define it.
diff --git a/lisp/ChangeLog.3 b/lisp/ChangeLog.3
index 79bdbfd6660..ef0e423d145 100644
--- a/lisp/ChangeLog.3
+++ b/lisp/ChangeLog.3
@@ -6958,7 +6958,7 @@
69581991-10-04 Roland McGrath (roland@albert.gnu.ai.mit.edu) 69581991-10-04 Roland McGrath (roland@albert.gnu.ai.mit.edu)
6959 6959
6960 * rmail.el: Changed two regexps not to look specifically for 19yy 6960 * rmail.el: Changed two regexps not to look specifically for 19yy
6961 for years; look for yyyy instead. Planning for the millenium. 6961 for years; look for yyyy instead. Planning for the millennium.
6962 6962
69631991-10-03 Roland McGrath (roland@albert.gnu.ai.mit.edu) 69631991-10-03 Roland McGrath (roland@albert.gnu.ai.mit.edu)
6964 6964
diff --git a/lisp/ChangeLog.6 b/lisp/ChangeLog.6
index 3fe6aea3b8e..87ae38b27e6 100644
--- a/lisp/ChangeLog.6
+++ b/lisp/ChangeLog.6
@@ -6742,7 +6742,7 @@
6742 quoted tab into a space. 6742 quoted tab into a space.
6743 (sh-mode): Use new `skeleton-newline-indent-rigidly'. 6743 (sh-mode): Use new `skeleton-newline-indent-rigidly'.
6744 (sh-set-shell): Make maximum font-locking also highlight keywords 6744 (sh-set-shell): Make maximum font-locking also highlight keywords
6745 after ``' and `!'. (The latter is for ksh '93 but should't hurt other 6745 after ``' and `!'. (The latter is for ksh '93 but shouldn't hurt other
6746 shells.) 6746 shells.)
6747 6747
67481995-08-18 Andre Spiegel <spiegel@berlin.informatik.uni-stuttgart.de> 67481995-08-18 Andre Spiegel <spiegel@berlin.informatik.uni-stuttgart.de>
diff --git a/lisp/ChangeLog.7 b/lisp/ChangeLog.7
index a0d42500e36..58a7fa402ba 100644
--- a/lisp/ChangeLog.7
+++ b/lisp/ChangeLog.7
@@ -5774,7 +5774,7 @@
5774 5774
57751998-03-06 Dave Love <d.love@dl.ac.uk> 57751998-03-06 Dave Love <d.love@dl.ac.uk>
5776 5776
5777 * browse-url.el: Various doc fixes, mainly to remove innappropriate 5777 * browse-url.el: Various doc fixes, mainly to remove inappropriate
5778 leading "*"s. 5778 leading "*"s.
5779 (browse-url-new-window-p, browse-url-netscape-display) 5779 (browse-url-new-window-p, browse-url-netscape-display)
5780 (browse-url-save-file, browse-url-generic-program): 5780 (browse-url-save-file, browse-url-generic-program):
@@ -10843,7 +10843,7 @@
108431997-09-06 Michael Kifer <kifer@cs.sunysb.edu> 108431997-09-06 Michael Kifer <kifer@cs.sunysb.edu>
10844 10844
10845 * ediff-ptch.el (ediff-patch-buffer-internal): 10845 * ediff-ptch.el (ediff-patch-buffer-internal):
10846 now behaves uniformely, whether the buffer 10846 now behaves uniformly, whether the buffer
10847 visits a file or not. 10847 visits a file or not.
10848 * ediff-util.el (ediff-other-buffer): Smarter selection of 10848 * ediff-util.el (ediff-other-buffer): Smarter selection of
10849 suitable other buffer. 10849 suitable other buffer.
@@ -11291,7 +11291,7 @@
11291 the various new variables mentioned above. Accept the `a' key to 11291 the various new variables mentioned above. Accept the `a' key to
11292 use all selected citations. 11292 use all selected citations.
11293 (reftex-insert-bib-matches): New function. 11293 (reftex-insert-bib-matches): New function.
11294 (reftex-format-citation): Now interpretes % escapes. 11294 (reftex-format-citation): Now interprets % escapes.
11295 (reftex-select-item): Emulate a search in the menu buffer. 11295 (reftex-select-item): Emulate a search in the menu buffer.
11296 Interpret the 'cnt text property. 11296 Interpret the 'cnt text property.
11297 (reftex-view-crossref): Allow more general label, cite and ref macros. 11297 (reftex-view-crossref): Allow more general label, cite and ref macros.
diff --git a/lisp/ChangeLog.8 b/lisp/ChangeLog.8
index 5c55597ddcf..e9b2138e4ba 100644
--- a/lisp/ChangeLog.8
+++ b/lisp/ChangeLog.8
@@ -7002,7 +7002,7 @@
70021999-01-13 Eli Zaretskii <eliz@gnu.org> 70021999-01-13 Eli Zaretskii <eliz@gnu.org>
7003 7003
7004 * international/codepage.el (cp850-decode-table): Replace nil 7004 * international/codepage.el (cp850-decode-table): Replace nil
7005 entries with codes of similary looking glyphs. ( 7005 entries with codes of similarly looking glyphs. (
7006 Suggested by Jason Rumney <jasonr@altavista.net>.) 7006 Suggested by Jason Rumney <jasonr@altavista.net>.)
7007 7007
70081999-01-13 Dave Love <fx@gnu.org> 70081999-01-13 Dave Love <fx@gnu.org>
@@ -7469,7 +7469,7 @@
7469 (cperl-forward-re): Highlight the trailing / in s/foo// as string. 7469 (cperl-forward-re): Highlight the trailing / in s/foo// as string.
7470 Highlight the starting // in s//foo/ as function-name. 7470 Highlight the starting // in s//foo/ as function-name.
7471 Emit a meaningful error instead of a cryptic one for an 7471 Emit a meaningful error instead of a cryptic one for an
7472 uncomplete REx near end-of-buffer. 7472 incomplete REx near end-of-buffer.
7473 7473
7474 (cperl-electric-keyword): `qr' recognized. 7474 (cperl-electric-keyword): `qr' recognized.
7475 (cperl-electric-else): Likewise. 7475 (cperl-electric-else): Likewise.
diff --git a/lisp/ChangeLog.9 b/lisp/ChangeLog.9
index c6bfb1babd9..5372b242f5f 100644
--- a/lisp/ChangeLog.9
+++ b/lisp/ChangeLog.9
@@ -237,8 +237,8 @@
237 After 4.28: 237 After 4.28:
238 (cperl-forward-re): Throw an error at proper moment REx unfinished. 238 (cperl-forward-re): Throw an error at proper moment REx unfinished.
239 After 4.29: 239 After 4.29:
240 (x-color-defined-p): Make an extra case to peacify the warning. 240 (x-color-defined-p): Make an extra case to pacify the warning.
241 Toplevel: `defvar' to peacify the warnings. 241 Toplevel: `defvar' to pacify the warnings.
242 (cperl-find-pods-heres): Could access `font-lock-comment-face' in -nw. 242 (cperl-find-pods-heres): Could access `font-lock-comment-face' in -nw.
243 No -nw-compile time warnings now. 243 No -nw-compile time warnings now.
244 (cperl-find-tags): TAGS file had too short substring-to-search. 244 (cperl-find-tags): TAGS file had too short substring-to-search.
@@ -1183,7 +1183,7 @@
11832001-09-07 Gerd Moellmann <gerd@gnu.org> 11832001-09-07 Gerd Moellmann <gerd@gnu.org>
1184 1184
1185 * isearch.el (isearch-intersects-p): New function. 1185 * isearch.el (isearch-intersects-p): New function.
1186 (isearch-close-unnecessary-overlays): Rename from *unecessary*, 1186 (isearch-close-unnecessary-overlays): Rename from *unnecessary*,
1187 use isearch-intersects-p, and clean up. 1187 use isearch-intersects-p, and clean up.
1188 1188
11892001-09-07 Eli Zaretskii <eliz@is.elta.co.il> 11892001-09-07 Eli Zaretskii <eliz@is.elta.co.il>
@@ -12432,7 +12432,7 @@
12432 is not reached. It is. 12432 is not reached. It is.
12433 (vc-cvs-merge): Set state to 'edited after merge. 12433 (vc-cvs-merge): Set state to 'edited after merge.
12434 (vc-cvs-merge-news): Set workfile version to nil if not known. 12434 (vc-cvs-merge-news): Set workfile version to nil if not known.
12435 (vc-cvs-latest-on-branch-p): Recommented. Candidate for removal. 12435 (vc-cvs-latest-on-branch-p): Recommended. Candidate for removal.
12436 12436
12437 * vc-cvs.el, vc-rcs.el, vc-sccs.el (vc-*-checkout): Switch off 12437 * vc-cvs.el, vc-rcs.el, vc-sccs.el (vc-*-checkout): Switch off
12438 coding systems for checkout via stdout. (Merge from main line.) 12438 coding systems for checkout via stdout. (Merge from main line.)
@@ -13371,7 +13371,7 @@
13371 if defined. (Merged from main line, slightly adapted.) 13371 if defined. (Merged from main line, slightly adapted.)
13372 13372
13373 * vc-cvs.el (vc-cvs-annotate-difference): Handle possible 13373 * vc-cvs.el (vc-cvs-annotate-difference): Handle possible
13374 millenium problem (merged from mainline). 13374 millennium problem (merged from mainline).
13375 13375
133762000-09-04 Martin Lorentzson <martinl@gnu.org> 133762000-09-04 Martin Lorentzson <martinl@gnu.org>
13377 13377
diff --git a/lisp/align.el b/lisp/align.el
index 61387b23dc7..e3bdf77002e 100644
--- a/lisp/align.el
+++ b/lisp/align.el
@@ -389,7 +389,7 @@ The possible settings for `align-region-separate' are:
389 (regexp . "\\(^\\s-+[^( \t\n]\\|(\\(\\S-+\\)\\s-+\\)\\S-+\\(\\s-+\\)") 389 (regexp . "\\(^\\s-+[^( \t\n]\\|(\\(\\S-+\\)\\s-+\\)\\S-+\\(\\s-+\\)")
390 (group . 3) 390 (group . 3)
391 (modes . align-lisp-modes) 391 (modes . align-lisp-modes)
392 (run-if . ,(function (lambda () current-prefix-arg)))) 392 (run-if . ,(lambda () current-prefix-arg)))
393 393
394 (lisp-alist-dot 394 (lisp-alist-dot
395 (regexp . "\\(\\s-*\\)\\.\\(\\s-*\\)") 395 (regexp . "\\(\\s-*\\)\\.\\(\\s-*\\)")
@@ -463,7 +463,7 @@ The possible settings for `align-region-separate' are:
463 (regexp . ",\\(\\s-*\\)[^/ \t\n]") 463 (regexp . ",\\(\\s-*\\)[^/ \t\n]")
464 (repeat . t) 464 (repeat . t)
465 (modes . align-c++-modes) 465 (modes . align-c++-modes)
466 (run-if . ,(function (lambda () current-prefix-arg)))) 466 (run-if . ,(lambda () current-prefix-arg)))
467 ; (valid 467 ; (valid
468 ; . ,(function 468 ; . ,(function
469 ; (lambda () 469 ; (lambda ()
@@ -480,7 +480,7 @@ The possible settings for `align-region-separate' are:
480 (regexp . ",\\(\\s-*\\)[^# \t\n]") 480 (regexp . ",\\(\\s-*\\)[^# \t\n]")
481 (repeat . t) 481 (repeat . t)
482 (modes . (append align-perl-modes '(python-mode))) 482 (modes . (append align-perl-modes '(python-mode)))
483 (run-if . ,(function (lambda () current-prefix-arg)))) 483 (run-if . ,(lambda () current-prefix-arg)))
484 484
485 (c++-comment 485 (c++-comment
486 (regexp . "\\(\\s-*\\)\\(//.*\\|/\\*.*\\*/\\s-*\\)$") 486 (regexp . "\\(\\s-*\\)\\(//.*\\|/\\*.*\\*/\\s-*\\)$")
diff --git a/lisp/allout.el b/lisp/allout.el
index 044c82afb29..b56071de59e 100644
--- a/lisp/allout.el
+++ b/lisp/allout.el
@@ -245,7 +245,7 @@ prevails."
245 "Allout-mode functions bound to keys without any added prefix. 245 "Allout-mode functions bound to keys without any added prefix.
246 246
247This is in contrast to the majority of allout-mode bindings on 247This is in contrast to the majority of allout-mode bindings on
248`allout-prefixed-bindings', whose bindings are created with a 248`allout-prefixed-keybindings', whose bindings are created with a
249preceding command key. 249preceding command key.
250 250
251Use vector format for the keys: 251Use vector format for the keys:
@@ -1510,7 +1510,7 @@ topic prefix.
1510Entries must be symbols that are bound to the desired regexp values. 1510Entries must be symbols that are bound to the desired regexp values.
1511 1511
1512Encryptions that result in matches will be retried, up to 1512Encryptions that result in matches will be retried, up to
1513`allout-encryption-ciphertext-rejection-limit' times, after which 1513`allout-encryption-ciphertext-rejection-ceiling' times, after which
1514an error is raised.") 1514an error is raised.")
1515 1515
1516(make-variable-buffer-local 'allout-encryption-ciphertext-rejection-regexps) 1516(make-variable-buffer-local 'allout-encryption-ciphertext-rejection-regexps)
@@ -4721,7 +4721,7 @@ this function."
4721 4721
4722This is a way to give restricted peek at a concealed locality without the 4722This is a way to give restricted peek at a concealed locality without the
4723expense of exposing its context, but can leave the outline with aberrant 4723expense of exposing its context, but can leave the outline with aberrant
4724exposure. `allout-show-offshoot' should be used after the peek to rectify 4724exposure. `allout-show-to-offshoot' should be used after the peek to rectify
4725the exposure." 4725the exposure."
4726 4726
4727 (interactive) 4727 (interactive)
diff --git a/lisp/ansi-color.el b/lisp/ansi-color.el
index 4130f5aad3c..141ad2353e8 100644
--- a/lisp/ansi-color.el
+++ b/lisp/ansi-color.el
@@ -536,7 +536,7 @@ codes. Finally, the so changed list of codes is returned."
536 (cons new (remq new codes)))) 536 (cons new (remq new codes))))
537 (2 (unless (memq new '(20 26 28 29)) 537 (2 (unless (memq new '(20 26 28 29))
538 ;; The standard says `21 doubly underlined' while 538 ;; The standard says `21 doubly underlined' while
539 ;; http://en.wikipedia.org/wiki/ANSI_escape_code claims 539 ;; https://en.wikipedia.org/wiki/ANSI_escape_code claims
540 ;; `21 Bright/Bold: off or Underline: Double'. 540 ;; `21 Bright/Bold: off or Underline: Double'.
541 (remq (- new 20) (pcase new 541 (remq (- new 20) (pcase new
542 (22 (remq 1 codes)) 542 (22 (remq 1 codes))
diff --git a/lisp/autorevert.el b/lisp/autorevert.el
index 6e08176f5ff..046ea2b5d6a 100644
--- a/lisp/autorevert.el
+++ b/lisp/autorevert.el
@@ -871,6 +871,62 @@ This is an internal function used by Auto-Revert Mode."
871 (restore-buffer-modified-p modified))) 871 (restore-buffer-modified-p modified)))
872 (set-visited-file-modtime)) 872 (set-visited-file-modtime))
873 873
874(defun auto-revert--buffer-candidates ()
875 "Return a prioritized list of buffers to maybe auto-revert.
876The differences between this return value and the reference
877variable `auto-revert-buffer-list' include: 1) this has more
878entries when in global-auto-revert-mode; 2) this prioritizes
879buffers not reverted last time due to user interruption. "
880 (let ((bufs (delq nil
881 ;; Buffers with remote contents shall be reverted only
882 ;; if the connection is established already.
883 (mapcar
884 (lambda (buf)
885 (and (buffer-live-p buf)
886 (with-current-buffer buf
887 (and
888 (or (not (file-remote-p default-directory))
889 (file-remote-p default-directory nil t))
890 buf))))
891 (auto-revert--polled-buffers))))
892 remaining new)
893 ;; Partition `bufs' into two halves depending on whether or not
894 ;; the buffers are in `auto-revert-remaining-buffers'. The two
895 ;; halves are then re-joined with the "remaining" buffers at the
896 ;; head of the list.
897 (dolist (buf auto-revert-remaining-buffers)
898 (when (memq buf bufs)
899 (push buf remaining)))
900 (dolist (buf bufs)
901 (unless (memq buf remaining)
902 (push buf new)))
903 (nreverse (nconc new remaining))))
904
905(defun auto-revert-buffer (buf)
906 "Revert a single buffer.
907
908This is performed as specified by Auto-Revert and Global
909Auto-Revert Modes."
910 (if (not (buffer-live-p buf))
911 (auto-revert-remove-current-buffer buf)
912 (with-current-buffer buf
913 ;; Test if someone has turned off Auto-Revert Mode
914 ;; in a non-standard way, for example by changing
915 ;; major mode.
916 (when (and (not auto-revert-mode)
917 (not auto-revert-tail-mode))
918 (auto-revert-remove-current-buffer))
919 (when (auto-revert-active-p)
920 ;; Enable file notification.
921 ;; Don't bother creating a notifier for non-file buffers
922 ;; unless it explicitly indicates that this works.
923 (when (and auto-revert-use-notify
924 (not auto-revert-notify-watch-descriptor)
925 (or buffer-file-name
926 buffer-auto-revert-by-notification))
927 (auto-revert-notify-add-watch))
928 (auto-revert-handler)))))
929
874(defun auto-revert-buffers () 930(defun auto-revert-buffers ()
875 "Revert buffers as specified by Auto-Revert and Global Auto-Revert Mode. 931 "Revert buffers as specified by Auto-Revert and Global Auto-Revert Mode.
876 932
@@ -894,67 +950,19 @@ are checked first the next time this function is called.
894This function is also responsible for removing buffers no longer in 950This function is also responsible for removing buffers no longer in
895Auto-Revert Mode from `auto-revert-buffer-list', and for canceling 951Auto-Revert Mode from `auto-revert-buffer-list', and for canceling
896the timer when no buffers need to be checked." 952the timer when no buffers need to be checked."
897
898 (save-match-data 953 (save-match-data
899 (let ((bufs (auto-revert--polled-buffers)) 954 (let ((bufs (auto-revert--buffer-candidates)))
900 remaining new)
901 ;; Buffers with remote contents shall be reverted only if the
902 ;; connection is established already.
903 (setq bufs (delq nil
904 (mapcar
905 (lambda (buf)
906 (and (buffer-live-p buf)
907 (with-current-buffer buf
908 (and
909 (or (not (file-remote-p default-directory))
910 (file-remote-p default-directory nil t))
911 buf))))
912 bufs)))
913 ;; Partition `bufs' into two halves depending on whether or not
914 ;; the buffers are in `auto-revert-remaining-buffers'. The two
915 ;; halves are then re-joined with the "remaining" buffers at the
916 ;; head of the list.
917 (dolist (buf auto-revert-remaining-buffers)
918 (if (memq buf bufs)
919 (push buf remaining)))
920 (dolist (buf bufs)
921 (if (not (memq buf remaining))
922 (push buf new)))
923 (setq bufs (nreverse (nconc new remaining)))
924 (while (and bufs 955 (while (and bufs
925 (not (and auto-revert-stop-on-user-input 956 (not (and auto-revert-stop-on-user-input
926 (input-pending-p)))) 957 (input-pending-p))))
927 (let ((buf (car bufs))) 958 (auto-revert-buffer (pop bufs)))
928 (if (not (buffer-live-p buf))
929 ;; Remove dead buffer from `auto-revert-buffer-list'.
930 (auto-revert-remove-current-buffer buf)
931 (with-current-buffer buf
932 ;; Test if someone has turned off Auto-Revert Mode
933 ;; in a non-standard way, for example by changing
934 ;; major mode.
935 (if (and (not auto-revert-mode)
936 (not auto-revert-tail-mode)
937 (memq buf auto-revert-buffer-list))
938 (auto-revert-remove-current-buffer))
939 (when (auto-revert-active-p)
940 ;; Enable file notification.
941 ;; Don't bother creating a notifier for non-file buffers
942 ;; unless it explicitly indicates that this works.
943 (when (and auto-revert-use-notify
944 (not auto-revert-notify-watch-descriptor)
945 (or buffer-file-name
946 buffer-auto-revert-by-notification))
947 (auto-revert-notify-add-watch))
948 (auto-revert-handler)))))
949 (setq bufs (cdr bufs)))
950 (setq auto-revert-remaining-buffers bufs) 959 (setq auto-revert-remaining-buffers bufs)
951 ;; Check if we should cancel the timer. 960 ;; Check if we should cancel the timer.
952 (unless (auto-revert--need-polling-p) 961 (unless (auto-revert--need-polling-p)
953 (if (timerp auto-revert-timer) 962 (when (timerp auto-revert-timer)
954 (cancel-timer auto-revert-timer)) 963 (cancel-timer auto-revert-timer))
955 (setq auto-revert-timer nil))))) 964 (setq auto-revert-timer nil)))))
956 965
957
958;; The end: 966;; The end:
959(provide 'autorevert) 967(provide 'autorevert)
960 968
diff --git a/lisp/calc/calc-forms.el b/lisp/calc/calc-forms.el
index 5a8f0a38d24..a2f66968665 100644
--- a/lisp/calc/calc-forms.el
+++ b/lisp/calc/calc-forms.el
@@ -709,6 +709,10 @@ as measured in the number of days before December 31, 1 BC (Gregorian).")
709 "The beginning of the Julian date calendar, 709 "The beginning of the Julian date calendar,
710as measured in the integer number of days before December 31, 1 BC (Gregorian).") 710as measured in the integer number of days before December 31, 1 BC (Gregorian).")
711 711
712(defconst math-unix-epoch 719163
713 "The beginning of Unix time: days from December 31, 1 BC (Gregorian)
714to Jan 1, 1970 AD.")
715
712(defun math-format-date-part (x) 716(defun math-format-date-part (x)
713 (cond ((stringp x) 717 (cond ((stringp x)
714 x) 718 x)
@@ -730,7 +734,8 @@ as measured in the integer number of days before December 31, 1 BC (Gregorian)."
730 (math-floor math-fd-date) 734 (math-floor math-fd-date)
731 math-julian-date-beginning-int))) 735 math-julian-date-beginning-int)))
732 ((eq x 'U) 736 ((eq x 'U)
733 (math-format-number (nth 1 (math-date-parts math-fd-date 719164)))) 737 (math-format-number (nth 1 (math-date-parts math-fd-date
738 math-unix-epoch))))
734 ((memq x '(IYYY Iww w)) 739 ((memq x '(IYYY Iww w))
735 (progn 740 (progn
736 (or math-fd-iso-dt 741 (or math-fd-iso-dt
@@ -1173,7 +1178,7 @@ as measured in the integer number of days before December 31, 1 BC (Gregorian)."
1173 (setq num (math-match-substring math-pd-str 0) 1178 (setq num (math-match-substring math-pd-str 0)
1174 math-pd-str (substring math-pd-str (match-end 0)) 1179 math-pd-str (substring math-pd-str (match-end 0))
1175 num (math-date-to-dt 1180 num (math-date-to-dt
1176 (math-add 719164 1181 (math-add math-unix-epoch
1177 (math-div (math-read-number num) 1182 (math-div (math-read-number num)
1178 '(float 864 2)))) 1183 '(float 864 2))))
1179 hour (nth 3 num) 1184 hour (nth 3 num)
@@ -1434,11 +1439,11 @@ as measured in the integer number of days before December 31, 1 BC (Gregorian)."
1434(defun calcFunc-unixtime (date &optional zone) 1439(defun calcFunc-unixtime (date &optional zone)
1435 (if (math-realp date) 1440 (if (math-realp date)
1436 (progn 1441 (progn
1437 (setq date (math-add 719163 (math-div date '(float 864 2)))) 1442 (setq date (math-add math-unix-epoch (math-div date '(float 864 2))))
1438 (list 'date (math-sub date (math-div (calcFunc-tzone zone date) 1443 (list 'date (math-sub date (math-div (calcFunc-tzone zone date)
1439 '(float 864 2))))) 1444 '(float 864 2)))))
1440 (if (eq (car date) 'date) 1445 (if (eq (car date) 'date)
1441 (math-add (nth 1 (math-date-parts (nth 1 date) 719163)) 1446 (math-add (nth 1 (math-date-parts (nth 1 date) math-unix-epoch))
1442 (calcFunc-tzone zone date)) 1447 (calcFunc-tzone zone date))
1443 (math-reject-arg date 'datep)))) 1448 (math-reject-arg date 'datep))))
1444 1449
@@ -1870,8 +1875,8 @@ and ends on the last Sunday of October at 2 a.m."
1870 (and days (= day (car days)) 1875 (and days (= day (car days))
1871 (setq holiday t))) 1876 (setq holiday t)))
1872 (let* ((weekdays (nth 3 math-holidays-cache)) 1877 (let* ((weekdays (nth 3 math-holidays-cache))
1873 (weeks (1- (/ (+ day 6) 7))) 1878 (weeks (/ day 7))
1874 (wkday (- day 1 (* weeks 7)))) 1879 (wkday (mod day 7))) ; Day of week: 0=Sunday, 6=Saturday
1875 (setq delta (+ delta (* weeks (length weekdays)))) 1880 (setq delta (+ delta (* weeks (length weekdays))))
1876 (while (and weekdays (< (car weekdays) wkday)) 1881 (while (and weekdays (< (car weekdays) wkday))
1877 (setq weekdays (cdr weekdays) 1882 (setq weekdays (cdr weekdays)
@@ -1905,14 +1910,15 @@ and ends on the last Sunday of October at 2 a.m."
1905 (setq delta (1+ delta))) 1910 (setq delta (1+ delta)))
1906 (setq day (+ day delta))) 1911 (setq day (+ day delta)))
1907 (let* ((weekdays (nth 3 math-holidays-cache)) 1912 (let* ((weekdays (nth 3 math-holidays-cache))
1908 (bweek (- 7 (length weekdays))) 1913 (bweek (- 7 (length weekdays))) ; Business days in a week, 1..7.
1909 (weeks (1- (/ (+ day (1- bweek)) bweek))) 1914 (weeks (/ day bweek)) ; Whole weeks.
1910 (wkday (- day 1 (* weeks bweek))) 1915 (wkday (mod day bweek)) ; Business day in last week, 0..bweek-1
1911 (w 0)) 1916 (w 0))
1912 (setq day (+ day (* weeks (length weekdays)))) 1917 (setq day (+ day (* weeks (length weekdays))))
1918 ;; Add business days in the last week; `w' is weekday, 0..6.
1913 (while (if (memq w weekdays) 1919 (while (if (memq w weekdays)
1914 (setq day (1+ day)) 1920 (setq day (1+ day))
1915 (> (setq wkday (1- wkday)) 0)) 1921 (>= (setq wkday (1- wkday)) 0))
1916 (setq w (1+ w))) 1922 (setq w (1+ w)))
1917 (let ((hours (nth 7 math-holidays-cache))) 1923 (let ((hours (nth 7 math-holidays-cache)))
1918 (if hours 1924 (if hours
diff --git a/lisp/calc/calc-units.el b/lisp/calc/calc-units.el
index 7b86eb095b0..709c09ea099 100644
--- a/lisp/calc/calc-units.el
+++ b/lisp/calc/calc-units.el
@@ -37,14 +37,14 @@
37;;; Updated April 2002 by Jochen Küpper 37;;; Updated April 2002 by Jochen Küpper
38 38
39;;; Updated August 2007, using 39;;; Updated August 2007, using
40;;; CODATA (http://physics.nist.gov/cuu/Constants/index.html) 40;;; CODATA (https://physics.nist.gov/cuu/Constants/index.html)
41;;; NIST (http://physics.nist.gov/Pubs/SP811/appenB9.html) 41;;; NIST (https://physics.nist.gov/Pubs/SP811/appenB9.html)
42;;; ESUWM (Encyclopaedia of Scientific Units, Weights and 42;;; ESUWM (Encyclopaedia of Scientific Units, Weights and
43;;; Measures, by François Cardarelli) 43;;; Measures, by François Cardarelli)
44;;; All conversions are exact unless otherwise noted. 44;;; All conversions are exact unless otherwise noted.
45 45
46;; CODATA values updated February 2016, using 2014 adjustment 46;; CODATA values updated February 2016, using 2014 adjustment
47;; http://arxiv.org/pdf/1507.07956.pdf 47;; https://arxiv.org/pdf/1507.07956.pdf
48 48
49;; Updated November 2018 for the redefinition of the SI 49;; Updated November 2018 for the redefinition of the SI
50;; https://www.bipm.org/utils/en/pdf/CGPM/Draft-Resolution-A-EN.pdf 50;; https://www.bipm.org/utils/en/pdf/CGPM/Draft-Resolution-A-EN.pdf
@@ -59,7 +59,7 @@
59 ( mi "5280 ft" "Mile" ) 59 ( mi "5280 ft" "Mile" )
60 ( au "149597870691. m" "Astronomical Unit" nil 60 ( au "149597870691. m" "Astronomical Unit" nil
61 "149597870691 m (*)") 61 "149597870691 m (*)")
62 ;; (approx) NASA JPL (http://neo.jpl.nasa.gov/glossary/au.html) 62 ;; (approx) NASA JPL (https://neo.jpl.nasa.gov/glossary/au.html)
63 ( lyr "c yr" "Light Year" ) 63 ( lyr "c yr" "Light Year" )
64 ( pc "3.0856775854*10^16 m" "Parsec (**)" nil 64 ( pc "3.0856775854*10^16 m" "Parsec (**)" nil
65 "3.0856775854 10^16 m (*)") ;; (approx) ESUWM 65 "3.0856775854 10^16 m (*)") ;; (approx) ESUWM
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 20887af4849..de9b1f3ff53 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -1096,7 +1096,7 @@ Otherwise, use symbolic time zones like \"CET\"."
1096 "Name of buffer used for sunrise/sunset times.") 1096 "Name of buffer used for sunrise/sunset times.")
1097 1097
1098(defconst calendar-hebrew-yahrzeit-buffer "*Yahrzeits*" 1098(defconst calendar-hebrew-yahrzeit-buffer "*Yahrzeits*"
1099 "Name of the buffer used by `list-yahrzeit-dates'.") 1099 "Name of the buffer used by `calendar-hebrew-list-yahrzeits'.")
1100 1100
1101(defmacro calendar-increment-month (mon yr n &optional nmonths) 1101(defmacro calendar-increment-month (mon yr n &optional nmonths)
1102 "Increment the variables MON and YR by N months. 1102 "Increment the variables MON and YR by N months.
diff --git a/lisp/calendar/timeclock.el b/lisp/calendar/timeclock.el
index 2ee1d34bf15..18ca05af4c5 100644
--- a/lisp/calendar/timeclock.el
+++ b/lisp/calendar/timeclock.el
@@ -555,7 +555,7 @@ relative only to the time worked today, and not to past time."
555OLD-DEFAULT hours are set for every day that has no number indicated." 555OLD-DEFAULT hours are set for every day that has no number indicated."
556 (interactive "P") 556 (interactive "P")
557 (if old-default (setq old-default (prefix-numeric-value old-default)) 557 (if old-default (setq old-default (prefix-numeric-value old-default))
558 (error "`timelog-make-hours-explicit' requires an explicit argument")) 558 (error "`timeclock-make-hours-explicit' requires an explicit argument"))
559 (let ((extant-timelog (find-buffer-visiting timeclock-file)) 559 (let ((extant-timelog (find-buffer-visiting timeclock-file))
560 current-date) 560 current-date)
561 (with-current-buffer (find-file-noselect timeclock-file t) 561 (with-current-buffer (find-file-noselect timeclock-file t)
diff --git a/lisp/cedet/ChangeLog.1 b/lisp/cedet/ChangeLog.1
index 93bd5872f3f..a1c0e41b8da 100644
--- a/lisp/cedet/ChangeLog.1
+++ b/lisp/cedet/ChangeLog.1
@@ -301,7 +301,7 @@
301 manipulation of `ede-projects' with equivalent and better 301 manipulation of `ede-projects' with equivalent and better
302 functions. 302 functions.
303 (ede-proj-load): Replace call to test if dir has project to 303 (ede-proj-load): Replace call to test if dir has project to
304 explicity ask filesystem if Project.ede is there. 304 explicitly ask filesystem if Project.ede is there.
305 305
306 * ede/config.el: 306 * ede/config.el:
307 * ede/detect.el: New files. 307 * ede/detect.el: New files.
@@ -2101,7 +2101,7 @@
2101 by calling `srecode-cpp-apply-templates'. 2101 by calling `srecode-cpp-apply-templates'.
2102 2102
2103 * srecode/compile.el (srecode-compile-templates): Fix directory 2103 * srecode/compile.el (srecode-compile-templates): Fix directory
2104 compare of built-in templates. Give built-ins lower piority. 2104 compare of built-in templates. Give built-ins lower priority.
2105 Support special variable "project". 2105 Support special variable "project".
2106 (srecode-compile-template-table): Set :project slot of new tables. 2106 (srecode-compile-template-table): Set :project slot of new tables.
2107 (srecode-compile-one-template-tag): 2107 (srecode-compile-one-template-tag):
diff --git a/lisp/cedet/ede/autoconf-edit.el b/lisp/cedet/ede/autoconf-edit.el
index e9dd48c8ab5..409e35ef900 100644
--- a/lisp/cedet/ede/autoconf-edit.el
+++ b/lisp/cedet/ede/autoconf-edit.el
@@ -215,7 +215,7 @@ the ordering list `autoconf-preferred-macro-order'."
215(defun autoconf-insert-new-macro (macro &optional param) 215(defun autoconf-insert-new-macro (macro &optional param)
216 "Add a call to MACRO in the current autoconf file. 216 "Add a call to MACRO in the current autoconf file.
217Deals with macro order. See `autoconf-preferred-macro-order' and 217Deals with macro order. See `autoconf-preferred-macro-order' and
218`autoconf-multi-macros'. 218`autoconf-multiple-macros'.
219Optional argument PARAM is the parameter to pass to the macro as one string." 219Optional argument PARAM is the parameter to pass to the macro as one string."
220 (cond ((member macro autoconf-multiple-macros) 220 (cond ((member macro autoconf-multiple-macros)
221 ;; This occurs multiple times 221 ;; This occurs multiple times
diff --git a/lisp/cedet/ede/detect.el b/lisp/cedet/ede/detect.el
index f1152fd3539..fe23501807a 100644
--- a/lisp/cedet/ede/detect.el
+++ b/lisp/cedet/ede/detect.el
@@ -25,7 +25,7 @@
25;; 25;;
26;; Detection comes in multiple forms: 26;; Detection comes in multiple forms:
27;; 27;;
28;; `ede-detect-scan-directory-for-project' - 28;; `ede--detect-scan-directory-for-project' -
29;; Scan for a project via the file system. 29;; Scan for a project via the file system.
30;; `ede-detect-directory-for-project' - 30;; `ede-detect-directory-for-project' -
31;; Check our file cache for a project. If that fails, use 31;; Check our file cache for a project. If that fails, use
diff --git a/lisp/cedet/semantic/bovine/scm.el b/lisp/cedet/semantic/bovine/scm.el
index 93ad27586ed..b2a25bf8eef 100644
--- a/lisp/cedet/semantic/bovine/scm.el
+++ b/lisp/cedet/semantic/bovine/scm.el
@@ -69,7 +69,7 @@ Attempts a simple prototype for calling or using TAG."
69;; Note: Analyzer from Henry S. Thompson 69;; Note: Analyzer from Henry S. Thompson
70(define-lex-regex-analyzer semantic-lex-scheme-symbol 70(define-lex-regex-analyzer semantic-lex-scheme-symbol
71 "Detect and create symbol and keyword tokens." 71 "Detect and create symbol and keyword tokens."
72 "\\(\\sw\\([:]\\|\\sw\\|\\s_\\)*\\)" 72 "\\(\\sw\\|\\s_\\)+"
73 ;; (message "symbol: %s" (match-string 0)) 73 ;; (message "symbol: %s" (match-string 0))
74 (semantic-lex-push-token 74 (semantic-lex-push-token
75 (semantic-lex-token 75 (semantic-lex-token
diff --git a/lisp/cedet/semantic/java.el b/lisp/cedet/semantic/java.el
index 2aa0ab0e3fd..cc53f69691b 100644
--- a/lisp/cedet/semantic/java.el
+++ b/lisp/cedet/semantic/java.el
@@ -321,7 +321,7 @@ If NOSNARF is `lex', then return the semantic lex token."
321(defvar semantic-java-doc-line-tags nil 321(defvar semantic-java-doc-line-tags nil
322 "Valid javadoc line tags. 322 "Valid javadoc line tags.
323Ordered following Sun's Tag Convention at 323Ordered following Sun's Tag Convention at
324<http://java.sun.com/products/jdk/javadoc/writingdoccomments/index.html>") 324<https://java.sun.com/products/jdk/javadoc/writingdoccomments/index.html>")
325 325
326(defvar semantic-java-doc-with-name-tags nil 326(defvar semantic-java-doc-with-name-tags nil
327 "Javadoc tags which have a name.") 327 "Javadoc tags which have a name.")
diff --git a/lisp/cedet/srecode/fields.el b/lisp/cedet/srecode/fields.el
index e46c5820c55..87c7c684dab 100644
--- a/lisp/cedet/srecode/fields.el
+++ b/lisp/cedet/srecode/fields.el
@@ -164,7 +164,7 @@ Has virtual :start and :end initializers.")
164 164
165(cl-defmethod srecode-overlaid-text ((olaid srecode-overlaid) &optional set-to) 165(cl-defmethod srecode-overlaid-text ((olaid srecode-overlaid) &optional set-to)
166 "Return the text under OLAID. 166 "Return the text under OLAID.
167If SET-TO is a string, then replace the text of OLAID wit SET-TO." 167If SET-TO is a string, then replace the text of OLAID with SET-TO."
168 (let* ((ol (oref olaid overlay)) 168 (let* ((ol (oref olaid overlay))
169 (start (overlay-start ol))) 169 (start (overlay-start ol)))
170 (if (not (stringp set-to)) 170 (if (not (stringp set-to))
diff --git a/lisp/color.el b/lisp/color.el
index 560631ae66d..48f150de70c 100644
--- a/lisp/color.el
+++ b/lisp/color.el
@@ -50,7 +50,7 @@ numbers, (RED GREEN BLUE), each between 0.0 and 1.0 inclusive.
50Optional argument FRAME specifies the frame where the color is to be 50Optional argument FRAME specifies the frame where the color is to be
51displayed. If FRAME is omitted or nil, use the selected frame. 51displayed. If FRAME is omitted or nil, use the selected frame.
52If FRAME cannot display COLOR, return nil." 52If FRAME cannot display COLOR, return nil."
53 ;; `colors-values' maximum value is either 65535 or 65280 depending on the 53 ;; `color-values' maximum value is either 65535 or 65280 depending on the
54 ;; display system. So we use a white conversion to get the max value. 54 ;; display system. So we use a white conversion to get the max value.
55 (let ((valmax (float (car (color-values "#ffffffffffff"))))) 55 (let ((valmax (float (car (color-values "#ffffffffffff")))))
56 (mapcar (lambda (x) (/ x valmax)) (color-values color frame)))) 56 (mapcar (lambda (x) (/ x valmax)) (color-values color frame))))
diff --git a/lisp/comint.el b/lisp/comint.el
index b966fae9364..611947605fb 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -1773,7 +1773,7 @@ Argument 0 is the command name."
1773 ((>= mth 0) (1- (- count mth))) 1773 ((>= mth 0) (1- (- count mth)))
1774 (t (1- (- mth)))))) 1774 (t (1- (- mth))))))
1775 (mapconcat 1775 (mapconcat
1776 (function (lambda (a) a)) (nthcdr n (nreverse (nthcdr m args))) " ")))) 1776 (lambda (a) a) (nthcdr n (nreverse (nthcdr m args))) " "))))
1777 1777
1778;; 1778;;
1779;; Input processing stuff 1779;; Input processing stuff
diff --git a/lisp/completion.el b/lisp/completion.el
index e4a004f1908..8a4c1676145 100644
--- a/lisp/completion.el
+++ b/lisp/completion.el
@@ -2041,7 +2041,7 @@ Patched to remove the most recent completion."
2041 2041
2042;; All common separators (eg. space "(" ")" """) characters go through a 2042;; All common separators (eg. space "(" ")" """) characters go through a
2043;; function to add new words to the list of words to complete from. 2043;; function to add new words to the list of words to complete from.
2044;; If the character before this was an alpha-numeric then this adds the 2044;; If the character before this was an alphanumeric then this adds the
2045;; symbol before point to the completion list (using ADD-COMPLETION). 2045;; symbol before point to the completion list (using ADD-COMPLETION).
2046 2046
2047(defvar completion-separator-chars 2047(defvar completion-separator-chars
diff --git a/lisp/descr-text.el b/lisp/descr-text.el
index 9305664e31a..ec9a9680137 100644
--- a/lisp/descr-text.el
+++ b/lisp/descr-text.el
@@ -210,7 +210,7 @@ multilingual development.
210 210
211This is a fairly large file, not typically present on GNU systems. 211This is a fairly large file, not typically present on GNU systems.
212At the time of writing it is at the URL 212At the time of writing it is at the URL
213`http://www.unicode.org/Public/UNIDATA/UnicodeData.txt'." 213`https://www.unicode.org/Public/UNIDATA/UnicodeData.txt'."
214 :group 'mule 214 :group 'mule
215 :version "22.1" 215 :version "22.1"
216 :type '(choice (const :tag "None" nil) 216 :type '(choice (const :tag "None" nil)
diff --git a/lisp/dired.el b/lisp/dired.el
index b4b3368a5b7..08b19a02250 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -4227,22 +4227,50 @@ format, use `\\[universal-argument] \\[dired]'.")
4227 "Non-nil means the Dired sort command is disabled. 4227 "Non-nil means the Dired sort command is disabled.
4228The idea is to set this buffer-locally in special Dired buffers.") 4228The idea is to set this buffer-locally in special Dired buffers.")
4229 4229
4230(defcustom dired-switches-in-mode-line nil
4231 "How to indicate `dired-actual-switches' in mode-line.
4232Possible values:
4233 * `nil': Indicate name-or-date sort order, if possible.
4234 Else show full switches.
4235 * `as-is': Show full switches.
4236 * Integer: Show only the first N chars of full switches.
4237 * Function: Pass `dired-actual-switches' as arg and show result."
4238 :group 'Dired-Plus
4239 :type '(choice
4240 (const :tag "Indicate by name or date, else full" nil)
4241 (const :tag "Show full switches" as-is)
4242 (integer :tag "Show first N chars of switches" :value 10)
4243 (function :tag "Format with function" :value identity)))
4244
4230(defun dired-sort-set-mode-line () 4245(defun dired-sort-set-mode-line ()
4231 ;; Set mode line display according to dired-actual-switches. 4246 "Set mode-line according to option `dired-switches-in-mode-line'."
4232 ;; Mode line display of "by name" or "by date" guarantees the user a
4233 ;; match with the corresponding regexps. Non-matching switches are
4234 ;; shown literally.
4235 (when (eq major-mode 'dired-mode) 4247 (when (eq major-mode 'dired-mode)
4236 (setq mode-name 4248 (setq mode-name
4237 (let (case-fold-search) 4249 (let ((case-fold-search nil))
4238 (cond ((string-match-p 4250 (if dired-switches-in-mode-line
4239 dired-sort-by-name-regexp dired-actual-switches) 4251 (concat
4240 "Dired by name") 4252 "Dired"
4241 ((string-match-p 4253 (cond ((integerp dired-switches-in-mode-line)
4242 dired-sort-by-date-regexp dired-actual-switches) 4254 (let* ((l1 (length dired-actual-switches))
4243 "Dired by date") 4255 (xs (substring
4244 (t 4256 dired-actual-switches
4245 (concat "Dired " dired-actual-switches))))) 4257 0 (min l1 dired-switches-in-mode-line)))
4258 (l2 (length xs)))
4259 (if (zerop l2)
4260 xs
4261 (concat " " xs (and (< l2 l1) "…")))))
4262 ((functionp dired-switches-in-mode-line)
4263 (format " %s" (funcall
4264 dired-switches-in-mode-line
4265 dired-actual-switches)))
4266 (t (concat " " dired-actual-switches))))
4267 (cond ((string-match-p dired-sort-by-name-regexp
4268 dired-actual-switches)
4269 "Dired by name")
4270 ((string-match-p dired-sort-by-date-regexp
4271 dired-actual-switches)
4272 "Dired by date")
4273 (t (concat "Dired " dired-actual-switches))))))
4246 (force-mode-line-update))) 4274 (force-mode-line-update)))
4247 4275
4248(define-obsolete-function-alias 'dired-sort-set-modeline 4276(define-obsolete-function-alias 'dired-sort-set-modeline
diff --git a/lisp/doc-view.el b/lisp/doc-view.el
index 60f6d6350c9..8aaf38aab21 100644
--- a/lisp/doc-view.el
+++ b/lisp/doc-view.el
@@ -24,8 +24,8 @@
24 24
25;; doc-view.el requires GNU Emacs 22.1 or newer. You also need Ghostscript, 25;; doc-view.el requires GNU Emacs 22.1 or newer. You also need Ghostscript,
26;; `dvipdf' (comes with Ghostscript) or `dvipdfm' (comes with teTeX or TeXLive) 26;; `dvipdf' (comes with Ghostscript) or `dvipdfm' (comes with teTeX or TeXLive)
27;; and `pdftotext', which comes with xpdf (http://www.foolabs.com/xpdf/) or 27;; and `pdftotext', which comes with xpdf (https://www.foolabs.com/xpdf/) or
28;; poppler (http://poppler.freedesktop.org/). 28;; poppler (https://poppler.freedesktop.org/).
29 29
30;;; Commentary: 30;;; Commentary:
31 31
@@ -514,7 +514,7 @@ Typically \"page-%s.png\".")
514 ;; Toggle between text and image display or editing 514 ;; Toggle between text and image display or editing
515 (define-key map (kbd "C-c C-c") 'doc-view-toggle-display) 515 (define-key map (kbd "C-c C-c") 'doc-view-toggle-display)
516 map) 516 map)
517 "Keymap used by `doc-minor-view-mode'.") 517 "Keymap used by `doc-view-minor-mode'.")
518 518
519;;;; Navigation Commands 519;;;; Navigation Commands
520 520
diff --git a/lisp/double.el b/lisp/double.el
index 639d041a1dc..8e5090034cf 100644
--- a/lisp/double.el
+++ b/lisp/double.el
@@ -99,7 +99,7 @@ but not `C-u X' or `ESC X' since the X is not the prefix key."
99 (load-library "isearch")) 99 (load-library "isearch"))
100 100
101(define-key isearch-mode-map [ignore] 101(define-key isearch-mode-map [ignore]
102 (function (lambda () (interactive) (isearch-update)))) 102 (lambda () (interactive) (isearch-update)))
103 103
104(defun double-translate-key (prompt) 104(defun double-translate-key (prompt)
105 ;; Translate input events using double map. 105 ;; Translate input events using double map.
diff --git a/lisp/ebuff-menu.el b/lisp/ebuff-menu.el
index 7285021676c..079fce88def 100644
--- a/lisp/ebuff-menu.el
+++ b/lisp/ebuff-menu.el
@@ -162,6 +162,7 @@ Run hooks in `electric-buffer-menu-mode-hook' on entry.
162 (message ""))) 162 (message "")))
163 (when select 163 (when select
164 (set-buffer buffer) 164 (set-buffer buffer)
165 (goto-char select)
165 (let ((opoint (point-marker))) 166 (let ((opoint (point-marker)))
166 (Buffer-menu-execute) 167 (Buffer-menu-execute)
167 (goto-char (point-min)) 168 (goto-char (point-min))
diff --git a/lisp/ehelp.el b/lisp/ehelp.el
index ad39116c680..81373202c51 100644
--- a/lisp/ehelp.el
+++ b/lisp/ehelp.el
@@ -219,7 +219,7 @@ BUFFER is put back into its original major mode."
219 'electric-help-retain)))) 219 'electric-help-retain))))
220 (Electric-command-loop 220 (Electric-command-loop
221 'exit 221 'exit
222 (function (lambda () 222 (lambda ()
223 (sit-for 0) ;necessary if last command was end-of-buffer or 223 (sit-for 0) ;necessary if last command was end-of-buffer or
224 ;beginning-of-buffer - otherwise pos-visible-in-window-p 224 ;beginning-of-buffer - otherwise pos-visible-in-window-p
225 ;will yield a wrong result. 225 ;will yield a wrong result.
@@ -241,7 +241,7 @@ BUFFER is put back into its original major mode."
241 (t 241 (t
242 (cond (standard "Press SPC to scroll, DEL to scroll back, q to exit, r to retain ") 242 (cond (standard "Press SPC to scroll, DEL to scroll back, q to exit, r to retain ")
243 (both) 243 (both)
244 (t (setq both (substitute-command-keys "Press \\[scroll-up] to scroll, \\[scroll-down] to scroll back, \\[electric-help-exit] to exit, \\[electric-help-retain] to retain "))))))))) 244 (t (setq both (substitute-command-keys "Press \\[scroll-up] to scroll, \\[scroll-down] to scroll back, \\[electric-help-exit] to exit, \\[electric-help-retain] to retain "))))))))
245 t)))) 245 t))))
246 246
247 247
diff --git a/lisp/electric.el b/lisp/electric.el
index 7038b91c26d..50ddf525ca4 100644
--- a/lisp/electric.el
+++ b/lisp/electric.el
@@ -424,7 +424,7 @@ If multiple rules match, only first one is executed.")
424 ;; 424 ;;
425 ;; FIXME: when `newline'ing, we exceptionally 425 ;; FIXME: when `newline'ing, we exceptionally
426 ;; prevent a specific behavior of 426 ;; prevent a specific behavior of
427 ;; `eletric-pair-mode', that of opening an extra 427 ;; `electric-pair-mode', that of opening an extra
428 ;; newline between newly inserted matching paris. 428 ;; newline between newly inserted matching paris.
429 ;; In theory that behavior should be provided by 429 ;; In theory that behavior should be provided by
430 ;; `electric-layout-mode' instead, which should be 430 ;; `electric-layout-mode' instead, which should be
diff --git a/lisp/emacs-lisp/autoload.el b/lisp/emacs-lisp/autoload.el
index 5ee0a14273f..2c63b44cd16 100644
--- a/lisp/emacs-lisp/autoload.el
+++ b/lisp/emacs-lisp/autoload.el
@@ -256,13 +256,12 @@ expression, in which case we want to handle forms differently."
256;; the doc-string in FORM. 256;; the doc-string in FORM.
257;; Those properties are now set in lisp-mode.el. 257;; Those properties are now set in lisp-mode.el.
258 258
259(defun autoload-find-generated-file () 259(defun autoload-find-generated-file (file)
260 "Visit the autoload file for the current buffer, and return its buffer." 260 "Visit the autoload file for the current buffer, and return its buffer."
261 (let ((enable-local-variables :safe) 261 (let ((enable-local-variables :safe)
262 (enable-local-eval nil) 262 (enable-local-eval nil)
263 (find-file-hook nil) 263 (find-file-hook nil)
264 (delay-mode-hooks t) 264 (delay-mode-hooks t))
265 (file (autoload-generated-file)))
266 ;; We used to use `raw-text' to read this file, but this causes 265 ;; We used to use `raw-text' to read this file, but this causes
267 ;; problems when the file contains non-ASCII characters. 266 ;; problems when the file contains non-ASCII characters.
268 (with-current-buffer (find-file-noselect 267 (with-current-buffer (find-file-noselect
@@ -270,18 +269,20 @@ expression, in which case we want to handle forms differently."
270 (if (zerop (buffer-size)) (insert (autoload-rubric file nil t))) 269 (if (zerop (buffer-size)) (insert (autoload-rubric file nil t)))
271 (current-buffer)))) 270 (current-buffer))))
272 271
273(defun autoload-generated-file () 272(defun autoload-generated-file (outfile)
274 "Return `generated-autoload-file' as an absolute name. 273 "Return OUTFILE as an absolute name.
275If local to the current buffer, expand using the default directory; 274If `generated-autoload-file' is bound locally in the current
276otherwise, using `source-directory'/lisp." 275buffer, that is used instead, and it is expanded using the
277 (expand-file-name generated-autoload-file 276default directory; otherwise, `source-directory'/lisp is used."
277 (expand-file-name (if (local-variable-p 'generated-autoload-file)
278 generated-autoload-file
279 outfile)
278 ;; File-local settings of generated-autoload-file should 280 ;; File-local settings of generated-autoload-file should
279 ;; be interpreted relative to the file's location, 281 ;; be interpreted relative to the file's location,
280 ;; of course. 282 ;; of course.
281 (if (not (local-variable-p 'generated-autoload-file)) 283 (if (not (local-variable-p 'generated-autoload-file))
282 (expand-file-name "lisp" source-directory)))) 284 (expand-file-name "lisp" source-directory))))
283 285
284
285(defun autoload-read-section-header () 286(defun autoload-read-section-header ()
286 "Read a section header form. 287 "Read a section header form.
287Since continuation lines have been marked as comments, 288Since continuation lines have been marked as comments,
@@ -456,13 +457,12 @@ which lists the file name and which functions are in it, etc."
456(defvar no-update-autoloads nil 457(defvar no-update-autoloads nil
457 "File local variable to prevent scanning this file for autoload cookies.") 458 "File local variable to prevent scanning this file for autoload cookies.")
458 459
459(defun autoload-file-load-name (file) 460(defun autoload-file-load-name (file outfile)
460 "Compute the name that will be used to load FILE." 461 "Compute the name that will be used to load FILE."
461 ;; OUTFILE should be the name of the global loaddefs.el file, which 462 ;; OUTFILE should be the name of the global loaddefs.el file, which
462 ;; is expected to be at the root directory of the files we're 463 ;; is expected to be at the root directory of the files we're
463 ;; scanning for autoloads and will be in the `load-path'. 464 ;; scanning for autoloads and will be in the `load-path'.
464 (let* ((outfile (default-value 'generated-autoload-file)) 465 (let* ((name (file-relative-name file (file-name-directory outfile)))
465 (name (file-relative-name file (file-name-directory outfile)))
466 (names '()) 466 (names '())
467 (dir (file-name-directory outfile))) 467 (dir (file-name-directory outfile)))
468 ;; If `name' has directory components, only keep the 468 ;; If `name' has directory components, only keep the
@@ -492,8 +492,9 @@ If FILE is being visited in a buffer, the contents of the buffer
492are used. 492are used.
493Return non-nil in the case where no autoloads were added at point." 493Return non-nil in the case where no autoloads were added at point."
494 (interactive "fGenerate autoloads for file: ") 494 (interactive "fGenerate autoloads for file: ")
495 (let ((generated-autoload-file buffer-file-name)) 495 (let ((autoload-modified-buffers nil))
496 (autoload-generate-file-autoloads file (current-buffer)))) 496 (autoload-generate-file-autoloads file (current-buffer) buffer-file-name)
497 autoload-modified-buffers))
497 498
498(defvar autoload-compute-prefixes t 499(defvar autoload-compute-prefixes t
499 "If non-nil, autoload will add code to register the prefixes used in a file. 500 "If non-nil, autoload will add code to register the prefixes used in a file.
@@ -610,7 +611,7 @@ Don't try to split prefixes that are already longer than that.")
610 `(register-definition-prefixes ,file ',(sort (delq nil strings) 611 `(register-definition-prefixes ,file ',(sort (delq nil strings)
611 'string<)))))) 612 'string<))))))
612 613
613(defun autoload--setup-output (otherbuf outbuf absfile load-name) 614(defun autoload--setup-output (otherbuf outbuf absfile load-name output-file)
614 (let ((outbuf 615 (let ((outbuf
615 (or (if otherbuf 616 (or (if otherbuf
616 ;; A file-local setting of 617 ;; A file-local setting of
@@ -618,7 +619,7 @@ Don't try to split prefixes that are already longer than that.")
618 ;; should ignore OUTBUF. 619 ;; should ignore OUTBUF.
619 nil 620 nil
620 outbuf) 621 outbuf)
621 (autoload-find-destination absfile load-name) 622 (autoload-find-destination absfile load-name output-file)
622 ;; The file has autoload cookies, but they're 623 ;; The file has autoload cookies, but they're
623 ;; already up-to-date. If OUTFILE is nil, the 624 ;; already up-to-date. If OUTFILE is nil, the
624 ;; entries are in the expected OUTBUF, 625 ;; entries are in the expected OUTBUF,
@@ -675,23 +676,16 @@ Don't try to split prefixes that are already longer than that.")
675More specifically those definitions will not be considered for the 676More specifically those definitions will not be considered for the
676`register-definition-prefixes' call.") 677`register-definition-prefixes' call.")
677 678
678;; When called from `generate-file-autoloads' we should ignore
679;; `generated-autoload-file' altogether. When called from
680;; `update-file-autoloads' we don't know `outbuf'. And when called from
681;; `update-directory-autoloads' it's in between: we know the default
682;; `outbuf' but we should obey any file-local setting of
683;; `generated-autoload-file'.
684(defun autoload-generate-file-autoloads (file &optional outbuf outfile) 679(defun autoload-generate-file-autoloads (file &optional outbuf outfile)
685 "Insert an autoload section for FILE in the appropriate buffer. 680 "Insert an autoload section for FILE in the appropriate buffer.
686Autoloads are generated for defuns and defmacros in FILE 681Autoloads are generated for defuns and defmacros in FILE
687marked by `generate-autoload-cookie' (which see). 682marked by `generate-autoload-cookie' (which see).
683
688If FILE is being visited in a buffer, the contents of the buffer are used. 684If FILE is being visited in a buffer, the contents of the buffer are used.
689OUTBUF is the buffer in which the autoload statements should be inserted. 685OUTBUF is the buffer in which the autoload statements should be inserted.
690If OUTBUF is nil, it will be determined by `autoload-generated-file'.
691 686
692If provided, OUTFILE is expected to be the file name of OUTBUF. 687If OUTBUF is nil, the output will go to OUTFILE, unless there's a
693If OUTFILE is non-nil and FILE specifies a `generated-autoload-file' 688buffer-local setting of `generated-autoload-file' in FILE.
694different from OUTFILE, then OUTBUF is ignored.
695 689
696Return non-nil if and only if FILE adds no autoloads to OUTFILE 690Return non-nil if and only if FILE adds no autoloads to OUTFILE
697\(or OUTBUF if OUTFILE is nil). The actual return value is 691\(or OUTBUF if OUTFILE is nil). The actual return value is
@@ -719,16 +713,19 @@ FILE's modification time."
719 (setq load-name 713 (setq load-name
720 (if (stringp generated-autoload-load-name) 714 (if (stringp generated-autoload-load-name)
721 generated-autoload-load-name 715 generated-autoload-load-name
722 (autoload-file-load-name absfile))) 716 (autoload-file-load-name absfile outfile)))
723 ;; FIXME? Comparing file-names for equality with just equal 717 ;; FIXME? Comparing file-names for equality with just equal
724 ;; is fragile, eg if one has an automounter prefix and one 718 ;; is fragile, eg if one has an automounter prefix and one
725 ;; does not, but both refer to the same physical file. 719 ;; does not, but both refer to the same physical file.
726 (when (and outfile 720 (when (and outfile
721 (not outbuf)
727 (not 722 (not
728 (if (memq system-type '(ms-dos windows-nt)) 723 (if (memq system-type '(ms-dos windows-nt))
729 (equal (downcase outfile) 724 (equal (downcase outfile)
730 (downcase (autoload-generated-file))) 725 (downcase (autoload-generated-file
731 (equal outfile (autoload-generated-file))))) 726 outfile)))
727 (equal outfile (autoload-generated-file
728 outfile)))))
732 (setq otherbuf t)) 729 (setq otherbuf t))
733 (save-excursion 730 (save-excursion
734 (save-restriction 731 (save-restriction
@@ -742,7 +739,8 @@ FILE's modification time."
742 (file-name-sans-extension 739 (file-name-sans-extension
743 (file-name-nondirectory file)))) 740 (file-name-nondirectory file))))
744 (setq output-start (autoload--setup-output 741 (setq output-start (autoload--setup-output
745 otherbuf outbuf absfile load-name)) 742 otherbuf outbuf absfile
743 load-name outfile))
746 (let ((standard-output (marker-buffer output-start)) 744 (let ((standard-output (marker-buffer output-start))
747 (print-quoted t)) 745 (print-quoted t))
748 (princ `(push (purecopy 746 (princ `(push (purecopy
@@ -760,7 +758,8 @@ FILE's modification time."
760 ;; If not done yet, figure out where to insert this text. 758 ;; If not done yet, figure out where to insert this text.
761 (unless output-start 759 (unless output-start
762 (setq output-start (autoload--setup-output 760 (setq output-start (autoload--setup-output
763 otherbuf outbuf absfile load-name))) 761 otherbuf outbuf absfile
762 load-name outfile)))
764 (autoload--print-cookie-text output-start load-name file)) 763 (autoload--print-cookie-text output-start load-name file))
765 ((= (following-char) ?\;) 764 ((= (following-char) ?\;)
766 ;; Don't read the comment. 765 ;; Don't read the comment.
@@ -791,7 +790,7 @@ FILE's modification time."
791 ((not otherbuf) 790 ((not otherbuf)
792 (unless output-start 791 (unless output-start
793 (setq output-start (autoload--setup-output 792 (setq output-start (autoload--setup-output
794 nil outbuf absfile load-name))) 793 nil outbuf absfile load-name outfile)))
795 (let ((autoload-print-form-outbuf 794 (let ((autoload-print-form-outbuf
796 (marker-buffer output-start))) 795 (marker-buffer output-start)))
797 (autoload-print-form form))) 796 (autoload-print-form form)))
@@ -803,9 +802,8 @@ FILE's modification time."
803 ;; then passing otherbuf=nil is enough, but if 802 ;; then passing otherbuf=nil is enough, but if
804 ;; outbuf is nil, that won't cut it, so we 803 ;; outbuf is nil, that won't cut it, so we
805 ;; locally bind generated-autoload-file. 804 ;; locally bind generated-autoload-file.
806 (let ((generated-autoload-file 805 (autoload--setup-output nil outbuf absfile load-name
807 (default-value 'generated-autoload-file))) 806 outfile))
808 (autoload--setup-output nil outbuf absfile load-name)))
809 (autoload-print-form-outbuf 807 (autoload-print-form-outbuf
810 (marker-buffer other-output-start))) 808 (marker-buffer other-output-start)))
811 (autoload-print-form form) 809 (autoload-print-form form)
@@ -927,19 +925,23 @@ Return FILE if there was no autoload cookie in it, else nil."
927 (interactive (list (read-file-name "Update autoloads for file: ") 925 (interactive (list (read-file-name "Update autoloads for file: ")
928 current-prefix-arg 926 current-prefix-arg
929 (read-file-name "Write autoload definitions to file: "))) 927 (read-file-name "Write autoload definitions to file: ")))
930 (let* ((generated-autoload-file (or outfile generated-autoload-file)) 928 (setq outfile (or outfile generated-autoload-file))
931 (autoload-modified-buffers nil) 929 (let* ((autoload-modified-buffers nil)
932 ;; We need this only if the output file handles more than one input. 930 ;; We need this only if the output file handles more than one input.
933 ;; See https://debbugs.gnu.org/22213#38 and subsequent. 931 ;; See https://debbugs.gnu.org/22213#38 and subsequent.
934 (autoload-timestamps t) 932 (autoload-timestamps t)
935 (no-autoloads (autoload-generate-file-autoloads file))) 933 (no-autoloads (autoload-generate-file-autoloads
934 file nil
935 (if (local-variable-p 'generated-autoload-file)
936 generated-autoload-file
937 outfile))))
936 (if autoload-modified-buffers 938 (if autoload-modified-buffers
937 (if save-after (autoload-save-buffers)) 939 (if save-after (autoload-save-buffers))
938 (if (called-interactively-p 'interactive) 940 (if (called-interactively-p 'interactive)
939 (message "Autoload section for %s is up to date." file))) 941 (message "Autoload section for %s is up to date." file)))
940 (if no-autoloads file))) 942 (if no-autoloads file)))
941 943
942(defun autoload-find-destination (file load-name) 944(defun autoload-find-destination (file load-name output-file)
943 "Find the destination point of the current buffer's autoloads. 945 "Find the destination point of the current buffer's autoloads.
944FILE is the file name of the current buffer. 946FILE is the file name of the current buffer.
945LOAD-NAME is the name as it appears in the output. 947LOAD-NAME is the name as it appears in the output.
@@ -949,12 +951,12 @@ removes any prior now out-of-date autoload entries."
949 (catch 'up-to-date 951 (catch 'up-to-date
950 (let* ((buf (current-buffer)) 952 (let* ((buf (current-buffer))
951 (existing-buffer (if buffer-file-name buf)) 953 (existing-buffer (if buffer-file-name buf))
952 (output-file (autoload-generated-file)) 954 (output-file (autoload-generated-file output-file))
953 (output-time (if (file-exists-p output-file) 955 (output-time (if (file-exists-p output-file)
954 (file-attribute-modification-time 956 (file-attribute-modification-time
955 (file-attributes output-file)))) 957 (file-attributes output-file))))
956 (found nil)) 958 (found nil))
957 (with-current-buffer (autoload-find-generated-file) 959 (with-current-buffer (autoload-find-generated-file output-file)
958 ;; This is to make generated-autoload-file have Unix EOLs, so 960 ;; This is to make generated-autoload-file have Unix EOLs, so
959 ;; that it is portable to all platforms. 961 ;; that it is portable to all platforms.
960 (or (eq 0 (coding-system-eol-type buffer-file-coding-system)) 962 (or (eq 0 (coding-system-eol-type buffer-file-coding-system))
@@ -1035,12 +1037,31 @@ The function does NOT recursively descend into subdirectories of the
1035directory or directories specified. 1037directory or directories specified.
1036 1038
1037In an interactive call, prompt for a default output file for the 1039In an interactive call, prompt for a default output file for the
1038autoload definitions, and temporarily bind the variable 1040autoload definitions. When called from Lisp, use the existing
1039`generated-autoload-file' to this value. When called from Lisp, 1041value of `generated-autoload-file'. If any Lisp file binds
1040use the existing value of `generated-autoload-file'. If any Lisp 1042`generated-autoload-file' as a file-local variable, write its
1041file binds `generated-autoload-file' as a file-local variable, 1043autoloads into the specified file instead."
1042write its autoloads into the specified file instead." 1044 (declare (obsolete make-directory-autoloads "28.1"))
1043 (interactive "DUpdate autoloads from directory: ") 1045 (interactive "DUpdate autoloads from directory: ")
1046 (make-directory-autoloads
1047 dirs
1048 (if (called-interactively-p 'interactive)
1049 (read-file-name "Write autoload definitions to file: ")
1050 generated-autoload-file)))
1051
1052;;;###autoload
1053(defun make-directory-autoloads (dir output-file)
1054 "Update autoload definitions for Lisp files in the directories DIRS.
1055DIR can be either a single directory or a list of
1056directories. (The latter usage is discouraged.)
1057
1058The autoloads will be written to OUTPUT-FILE. If any Lisp file
1059binds `generated-autoload-file' as a file-local variable, write
1060its autoloads into the specified file instead.
1061
1062The function does NOT recursively descend into subdirectories of the
1063directory or directories specified."
1064 (interactive "DUpdate autoloads from directory: \nFWrite to file: ")
1044 (let* ((files-re (let ((tmp nil)) 1065 (let* ((files-re (let ((tmp nil))
1045 (dolist (suf (get-load-suffixes)) 1066 (dolist (suf (get-load-suffixes))
1046 ;; We don't use module-file-suffix below because 1067 ;; We don't use module-file-suffix below because
@@ -1051,10 +1072,10 @@ write its autoloads into the specified file instead."
1051 (push suf tmp))) 1072 (push suf tmp)))
1052 (concat "\\`[^=.].*" (regexp-opt tmp t) "\\'"))) 1073 (concat "\\`[^=.].*" (regexp-opt tmp t) "\\'")))
1053 (files (apply #'nconc 1074 (files (apply #'nconc
1054 (mapcar (lambda (dir) 1075 (mapcar (lambda (d)
1055 (directory-files (expand-file-name dir) 1076 (directory-files (expand-file-name d)
1056 t files-re)) 1077 t files-re))
1057 dirs))) 1078 (if (consp dir) dir (list dir)))))
1058 (done ()) ;Files processed; to remove duplicates. 1079 (done ()) ;Files processed; to remove duplicates.
1059 (changed nil) ;Non-nil if some change occurred. 1080 (changed nil) ;Non-nil if some change occurred.
1060 (last-time) 1081 (last-time)
@@ -1062,16 +1083,12 @@ write its autoloads into the specified file instead."
1062 ;; files because of file-local autoload-generated-file settings. 1083 ;; files because of file-local autoload-generated-file settings.
1063 (no-autoloads nil) 1084 (no-autoloads nil)
1064 (autoload-modified-buffers nil) 1085 (autoload-modified-buffers nil)
1065 (generated-autoload-file
1066 (if (called-interactively-p 'interactive)
1067 (read-file-name "Write autoload definitions to file: ")
1068 generated-autoload-file))
1069 (output-time 1086 (output-time
1070 (if (file-exists-p generated-autoload-file) 1087 (and (file-exists-p output-file)
1071 (file-attribute-modification-time 1088 (file-attribute-modification-time
1072 (file-attributes generated-autoload-file))))) 1089 (file-attributes output-file)))))
1073 1090
1074 (with-current-buffer (autoload-find-generated-file) 1091 (with-current-buffer (autoload-find-generated-file output-file)
1075 (save-excursion 1092 (save-excursion
1076 ;; Canonicalize file names and remove the autoload file itself. 1093 ;; Canonicalize file names and remove the autoload file itself.
1077 (setq files (delete (file-relative-name buffer-file-name) 1094 (setq files (delete (file-relative-name buffer-file-name)
@@ -1128,8 +1145,7 @@ write its autoloads into the specified file instead."
1128 (progress (make-progress-reporter 1145 (progress (make-progress-reporter
1129 (byte-compile-info 1146 (byte-compile-info
1130 (concat "Scraping files for " 1147 (concat "Scraping files for "
1131 (file-relative-name 1148 (file-relative-name output-file)))
1132 generated-autoload-file)))
1133 0 (length files) nil 10)) 1149 0 (length files) nil 10))
1134 (file-count 0) 1150 (file-count 0)
1135 file-time) 1151 file-time)
@@ -1207,7 +1223,7 @@ should be non-nil)."
1207 (let ((args command-line-args-left)) 1223 (let ((args command-line-args-left))
1208 (batch-update-autoloads--summary args) 1224 (batch-update-autoloads--summary args)
1209 (setq command-line-args-left nil) 1225 (setq command-line-args-left nil)
1210 (apply #'update-directory-autoloads args))) 1226 (make-directory-autoloads args generated-autoload-file)))
1211 1227
1212(provide 'autoload) 1228(provide 'autoload)
1213 1229
diff --git a/lisp/emacs-lisp/backtrace.el b/lisp/emacs-lisp/backtrace.el
index 37dad8db162..5874ba72fcd 100644
--- a/lisp/emacs-lisp/backtrace.el
+++ b/lisp/emacs-lisp/backtrace.el
@@ -922,11 +922,15 @@ Output stream used is value of `standard-output'."
922 (princ (backtrace-to-string (backtrace-get-frames 'backtrace))) 922 (princ (backtrace-to-string (backtrace-get-frames 'backtrace)))
923 nil) 923 nil)
924 924
925(defun backtrace-to-string(&optional frames) 925(defun backtrace-to-string (&optional frames)
926 "Format FRAMES, a list of `backtrace-frame' objects, for output. 926 "Format FRAMES, a list of `backtrace-frame' objects, for output.
927Return the result as a string. If FRAMES is nil, use all 927Return the result as a string. If FRAMES is nil, use all
928function calls currently active." 928function calls currently active."
929 (unless frames (setq frames (backtrace-get-frames 'backtrace-to-string))) 929 (substring-no-properties
930 (backtrace--to-string
931 (or frames (backtrace-get-frames 'backtrace-to-string)))))
932
933(defun backtrace--to-string (frames)
930 (let ((backtrace-fontify nil)) 934 (let ((backtrace-fontify nil))
931 (with-temp-buffer 935 (with-temp-buffer
932 (backtrace-mode) 936 (backtrace-mode)
@@ -934,8 +938,7 @@ function calls currently active."
934 backtrace-frames frames 938 backtrace-frames frames
935 backtrace-print-function #'cl-prin1) 939 backtrace-print-function #'cl-prin1)
936 (backtrace-print) 940 (backtrace-print)
937 (substring-no-properties (filter-buffer-substring (point-min) 941 (filter-buffer-substring (point-min) (point-max)))))
938 (point-max))))))
939 942
940(provide 'backtrace) 943(provide 'backtrace)
941 944
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index b0e3158df32..b1e27a4dbda 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -3255,7 +3255,8 @@ for symbols generated by the byte compiler itself."
3255 (t ".")))) 3255 (t "."))))
3256 (if (eq (car-safe (symbol-function (car form))) 'macro) 3256 (if (eq (car-safe (symbol-function (car form))) 'macro)
3257 (byte-compile-report-error 3257 (byte-compile-report-error
3258 (format "Forgot to expand macro %s in %S" (car form) form))) 3258 (format "`%s' defined after use in %S (missing `require' of a library file?)"
3259 (car form) form)))
3259 (if (and handler 3260 (if (and handler
3260 ;; Make sure that function exists. 3261 ;; Make sure that function exists.
3261 (and (functionp handler) 3262 (and (functionp handler)
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 8571cca1061..86d99a9c6de 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -2999,7 +2999,7 @@ Supported keywords for slots are:
2999 constrs)) 2999 constrs))
3000 (pcase-dolist (`(,cname ,args ,doc) constrs) 3000 (pcase-dolist (`(,cname ,args ,doc) constrs)
3001 (let* ((anames (cl--arglist-args args)) 3001 (let* ((anames (cl--arglist-args args))
3002 (make (cl-mapcar (function (lambda (s d) (if (memq s anames) s d))) 3002 (make (cl-mapcar (lambda (s d) (if (memq s anames) s d))
3003 slots defaults)) 3003 slots defaults))
3004 ;; `cl-defsubst' is fundamentally broken: it substitutes 3004 ;; `cl-defsubst' is fundamentally broken: it substitutes
3005 ;; its arguments into the body's `sexp' much too naively 3005 ;; its arguments into the body's `sexp' much too naively
diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el
index 1bdb2a3d8ca..0e4135b253e 100644
--- a/lisp/emacs-lisp/debug.el
+++ b/lisp/emacs-lisp/debug.el
@@ -320,6 +320,17 @@ the debugger will not be entered."
320 (message "Error in debug printer: %S" err) 320 (message "Error in debug printer: %S" err)
321 (prin1 obj stream)))) 321 (prin1 obj stream))))
322 322
323(make-obsolete 'debugger-insert-backtrace
324 "use a `backtrace-mode' buffer or `backtrace-to-string'."
325 "Emacs 27.1")
326
327(defun debugger-insert-backtrace (frames do-xrefs)
328 "Format and insert the backtrace FRAMES at point.
329Make functions into cross-reference buttons if DO-XREFS is non-nil."
330 (insert (if do-xrefs
331 (backtrace--to-string frames)
332 (backtrace-to-string frames))))
333
323(defun debugger-setup-buffer (args) 334(defun debugger-setup-buffer (args)
324 "Initialize the `*Backtrace*' buffer for entry to the debugger. 335 "Initialize the `*Backtrace*' buffer for entry to the debugger.
325That buffer should be current already and in debugger-mode." 336That buffer should be current already and in debugger-mode."
@@ -527,6 +538,9 @@ The environment used is the one when entering the activation frame at point."
527 (let ((str (eval-expression-print-format val))) 538 (let ((str (eval-expression-print-format val)))
528 (if str (princ str t)))))))) 539 (if str (princ str t))))))))
529 540
541(define-obsolete-function-alias 'debugger-toggle-locals
542 'backtrace-toggle-locals "28.1")
543
530 544
531(defvar debugger-mode-map 545(defvar debugger-mode-map
532 (let ((map (make-keymap))) 546 (let ((map (make-keymap)))
@@ -621,6 +635,9 @@ Complete list of commands:
621 (buffer-substring (line-beginning-position 0) 635 (buffer-substring (line-beginning-position 0)
622 (line-end-position 0))))) 636 (line-end-position 0)))))
623 637
638(define-obsolete-function-alias 'debug-help-follow
639 'backtrace-help-follow-symbol "28.1")
640
624 641
625;; When you change this, you may also need to change the number of 642;; When you change this, you may also need to change the number of
626;; frames that the debugger skips. 643;; frames that the debugger skips.
diff --git a/lisp/emacs-lisp/eieio-base.el b/lisp/emacs-lisp/eieio-base.el
index 39ad30afc5a..a484c2ff382 100644
--- a/lisp/emacs-lisp/eieio-base.el
+++ b/lisp/emacs-lisp/eieio-base.el
@@ -201,7 +201,7 @@ This is used with the `object-write' method.")
201 "Saving this object should make backup files. 201 "Saving this object should make backup files.
202Setting to nil will mean no backups are made.")) 202Setting to nil will mean no backups are made."))
203 "This special class enables persistence through save files 203 "This special class enables persistence through save files
204Use the `object-save' method to write this object to disk. The save 204Use the `object-write' method to write this object to disk. The save
205format is Emacs Lisp code which calls the constructor for the saved 205format is Emacs Lisp code which calls the constructor for the saved
206object. For this reason, only slots which do not have an `:initarg' 206object. For this reason, only slots which do not have an `:initarg'
207specified will not be saved." 207specified will not be saved."
diff --git a/lisp/emacs-lisp/ert.el b/lisp/emacs-lisp/ert.el
index 3c347c0b199..ebb27e8a62c 100644
--- a/lisp/emacs-lisp/ert.el
+++ b/lisp/emacs-lisp/ert.el
@@ -736,7 +736,7 @@ run. ARGS are the arguments to `debugger'."
736 ;; This means we have to limit `print-level' and 736 ;; This means we have to limit `print-level' and
737 ;; `print-length' when printing result objects. That 737 ;; `print-length' when printing result objects. That
738 ;; might not be worth while when we can also use 738 ;; might not be worth while when we can also use
739 ;; `ert-results-rerun-test-debugging-errors-at-point', 739 ;; `ert-results-rerun-test-at-point-debugging-errors',
740 ;; (i.e., when running interactively) but having the 740 ;; (i.e., when running interactively) but having the
741 ;; backtrace ready for printing is important for batch 741 ;; backtrace ready for printing is important for batch
742 ;; use. 742 ;; use.
@@ -958,7 +958,7 @@ Selectors that do not, such as (member ...), just return the
958set implied by them without checking whether it is really 958set implied by them without checking whether it is really
959contained in UNIVERSE." 959contained in UNIVERSE."
960 ;; This code needs to match the cases in 960 ;; This code needs to match the cases in
961 ;; `ert-insert-human-readable-selector'. 961 ;; `ert--insert-human-readable-selector'.
962 (pcase-exhaustive selector 962 (pcase-exhaustive selector
963 ('nil nil) 963 ('nil nil)
964 ('t (pcase-exhaustive universe 964 ('t (pcase-exhaustive universe
diff --git a/lisp/emacs-lisp/generic.el b/lisp/emacs-lisp/generic.el
index a9328a69036..3bc6d021dc8 100644
--- a/lisp/emacs-lisp/generic.el
+++ b/lisp/emacs-lisp/generic.el
@@ -117,7 +117,7 @@ instead (which see).")
117 "Create a new generic mode MODE. 117 "Create a new generic mode MODE.
118 118
119A \"generic\" mode is a simple major mode with basic support for 119A \"generic\" mode is a simple major mode with basic support for
120comment syntax and Font Lock mode, but otherwise do not have a 120comment syntax and Font Lock mode, but otherwise does not have
121any special keystrokes or functionality available. 121any special keystrokes or functionality available.
122 122
123MODE is the name of the command for the generic mode; don't quote it. 123MODE is the name of the command for the generic mode; don't quote it.
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index 81e1400d222..ac1396f88df 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -1013,7 +1013,6 @@ untar into a directory named DIR; otherwise, signal an error."
1013 (write-region (autoload-rubric file "package" nil) nil file nil 'silent)) 1013 (write-region (autoload-rubric file "package" nil) nil file nil 'silent))
1014 file) 1014 file)
1015 1015
1016(defvar generated-autoload-file)
1017(defvar autoload-timestamps) 1016(defvar autoload-timestamps)
1018(defvar version-control) 1017(defvar version-control)
1019 1018
@@ -1021,14 +1020,14 @@ untar into a directory named DIR; otherwise, signal an error."
1021 "Generate autoloads in PKG-DIR for package named NAME." 1020 "Generate autoloads in PKG-DIR for package named NAME."
1022 (let* ((auto-name (format "%s-autoloads.el" name)) 1021 (let* ((auto-name (format "%s-autoloads.el" name))
1023 ;;(ignore-name (concat name "-pkg.el")) 1022 ;;(ignore-name (concat name "-pkg.el"))
1024 (generated-autoload-file (expand-file-name auto-name pkg-dir)) 1023 (output-file (expand-file-name auto-name pkg-dir))
1025 ;; We don't need 'em, and this makes the output reproducible. 1024 ;; We don't need 'em, and this makes the output reproducible.
1026 (autoload-timestamps nil) 1025 (autoload-timestamps nil)
1027 (backup-inhibited t) 1026 (backup-inhibited t)
1028 (version-control 'never)) 1027 (version-control 'never))
1029 (package-autoload-ensure-default-file generated-autoload-file) 1028 (package-autoload-ensure-default-file output-file)
1030 (update-directory-autoloads pkg-dir) 1029 (make-directory-autoloads pkg-dir output-file)
1031 (let ((buf (find-buffer-visiting generated-autoload-file))) 1030 (let ((buf (find-buffer-visiting output-file)))
1032 (when buf (kill-buffer buf))) 1031 (when buf (kill-buffer buf)))
1033 auto-name)) 1032 auto-name))
1034 1033
@@ -3623,7 +3622,7 @@ This is used for `tabulated-list-format' in `package-menu-mode'."
3623 (string< a b)))) 3622 (string< a b))))
3624 3623
3625(defun package-menu--populate-new-package-list () 3624(defun package-menu--populate-new-package-list ()
3626 "Decide which packages are new in `package-archives-contents'. 3625 "Decide which packages are new in `package-archive-contents'.
3627Store this list in `package-menu--new-package-list'." 3626Store this list in `package-menu--new-package-list'."
3628 ;; Find which packages are new. 3627 ;; Find which packages are new.
3629 (when package-menu--old-archive-contents 3628 (when package-menu--old-archive-contents
diff --git a/lisp/emacs-lisp/re-builder.el b/lisp/emacs-lisp/re-builder.el
index fbcd7b8fb8c..78ae3a8c1e5 100644
--- a/lisp/emacs-lisp/re-builder.el
+++ b/lisp/emacs-lisp/re-builder.el
@@ -301,7 +301,7 @@ Except for Lisp syntax this is the same as `reb-regexp'.")
301 "Keymap used by the RE Builder for the subexpression mode.") 301 "Keymap used by the RE Builder for the subexpression mode.")
302 302
303(defun reb-mode-common () 303(defun reb-mode-common ()
304 "Setup functions common to functions `reb-mode' and `reb-mode-lisp'." 304 "Setup functions common to functions `reb-mode' and `reb-lisp-mode'."
305 305
306 (setq reb-mode-string "" 306 (setq reb-mode-string ""
307 reb-valid-string "" 307 reb-valid-string ""
@@ -513,7 +513,7 @@ If SUBEXP is non-nil mark only the corresponding sub-expressions."
513 (reb-update-overlays subexp)) 513 (reb-update-overlays subexp))
514 514
515(defun reb-auto-update (_beg _end _lenold &optional force) 515(defun reb-auto-update (_beg _end _lenold &optional force)
516 "Called from `after-update-functions' to update the display. 516 "Called from `after-change-functions' to update the display.
517BEG, END and LENOLD are passed in from the hook. 517BEG, END and LENOLD are passed in from the hook.
518An actual update is only done if the regexp has changed or if the 518An actual update is only done if the regexp has changed or if the
519optional fourth argument FORCE is non-nil." 519optional fourth argument FORCE is non-nil."
diff --git a/lisp/emulation/cua-base.el b/lisp/emulation/cua-base.el
index c4dcb76446e..926305e6077 100644
--- a/lisp/emulation/cua-base.el
+++ b/lisp/emulation/cua-base.el
@@ -1379,9 +1379,10 @@ the prefix fallback behavior."
1379 1379
1380 (cond 1380 (cond
1381 (cua-mode 1381 (cua-mode
1382 (setq cua--saved-state 1382 (unless cua--saved-state
1383 (list 1383 (setq cua--saved-state
1384 (and (boundp 'delete-selection-mode) delete-selection-mode))) 1384 (list
1385 (and (boundp 'delete-selection-mode) delete-selection-mode))))
1385 (if cua-delete-selection 1386 (if cua-delete-selection
1386 (delete-selection-mode 1) 1387 (delete-selection-mode 1)
1387 (if (and (boundp 'delete-selection-mode) delete-selection-mode) 1388 (if (and (boundp 'delete-selection-mode) delete-selection-mode)
diff --git a/lisp/emulation/cua-rect.el b/lisp/emulation/cua-rect.el
index d2c6dd06b6c..9c3251e0e6f 100644
--- a/lisp/emulation/cua-rect.el
+++ b/lisp/emulation/cua-rect.el
@@ -735,7 +735,7 @@ If command is repeated at same position, delete the rectangle."
735 (setq cua--last-killed-rectangle (cons (and kill-ring (car kill-ring)) killed-rectangle)) 735 (setq cua--last-killed-rectangle (cons (and kill-ring (car kill-ring)) killed-rectangle))
736 (if ring 736 (if ring
737 (kill-new (mapconcat 737 (kill-new (mapconcat
738 (function (lambda (row) (concat row "\n"))) 738 (lambda (row) (concat row "\n"))
739 killed-rectangle ""))))) 739 killed-rectangle "")))))
740 740
741(defun cua--activate-rectangle () 741(defun cua--activate-rectangle ()
@@ -1071,7 +1071,7 @@ The text previously in the rectangle is overwritten by the blanks."
1071 (cua--copy-rectangle-to-global-mark t)) 1071 (cua--copy-rectangle-to-global-mark t))
1072 (let* ((rect (cua--extract-rectangle)) 1072 (let* ((rect (cua--extract-rectangle))
1073 (text (mapconcat 1073 (text (mapconcat
1074 (function (lambda (row) (concat row "\n"))) 1074 (lambda (row) (concat row "\n"))
1075 rect ""))) 1075 rect "")))
1076 (setq arg (cua--prefix-arg arg)) 1076 (setq arg (cua--prefix-arg arg))
1077 (if cua--register 1077 (if cua--register
diff --git a/lisp/epa-mail.el b/lisp/epa-mail.el
index 6e6c0a498d2..3ad4da16c89 100644
--- a/lisp/epa-mail.el
+++ b/lisp/epa-mail.el
@@ -49,6 +49,13 @@
49(defvar epa-mail-mode-on-hook nil) 49(defvar epa-mail-mode-on-hook nil)
50(defvar epa-mail-mode-off-hook nil) 50(defvar epa-mail-mode-off-hook nil)
51 51
52(defcustom epa-mail-offer-skip t
53 "If non-nil, when a recipient has no key, ask whether to skip it.
54Otherwise, signal an error."
55 :type 'boolean
56 :version "28.1"
57 :group 'epa-mail)
58
52;;;###autoload 59;;;###autoload
53(define-minor-mode epa-mail-mode 60(define-minor-mode epa-mail-mode
54 "A minor-mode for composing encrypted/clearsigned mails." 61 "A minor-mode for composing encrypted/clearsigned mails."
@@ -218,10 +225,12 @@ If no one is selected, symmetric encryption will be performed. "
218 recipient)) 225 recipient))
219 'encrypt))) 226 'encrypt)))
220 (unless (or recipient-key 227 (unless (or recipient-key
221 (y-or-n-p 228 (and epa-mail-offer-skip
222 (format 229 (y-or-n-p
223 "No public key for %s; skip it? " 230 (format
224 recipient))) 231 "No public key for %s; skip it? "
232 recipient)))
233 )
225 (error "No public key for %s" recipient)) 234 (error "No public key for %s" recipient))
226 (if recipient-key (list recipient-key)))) 235 (if recipient-key (list recipient-key))))
227 default-recipients))))) 236 default-recipients)))))
diff --git a/lisp/epa.el b/lisp/epa.el
index 609ac5d1917..25e055c201f 100644
--- a/lisp/epa.el
+++ b/lisp/epa.el
@@ -435,33 +435,34 @@ q trust status questionable. - trust status unspecified.
435 (unless (and epa-keys-buffer 435 (unless (and epa-keys-buffer
436 (buffer-live-p epa-keys-buffer)) 436 (buffer-live-p epa-keys-buffer))
437 (setq epa-keys-buffer (generate-new-buffer "*Keys*"))) 437 (setq epa-keys-buffer (generate-new-buffer "*Keys*")))
438 (with-current-buffer epa-keys-buffer 438 (save-window-excursion
439 (epa-key-list-mode) 439 (with-current-buffer epa-keys-buffer
440 ;; C-c C-c is the usual way to finish the selection (bug#11159). 440 (epa-key-list-mode)
441 (define-key (current-local-map) "\C-c\C-c" 'exit-recursive-edit) 441 ;; C-c C-c is the usual way to finish the selection (bug#11159).
442 (let ((inhibit-read-only t) 442 (define-key (current-local-map) "\C-c\C-c" 'exit-recursive-edit)
443 buffer-read-only) 443 (let ((inhibit-read-only t)
444 (erase-buffer) 444 buffer-read-only)
445 (insert prompt "\n" 445 (erase-buffer)
446 (substitute-command-keys "\ 446 (insert prompt "\n"
447 (substitute-command-keys "\
447- `\\[epa-mark-key]' to mark a key on the line 448- `\\[epa-mark-key]' to mark a key on the line
448- `\\[epa-unmark-key]' to unmark a key on the line\n")) 449- `\\[epa-unmark-key]' to unmark a key on the line\n"))
449 (insert-button "[Cancel]" 450 (insert-button "[Cancel]"
450 'action (lambda (_button) (abort-recursive-edit))) 451 'action (lambda (_button) (abort-recursive-edit)))
451 (insert " ") 452 (insert " ")
452 (insert-button "[OK]" 453 (insert-button "[OK]"
453 'action (lambda (_button) (exit-recursive-edit))) 454 'action (lambda (_button) (exit-recursive-edit)))
454 (insert "\n\n") 455 (insert "\n\n")
455 (epa--insert-keys keys) 456 (epa--insert-keys keys)
456 (setq epa-exit-buffer-function #'abort-recursive-edit) 457 (setq epa-exit-buffer-function #'abort-recursive-edit)
457 (goto-char (point-min)) 458 (goto-char (point-min))
458 (let ((display-buffer-mark-dedicated 'soft)) 459 (let ((display-buffer-mark-dedicated 'soft))
459 (pop-to-buffer (current-buffer)))) 460 (pop-to-buffer (current-buffer))))
460 (unwind-protect 461 (unwind-protect
461 (progn 462 (progn
462 (recursive-edit) 463 (recursive-edit)
463 (epa--marked-keys)) 464 (epa--marked-keys))
464 (kill-buffer epa-keys-buffer)))) 465 (kill-buffer epa-keys-buffer)))))
465 466
466;;;###autoload 467;;;###autoload
467(defun epa-select-keys (context prompt &optional names secret) 468(defun epa-select-keys (context prompt &optional names secret)
diff --git a/lisp/erc/ChangeLog.1 b/lisp/erc/ChangeLog.1
index ef813bd0325..90bd8bd09ee 100644
--- a/lisp/erc/ChangeLog.1
+++ b/lisp/erc/ChangeLog.1
@@ -7296,7 +7296,7 @@
7296 again. 7296 again.
7297 (erc): Require cl for delete-if. 7297 (erc): Require cl for delete-if.
7298 (erc-button-remove-old-buttons): Rewrote using delete-if to 7298 (erc-button-remove-old-buttons): Rewrote using delete-if to
7299 prevent excesive consing. Having the marker list is still ugly, 7299 prevent excessive consing. Having the marker list is still ugly,
7300 so another solution needs to be found. 7300 so another solution needs to be found.
7301 7301
73022003-01-17 Jorgen Schaefer <forcer@users.sourceforge.net> 73022003-01-17 Jorgen Schaefer <forcer@users.sourceforge.net>
@@ -10260,7 +10260,7 @@
10260 Upcased the command defuns (erc-cmd-join is now erc-cmd-JOIN) 10260 Upcased the command defuns (erc-cmd-join is now erc-cmd-JOIN)
10261 Fixed erc-complete to not require erc-command-table. 10261 Fixed erc-complete to not require erc-command-table.
10262 Implemented erc-cmd-HELP 10262 Implemented erc-cmd-HELP
10263 (You have to try that, its tooo coool!) 10263 (You have to try that, its too coool!)
10264 e.g. /help auto-q 10264 e.g. /help auto-q
10265 fixed autoloads for erc-add-pal and so on to be interactive. 10265 fixed autoloads for erc-add-pal and so on to be interactive.
10266 10266
@@ -11242,7 +11242,7 @@
112422001-10-29 Mario Lang <mlang@delysid.org> 112422001-10-29 Mario Lang <mlang@delysid.org>
11243 11243
11244 * erc.el: 11244 * erc.el:
11245 Imenu fixed somehow, added IRC services interactive function for indentify to NickServ. Read the diff 11245 Imenu fixed somehow, added IRC services interactive function for identify to NickServ. Read the diff
11246 11246
112472001-10-26 Gergely Nagy <algernon@debian.org> 112472001-10-26 Gergely Nagy <algernon@debian.org>
11248 11248
@@ -11316,7 +11316,7 @@
11316 11316
11317 * erc-speak.el: 11317 * erc-speak.el:
11318 * Very important fix! Now erc-speak is really complete. Messages don't get cut anymore. Be sure to use auditory icons, 11318 * Very important fix! Now erc-speak is really complete. Messages don't get cut anymore. Be sure to use auditory icons,
11319 it's reallllly cool now!!! 11319 it's really cool now!!!
11320 11320
11321 * erc-speak.el: *** empty log message *** 11321 * erc-speak.el: *** empty log message ***
11322 11322
diff --git a/lisp/erc/erc-button.el b/lisp/erc/erc-button.el
index 5e6f7c8d107..b799b2427c6 100644
--- a/lisp/erc/erc-button.el
+++ b/lisp/erc/erc-button.el
@@ -198,12 +198,12 @@ PAR is a number of a regexp grouping whose text will be passed to
198 :inline t 198 :inline t
199 (integer :tag "Regexp section number"))))) 199 (integer :tag "Regexp section number")))))
200 200
201(defcustom erc-emacswiki-url "http://www.emacswiki.org/cgi-bin/wiki.pl?" 201(defcustom erc-emacswiki-url "https://www.emacswiki.org/cgi-bin/wiki.pl?"
202 "URL of the EmacsWiki Homepage." 202 "URL of the EmacsWiki Homepage."
203 :group 'erc-button 203 :group 'erc-button
204 :type 'string) 204 :type 'string)
205 205
206(defcustom erc-emacswiki-lisp-url "http://www.emacswiki.org/elisp/" 206(defcustom erc-emacswiki-lisp-url "https://www.emacswiki.org/elisp/"
207 "URL of the EmacsWiki ELisp area." 207 "URL of the EmacsWiki ELisp area."
208 :group 'erc-button 208 :group 'erc-button
209 :type 'string) 209 :type 'string)
diff --git a/lisp/erc/erc-track.el b/lisp/erc/erc-track.el
index 3398c8b9d0c..60f0cfa942f 100644
--- a/lisp/erc/erc-track.el
+++ b/lisp/erc/erc-track.el
@@ -860,7 +860,7 @@ is in `erc-mode'."
860 860
861(defvar erc-track-last-non-erc-buffer nil 861(defvar erc-track-last-non-erc-buffer nil
862 "Stores the name of the last buffer you were in before activating 862 "Stores the name of the last buffer you were in before activating
863`erc-track-switch-buffers'.") 863`erc-track-switch-buffer'.")
864 864
865(defun erc-track-sort-by-activest () 865(defun erc-track-sort-by-activest ()
866 "Sort erc-modified-channels-alist by activity. 866 "Sort erc-modified-channels-alist by activity.
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index e7e43f87347..1d5506e2816 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -5039,7 +5039,7 @@ information if it is not already present in the user or channel
5039lists. 5039lists.
5040 5040
5041If, and only if, changes are made, or the user is added, 5041If, and only if, changes are made, or the user is added,
5042`erc-channel-members-updated-hook' is run, and t is returned. 5042`erc-channel-members-changed-hook' is run, and t is returned.
5043 5043
5044See also: `erc-update-user' and `erc-update-channel-member'." 5044See also: `erc-update-user' and `erc-update-channel-member'."
5045 (let* (changed user-changed 5045 (let* (changed user-changed
@@ -6072,7 +6072,7 @@ Sets the buffer local variables:
6072- `erc-session-connector' 6072- `erc-session-connector'
6073- `erc-session-server' 6073- `erc-session-server'
6074- `erc-session-port' 6074- `erc-session-port'
6075- `erc-session-full-name' 6075- `erc-session-user-full-name'
6076- `erc-server-current-nick'" 6076- `erc-server-current-nick'"
6077 (setq erc-session-connector erc-server-connect-function 6077 (setq erc-session-connector erc-server-connect-function
6078 erc-session-server (erc-compute-server server) 6078 erc-session-server (erc-compute-server server)
diff --git a/lisp/eshell/esh-util.el b/lisp/eshell/esh-util.el
index 0122f9be488..9268921fadc 100644
--- a/lisp/eshell/esh-util.el
+++ b/lisp/eshell/esh-util.el
@@ -534,7 +534,7 @@ list."
534 string))) 534 string)))
535 535
536(defun eshell-directory-files-and-attributes (dir &optional full match nosort id-format) 536(defun eshell-directory-files-and-attributes (dir &optional full match nosort id-format)
537 "Make sure to use the handler for `directory-file-and-attributes'." 537 "Make sure to use the handler for `directory-files-and-attributes'."
538 (let* ((dir (expand-file-name dir))) 538 (let* ((dir (expand-file-name dir)))
539 (if (string-equal (file-remote-p dir 'method) "ftp") 539 (if (string-equal (file-remote-p dir 'method) "ftp")
540 (let ((files (directory-files dir full match nosort))) 540 (let ((files (directory-files dir full match nosort)))
diff --git a/lisp/eshell/esh-var.el b/lisp/eshell/esh-var.el
index 96838d41327..7388279f157 100644
--- a/lisp/eshell/esh-var.el
+++ b/lisp/eshell/esh-var.el
@@ -463,8 +463,8 @@ Possible options are:
463 (eshell-as-subcommand ,(eshell-parse-command cmd)) 463 (eshell-as-subcommand ,(eshell-parse-command cmd))
464 (ignore 464 (ignore
465 (nconc eshell-this-command-hook 465 (nconc eshell-this-command-hook
466 (list (function (lambda () 466 (list (lambda ()
467 (delete-file ,temp)))))) 467 (delete-file ,temp)))))
468 (quote ,temp))) 468 (quote ,temp)))
469 (goto-char (1+ end))))))) 469 (goto-char (1+ end)))))))
470 ((eq (char-after) ?\() 470 ((eq (char-after) ?\()
diff --git a/lisp/faces.el b/lisp/faces.el
index 7c23e58fd9d..5b7e0a5aee2 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -1770,7 +1770,7 @@ If FRAME is nil, that stands for the selected frame."
1770(defun defined-colors-with-face-attributes (&optional frame) 1770(defun defined-colors-with-face-attributes (&optional frame)
1771 "Return a list of colors supported for a particular frame. 1771 "Return a list of colors supported for a particular frame.
1772See `defined-colors' for arguments and return value. In contrast 1772See `defined-colors' for arguments and return value. In contrast
1773to `define-colors' the elements of the returned list are color 1773to `defined-colors' the elements of the returned list are color
1774strings with text properties, that make the color names render 1774strings with text properties, that make the color names render
1775with the color they represent as background color." 1775with the color they represent as background color."
1776 (mapcar 1776 (mapcar
diff --git a/lisp/ffap.el b/lisp/ffap.el
index a1d80f545c2..ccba2911445 100644
--- a/lisp/ffap.el
+++ b/lisp/ffap.el
@@ -172,7 +172,7 @@ well-formed, such as \"user@host\" or \"<user@host>\"."
172 :version "25.2") ; nil -> t 172 :version "25.2") ; nil -> t
173 173
174(defcustom ffap-ftp-default-user "anonymous" 174(defcustom ffap-ftp-default-user "anonymous"
175 "User name in FTP file names generated by `ffap-host-to-path'. 175 "User name in FTP file names generated by `ffap-host-to-filename'.
176Note this name may be omitted if it equals the default 176Note this name may be omitted if it equals the default
177\(either `efs-default-user' or `ange-ftp-default-user')." 177\(either `efs-default-user' or `ange-ftp-default-user')."
178 :type 'string 178 :type 'string
diff --git a/lisp/filecache.el b/lisp/filecache.el
index 113d28cf75e..00c53138032 100644
--- a/lisp/filecache.el
+++ b/lisp/filecache.el
@@ -46,7 +46,7 @@
46;; * `file-cache-add-file-list': Adds a list of files to the cache 46;; * `file-cache-add-file-list': Adds a list of files to the cache
47;; 47;;
48;; The following functions use the regular expressions in 48;; The following functions use the regular expressions in
49;; `file-cache-delete-regexps' to eliminate unwanted files: 49;; `file-cache-filter-regexps' to eliminate unwanted files:
50;; 50;;
51;; * `file-cache-add-directory': Adds the files in a directory to the 51;; * `file-cache-add-directory': Adds the files in a directory to the
52;; cache. You can also specify a regular expression to match the files 52;; cache. You can also specify a regular expression to match the files
diff --git a/lisp/files.el b/lisp/files.el
index dc9633f92bd..833a188b03b 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -1395,7 +1395,7 @@ it means chase no more than that many links and then stop."
1395 newname)) 1395 newname))
1396 1396
1397;; A handy function to display file sizes in human-readable form. 1397;; A handy function to display file sizes in human-readable form.
1398;; See http://en.wikipedia.org/wiki/Kibibyte for the reference. 1398;; See https://en.wikipedia.org/wiki/Kibibyte for the reference.
1399(defun file-size-human-readable (file-size &optional flavor space unit) 1399(defun file-size-human-readable (file-size &optional flavor space unit)
1400 "Produce a string showing FILE-SIZE in human-readable form. 1400 "Produce a string showing FILE-SIZE in human-readable form.
1401 1401
@@ -7779,7 +7779,7 @@ Otherwise, trash FILENAME using the freedesktop.org conventions,
7779 (let (delete-by-moving-to-trash) 7779 (let (delete-by-moving-to-trash)
7780 (rename-file fn new-fn)))) 7780 (rename-file fn new-fn))))
7781 ;; Otherwise, use the freedesktop.org method, as specified at 7781 ;; Otherwise, use the freedesktop.org method, as specified at
7782 ;; http://freedesktop.org/wiki/Specifications/trash-spec 7782 ;; https://freedesktop.org/wiki/Specifications/trash-spec
7783 (t 7783 (t
7784 (let* ((xdg-data-dir 7784 (let* ((xdg-data-dir
7785 (directory-file-name 7785 (directory-file-name
diff --git a/lisp/filesets.el b/lisp/filesets.el
index 1ec0d24b539..4f23faa2203 100644
--- a/lisp/filesets.el
+++ b/lisp/filesets.el
@@ -52,7 +52,7 @@
52 52
53;; BTW, if you close a fileset, files, which have been changed, will 53;; BTW, if you close a fileset, files, which have been changed, will
54;; be silently saved. Change this behavior by setting 54;; be silently saved. Change this behavior by setting
55;; `filesets-save-buffer-fn'. 55;; `filesets-save-buffer-function'.
56 56
57;;; Supported modes for inclusion groups (`filesets-ingroup-patterns'): 57;;; Supported modes for inclusion groups (`filesets-ingroup-patterns'):
58;; - Elisp 58;; - Elisp
diff --git a/lisp/find-file.el b/lisp/find-file.el
index 7e0127da5f2..84d02cb4a26 100644
--- a/lisp/find-file.el
+++ b/lisp/find-file.el
@@ -109,8 +109,8 @@
109;; file. 109;; file.
110 110
111;; CREDITS: 111;; CREDITS:
112;; Many thanks go to TUSC Computer Systems Pty Ltd for providing an environ- 112;; Many thanks go to TUSC Computer Systems Pty Ltd for providing an
113;; ment that made the development of this package possible. 113;; environment that made the development of this package possible.
114;; 114;;
115;; Many thanks also go to all those who provided valuable feedback throughout 115;; Many thanks also go to all those who provided valuable feedback throughout
116;; the development of this package: 116;; the development of this package:
diff --git a/lisp/follow.el b/lisp/follow.el
index d499da7a8dc..f1d823d9f03 100644
--- a/lisp/follow.el
+++ b/lisp/follow.el
@@ -113,7 +113,7 @@
113;; whatever you would like to do. These functions are then added to 113;; whatever you would like to do. These functions are then added to
114;; a hook. 114;; a hook.
115;; 115;;
116;; The keymap `follow-key-map' contains key bindings activated by 116;; The keymap `follow-mode-map' contains key bindings activated by
117;; `follow-mode'. 117;; `follow-mode'.
118;; 118;;
119;; Example: 119;; Example:
@@ -356,7 +356,7 @@ property `follow-mode-use-cache' to non-nil.")
356Used by `follow-window-size-change'.") 356Used by `follow-window-size-change'.")
357 357
358(defvar follow-windows-start-end-cache nil 358(defvar follow-windows-start-end-cache nil
359 "Cache used by `follow-window-start-end'.") 359 "Cache used by `follow-window-start' and `follow-window-end'.")
360 360
361(defvar follow-fixed-window nil 361(defvar follow-fixed-window nil
362 "If non-nil, the current window must not be scrolled. 362 "If non-nil, the current window must not be scrolled.
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index c633877e640..e708e69bd59 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -822,7 +822,7 @@ happens, so the major mode can be corrected."
822 ;; `font-lock-keywords-alist'. 822 ;; `font-lock-keywords-alist'.
823 (when top-cell 823 (when top-cell
824 (dolist (keyword-list-how-pair (cdr top-cell)) 824 (dolist (keyword-list-how-pair (cdr top-cell))
825 ;; `keywords-list-how-pair' is a cons with a list of 825 ;; `keyword-list-how-pair' is a cons with a list of
826 ;; keywords in the car top-cell and the original how 826 ;; keywords in the car top-cell and the original how
827 ;; argument in the cdr top-cell. 827 ;; argument in the cdr top-cell.
828 (setcar keyword-list-how-pair 828 (setcar keyword-list-how-pair
diff --git a/lisp/forms.el b/lisp/forms.el
index 83daabdcd6e..e9242ce4cb8 100644
--- a/lisp/forms.el
+++ b/lisp/forms.el
@@ -286,7 +286,7 @@
286;; record. 286;; record.
287;; 287;;
288;; `write-file-functions' is defined to save the actual data file 288;; `write-file-functions' is defined to save the actual data file
289;; instead of the buffer data, `revert-file-hook' is defined to 289;; instead of the buffer data, `revert-buffer-function' is defined to
290;; revert a forms to original. 290;; revert a forms to original.
291 291
292;;; Code: 292;;; Code:
diff --git a/lisp/gnus/ChangeLog.2 b/lisp/gnus/ChangeLog.2
index 2f5dd22930e..533ceb84bf1 100644
--- a/lisp/gnus/ChangeLog.2
+++ b/lisp/gnus/ChangeLog.2
@@ -3378,7 +3378,7 @@
3378 3378
3379 * gnus-async.el (gnus-asynchronous): Move defcustom of 3379 * gnus-async.el (gnus-asynchronous): Move defcustom of
3380 gnus-asynchronous away from defgroup of gnus-asynchronous. 3380 gnus-asynchronous away from defgroup of gnus-asynchronous.
3381 This seems to fix an intermittant error in which loading gnus-async 3381 This seems to fix an intermittent error in which loading gnus-async
3382 fails to define gnus-asynchronous (the variable). 3382 fails to define gnus-asynchronous (the variable).
3383 3383
3384 * gnus-sum.el: Concur with Steve Young, 5th argument to 'load' is 3384 * gnus-sum.el: Concur with Steve Young, 5th argument to 'load' is
@@ -7096,7 +7096,7 @@
7096 * nnimap.el (nnimap-callback-callback-function): 7096 * nnimap.el (nnimap-callback-callback-function):
7097 (nnimap-callback-buffer): Remove, these cannot be global but must 7097 (nnimap-callback-buffer): Remove, these cannot be global but must
7098 be embedded into the callback. 7098 be embedded into the callback.
7099 (nnimap-make-callback): New. Embedd article number, callback and 7099 (nnimap-make-callback): New. Embed article number, callback and
7100 buffer in function. 7100 buffer in function.
7101 (nnimap-callback, nnimap-request-article-part): Update. 7101 (nnimap-callback, nnimap-request-article-part): Update.
7102 7102
@@ -8031,7 +8031,7 @@
8031 (message-xpost-fup2-header, message-xpost-insert-note) 8031 (message-xpost-fup2-header, message-xpost-insert-note)
8032 (message-xpost-fup2, message-reduce-to-to-cc): New functions 8032 (message-xpost-fup2, message-reduce-to-to-cc): New functions
8033 adopted from message-utils.el. Add functions to the keymap, mode 8033 adopted from message-utils.el. Add functions to the keymap, mode
8034 describtion and menu. 8034 description and menu.
8035 (message-change-subject, message-xpost-fup2): Signal error if 8035 (message-change-subject, message-xpost-fup2): Signal error if
8036 current header is empty. 8036 current header is empty.
8037 (message-xpost-insert-note): Change insert position. 8037 (message-xpost-insert-note): Change insert position.
@@ -8612,7 +8612,7 @@
86122002-06-11 Simon Josefsson <jas@extundo.com> 86122002-06-11 Simon Josefsson <jas@extundo.com>
8613 8613
8614 * gnus-int.el (gnus-request-move-article): Agent expire article if 8614 * gnus-int.el (gnus-request-move-article): Agent expire article if
8615 successfuly moved. 8615 successfully moved.
8616 8616
86172002-06-11 Niklas Morberg <niklas.morberg@axis.com> 86172002-06-11 Niklas Morberg <niklas.morberg@axis.com>
8618 8618
@@ -9073,7 +9073,7 @@
9073 9073
90742002-04-13 Josh Huber <huber@alum.wpi.edu> 90742002-04-13 Josh Huber <huber@alum.wpi.edu>
9075 9075
9076 * mml-sec.el (mml-secure-message): Change to support arbritrary 9076 * mml-sec.el (mml-secure-message): Change to support arbitrary
9077 modes. 9077 modes.
9078 * mml-sec.el (mml-secure-message-encrypt-(smime|pgp|pgpmime)): 9078 * mml-sec.el (mml-secure-message-encrypt-(smime|pgp|pgpmime)):
9079 changed to support "signencrypt" mode. 9079 changed to support "signencrypt" mode.
diff --git a/lisp/gnus/ChangeLog.3 b/lisp/gnus/ChangeLog.3
index 70eaeb510ac..582c9bd10b7 100644
--- a/lisp/gnus/ChangeLog.3
+++ b/lisp/gnus/ChangeLog.3
@@ -170,7 +170,7 @@
1702015-02-09 Lars Ingebrigtsen <larsi@gnus.org> 1702015-02-09 Lars Ingebrigtsen <larsi@gnus.org>
171 171
172 * mm-decode.el (mm-convert-shr-links): Don't overwrite the faces from 172 * mm-decode.el (mm-convert-shr-links): Don't overwrite the faces from
173 shr, beacause that breaks folding. 173 shr, because that breaks folding.
174 (mm-shr): Don't shorten the width when using fonts. 174 (mm-shr): Don't shorten the width when using fonts.
175 175
1762015-02-05 Teodor Zlatanov <tzz@lifelogs.com> 1762015-02-05 Teodor Zlatanov <tzz@lifelogs.com>
@@ -596,7 +596,7 @@
596 596
5972014-06-05 Katsumi Yamaoka <yamaoka@jpl.org> 5972014-06-05 Katsumi Yamaoka <yamaoka@jpl.org>
598 598
599 * gnus-art.el (gnus-article-edit-part): Don't modifiy markers. 599 * gnus-art.el (gnus-article-edit-part): Don't modify markers.
600 (gnus-article-read-summary-keys): 600 (gnus-article-read-summary-keys):
601 Don't bug out when there is no article in the summary buffer. 601 Don't bug out when there is no article in the summary buffer.
602 (gnus-mime-buttonize-attachments-in-header): 602 (gnus-mime-buttonize-attachments-in-header):
@@ -1318,7 +1318,7 @@
13182013-08-06 Jan Tatarik <jan.tatarik@gmail.com> 13182013-08-06 Jan Tatarik <jan.tatarik@gmail.com>
1319 1319
1320 * gnus-icalendar.el (gnus-icalendar-event-from-ical): Replace pcase 1320 * gnus-icalendar.el (gnus-icalendar-event-from-ical): Replace pcase
1321 with cond for backwards compatability. 1321 with cond for backwards compatibility.
1322 1322
13232013-08-06 Katsumi Yamaoka <yamaoka@jpl.org> 13232013-08-06 Katsumi Yamaoka <yamaoka@jpl.org>
1324 1324
@@ -2221,7 +2221,7 @@
2221 2221
22222013-04-04 Katsumi Yamaoka <yamaoka@jpl.org> 22222013-04-04 Katsumi Yamaoka <yamaoka@jpl.org>
2223 2223
2224 * mml.el (mml-minibuffer-read-description): Use `default' insted of 2224 * mml.el (mml-minibuffer-read-description): Use `default' instead of
2225 `initial-input' for the argument name. 2225 `initial-input' for the argument name.
2226 Suggested by Stefan Monnier <monnier@iro.umontreal.ca>. 2226 Suggested by Stefan Monnier <monnier@iro.umontreal.ca>.
2227 2227
@@ -5541,7 +5541,7 @@
5541 (registry-prune-hard): Use it. 5541 (registry-prune-hard): Use it.
5542 5542
5543 * gnus-registry.el (gnus-registry-fixup-registry): Set prune-factor to 5543 * gnus-registry.el (gnus-registry-fixup-registry): Set prune-factor to
5544 0.1 expicitly. 5544 0.1 explicitly.
5545 5545
55462011-05-13 Glenn Morris <rgm@gnu.org> 55462011-05-13 Glenn Morris <rgm@gnu.org>
5547 5547
@@ -8758,7 +8758,7 @@
8758 8758
8759 * shr.el (shr-generic): The text nodes should be text, not :text. 8759 * shr.el (shr-generic): The text nodes should be text, not :text.
8760 8760
8761 * nnir.el (nnir-search-engine): Ressurect variable, since it's used 8761 * nnir.el (nnir-search-engine): Resurrect variable, since it's used
8762 later in the file. 8762 later in the file.
8763 8763
87642010-10-30 Andrew Cohen <cohen@andy.bu.edu> 87642010-10-30 Andrew Cohen <cohen@andy.bu.edu>
@@ -9481,7 +9481,7 @@
9481 nil. 9481 nil.
9482 9482
9483 * gnus-start.el (gnus-get-unread-articles): Require gnus-agent before 9483 * gnus-start.el (gnus-get-unread-articles): Require gnus-agent before
9484 bidning gnus-agent variables. 9484 binding gnus-agent variables.
9485 9485
9486 * shr.el (shr-render-td): Use a cache for the table rendering function 9486 * shr.el (shr-render-td): Use a cache for the table rendering function
9487 to avoid getting an exponential rendering behavior in nested tables. 9487 to avoid getting an exponential rendering behavior in nested tables.
@@ -11849,7 +11849,7 @@
11849 11849
118502010-08-13 Teodor Zlatanov <tzz@lifelogs.com> 118502010-08-13 Teodor Zlatanov <tzz@lifelogs.com>
11851 11851
11852 Doc fixes and keep unknown groups (ammended for nunion bug fix). 11852 Doc fixes and keep unknown groups (amended for nunion bug fix).
11853 11853
11854 * gnus-sync.el: Fix docs. 11854 * gnus-sync.el: Fix docs.
11855 (gnus-sync-save): Keep unknown groups in `gnus-sync-newsrc-loader'. 11855 (gnus-sync-save): Keep unknown groups in `gnus-sync-newsrc-loader'.
@@ -18925,7 +18925,7 @@
18925 * message.el: Autoload gmm-image-load-path. 18925 * message.el: Autoload gmm-image-load-path.
18926 (message-tool-bar-retro): Prepend "gnus/" subdirectory to some 18926 (message-tool-bar-retro): Prepend "gnus/" subdirectory to some
18927 icon file names. Use old Emacs 21 "mail_send.xpm" icon for 18927 icon file names. Use old Emacs 21 "mail_send.xpm" icon for
18928 consitency. 18928 consistency.
18929 18929
18930 * gmm-utils.el (gmm-image-load-path): Also search in 18930 * gmm-utils.el (gmm-image-load-path): Also search in
18931 "../etc/images". Don't set gmm-image-load-path if we don't find 18931 "../etc/images". Don't set gmm-image-load-path if we don't find
@@ -19523,7 +19523,7 @@
19523 19523
19524 * nnml.el: Don't require gnus-bcklg. Autoload it. 19524 * nnml.el: Don't require gnus-bcklg. Autoload it.
19525 (nnml-use-compressed-files, nnml-save-mail): Support other 19525 (nnml-use-compressed-files, nnml-save-mail): Support other
19526 comression programs such as bzip2. 19526 compression programs such as bzip2.
19527 19527
195282005-12-17 Lars Magne Ingebrigtsen <larsi@gnus.org> 195282005-12-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
19529 19529
@@ -21227,7 +21227,7 @@
21227 (nntp-with-open-group): Allow debugging. 21227 (nntp-with-open-group): Allow debugging.
21228 21228
21229 * nnheader.el (mail-header-set-extra): Make into a function 21229 * nnheader.el (mail-header-set-extra): Make into a function
21230 because I just could't understand how to quote the list properly. 21230 because I just couldn't understand how to quote the list properly.
21231 21231
21232 * dns.el (query-dns-cached): New function. 21232 * dns.el (query-dns-cached): New function.
21233 21233
@@ -24966,7 +24966,7 @@
24966 functions as needing (default), or not needing, 24966 functions as needing (default), or not needing,
24967 gnus-convert-old-newsrc's "backup before upgrading warning". 24967 gnus-convert-old-newsrc's "backup before upgrading warning".
24968 (gnus-convert-converter-needs-prompt): Tests whether the user 24968 (gnus-convert-converter-needs-prompt): Tests whether the user
24969 should be protected from potentially irreversable changes by the 24969 should be protected from potentially irreversible changes by the
24970 function. 24970 function.
24971 24971
24972 * legacy-gnus-agent.el: New. Provides converters that are only 24972 * legacy-gnus-agent.el: New. Provides converters that are only
diff --git a/lisp/gnus/gnus-util.el b/lisp/gnus/gnus-util.el
index 0e15ebce6c6..684c535f143 100644
--- a/lisp/gnus/gnus-util.el
+++ b/lisp/gnus/gnus-util.el
@@ -1368,7 +1368,11 @@ CRLF (RFC 5321 SMTP)."
1368 ;; input (3.1, 3.3) 1368 ;; input (3.1, 3.3)
1369 ;; - if line-length is set, error on input exceeding the limit (3.1) 1369 ;; - if line-length is set, error on input exceeding the limit (3.1)
1370 ;; - reject characters outside base encoding (3.3, also section 12) 1370 ;; - reject characters outside base encoding (3.3, also section 12)
1371 (let ((splitstr (split-string str "[\n\r \t]+" t))) 1371 ;;
1372 ;; RFC 5322 section 2.2.3 consideration:
1373 ;; Because base 64-encoded strings can appear in long header fields, remove
1374 ;; folding whitespace while still observing the RFC 4648 decisions above.
1375 (let ((splitstr (split-string str "[ \t]*[\r\n]+[ \t]?" t)))
1372 (when (and reject-newlines (> (length splitstr) 1)) 1376 (when (and reject-newlines (> (length splitstr) 1))
1373 (error "Invalid Base64 string")) 1377 (error "Invalid Base64 string"))
1374 (dolist (substr splitstr) 1378 (dolist (substr splitstr)
@@ -1424,7 +1428,7 @@ SPEC is a predicate specifier that contains stuff like `or', `and',
1424(autoload 'ido-completing-read "ido") 1428(autoload 'ido-completing-read "ido")
1425(defun gnus-ido-completing-read (prompt collection &optional require-match 1429(defun gnus-ido-completing-read (prompt collection &optional require-match
1426 initial-input history def) 1430 initial-input history def)
1427 "Call `ido-completing-read-function'." 1431 "Call `ido-completing-read'."
1428 (ido-completing-read prompt collection nil require-match 1432 (ido-completing-read prompt collection nil require-match
1429 initial-input history def)) 1433 initial-input history def))
1430 1434
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index ef010d6e9c6..77856aeddec 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -5659,7 +5659,7 @@ The result is a fixnum."
5659 (mail-file-babyl-p filename)) 5659 (mail-file-babyl-p filename))
5660 ;; gnus-output-to-mail does the wrong thing with live, mbox 5660 ;; gnus-output-to-mail does the wrong thing with live, mbox
5661 ;; Rmail buffers in Emacs 23. 5661 ;; Rmail buffers in Emacs 23.
5662 ;; http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=597255 5662 ;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=597255
5663 (let ((buff (find-buffer-visiting filename))) 5663 (let ((buff (find-buffer-visiting filename)))
5664 (and buff (with-current-buffer buff 5664 (and buff (with-current-buffer buff
5665 (eq major-mode 'rmail-mode))))) 5665 (eq major-mode 'rmail-mode)))))
@@ -8100,7 +8100,7 @@ See `gmm-tool-bar-from-list' for the format of the list."
8100 (library image &optional path no-error)) 8100 (library image &optional path no-error))
8101 8101
8102(defun message-make-tool-bar (&optional force) 8102(defun message-make-tool-bar (&optional force)
8103 "Make a message mode tool bar from `message-tool-bar-list'. 8103 "Make a message mode tool bar from `message-tool-bar'.
8104When FORCE, rebuild the tool bar." 8104When FORCE, rebuild the tool bar."
8105 (when (and (boundp 'tool-bar-mode) 8105 (when (and (boundp 'tool-bar-mode)
8106 tool-bar-mode 8106 tool-bar-mode
@@ -8591,7 +8591,7 @@ Meant for use on `completion-at-point-functions'."
8591 8591
8592;; FIXME: What is the most common term (circular letter, form letter, serial 8592;; FIXME: What is the most common term (circular letter, form letter, serial
8593;; letter, standard letter) for such kind of letter? See also 8593;; letter, standard letter) for such kind of letter? See also
8594;; <http://en.wikipedia.org/wiki/Form_letter> 8594;; <https://en.wikipedia.org/wiki/Form_letter>
8595 8595
8596;; FIXME: Maybe extent message-mode's font-lock support to recognize 8596;; FIXME: Maybe extent message-mode's font-lock support to recognize
8597;; `message-form-letter-separator', i.e. highlight each message like a single 8597;; `message-form-letter-separator', i.e. highlight each message like a single
diff --git a/lisp/gnus/mm-util.el b/lisp/gnus/mm-util.el
index 282465722de..958e24c39f5 100644
--- a/lisp/gnus/mm-util.el
+++ b/lisp/gnus/mm-util.el
@@ -70,7 +70,7 @@
70 (mm-coding-system-p 'cp932)) 70 (mm-coding-system-p 'cp932))
71 '((windows-31j . cp932))) 71 '((windows-31j . cp932)))
72 ;; Charset name: GBK, Charset aliases: CP936, MS936, windows-936 72 ;; Charset name: GBK, Charset aliases: CP936, MS936, windows-936
73 ;; http://www.iana.org/assignments/charset-reg/GBK 73 ;; https://www.iana.org/assignments/charset-reg/GBK
74 ;; Emacs 22.1 has cp936, but not gbk, so we alias it: 74 ;; Emacs 22.1 has cp936, but not gbk, so we alias it:
75 ,@(when (and (not (mm-coding-system-p 'gbk)) 75 ,@(when (and (not (mm-coding-system-p 'gbk))
76 (mm-coding-system-p 'cp936)) 76 (mm-coding-system-p 'cp936))
diff --git a/lisp/gnus/mml-sec.el b/lisp/gnus/mml-sec.el
index 69852c381d6..74af99da7e3 100644
--- a/lisp/gnus/mml-sec.el
+++ b/lisp/gnus/mml-sec.el
@@ -938,9 +938,47 @@ If no one is selected, symmetric encryption will be performed. "
938 (signal (car error) (cdr error)))) 938 (signal (car error) (cdr error))))
939 cipher)) 939 cipher))
940 940
941;; Should probably be removed and the interface should be different. 941(defun mml-secure-sender-sign-query (protocol sender)
942(defvar mml-secure-allow-signing-with-unknown-recipient nil 942 "Query whether to use SENDER to sign when using PROTOCOL.
943 "Variable to bind to allow automatic recipient selection.") 943PROTOCOL will be `OpenPGP' or `CMS' (smime).
944This can also save the resulting value of
945`mml-secure-smime-sign-with-sender' or
946`mml-secure-openpgp-sign-with-sender' via Customize.
947Returns non-nil if the user has chosen to use SENDER."
948 (let ((buffer (get-buffer-create "*MML sender signing options*"))
949 (options '((?a "always" "Sign using this sender now and sign with message sender in future.")
950 (?s "session only" "Sign using this sender now, and sign with message sender for this session only.")
951 (?n "no" "Do not sign this message (and error out)")))
952 answer done val)
953 (save-window-excursion
954 (pop-to-buffer buffer)
955 (erase-buffer)
956 (insert (format "No %s signing key was found for this message.\nThe sender of this message is \"%s\".\nWould you like to attempt looking up a signing key based on it?"
957 (if (eq protocol 'OpenPGP)
958 "openpgp" "smime")
959 sender))
960 (while (not done)
961 (setq answer (read-multiple-choice "Sign this message using the sender?" options))
962 (cl-case (car answer)
963 (?a
964 (if (eq protocol 'OpenPGP)
965 (progn
966 (setq mml-secure-openpgp-sign-with-sender t)
967 (customize-save-variable
968 'mml-secure-openpgp-sign-with-sender t))
969 (setq mml-secure-smime-sign-with-sender t)
970 (customize-save-variable 'mml-secure-smime-sign-with-sender t))
971 (setq done t
972 val t))
973 (?s
974 (if (eq protocol 'OpenPGP)
975 (setq mml-secure-openpgp-sign-with-sender t)
976 (setq mml-secure-smime-sign-with-sender t))
977 (setq done t
978 val t))
979 (?n
980 (setq done t)))))
981 val))
944 982
945(defun mml-secure-epg-sign (protocol mode) 983(defun mml-secure-epg-sign (protocol mode)
946 ;; Based on code appearing inside mml2015-epg-sign. 984 ;; Based on code appearing inside mml2015-epg-sign.
@@ -950,15 +988,21 @@ If no one is selected, symmetric encryption will be performed. "
950 (signers (mml-secure-signers context signer-names)) 988 (signers (mml-secure-signers context signer-names))
951 signature micalg) 989 signature micalg)
952 (unless signers 990 (unless signers
953 (let ((maybe-msg 991 (if (and (not noninteractive)
954 (if mml-secure-smime-sign-with-sender 992 (mml-secure-sender-sign-query protocol sender))
955 "." 993 (setq signer-names (mml-secure-signer-names protocol sender)
956 "; try setting `mml-secure-smime-sign-with-sender'."))) 994 signers (mml-secure-signers context signer-names)))
957 ;; If `mml-secure-smime-sign-with-sender' is already non-nil 995 (unless signers
958 ;; then there's no point advising the user to examine it. If 996 (let ((maybe-msg
959 ;; there are any other variables worth examining, please 997 (if (or mml-secure-smime-sign-with-sender
960 ;; improve this error message by having it mention them. 998 mml-secure-openpgp-sign-with-sender)
961 (unless mml-secure-allow-signing-with-unknown-recipient 999 "."
1000 "; try setting `mml-secure-smime-sign-with-sender' or 'mml-secure-openpgp-sign-with-sender'.")))
1001 ;; If `mml-secure-smime-sign-with-sender' or
1002 ;; `mml-secure-openpgp-sign-with-sender' are already non-nil
1003 ;; then there's no point advising the user to examine them.
1004 ;; If there are any other variables worth examining, please
1005 ;; improve this error message by having it mention them.
962 (error "Couldn't find any signer names%s" maybe-msg)))) 1006 (error "Couldn't find any signer names%s" maybe-msg))))
963 (when (eq 'OpenPGP protocol) 1007 (when (eq 'OpenPGP protocol)
964 (setf (epg-context-armor context) t) 1008 (setf (epg-context-armor context) t)
diff --git a/lisp/gnus/nndiary.el b/lisp/gnus/nndiary.el
index a43eee42ad0..ccd17744993 100644
--- a/lisp/gnus/nndiary.el
+++ b/lisp/gnus/nndiary.el
@@ -178,7 +178,7 @@ The hook functions will be called with the full group name as argument."
178(define-obsolete-variable-alias 'nndiary-request-update-info-hooks 178(define-obsolete-variable-alias 'nndiary-request-update-info-hooks
179 'nndiary-request-update-info-functions "24.3") 179 'nndiary-request-update-info-functions "24.3")
180(defcustom nndiary-request-update-info-functions nil 180(defcustom nndiary-request-update-info-functions nil
181 "Hook run after `nndiary-request-update-info-group' is executed. 181 "Hook run after `nndiary-request-update-info' is executed.
182The hook functions will be called with the full group name as argument." 182The hook functions will be called with the full group name as argument."
183 :group 'nndiary 183 :group 'nndiary
184 :type 'hook) 184 :type 'hook)
diff --git a/lisp/gnus/nnmaildir.el b/lisp/gnus/nnmaildir.el
index 81a148db669..68c31dc4510 100644
--- a/lisp/gnus/nnmaildir.el
+++ b/lisp/gnus/nnmaildir.el
@@ -1767,7 +1767,7 @@ This variable is set by `nnmaildir-request-article'.")
1767 nnmaildir--cur-server nil) 1767 nnmaildir--cur-server nil)
1768 1768
1769 ;; This slightly obscure invocation of `alist-get' removes SERVER from 1769 ;; This slightly obscure invocation of `alist-get' removes SERVER from
1770 ;; `nnmaildir-servers'. 1770 ;; `nnmaildir--servers'.
1771 (setf (alist-get (nnmaildir--srv-address server) 1771 (setf (alist-get (nnmaildir--srv-address server)
1772 nnmaildir--servers server 'remove #'equal) 1772 nnmaildir--servers server 'remove #'equal)
1773 server)) 1773 server))
diff --git a/lisp/gnus/nnrss.el b/lisp/gnus/nnrss.el
index 116d7ee9fb2..48c07da1cc8 100644
--- a/lisp/gnus/nnrss.el
+++ b/lisp/gnus/nnrss.el
@@ -450,7 +450,7 @@ nnrss: %s: Not valid XML %s and libxml-parse-html-region doesn't work %s"
450(defun nnrss-normalize-date (date) 450(defun nnrss-normalize-date (date)
451 "Return a date string of DATE in the style of RFC 822 and its successors. 451 "Return a date string of DATE in the style of RFC 822 and its successors.
452This function handles the ISO 8601 date format described in 452This function handles the ISO 8601 date format described in
453URL `http://www.w3.org/TR/NOTE-datetime', and also the RFC 822 style 453URL `https://www.w3.org/TR/NOTE-datetime', and also the RFC 822 style
454which RSS 2.0 allows." 454which RSS 2.0 allows."
455 (let (case-fold-search vector year month day time zone cts given) 455 (let (case-fold-search vector year month day time zone cts given)
456 (cond ((null date)) ; do nothing for this case 456 (cond ((null date)) ; do nothing for this case
diff --git a/lisp/gnus/spam-stat.el b/lisp/gnus/spam-stat.el
index 3da45a2b623..bf593865d72 100644
--- a/lisp/gnus/spam-stat.el
+++ b/lisp/gnus/spam-stat.el
@@ -4,7 +4,7 @@
4 4
5;; Author: Alex Schroeder <alex@gnu.org> 5;; Author: Alex Schroeder <alex@gnu.org>
6;; Keywords: network 6;; Keywords: network
7;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?SpamStat 7;; URL: https://www.emacswiki.org/cgi-bin/wiki.pl?SpamStat
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
diff --git a/lisp/hexl.el b/lisp/hexl.el
index 38eca77e260..0c31d964577 100644
--- a/lisp/hexl.el
+++ b/lisp/hexl.el
@@ -886,7 +886,7 @@ and their encoded form is inserted byte by byte."
886 (when (null encoded) 886 (when (null encoded)
887 (setq internal (encode-coding-string internal 'utf-8-emacs) 887 (setq internal (encode-coding-string internal 'utf-8-emacs)
888 internal-hex 888 internal-hex
889 (mapconcat (function (lambda (c) (format "%x" c))) 889 (mapconcat (lambda (c) (format "%x" c))
890 internal " ")) 890 internal " "))
891 (if (yes-or-no-p 891 (if (yes-or-no-p
892 (format-message 892 (format-message
@@ -899,7 +899,7 @@ and their encoded form is inserted byte by byte."
899 (substitute-command-keys "try \\[hexl-insert-hex-string]")))) 899 (substitute-command-keys "try \\[hexl-insert-hex-string]"))))
900 (while (> num 0) 900 (while (> num 0)
901 (mapc 901 (mapc
902 (function (lambda (c) (hexl-insert-char c 1))) encoded) 902 (lambda (c) (hexl-insert-char c 1)) encoded)
903 (setq num (1- num)))))))) 903 (setq num (1- num))))))))
904 904
905(defun hexl-self-insert-command (arg) 905(defun hexl-self-insert-command (arg)
diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el
index 1c55a23764d..a81cefacb03 100644
--- a/lisp/hi-lock.el
+++ b/lisp/hi-lock.el
@@ -820,6 +820,7 @@ SPACES-REGEXP is a regexp to substitute spaces in font-lock search."
820 (font-lock-add-keywords nil hi-lock-file-patterns t) 820 (font-lock-add-keywords nil hi-lock-file-patterns t)
821 (font-lock-flush))) 821 (font-lock-flush)))
822 822
823;;;###autoload
823(defun hi-lock-find-patterns () 824(defun hi-lock-find-patterns ()
824 "Add patterns from the current buffer to the list of hi-lock patterns." 825 "Add patterns from the current buffer to the list of hi-lock patterns."
825 (interactive) 826 (interactive)
diff --git a/lisp/image-dired.el b/lisp/image-dired.el
index 6f297672caf..a29adde8325 100644
--- a/lisp/image-dired.el
+++ b/lisp/image-dired.el
@@ -60,12 +60,12 @@
60;; ============= 60;; =============
61;; 61;;
62;; * The ImageMagick package. Currently, `convert' and `mogrify' are 62;; * The ImageMagick package. Currently, `convert' and `mogrify' are
63;; used. Find it here: http://www.imagemagick.org. 63;; used. Find it here: https://www.imagemagick.org.
64;; 64;;
65;; * For non-lossy rotation of JPEG images, the JpegTRAN program is 65;; * For non-lossy rotation of JPEG images, the JpegTRAN program is
66;; needed. 66;; needed.
67;; 67;;
68;; * For `image-dired-get-exif-data' and `image-dired-write-exif-data' to work, 68;; * For `image-dired-get-exif-data' and `image-dired-set-exif-data' to work,
69;; the command line tool `exiftool' is needed. It can be found here: 69;; the command line tool `exiftool' is needed. It can be found here:
70;; http://www.sno.phy.queensu.ca/~phil/exiftool/. These two functions 70;; http://www.sno.phy.queensu.ca/~phil/exiftool/. These two functions
71;; are, among other things, used for writing comments to image files 71;; are, among other things, used for writing comments to image files
@@ -205,7 +205,7 @@ the index.html page that image-dired creates."
205 :group 'image-dired) 205 :group 'image-dired)
206 206
207(defcustom image-dired-gallery-image-root-url 207(defcustom image-dired-gallery-image-root-url
208"http://your.own.server/image-diredpics" 208"https://your.own.server/image-diredpics"
209 "URL where the full size images are to be found. 209 "URL where the full size images are to be found.
210Note that this path has to be configured in your web server. Image-Dired 210Note that this path has to be configured in your web server. Image-Dired
211expects to find pictures in this directory." 211expects to find pictures in this directory."
@@ -213,7 +213,7 @@ expects to find pictures in this directory."
213 :group 'image-dired) 213 :group 'image-dired)
214 214
215(defcustom image-dired-gallery-thumb-image-root-url 215(defcustom image-dired-gallery-thumb-image-root-url
216"http://your.own.server/image-diredthumbs" 216"https://your.own.server/image-diredthumbs"
217 "URL where the thumbnail images are to be found. 217 "URL where the thumbnail images are to be found.
218Note that this path has to be configured in your web server. Image-Dired 218Note that this path has to be configured in your web server. Image-Dired
219expects to find pictures in this directory." 219expects to find pictures in this directory."
@@ -309,7 +309,7 @@ temporary file name (typically generated by pnqnq)."
309 :group 'image-dired) 309 :group 'image-dired)
310 310
311(defcustom image-dired-cmd-optipng-options '("-o5" "%t") 311(defcustom image-dired-cmd-optipng-options '("-o5" "%t")
312 "Arguments passed to `image-dired-optipng-program'. 312 "Arguments passed to `image-dired-cmd-optipng-program'.
313Available format specifiers are described in 313Available format specifiers are described in
314`image-dired-cmd-create-thumbnail-options'." 314`image-dired-cmd-create-thumbnail-options'."
315 :version "26.1" 315 :version "26.1"
diff --git a/lisp/image.el b/lisp/image.el
index 4b2faa992fc..9ebb603086e 100644
--- a/lisp/image.el
+++ b/lisp/image.el
@@ -841,7 +841,7 @@ multiplication factor for the current value."
841N=0 refers to the initial animation frame. 841N=0 refers to the initial animation frame.
842COUNT is the total number of frames in the animation. 842COUNT is the total number of frames in the animation.
843TIME-ELAPSED is the total time that has elapsed since 843TIME-ELAPSED is the total time that has elapsed since
844`image-animate-start' was called. 844`image-animate' was called.
845LIMIT determines when to stop. If t, loop forever. If nil, stop 845LIMIT determines when to stop. If t, loop forever. If nil, stop
846 after displaying the last animation frame. Otherwise, stop 846 after displaying the last animation frame. Otherwise, stop
847 after LIMIT seconds have elapsed. 847 after LIMIT seconds have elapsed.
diff --git a/lisp/international/characters.el b/lisp/international/characters.el
index b7656d9c1a7..0b6920cf180 100644
--- a/lisp/international/characters.el
+++ b/lisp/international/characters.el
@@ -60,7 +60,7 @@ Vietnamese")
60;; For each group (row) of 2-byte character sets. 60;; For each group (row) of 2-byte character sets.
61 61
62(define-category ?A "2-byte alnum 62(define-category ?A "2-byte alnum
63Alpha-numeric characters of 2-byte character sets") 63Alphanumeric characters of 2-byte character sets")
64(define-category ?C "2-byte han 64(define-category ?C "2-byte han
65Chinese (Han) characters of 2-byte character sets") 65Chinese (Han) characters of 2-byte character sets")
66(define-category ?G "2-byte Greek 66(define-category ?G "2-byte Greek
diff --git a/lisp/international/titdic-cnv.el b/lisp/international/titdic-cnv.el
index a6dcd02dc68..2da8635f80b 100644
--- a/lisp/international/titdic-cnv.el
+++ b/lisp/international/titdic-cnv.el
@@ -795,7 +795,7 @@ To get complete usage, invoke \"emacs -batch -f batch-titdic-convert -h\"."
795 (forward-line 1))) 795 (forward-line 1)))
796 (maphash #'(lambda (key val) (setq dic (cons (cons key val) dic))) 796 (maphash #'(lambda (key val) (setq dic (cons (cons key val) dic)))
797 table))) 797 table)))
798 (setq dic (sort dic (function (lambda (x y) (string< (car x ) (car y)))))) 798 (setq dic (sort dic (lambda (x y) (string< (car x ) (car y)))))
799 (dolist (elt dic) 799 (dolist (elt dic)
800 (insert (format "(%S\t%S)\n" (car elt) (cdr elt)))) 800 (insert (format "(%S\t%S)\n" (car elt) (cdr elt))))
801 (let ((punctuation '((";" "$(0!'!2!"!#!.!/(B" "$(G!'!2!"!#!.!/(B") 801 (let ((punctuation '((";" "$(0!'!2!"!#!.!/(B" "$(G!'!2!"!#!.!/(B")
@@ -956,7 +956,7 @@ method `chinese-tonepy' with which you must specify tones by digits
956 (setq trans (mapconcat 'identity trans ""))))) 956 (setq trans (mapconcat 'identity trans "")))))
957 (setq dic (cons (cons key trans) dic))) 957 (setq dic (cons (cons key trans) dic)))
958 table))) 958 table)))
959 (setq dic (sort dic (function (lambda (x y) (string< (car x) (car y)))))) 959 (setq dic (sort dic (lambda (x y) (string< (car x) (car y)))))
960 (goto-char (point-max)) 960 (goto-char (point-max))
961 (insert (format "%S\n" "$A::WVJdHk!K!>WTH;!?!K(B 961 (insert (format "%S\n" "$A::WVJdHk!K!>WTH;!?!K(B
962 962
diff --git a/lisp/international/ucs-normalize.el b/lisp/international/ucs-normalize.el
index 6b7419fa4cd..33d0f0dda29 100644
--- a/lisp/international/ucs-normalize.el
+++ b/lisp/international/ucs-normalize.el
@@ -25,8 +25,8 @@
25;; This program has passed the NormalizationTest-5.2.0.txt. 25;; This program has passed the NormalizationTest-5.2.0.txt.
26;; 26;;
27;; References: 27;; References:
28;; http://www.unicode.org/reports/tr15/ 28;; https://www.unicode.org/reports/tr15/
29;; http://www.unicode.org/review/pr-29.html 29;; https://www.unicode.org/review/pr-29.html
30;; 30;;
31;; HFS-Normalization: 31;; HFS-Normalization:
32;; Reference: 32;; Reference:
@@ -131,7 +131,7 @@
131 #x1D1BF #x1D1C0) 131 #x1D1BF #x1D1C0)
132 "Composition Exclusion List. 132 "Composition Exclusion List.
133 This list is taken from 133 This list is taken from
134 http://www.unicode.org/Public/UNIDATA/5.2/CompositionExclusions.txt") 134 https://www.unicode.org/Public/UNIDATA/5.2/CompositionExclusions.txt")
135 135
136 ;; Unicode ranges that decompositions & combining characters are defined. 136 ;; Unicode ranges that decompositions & combining characters are defined.
137 (defvar check-range nil) 137 (defvar check-range nil)
diff --git a/lisp/isearch.el b/lisp/isearch.el
index 4e964b325cd..781a8c5a93a 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -271,9 +271,8 @@ are `word-search-regexp' \(`\\[isearch-toggle-word]'), `isearch-symbol-regexp'
271 271
272(defcustom search-highlight-submatches t 272(defcustom search-highlight-submatches t
273 "Whether to highlight regexp subexpressions of the current regexp match. 273 "Whether to highlight regexp subexpressions of the current regexp match.
274 274The faces used to do the highlights are named `isearch-group-odd' and
275The faces used to do the highlights are named `isearch-group-1', 275`isearch-group-even'."
276`isearch-group-2', and so on."
277 :type 'boolean 276 :type 'boolean
278 :version "28.1") 277 :version "28.1")
279 278
@@ -3664,97 +3663,26 @@ since they have special meaning in a regexp."
3664(defvar isearch-overlay nil) 3663(defvar isearch-overlay nil)
3665(defvar isearch-submatches-overlays nil) 3664(defvar isearch-submatches-overlays nil)
3666 3665
3667(defface isearch-group-1 3666(defface isearch-group-odd
3668 '((((class color) (min-colors 88) (background light)) 3667 '((((class color) (min-colors 88) (background light))
3669 (:background "#ff00ff" :foreground "lightskyblue1")) 3668 (:background "#ff00ff" :foreground "lightskyblue1"))
3670 (((class color) (min-colors 88) (background dark)) 3669 (((class color) (min-colors 88) (background dark))
3671 (:background "palevioletred3" :foreground "brown4")) 3670 (:background "palevioletred3" :foreground "brown4"))
3672 (t (:inherit isearch))) 3671 (t (:inherit isearch)))
3673 "Face for highlighting Isearch sub-group matches (first sub-group)." 3672 "Face for highlighting Isearch the odd group matches."
3674 :group 'isearch
3675 :version "28.1")
3676
3677(defface isearch-group-2
3678 '((((class color) (min-colors 88) (background light))
3679 (:background "#d000d0" :foreground "lightskyblue1"))
3680 (((class color) (min-colors 88) (background dark))
3681 (:background "#be698f" :foreground "black"))
3682 (t (:inherit isearch)))
3683 "Face for highlighting Isearch sub-group matches (second sub-group)."
3684 :group 'isearch
3685 :version "28.1")
3686
3687(defface isearch-group-3
3688 '((((class color) (min-colors 88) (background light))
3689 (:background "#a000a0" :foreground "lightskyblue1"))
3690 (((class color) (min-colors 88) (background dark))
3691 (:background "#a06080" :foreground "brown4"))
3692 (t (:inherit isearch)))
3693 "Face for highlighting Isearch sub-group matches (third sub-group)."
3694 :group 'isearch 3673 :group 'isearch
3695 :version "28.1") 3674 :version "28.1")
3696 3675
3697(defface isearch-group-4 3676(defface isearch-group-even
3698 '((((class color) (min-colors 88) (background light)) 3677 '((((class color) (min-colors 88) (background light))
3699 (:background "#800080" :foreground "lightskyblue1")) 3678 (:background "#800080" :foreground "lightskyblue1"))
3700 (((class color) (min-colors 88) (background dark)) 3679 (((class color) (min-colors 88) (background dark))
3701 (:background "#905070" :foreground "brown4")) 3680 (:background "#905070" :foreground "brown4"))
3702 (t (:inherit isearch))) 3681 (t (:inherit isearch)))
3703 "Face for highlighting Isearch sub-group matches (fourth sub-group)." 3682 "Face for highlighting Isearch the even group matches."
3704 :group 'isearch
3705 :version "28.1")
3706
3707(defface isearch-group-5
3708 '((((class color) (min-colors 88) (background light))
3709 (:background "#600060" :foreground "lightskyblue1"))
3710 (((class color) (min-colors 88) (background dark))
3711 (:background "#804060" :foreground "black"))
3712 (t (:inherit isearch)))
3713 "Face for highlighting Isearch sub-group matches (fifth sub-group)."
3714 :group 'isearch
3715 :version "28.1")
3716
3717(defface isearch-group-6
3718 '((((class color) (min-colors 88) (background light))
3719 (:background "#500050" :foreground "lightskyblue1"))
3720 (((class color) (min-colors 88) (background dark))
3721 (:background "#703050" :foreground "white"))
3722 (t (:inherit isearch)))
3723 "Face for highlighting Isearch sub-group matches (sixth sub-group)."
3724 :group 'isearch
3725 :version "28.1")
3726
3727(defface isearch-group-7
3728 '((((class color) (min-colors 88) (background light))
3729 (:background "#400040" :foreground "lightskyblue1"))
3730 (((class color) (min-colors 88) (background dark))
3731 (:background "#602050" :foreground "white"))
3732 (t (:inherit isearch)))
3733 "Face for highlighting Isearch sub-group matches (seventh sub-group)."
3734 :group 'isearch
3735 :version "28.1")
3736
3737(defface isearch-group-8
3738 '((((class color) (min-colors 88) (background light))
3739 (:background "#300030" :foreground "lightskyblue1"))
3740 (((class color) (min-colors 88) (background dark))
3741 (:background "#501050" :foreground "white"))
3742 (t (:inherit isearch)))
3743 "Face for highlighting Isearch sub-group matches (eighth sub-group)."
3744 :group 'isearch 3683 :group 'isearch
3745 :version "28.1") 3684 :version "28.1")
3746 3685
3747(defface isearch-group-9
3748 '((((class color) (min-colors 88) (background light))
3749 (:background "#200020" :foreground "lightskyblue1"))
3750 (((class color) (min-colors 88) (background dark))
3751 (:background "#400040" :foreground "white"))
3752 (t (:inherit isearch)))
3753 "Face for highlighting Isearch sub-group matches (ninth sub-group)."
3754 :group 'isearch
3755 :version "28.1")
3756
3757
3758(defun isearch-highlight (beg end) 3686(defun isearch-highlight (beg end)
3759 (if search-highlight 3687 (if search-highlight
3760 (if isearch-overlay 3688 (if isearch-overlay
@@ -3769,14 +3697,14 @@ since they have special meaning in a regexp."
3769 isearch-regexp) 3697 isearch-regexp)
3770 (mapc 'delete-overlay isearch-submatches-overlays) 3698 (mapc 'delete-overlay isearch-submatches-overlays)
3771 (setq isearch-submatches-overlays nil) 3699 (setq isearch-submatches-overlays nil)
3772 (let ((i 0) ov) 3700 (dotimes (i (/ (length (match-data)) 2))
3773 (while (<= i 9) 3701 (unless (zerop i)
3774 (when (match-beginning i) 3702 (let ((ov (make-overlay (match-beginning i) (match-end i))))
3775 (setq ov (make-overlay (match-beginning i) (match-end i))) 3703 (overlay-put ov 'face (if (zerop (mod i 2))
3776 (overlay-put ov 'face (intern-soft (format "isearch-group-%d" i))) 3704 'isearch-group-even
3705 'isearch-group-odd))
3777 (overlay-put ov 'priority 1002) 3706 (overlay-put ov 'priority 1002)
3778 (push ov isearch-submatches-overlays)) 3707 (push ov isearch-submatches-overlays))))))
3779 (setq i (1+ i))))))
3780 3708
3781(defun isearch-dehighlight () 3709(defun isearch-dehighlight ()
3782 (when isearch-overlay 3710 (when isearch-overlay
diff --git a/lisp/jsonrpc.el b/lisp/jsonrpc.el
index b319bf6e924..ffbc253a976 100644
--- a/lisp/jsonrpc.el
+++ b/lisp/jsonrpc.el
@@ -239,8 +239,8 @@ JSON object.
239The caller can expect SUCCESS-FN or ERROR-FN to be called with a 239The caller can expect SUCCESS-FN or ERROR-FN to be called with a
240JSONRPC `:result' or `:error' object, respectively. If this 240JSONRPC `:result' or `:error' object, respectively. If this
241doesn't happen after TIMEOUT seconds (defaults to 241doesn't happen after TIMEOUT seconds (defaults to
242`jsonrpc-request-timeout'), the caller can expect TIMEOUT-FN to be 242`jrpc-default-request-timeout'), the caller can expect TIMEOUT-FN
243called with no arguments. The default values of SUCCESS-FN, 243to be called with no arguments. The default values of SUCCESS-FN,
244ERROR-FN and TIMEOUT-FN simply log the events into 244ERROR-FN and TIMEOUT-FN simply log the events into
245`jsonrpc-events-buffer'. 245`jsonrpc-events-buffer'.
246 246
@@ -649,7 +649,7 @@ TIMEOUT is nil)."
649 (if (jsonrpc-connection-ready-p connection deferred) 649 (if (jsonrpc-connection-ready-p connection deferred)
650 ;; Server is ready, we jump below and send it immediately. 650 ;; Server is ready, we jump below and send it immediately.
651 (remhash (list deferred buf) (jsonrpc--deferred-actions connection)) 651 (remhash (list deferred buf) (jsonrpc--deferred-actions connection))
652 ;; Otherwise, save in `eglot--deferred-actions' and exit non-locally 652 ;; Otherwise, save in `jsonrpc--deferred-actions' and exit non-locally
653 (unless old-id 653 (unless old-id
654 (jsonrpc--debug connection `(:deferring ,method :id ,id :params 654 (jsonrpc--debug connection `(:deferring ,method :id ,id :params
655 ,params))) 655 ,params)))
diff --git a/lisp/language/tibet-util.el b/lisp/language/tibet-util.el
index 8684cdb1338..04369f6af87 100644
--- a/lisp/language/tibet-util.el
+++ b/lisp/language/tibet-util.el
@@ -275,7 +275,7 @@ The returned string has no composition information."
275 (compose-region from to components))))))) 275 (compose-region from to components)))))))
276 276
277(defvar tibetan-decompose-precomposition-alist 277(defvar tibetan-decompose-precomposition-alist
278 (mapcar (function (lambda (x) (cons (string-to-char (cdr x)) (car x)))) 278 (mapcar (lambda (x) (cons (string-to-char (cdr x)) (car x)))
279 tibetan-precomposition-rule-alist)) 279 tibetan-precomposition-rule-alist))
280 280
281;;;###autoload 281;;;###autoload
diff --git a/lisp/ldefs-boot.el b/lisp/ldefs-boot.el
index 40a4150628a..3260b67a993 100644
--- a/lisp/ldefs-boot.el
+++ b/lisp/ldefs-boot.el
@@ -1528,7 +1528,7 @@ ENTRY is the name of a password-store entry.
1528The key used to retrieve the password is the symbol `secret'. 1528The key used to retrieve the password is the symbol `secret'.
1529 1529
1530The convention used as the format for a password-store file is 1530The convention used as the format for a password-store file is
1531the following (see http://www.passwordstore.org/#organization): 1531the following (see https://www.passwordstore.org/#organization):
1532 1532
1533secret 1533secret
1534key1: value1 1534key1: value1
@@ -5950,12 +5950,12 @@ Variables controlling indentation style:
5950 `cperl-min-label-indent' 5950 `cperl-min-label-indent'
5951 Minimal indentation for line that is a label. 5951 Minimal indentation for line that is a label.
5952 5952
5953Settings for classic indent-styles: K&R BSD=C++ GNU PerlStyle=Whitesmith 5953Settings for classic indent-styles: K&R BSD=C++ GNU PBP PerlStyle=Whitesmith
5954 `cperl-indent-level' 5 4 2 4 5954 `cperl-indent-level' 5 4 2 4 4
5955 `cperl-brace-offset' 0 0 0 0 5955 `cperl-brace-offset' 0 0 0 0 0
5956 `cperl-continued-brace-offset' -5 -4 0 0 5956 `cperl-continued-brace-offset' -5 -4 0 0 0
5957 `cperl-label-offset' -5 -4 -2 -4 5957 `cperl-label-offset' -5 -4 -2 -2 -4
5958 `cperl-continued-statement-offset' 5 4 2 4 5958 `cperl-continued-statement-offset' 5 4 2 4 4
5959 5959
5960CPerl knows several indentation styles, and may bulk set the 5960CPerl knows several indentation styles, and may bulk set the
5961corresponding variables. Use \\[cperl-set-style] to do this. Use 5961corresponding variables. Use \\[cperl-set-style] to do this. Use
@@ -6726,7 +6726,7 @@ Create a new data-debug buffer with NAME.
6726(autoload 'dbus-handle-event "dbus" "\ 6726(autoload 'dbus-handle-event "dbus" "\
6727Handle events from the D-Bus. 6727Handle events from the D-Bus.
6728EVENT is a D-Bus event, see `dbus-check-event'. HANDLER, being 6728EVENT is a D-Bus event, see `dbus-check-event'. HANDLER, being
6729part of the event, is called with arguments ARGS. 6729part of the event, is called with arguments ARGS (without type information).
6730If the HANDLER returns a `dbus-error', it is propagated as return message. 6730If the HANDLER returns a `dbus-error', it is propagated as return message.
6731 6731
6732\(fn EVENT)" t nil) 6732\(fn EVENT)" t nil)
@@ -7762,6 +7762,23 @@ Keybindings:
7762\(fn &optional DIRNAME SWITCHES)" nil nil) 7762\(fn &optional DIRNAME SWITCHES)" nil nil)
7763 (put 'dired-find-alternate-file 'disabled t) 7763 (put 'dired-find-alternate-file 'disabled t)
7764 7764
7765(autoload 'dired-jump "dired" "\
7766Jump to Dired buffer corresponding to current buffer.
7767If in a file, Dired the current directory and move to file's line.
7768If in Dired already, pop up a level and goto old directory's line.
7769In case the proper Dired file line cannot be found, refresh the dired
7770buffer and try again.
7771When OTHER-WINDOW is non-nil, jump to Dired buffer in other window.
7772When FILE-NAME is non-nil, jump to its line in Dired.
7773Interactively with prefix argument, read FILE-NAME.
7774
7775\(fn &optional OTHER-WINDOW FILE-NAME)" t nil)
7776
7777(autoload 'dired-jump-other-window "dired" "\
7778Like \\[dired-jump] (`dired-jump') but in other window.
7779
7780\(fn &optional FILE-NAME)" t nil)
7781
7765(register-definition-prefixes "dired" '("dired-")) 7782(register-definition-prefixes "dired" '("dired-"))
7766 7783
7767;;;*** 7784;;;***
@@ -8300,9 +8317,6 @@ BODY contains code to execute each time the mode is enabled or disabled.
8300 the minor mode is global): 8317 the minor mode is global):
8301 8318
8302:group GROUP Custom group name to use in all generated `defcustom' forms. 8319:group GROUP Custom group name to use in all generated `defcustom' forms.
8303 Defaults to MODE without the possible trailing \"-mode\".
8304 Don't use this default group name unless you have written a
8305 `defgroup' to define that group properly.
8306:global GLOBAL If non-nil specifies that the minor mode is not meant to be 8320:global GLOBAL If non-nil specifies that the minor mode is not meant to be
8307 buffer-local, so don't make the variable MODE buffer-local. 8321 buffer-local, so don't make the variable MODE buffer-local.
8308 By default, the mode is buffer-local. 8322 By default, the mode is buffer-local.
@@ -10028,7 +10042,7 @@ It creates an autoload function for CNAME's constructor.
10028 10042
10029;;;### (autoloads nil "eldoc" "emacs-lisp/eldoc.el" (0 0 0 0)) 10043;;;### (autoloads nil "eldoc" "emacs-lisp/eldoc.el" (0 0 0 0))
10030;;; Generated autoloads from emacs-lisp/eldoc.el 10044;;; Generated autoloads from emacs-lisp/eldoc.el
10031(push (purecopy '(eldoc 1 9 0)) package--builtin-versions) 10045(push (purecopy '(eldoc 1 10 0)) package--builtin-versions)
10032 10046
10033;;;*** 10047;;;***
10034 10048
@@ -10292,7 +10306,7 @@ displayed." t nil)
10292;;;;;; (0 0 0 0)) 10306;;;;;; (0 0 0 0))
10293;;; Generated autoloads from eshell/em-unix.el 10307;;; Generated autoloads from eshell/em-unix.el
10294 10308
10295(register-definition-prefixes "em-unix" '("eshell" "nil-blank-string" "pcomplete/")) 10309(register-definition-prefixes "em-unix" '("eshell" "nil-blank-string"))
10296 10310
10297;;;*** 10311;;;***
10298 10312
@@ -10300,7 +10314,7 @@ displayed." t nil)
10300;;;;;; (0 0 0 0)) 10314;;;;;; (0 0 0 0))
10301;;; Generated autoloads from eshell/em-xtra.el 10315;;; Generated autoloads from eshell/em-xtra.el
10302 10316
10303(register-definition-prefixes "em-xtra" '("eshell/" "pcomplete/bcc")) 10317(register-definition-prefixes "em-xtra" '("eshell/"))
10304 10318
10305;;;*** 10319;;;***
10306 10320
@@ -10349,7 +10363,15 @@ Already submitted bugs can be found in the Emacs bug tracker:
10349 10363
10350(set-advertised-calling-convention 'report-emacs-bug '(topic) '"24.5") 10364(set-advertised-calling-convention 'report-emacs-bug '(topic) '"24.5")
10351 10365
10352(register-definition-prefixes "emacsbug" '("report-emacs-bug-")) 10366(autoload 'submit-emacs-patch "emacsbug" "\
10367Send an Emacs patch to the Emacs maintainers.
10368Interactively, you will be prompted for SUBJECT and a patch FILE
10369name (which will be attached to the mail). You will end up in a
10370Message buffer where you can explain more about the patch.
10371
10372\(fn SUBJECT FILE)" t nil)
10373
10374(register-definition-prefixes "emacsbug" '("emacs-bug--system-description" "report-emacs-bug-"))
10353 10375
10354;;;*** 10376;;;***
10355 10377
@@ -11106,6 +11128,14 @@ Interactively select a server to connect to using `erc-server-alist'." t nil)
11106 11128
11107;;;*** 11129;;;***
11108 11130
11131;;;### (autoloads "actual autoloads are elsewhere" "erc-status-sidebar"
11132;;;;;; "erc/erc-status-sidebar.el" (0 0 0 0))
11133;;; Generated autoloads from erc/erc-status-sidebar.el
11134
11135(register-definition-prefixes "erc-status-sidebar" '("erc-status-sidebar-"))
11136
11137;;;***
11138
11109;;;### (autoloads "actual autoloads are elsewhere" "erc-track" "erc/erc-track.el" 11139;;;### (autoloads "actual autoloads are elsewhere" "erc-track" "erc/erc-track.el"
11110;;;;;; (0 0 0 0)) 11140;;;;;; (0 0 0 0))
11111;;; Generated autoloads from erc/erc-track.el 11141;;; Generated autoloads from erc/erc-track.el
@@ -11253,6 +11283,11 @@ Emacs shell interactive mode.
11253 11283
11254\(fn)" t nil) 11284\(fn)" t nil)
11255 11285
11286(autoload 'eshell-bookmark-jump "esh-mode" "\
11287Default bookmark handler for Eshell buffers.
11288
11289\(fn BOOKMARK)" nil nil)
11290
11256(register-definition-prefixes "esh-mode" '("eshell")) 11291(register-definition-prefixes "esh-mode" '("eshell"))
11257 11292
11258;;;*** 11293;;;***
@@ -11599,7 +11634,7 @@ Do `query-replace-regexp' of FROM with TO on all files listed in tags table.
11599Third arg DELIMITED (prefix arg) means replace only word-delimited matches. 11634Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
11600If you exit (\\[keyboard-quit], RET or q), you can resume the query replace 11635If you exit (\\[keyboard-quit], RET or q), you can resume the query replace
11601with the command \\[tags-loop-continue]. 11636with the command \\[tags-loop-continue].
11602For non-interactive use, superceded by `fileloop-initialize-replace'. 11637For non-interactive use, superseded by `fileloop-initialize-replace'.
11603 11638
11604\(fn FROM TO &optional DELIMITED FILES)" t nil) 11639\(fn FROM TO &optional DELIMITED FILES)" t nil)
11605 11640
@@ -12818,6 +12853,9 @@ The command run (after changing into DIR) is essentially
12818except that the car of the variable `find-ls-option' specifies what to 12853except that the car of the variable `find-ls-option' specifies what to
12819use in place of \"-ls\" as the final argument. 12854use in place of \"-ls\" as the final argument.
12820 12855
12856Collect output in the \"*Find*\" buffer. To kill the job before
12857it finishes, type \\[kill-find].
12858
12821\(fn DIR ARGS)" t nil) 12859\(fn DIR ARGS)" t nil)
12822 12860
12823(autoload 'find-name-dired "find-dired" "\ 12861(autoload 'find-name-dired "find-dired" "\
@@ -14112,6 +14150,10 @@ instead (which see).")
14112(autoload 'define-generic-mode "generic" "\ 14150(autoload 'define-generic-mode "generic" "\
14113Create a new generic mode MODE. 14151Create a new generic mode MODE.
14114 14152
14153A \"generic\" mode is a simple major mode with basic support for
14154comment syntax and Font Lock mode, but otherwise does not have
14155any special keystrokes or functionality available.
14156
14115MODE is the name of the command for the generic mode; don't quote it. 14157MODE is the name of the command for the generic mode; don't quote it.
14116The optional DOCSTRING is the documentation for the mode command. If 14158The optional DOCSTRING is the documentation for the mode command. If
14117you do not supply it, `define-generic-mode' uses a default 14159you do not supply it, `define-generic-mode' uses a default
@@ -17590,7 +17632,7 @@ The main features of this mode are
17590 \\[idlwave-info] to display (complain to your sysadmin if that does 17632 \\[idlwave-info] to display (complain to your sysadmin if that does
17591 not work). For Postscript, PDF, and HTML versions of the 17633 not work). For Postscript, PDF, and HTML versions of the
17592 documentation, check IDLWAVE's homepage at URL 17634 documentation, check IDLWAVE's homepage at URL
17593 `http://github.com/jdtsmith/idlwave'. 17635 `https://github.com/jdtsmith/idlwave'.
17594 IDLWAVE has customize support - see the group `idlwave'. 17636 IDLWAVE has customize support - see the group `idlwave'.
17595 17637
1759610.Keybindings 1763810.Keybindings
@@ -21608,7 +21650,7 @@ upper atmosphere. These cause momentary pockets of higher-pressure
21608air to form, which act as lenses that deflect incoming cosmic rays, 21650air to form, which act as lenses that deflect incoming cosmic rays,
21609focusing them to strike the drive platter and flip the desired bit. 21651focusing them to strike the drive platter and flip the desired bit.
21610You can type `M-x butterfly C-M-c' to run it. This is a permuted 21652You can type `M-x butterfly C-M-c' to run it. This is a permuted
21611variation of `C-x M-c M-butterfly' from url `http://xkcd.com/378/'." t nil) 21653variation of `C-x M-c M-butterfly' from url `https://xkcd.com/378/'." t nil)
21612 21654
21613(autoload 'list-dynamic-libraries "misc" "\ 21655(autoload 'list-dynamic-libraries "misc" "\
21614Display a list of all dynamic libraries known to Emacs. 21656Display a list of all dynamic libraries known to Emacs.
@@ -22130,6 +22172,12 @@ different buffer menu using the function `msb'.
22130;;;### (autoloads nil "mspools" "mail/mspools.el" (0 0 0 0)) 22172;;;### (autoloads nil "mspools" "mail/mspools.el" (0 0 0 0))
22131;;; Generated autoloads from mail/mspools.el 22173;;; Generated autoloads from mail/mspools.el
22132 22174
22175(autoload 'mspools-show "mspools" "\
22176Show the list of non-empty spool files in the *spools* buffer.
22177Buffer is not displayed if SHOW is non-nil.
22178
22179\(fn &optional NOSHOW)" t nil)
22180
22133(register-definition-prefixes "mspools" '("mspools-")) 22181(register-definition-prefixes "mspools" '("mspools-"))
22134 22182
22135;;;*** 22183;;;***
@@ -22848,7 +22896,7 @@ This command does not work if you use short group names." t nil)
22848;;;### (autoloads nil "nnir" "gnus/nnir.el" (0 0 0 0)) 22896;;;### (autoloads nil "nnir" "gnus/nnir.el" (0 0 0 0))
22849;;; Generated autoloads from gnus/nnir.el 22897;;; Generated autoloads from gnus/nnir.el
22850 22898
22851(register-definition-prefixes "nnir" '("gnus-" "nnir-")) 22899(register-definition-prefixes "nnir" '("nnir-"))
22852 22900
22853;;;*** 22901;;;***
22854 22902
@@ -22927,6 +22975,13 @@ Generate NOV databases in all nnml directories.
22927 22975
22928;;;*** 22976;;;***
22929 22977
22978;;;### (autoloads nil "nnselect" "gnus/nnselect.el" (0 0 0 0))
22979;;; Generated autoloads from gnus/nnselect.el
22980
22981(register-definition-prefixes "nnselect" '("gnus-" "ids-by-group" "nnselect-" "numbers-by-group"))
22982
22983;;;***
22984
22930;;;### (autoloads nil "nnspool" "gnus/nnspool.el" (0 0 0 0)) 22985;;;### (autoloads nil "nnspool" "gnus/nnspool.el" (0 0 0 0))
22931;;; Generated autoloads from gnus/nnspool.el 22986;;; Generated autoloads from gnus/nnspool.el
22932 22987
@@ -25502,7 +25557,12 @@ Completion rules for the `ssh' command." nil nil)
25502Completion rules for the `scp' command. 25557Completion rules for the `scp' command.
25503Includes files as well as host names followed by a colon." nil nil) 25558Includes files as well as host names followed by a colon." nil nil)
25504 25559
25505(register-definition-prefixes "pcmpl-unix" '("pcmpl-")) 25560(autoload 'pcomplete/telnet "pcmpl-unix" nil nil nil)
25561
25562(autoload 'pcomplete/rsh "pcmpl-unix" "\
25563Complete `rsh', which, after the user and hostname, is like xargs." nil nil)
25564
25565(register-definition-prefixes "pcmpl-unix" '("pcmpl-" "pcomplete/"))
25506 25566
25507;;;*** 25567;;;***
25508 25568
@@ -25522,6 +25582,11 @@ long options." nil nil)
25522(autoload 'pcomplete/ag "pcmpl-x" "\ 25582(autoload 'pcomplete/ag "pcmpl-x" "\
25523Completion for the `ag' command." nil nil) 25583Completion for the `ag' command." nil nil)
25524 25584
25585(autoload 'pcomplete/bcc32 "pcmpl-x" "\
25586Completion function for Borland's C++ compiler." nil nil)
25587
25588(defalias 'pcomplete/bcc 'pcomplete/bcc32)
25589
25525(register-definition-prefixes "pcmpl-x" '("pcmpl-x-")) 25590(register-definition-prefixes "pcmpl-x" '("pcmpl-x-"))
25526 25591
25527;;;*** 25592;;;***
@@ -26573,7 +26638,7 @@ Open profile FILENAME.
26573 26638
26574;;;### (autoloads nil "project" "progmodes/project.el" (0 0 0 0)) 26639;;;### (autoloads nil "project" "progmodes/project.el" (0 0 0 0))
26575;;; Generated autoloads from progmodes/project.el 26640;;; Generated autoloads from progmodes/project.el
26576(push (purecopy '(project 0 5 1)) package--builtin-versions) 26641(push (purecopy '(project 0 5 2)) package--builtin-versions)
26577 26642
26578(autoload 'project-current "project" "\ 26643(autoload 'project-current "project" "\
26579Return the project instance in DIRECTORY, defaulting to `default-directory'. 26644Return the project instance in DIRECTORY, defaulting to `default-directory'.
@@ -26622,7 +26687,8 @@ Run project command, displaying resultant buffer in a new tab.
26622The following commands are available: 26687The following commands are available:
26623 26688
26624\\{project-prefix-map}" t nil) 26689\\{project-prefix-map}" t nil)
26625 (define-key tab-prefix-map "p" #'project-other-tab-command) 26690
26691(when (bound-and-true-p tab-prefix-map) (define-key tab-prefix-map "p" #'project-other-tab-command))
26626 26692
26627(autoload 'project-find-regexp "project" "\ 26693(autoload 'project-find-regexp "project" "\
26628Find all matches for REGEXP in the current project's roots. 26694Find all matches for REGEXP in the current project's roots.
@@ -26742,7 +26808,7 @@ identical. Only the buffers that match a condition in
26742`project-kill-buffer-conditions' will be killed. If NO-CONFIRM 26808`project-kill-buffer-conditions' will be killed. If NO-CONFIRM
26743is non-nil, the command will not ask the user for confirmation. 26809is non-nil, the command will not ask the user for confirmation.
26744NO-CONFIRM is always nil when the command is invoked 26810NO-CONFIRM is always nil when the command is invoked
26745interactivly. 26811interactively.
26746 26812
26747\(fn &optional NO-CONFIRM)" t nil) 26813\(fn &optional NO-CONFIRM)" t nil)
26748 26814
@@ -28249,6 +28315,8 @@ disabled.
28249Reveal mode is a buffer-local minor mode. When enabled, it 28315Reveal mode is a buffer-local minor mode. When enabled, it
28250reveals invisible text around point. 28316reveals invisible text around point.
28251 28317
28318Also see the `reveal-auto-hide' variable.
28319
28252\(fn &optional ARG)" t nil) 28320\(fn &optional ARG)" t nil)
28253 28321
28254(defvar global-reveal-mode nil "\ 28322(defvar global-reveal-mode nil "\
@@ -28873,7 +28941,7 @@ to use for finding the schema.
28873;;;### (autoloads nil "rng-xsd" "nxml/rng-xsd.el" (0 0 0 0)) 28941;;;### (autoloads nil "rng-xsd" "nxml/rng-xsd.el" (0 0 0 0))
28874;;; Generated autoloads from nxml/rng-xsd.el 28942;;; Generated autoloads from nxml/rng-xsd.el
28875 28943
28876(put 'http://www\.w3\.org/2001/XMLSchema-datatypes 'rng-dt-compile #'rng-xsd-compile) 28944(put 'https://www\.w3\.org/2001/XMLSchema-datatypes 'rng-dt-compile #'rng-xsd-compile)
28877 28945
28878(autoload 'rng-xsd-compile "rng-xsd" "\ 28946(autoload 'rng-xsd-compile "rng-xsd" "\
28879Provide W3C XML Schema as a RELAX NG datatypes library. 28947Provide W3C XML Schema as a RELAX NG datatypes library.
@@ -30414,7 +30482,7 @@ and `default-sendmail-coding-system',
30414but lower priority than the local value of `buffer-file-coding-system'. 30482but lower priority than the local value of `buffer-file-coding-system'.
30415See also the function `select-message-coding-system'.") 30483See also the function `select-message-coding-system'.")
30416 30484
30417(defvar default-sendmail-coding-system 'iso-latin-1 "\ 30485(defvar default-sendmail-coding-system 'utf-8 "\
30418Default coding system for encoding the outgoing mail. 30486Default coding system for encoding the outgoing mail.
30419This variable is used only when `sendmail-coding-system' is nil. 30487This variable is used only when `sendmail-coding-system' is nil.
30420 30488
@@ -31479,7 +31547,7 @@ Use \\[so-long-customize] to configure the behaviour.
31479 31547
31480;;;### (autoloads nil "soap-client" "net/soap-client.el" (0 0 0 0)) 31548;;;### (autoloads nil "soap-client" "net/soap-client.el" (0 0 0 0))
31481;;; Generated autoloads from net/soap-client.el 31549;;; Generated autoloads from net/soap-client.el
31482(push (purecopy '(soap-client 3 1 5)) package--builtin-versions) 31550(push (purecopy '(soap-client 3 2 0)) package--builtin-versions)
31483 31551
31484(register-definition-prefixes "soap-client" '("soap-")) 31552(register-definition-prefixes "soap-client" '("soap-"))
31485 31553
@@ -32718,6 +32786,27 @@ Studlify-case the current buffer." t nil)
32718;;;### (autoloads nil "subr-x" "emacs-lisp/subr-x.el" (0 0 0 0)) 32786;;;### (autoloads nil "subr-x" "emacs-lisp/subr-x.el" (0 0 0 0))
32719;;; Generated autoloads from emacs-lisp/subr-x.el 32787;;; Generated autoloads from emacs-lisp/subr-x.el
32720 32788
32789(autoload 'if-let "subr-x" "\
32790Bind variables according to SPEC and evaluate THEN or ELSE.
32791Evaluate each binding in turn, as in `let*', stopping if a
32792binding value is nil. If all are non-nil return the value of
32793THEN, otherwise the last form in ELSE.
32794
32795Each element of SPEC is a list (SYMBOL VALUEFORM) that binds
32796SYMBOL to the value of VALUEFORM. An element can additionally be
32797of the form (VALUEFORM), which is evaluated and checked for nil;
32798i.e. SYMBOL can be omitted if only the test result is of
32799interest. It can also be of the form SYMBOL, then the binding of
32800SYMBOL is checked for nil.
32801
32802As a special case, interprets a SPEC of the form (SYMBOL SOMETHING)
32803like ((SYMBOL SOMETHING)). This exists for backward compatibility
32804with an old syntax that accepted only one binding.
32805
32806\(fn SPEC THEN &rest ELSE)" nil t)
32807
32808(function-put 'if-let 'lisp-indent-function '2)
32809
32721(autoload 'when-let "subr-x" "\ 32810(autoload 'when-let "subr-x" "\
32722Bind variables according to SPEC and conditionally evaluate BODY. 32811Bind variables according to SPEC and conditionally evaluate BODY.
32723Evaluate each binding in turn, stopping if a binding value is nil. 32812Evaluate each binding in turn, stopping if a binding value is nil.
@@ -32734,7 +32823,7 @@ Truncate STRING to LENGTH, replacing initial surplus with \"...\".
32734 32823
32735\(fn STRING LENGTH)" nil nil) 32824\(fn STRING LENGTH)" nil nil)
32736 32825
32737(register-definition-prefixes "subr-x" '("and-let*" "hash-table-" "if-let" "internal--" "replace-region-contents" "string-" "thread-" "when-let*")) 32826(register-definition-prefixes "subr-x" '("and-let*" "hash-table-" "if-let*" "internal--" "replace-region-contents" "string-" "thread-" "when-let*"))
32738 32827
32739;;;*** 32828;;;***
32740 32829
@@ -32880,7 +32969,7 @@ and `sc-post-hook' is run after the guts of this function." nil nil)
32880 32969
32881;;;### (autoloads nil "svg" "svg.el" (0 0 0 0)) 32970;;;### (autoloads nil "svg" "svg.el" (0 0 0 0))
32882;;; Generated autoloads from svg.el 32971;;; Generated autoloads from svg.el
32883(push (purecopy '(svg 1 0)) package--builtin-versions) 32972(push (purecopy '(svg 1 1)) package--builtin-versions)
32884 32973
32885(register-definition-prefixes "svg" '("svg-")) 32974(register-definition-prefixes "svg" '("svg-"))
32886 32975
@@ -33383,7 +33472,7 @@ buffer, and leaves the previous contents of the buffer untouched.
33383References used for this implementation: 33472References used for this implementation:
33384 33473
33385HTML: 33474HTML:
33386 URL `http://www.w3.org' 33475 URL `https://www.w3.org'
33387 33476
33388LaTeX: 33477LaTeX:
33389 URL `http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/Tables.html' 33478 URL `http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/Tables.html'
@@ -34597,7 +34686,7 @@ runs the normal hook `display-time-hook' after each update.
34597 34686
34598\(fn &optional ARG)" t nil) 34687\(fn &optional ARG)" t nil)
34599 34688
34600(defalias 'display-time-world #'world-clock) 34689(define-obsolete-function-alias 'display-time-world #'world-clock "28.1")
34601 34690
34602(autoload 'world-clock "time" "\ 34691(autoload 'world-clock "time" "\
34603Display a world clock buffer with times in various time zones. 34692Display a world clock buffer with times in various time zones.
@@ -34608,8 +34697,10 @@ To turn off the world time display, go to the window and type `\\[quit-window]'.
34608Return a string giving the uptime of this instance of Emacs. 34697Return a string giving the uptime of this instance of Emacs.
34609FORMAT is a string to format the result, using `format-seconds'. 34698FORMAT is a string to format the result, using `format-seconds'.
34610For example, the Unix uptime command format is \"%D, %z%2h:%.2m\". 34699For example, the Unix uptime command format is \"%D, %z%2h:%.2m\".
34700If the optional argument HERE is non-nil, insert string at
34701point.
34611 34702
34612\(fn &optional FORMAT)" t nil) 34703\(fn &optional FORMAT HERE)" t nil)
34613 34704
34614(autoload 'emacs-init-time "time" "\ 34705(autoload 'emacs-init-time "time" "\
34615Return a string giving the duration of the Emacs initialization." t nil) 34706Return a string giving the duration of the Emacs initialization." t nil)
@@ -38441,6 +38532,11 @@ See also `warning-series', `warning-prefix-function',
38441`warning-fill-prefix', and `warning-fill-column' for additional 38532`warning-fill-prefix', and `warning-fill-column' for additional
38442programming features. 38533programming features.
38443 38534
38535This will also display buttons allowing the user to permanently
38536disable automatic display of the warning or disable the warning
38537entirely by setting `warning-suppress-types' or
38538`warning-suppress-log-types' on their behalf.
38539
38444\(fn TYPE MESSAGE &optional LEVEL BUFFER-NAME)" nil nil) 38540\(fn TYPE MESSAGE &optional LEVEL BUFFER-NAME)" nil nil)
38445 38541
38446(autoload 'lwarn "warnings" "\ 38542(autoload 'lwarn "warnings" "\
@@ -39601,16 +39697,16 @@ Zone out, completely." t nil)
39601;;;;;; "erc/erc-notify.el" "erc/erc-page.el" "erc/erc-pcomplete.el" 39697;;;;;; "erc/erc-notify.el" "erc/erc-page.el" "erc/erc-pcomplete.el"
39602;;;;;; "erc/erc-replace.el" "erc/erc-ring.el" "erc/erc-services.el" 39698;;;;;; "erc/erc-replace.el" "erc/erc-ring.el" "erc/erc-services.el"
39603;;;;;; "erc/erc-sound.el" "erc/erc-speedbar.el" "erc/erc-spelling.el" 39699;;;;;; "erc/erc-sound.el" "erc/erc-speedbar.el" "erc/erc-spelling.el"
39604;;;;;; "erc/erc-stamp.el" "erc/erc-track.el" "erc/erc-truncate.el" 39700;;;;;; "erc/erc-stamp.el" "erc/erc-status-sidebar.el" "erc/erc-track.el"
39605;;;;;; "erc/erc-xdcc.el" "eshell/em-alias.el" "eshell/em-banner.el" 39701;;;;;; "erc/erc-truncate.el" "erc/erc-xdcc.el" "eshell/em-alias.el"
39606;;;;;; "eshell/em-basic.el" "eshell/em-cmpl.el" "eshell/em-dirs.el" 39702;;;;;; "eshell/em-banner.el" "eshell/em-basic.el" "eshell/em-cmpl.el"
39607;;;;;; "eshell/em-glob.el" "eshell/em-hist.el" "eshell/em-ls.el" 39703;;;;;; "eshell/em-dirs.el" "eshell/em-glob.el" "eshell/em-hist.el"
39608;;;;;; "eshell/em-pred.el" "eshell/em-prompt.el" "eshell/em-rebind.el" 39704;;;;;; "eshell/em-ls.el" "eshell/em-pred.el" "eshell/em-prompt.el"
39609;;;;;; "eshell/em-script.el" "eshell/em-smart.el" "eshell/em-term.el" 39705;;;;;; "eshell/em-rebind.el" "eshell/em-script.el" "eshell/em-smart.el"
39610;;;;;; "eshell/em-tramp.el" "eshell/em-unix.el" "eshell/em-xtra.el" 39706;;;;;; "eshell/em-term.el" "eshell/em-tramp.el" "eshell/em-unix.el"
39611;;;;;; "facemenu.el" "faces.el" "files.el" "font-core.el" "font-lock.el" 39707;;;;;; "eshell/em-xtra.el" "facemenu.el" "faces.el" "files.el" "font-core.el"
39612;;;;;; "format.el" "frame.el" "help.el" "hfy-cmap.el" "ibuf-ext.el" 39708;;;;;; "font-lock.el" "format.el" "frame.el" "help.el" "hfy-cmap.el"
39613;;;;;; "indent.el" "international/characters.el" "international/charprop.el" 39709;;;;;; "ibuf-ext.el" "indent.el" "international/characters.el" "international/charprop.el"
39614;;;;;; "international/charscript.el" "international/cp51932.el" 39710;;;;;; "international/charscript.el" "international/cp51932.el"
39615;;;;;; "international/eucjp-ms.el" "international/mule-cmds.el" 39711;;;;;; "international/eucjp-ms.el" "international/mule-cmds.el"
39616;;;;;; "international/mule-conf.el" "international/mule.el" "international/uni-bidi.el" 39712;;;;;; "international/mule-conf.el" "international/mule.el" "international/uni-bidi.el"
diff --git a/lisp/leim/quail/ipa.el b/lisp/leim/quail/ipa.el
index d4170564c58..cbc555d1faa 100644
--- a/lisp/leim/quail/ipa.el
+++ b/lisp/leim/quail/ipa.el
@@ -340,7 +340,7 @@ See http://www.phon.ucl.ac.uk/home/sampa/ipasam-x.pdf for a full definition
340of the mapping.") 340of the mapping.")
341 341
342(quail-define-rules 342(quail-define-rules
343 ;; Table taken from http://en.wikipedia.org/wiki/X-SAMPA, checked with 343 ;; Table taken from https://en.wikipedia.org/wiki/X-SAMPA, checked with
344 ;; http://www.phon.ucl.ac.uk/home/sampa/ipasam-x.pdf 344 ;; http://www.phon.ucl.ac.uk/home/sampa/ipasam-x.pdf
345 345
346 ("d`" "É–") ;; Voiced retroflex plosive U+0256 346 ("d`" "É–") ;; Voiced retroflex plosive U+0256
diff --git a/lisp/mail/mail-extr.el b/lisp/mail/mail-extr.el
index f1a455dce2d..bd9aef17a87 100644
--- a/lisp/mail/mail-extr.el
+++ b/lisp/mail/mail-extr.el
@@ -1852,8 +1852,8 @@ place. It affects how `mail-extract-address-components' works."
1852;; 1852;;
1853;; Source: ISO 3166 Maintenance Agency 1853;; Source: ISO 3166 Maintenance Agency
1854;; http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1-semic.txt 1854;; http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1-semic.txt
1855;; http://www.iana.org/domain-names.htm 1855;; https://www.iana.org/domain-names.htm
1856;; http://www.iana.org/cctld/cctld-whois.htm 1856;; https://www.iana.org/cctld/cctld-whois.htm
1857;; Latest change: 2007/11/15 1857;; Latest change: 2007/11/15
1858 1858
1859(defconst mail-extr-all-top-level-domains 1859(defconst mail-extr-all-top-level-domains
diff --git a/lisp/mail/mailalias.el b/lisp/mail/mailalias.el
index 1f688734d47..2b76539e152 100644
--- a/lisp/mail/mailalias.el
+++ b/lisp/mail/mailalias.el
@@ -517,7 +517,7 @@ PREFIX is the string we want to complete."
517 (setq mail-names 517 (setq mail-names
518 (sort (append (if (consp mail-aliases) 518 (sort (append (if (consp mail-aliases)
519 (mapcar 519 (mapcar
520 (function (lambda (a) (list (car a)))) 520 (lambda (a) (list (car a)))
521 mail-aliases)) 521 mail-aliases))
522 (if (consp mail-local-names) 522 (if (consp mail-local-names)
523 mail-local-names) 523 mail-local-names)
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index 8bcb9af4d16..7ff7db3e8cb 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -2786,7 +2786,7 @@ The current mail message becomes the message displayed."
2786 (with-current-buffer rmail-view-buffer 2786 (with-current-buffer rmail-view-buffer
2787 ;; We give the view buffer a buffer-local value of 2787 ;; We give the view buffer a buffer-local value of
2788 ;; rmail-header-style based on the binding in effect when 2788 ;; rmail-header-style based on the binding in effect when
2789 ;; this function is called; `rmail-toggle-headers' can 2789 ;; this function is called; `rmail-toggle-header' can
2790 ;; inspect this value to determine how to toggle. 2790 ;; inspect this value to determine how to toggle.
2791 (set (make-local-variable 'rmail-header-style) header-style) 2791 (set (make-local-variable 'rmail-header-style) header-style)
2792 ;; In case viewing the previous message sets the paragraph 2792 ;; In case viewing the previous message sets the paragraph
diff --git a/lisp/mail/smtpmail.el b/lisp/mail/smtpmail.el
index 1786608dd67..63c8f14085a 100644
--- a/lisp/mail/smtpmail.el
+++ b/lisp/mail/smtpmail.el
@@ -50,7 +50,7 @@
50 50
51;; Modified by Simon Josefsson <jas@pdc.kth.se>, 22/2/99, to support SMTP 51;; Modified by Simon Josefsson <jas@pdc.kth.se>, 22/2/99, to support SMTP
52;; Authentication by the AUTH mechanism. 52;; Authentication by the AUTH mechanism.
53;; See http://www.ietf.org/rfc/rfc2554.txt 53;; See https://www.ietf.org/rfc/rfc2554.txt
54 54
55;;; Code: 55;;; Code:
56;;; Dependencies 56;;; Dependencies
diff --git a/lisp/master.el b/lisp/master.el
index 387116a8fbd..32556a535f3 100644
--- a/lisp/master.el
+++ b/lisp/master.el
@@ -36,12 +36,12 @@
36;; SQL buffer. 36;; SQL buffer.
37;; 37;;
38;; (add-hook 'sql-mode-hook 38;; (add-hook 'sql-mode-hook
39;; (function (lambda () 39;; (lambda ()
40;; (master-mode t) 40;; (master-mode t)
41;; (master-set-slave sql-buffer)))) 41;; (master-set-slave sql-buffer)))
42;; (add-hook 'sql-set-sqli-hook 42;; (add-hook 'sql-set-sqli-hook
43;; (function (lambda () 43;; (lambda ()
44;; (master-set-slave sql-buffer)))) 44;; (master-set-slave sql-buffer)))
45 45
46;;; Thanks to all the people who helped me out: 46;;; Thanks to all the people who helped me out:
47;; 47;;
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index d3e434aec90..1b3e102cfa7 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -671,7 +671,7 @@ PROPS are additional properties."
671 &rest body) 671 &rest body)
672 "Define a menu-bar toggle command. 672 "Define a menu-bar toggle command.
673See `menu-bar-make-toggle-command', for which this is a 673See `menu-bar-make-toggle-command', for which this is a
674compatability wrapper. BODY is passed in as SETTING-SEXP in that macro." 674compatibility wrapper. BODY is passed in as SETTING-SEXP in that macro."
675 (declare (obsolete menu-bar-make-toggle-command "28.1")) 675 (declare (obsolete menu-bar-make-toggle-command "28.1"))
676 `(menu-bar-make-toggle-command ,command ,variable ,item-name ,message ,help 676 `(menu-bar-make-toggle-command ,command ,variable ,item-name ,message ,help
677 ,(and body 677 ,(and body
diff --git a/lisp/mh-e/ChangeLog.1 b/lisp/mh-e/ChangeLog.1
index dad3d1ec560..d30441f91a8 100644
--- a/lisp/mh-e/ChangeLog.1
+++ b/lisp/mh-e/ChangeLog.1
@@ -324,7 +324,7 @@
324 324
325 * mh-customize.el (mh-show-pgg-good-face) 325 * mh-customize.el (mh-show-pgg-good-face)
326 (mh-show-pgg-unknown-face, mh-show-pgg-bad-face): Faces added to 326 (mh-show-pgg-unknown-face, mh-show-pgg-bad-face): Faces added to
327 highlight buttons introduced for encrpted or signed MIME parts. 327 highlight buttons introduced for encrypted or signed MIME parts.
328 328
3292005-03-19 Bill Wohler <wohler@newt.com> 3292005-03-19 Bill Wohler <wohler@newt.com>
330 330
@@ -428,7 +428,7 @@
4282004-11-28 Jeffrey C Honig <jch@honig.net> 4282004-11-28 Jeffrey C Honig <jch@honig.net>
429 429
430 * mh-comp.el (mh-complete-word): Kill the *Completions* buffer in 430 * mh-comp.el (mh-complete-word): Kill the *Completions* buffer in
431 any cases where we belive we are done with it. Not perfect, but 431 any cases where we believe we are done with it. Not perfect, but
432 better than just leaving it around. 432 better than just leaving it around.
433 433
4342004-11-08 Satyaki Das <satyaki@theforce.stanford.edu> 4342004-11-08 Satyaki Das <satyaki@theforce.stanford.edu>
@@ -818,7 +818,7 @@
818 818
819 * Makefile: 819 * Makefile:
820 (mh-e-autoloads.el): Add target to make `mh-e-autoloads.el', a 820 (mh-e-autoloads.el): Add target to make `mh-e-autoloads.el', a
821 file containg usual entry commands into MH-E to be used for users 821 file containing usual entry commands into MH-E to be used for users
822 installing MH-E separately from Emacs. 822 installing MH-E separately from Emacs.
823 (XEMACS_LOADDEFS_FILE): New. Used to generate mh-loaddefs.el 823 (XEMACS_LOADDEFS_FILE): New. Used to generate mh-loaddefs.el
824 in XEmacs. 824 in XEmacs.
@@ -1201,7 +1201,7 @@
1201 1201
12022003-11-01 Peter S Galbraith <psg@debian.org> 12022003-11-01 Peter S Galbraith <psg@debian.org>
1203 1203
1204 * Makefile: Add target to make `mh-startup.el', a file containg 1204 * Makefile: Add target to make `mh-startup.el', a file containing
1205 usual entry commands into MH-E to be used for users installing 1205 usual entry commands into MH-E to be used for users installing
1206 MH-E separately from Emacs. 1206 MH-E separately from Emacs.
1207 1207
@@ -1914,7 +1914,7 @@
19142003-08-18 Peter S Galbraith <psg@debian.org> 19142003-08-18 Peter S Galbraith <psg@debian.org>
1915 1915
1916 * mh-comp.el (mh-letter-mode): Call `mh-find-path unconditionally, 1916 * mh-comp.el (mh-letter-mode): Call `mh-find-path unconditionally,
1917 like elsewehere in MH-E. 1917 like elsewhere in MH-E.
1918 1918
1919 * mh-utils.el (mh-find-path): Run setup code only if 1919 * mh-utils.el (mh-find-path): Run setup code only if
1920 `mh-find-path-run' is nil such that this is only done once. 1920 `mh-find-path-run' is nil such that this is only done once.
@@ -2588,7 +2588,7 @@
25882003-07-24 Satyaki Das <satyakid@stanford.edu> 25882003-07-24 Satyaki Das <satyakid@stanford.edu>
2589 2589
2590 * mh-e.el (mh-folder-message-menu, mh-folder-folder-menu): Use the 2590 * mh-e.el (mh-folder-message-menu, mh-folder-folder-menu): Use the
2591 predicate mh-outstanding-commands-p instead of its exapansion. 2591 predicate mh-outstanding-commands-p instead of its expansion.
2592 Also use the same label in both menus. 2592 Also use the same label in both menus.
2593 (mh-outstanding-commands-p): Generalized so that it will work in 2593 (mh-outstanding-commands-p): Generalized so that it will work in
2594 mh-show-mode buffers as well. 2594 mh-show-mode buffers as well.
@@ -3915,7 +3915,7 @@
39152003-04-22 Satyaki Das <satyaki@theforce.stanford.edu> 39152003-04-22 Satyaki Das <satyaki@theforce.stanford.edu>
3916 3916
3917 * mh-utils.el (mh-normalize-folder-name): Make the completion 3917 * mh-utils.el (mh-normalize-folder-name): Make the completion
3918 code work properly with XEmacs. This change is neeeded since 3918 code work properly with XEmacs. This change is needed since
3919 split-string behaves differently in XEmacs than it does in GNU 3919 split-string behaves differently in XEmacs than it does in GNU
3920 Emacs. 3920 Emacs.
3921 (mh-exec-cmd-error): Add a comment, so that we change it later on. 3921 (mh-exec-cmd-error): Add a comment, so that we change it later on.
@@ -7391,7 +7391,7 @@
7391 numbers. 7391 numbers.
7392 (mh-cmd-note): Mention mh-set-cmd-note in docstring. Also suggest 7392 (mh-cmd-note): Mention mh-set-cmd-note in docstring. Also suggest
7393 that it is updated dynamically only if mh-scan-format-file is t. 7393 that it is updated dynamically only if mh-scan-format-file is t.
7394 (mh-set-cmd-note): Grammer fix in docstring. 7394 (mh-set-cmd-note): Grammar fix in docstring.
7395 (mh-cmd-note): Noted that the first column is column number 0. 7395 (mh-cmd-note): Noted that the first column is column number 0.
7396 7396
7397 * mh-e.el (mh-scan-format-file): Added information about 7397 * mh-e.el (mh-scan-format-file): Added information about
@@ -7696,7 +7696,7 @@
7696 7696
7697 * mh-identity.el: New file. Multiple Identify support for MH-E. 7697 * mh-identity.el: New file. Multiple Identify support for MH-E.
7698 Used to easily set different fields such as From and Organization, 7698 Used to easily set different fields such as From and Organization,
7699 as well as diffrent signature files. This file won't be included 7699 as well as different signature files. This file won't be included
7700 with V7.0. 7700 with V7.0.
7701 7701
77022002-11-02 Bill Wohler <wohler@newt.com> 77022002-11-02 Bill Wohler <wohler@newt.com>
@@ -9458,10 +9458,10 @@
9458 9458
94592002-07-15 Mark D. Baushke <mdb@gnu.org> 94592002-07-15 Mark D. Baushke <mdb@gnu.org>
9460 9460
9461 * mh-utils.el (mm-decode): Use load for the Non-fatal depencency 9461 * mh-utils.el (mm-decode): Use load for the Non-fatal dependency
9462 on the mm-decode library. 9462 on the mm-decode library.
9463 * mh-mime.el (mm-decode, mm-uu, mm-view): Use load for the 9463 * mh-mime.el (mm-decode, mm-uu, mm-view): Use load for the
9464 Non-fatal depencencies on the mm-decode, mm-uu and mm-view 9464 Non-fatal dependencies on the mm-decode, mm-uu and mm-view
9465 libraries. 9465 libraries.
9466 9466
94672002-07-15 Satyaki Das <satyaki@theforce.stanford.edu> 94672002-07-15 Satyaki Das <satyaki@theforce.stanford.edu>
@@ -11356,7 +11356,7 @@
11356 4 was silly for my case. 11356 4 was silly for my case.
11357 * mh-e.el (mh-update-sequences): Check for nil value of 11357 * mh-e.el (mh-update-sequences): Check for nil value of
11358 mh-current-folder, which happens if mh-summary-height < 4 11358 mh-current-folder, which happens if mh-summary-height < 4
11359 although I haven't tracked doen why that happens. 11359 although I haven't tracked down why that happens.
11360 11360
113612001-10-22 Peter S Galbraith <psg@debian.org> 113612001-10-22 Peter S Galbraith <psg@debian.org>
11362 11362
diff --git a/lisp/mh-e/mh-compat.el b/lisp/mh-e/mh-compat.el
index 92b7d801c7b..c02b095b2ea 100644
--- a/lisp/mh-e/mh-compat.el
+++ b/lisp/mh-e/mh-compat.el
@@ -134,7 +134,7 @@ introduced in Emacs 22."
134 134
135(defmacro mh-face-background (face &optional frame inherit) 135(defmacro mh-face-background (face &optional frame inherit)
136 "Return the background color name of face, or nil if unspecified. 136 "Return the background color name of face, or nil if unspecified.
137See documentation for `back-foreground' for a description of the 137See documentation for `face-background' for a description of the
138arguments FACE, FRAME, and INHERIT. 138arguments FACE, FRAME, and INHERIT.
139This macro is used by Emacs versions that lack an INHERIT argument, 139This macro is used by Emacs versions that lack an INHERIT argument,
140introduced in Emacs 22." 140introduced in Emacs 22."
diff --git a/lisp/mh-e/mh-e.el b/lisp/mh-e/mh-e.el
index dd05d691c91..3ac5c8f7aed 100644
--- a/lisp/mh-e/mh-e.el
+++ b/lisp/mh-e/mh-e.el
@@ -1550,7 +1550,7 @@ as the result is undefined."
1550 ,(append 1550 ,(append
1551 '(radio) 1551 '(radio)
1552 (mapcar 1552 (mapcar
1553 (function (lambda (arg) `(const ,arg))) 1553 (lambda (arg) `(const ,arg))
1554 (mapcar 'car mh-identity-list)))) 1554 (mapcar 'car mh-identity-list))))
1555 (cons :tag "Fcc Field" 1555 (cons :tag "Fcc Field"
1556 (const "fcc") 1556 (const "fcc")
@@ -1577,7 +1577,7 @@ See `mh-identity-list'."
1577 :type (append 1577 :type (append
1578 '(radio) 1578 '(radio)
1579 (cons '(const :tag "None" nil) 1579 (cons '(const :tag "None" nil)
1580 (mapcar (function (lambda (arg) `(const ,arg))) 1580 (mapcar (lambda (arg) `(const ,arg))
1581 (mapcar 'car mh-identity-list)))) 1581 (mapcar 'car mh-identity-list))))
1582 :group 'mh-identity 1582 :group 'mh-identity
1583 :package-version '(MH-E . "7.1")) 1583 :package-version '(MH-E . "7.1"))
@@ -1914,7 +1914,7 @@ of images into \"X-Face:\" header fields (see URL
1914 1914
1915Use the \"make-face\" script to convert a JPEG image to the higher 1915Use the \"make-face\" script to convert a JPEG image to the higher
1916resolution, color, \"Face:\" header field (see URL 1916resolution, color, \"Face:\" header field (see URL
1917`http://quimby.gnus.org/circus/face/make-face'). 1917`https://quimby.gnus.org/circus/face/make-face').
1918 1918
1919The URL of any image can be used for the \"X-Image-URL:\" field and no 1919The URL of any image can be used for the \"X-Image-URL:\" field and no
1920processing of the image is required. 1920processing of the image is required.
@@ -2420,11 +2420,11 @@ of citations entirely, choose \"None\"."
2420 2420
2421;; These entries have been intentionally excluded by the developers. 2421;; These entries have been intentionally excluded by the developers.
2422;; "Comments:" ; RFC 822 (or later) - show this one 2422;; "Comments:" ; RFC 822 (or later) - show this one
2423;; "Fax:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2423;; "Fax:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2424;; "Mail-System-Version:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2424;; "Mail-System-Version:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2425;; "Mailer:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2425;; "Mailer:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2426;; "Organization:" ; 2426;; "Organization:" ;
2427;; "Phone:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2427;; "Phone:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2428;; "Reply-By:" ; RFC 2156 2428;; "Reply-By:" ; RFC 2156
2429;; "Reply-To:" ; RFC 822 (or later) 2429;; "Reply-To:" ; RFC 822 (or later)
2430;; "Sender:" ; 2430;; "Sender:" ;
@@ -2437,13 +2437,13 @@ of citations entirely, choose \"None\"."
2437;; Mention source, if known. 2437;; Mention source, if known.
2438(defvar mh-invisible-header-fields-internal 2438(defvar mh-invisible-header-fields-internal
2439 '( 2439 '(
2440 "Abuse-Reports-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2440 "Abuse-Reports-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2441 "Accept-Language:" 2441 "Accept-Language:"
2442 "AcceptLanguage:" 2442 "AcceptLanguage:"
2443 "Accreditor:" ; Habeas 2443 "Accreditor:" ; Habeas
2444 "Also-Control:" ; H. Spencer: News Article Format and Transmission, June 1994 2444 "Also-Control:" ; H. Spencer: News Article Format and Transmission, June 1994
2445 "Alternate-recipient:" ; RFC 2156 2445 "Alternate-recipient:" ; RFC 2156
2446 "Approved-By:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2446 "Approved-By:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2447 "Approved:" ; RFC 1036 2447 "Approved:" ; RFC 1036
2448 "Article-Names:" ; H. Spencer: News Article Format and Transmission, June 1994 2448 "Article-Names:" ; H. Spencer: News Article Format and Transmission, June 1994
2449 "Article-Updates:" ; H. Spencer: News Article Format and Transmission, June 1994 2449 "Article-Updates:" ; H. Spencer: News Article Format and Transmission, June 1994
@@ -2454,7 +2454,7 @@ of citations entirely, choose \"None\"."
2454 "Bounces-To:" 2454 "Bounces-To:"
2455 "Bounces_to:" 2455 "Bounces_to:"
2456 "Bytes:" 2456 "Bytes:"
2457 "Cancel-Key:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2457 "Cancel-Key:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2458 "Cancel-Lock:" ; NNTP posts 2458 "Cancel-Lock:" ; NNTP posts
2459 "Comment:" ; Shows up with DomainKeys 2459 "Comment:" ; Shows up with DomainKeys
2460 "Content-" ; RFC 2045, 1123, 1766, 1864, 2045, 2110, 2156, 2183, 2912 2460 "Content-" ; RFC 2045, 1123, 1766, 1864, 2045, 2110, 2156, 2183, 2912
@@ -2475,14 +2475,14 @@ of citations entirely, choose \"None\"."
2475 "DomainKey-Signature:" 2475 "DomainKey-Signature:"
2476 "Encoding:" ; RFC 1505 2476 "Encoding:" ; RFC 1505
2477 "Envelope-to:" 2477 "Envelope-to:"
2478 "Errors-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2478 "Errors-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2479 "Expires:" ; RFC 1036 2479 "Expires:" ; RFC 1036
2480 "Expiry-Date:" ; RFC 2156 2480 "Expiry-Date:" ; RFC 2156
2481 "Face:" ; Gnus Face header 2481 "Face:" ; Gnus Face header
2482 "Followup-To:" ; RFC 1036 2482 "Followup-To:" ; RFC 1036
2483 "For-Approval:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2483 "For-Approval:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2484 "For-Comment:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2484 "For-Comment:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2485 "For-Handling:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2485 "For-Handling:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2486 "Forwarded:" ; MH 2486 "Forwarded:" ; MH
2487 "From " ; sendmail 2487 "From " ; sendmail
2488 "Generate-Delivery-Report:" ; RFC 2156 2488 "Generate-Delivery-Report:" ; RFC 2156
@@ -2493,12 +2493,12 @@ of citations entirely, choose \"None\"."
2493 "Language:" ; RFC 2156 2493 "Language:" ; RFC 2156
2494 "Lines:" ; RFC 1036 2494 "Lines:" ; RFC 1036
2495 "List-" ; RFC 2369, 2919 2495 "List-" ; RFC 2369, 2919
2496 "Mail-Copies-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2496 "Mail-Copies-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2497 "Mail-Followup-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2497 "Mail-Followup-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2498 "Mail-from:" ; MH 2498 "Mail-from:" ; MH
2499 "Mail-Reply-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2499 "Mail-Reply-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2500 "Mailing-List:" ; Egroups/yahoogroups mailing list manager 2500 "Mailing-List:" ; Egroups/yahoogroups mailing list manager
2501 "Message-Content:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2501 "Message-Content:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2502 "Message-ID:" ; RFC 822 (or later) 2502 "Message-ID:" ; RFC 822 (or later)
2503 "Message-Type:" ; RFC 2156 2503 "Message-Type:" ; RFC 2156
2504 "Mime-Version" ; RFC 2045 2504 "Mime-Version" ; RFC 2045
@@ -2516,42 +2516,42 @@ of citations entirely, choose \"None\"."
2516 "Original-Recipient:" ; RFC 2298 2516 "Original-Recipient:" ; RFC 2298
2517 "Original-To:" ; mail to news 2517 "Original-To:" ; mail to news
2518 "Original-X-" ; mail to news 2518 "Original-X-" ; mail to news
2519 "Origination-Client:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2519 "Origination-Client:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2520 "Originator:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2520 "Originator:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2521 "P1-Content-Type:" ; X400 2521 "P1-Content-Type:" ; X400
2522 "P1-Message-Id:" ; X400 2522 "P1-Message-Id:" ; X400
2523 "P1-Recipient:" ; X400 2523 "P1-Recipient:" ; X400
2524 "Path:" ; RFC 1036 2524 "Path:" ; RFC 1036
2525 "Pics-Label:" ; W3C 2525 "Pics-Label:" ; W3C
2526 "Posted-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2526 "Posted-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2527 "Precedence:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2527 "Precedence:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2528 "Prev-Resent" ; MH 2528 "Prev-Resent" ; MH
2529 "Prevent-NonDelivery-Report:" ; RFC 2156 2529 "Prevent-NonDelivery-Report:" ; RFC 2156
2530 "Priority:" ; RFC 2156 2530 "Priority:" ; RFC 2156
2531 "Read-Receipt-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2531 "Read-Receipt-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2532 "Received-SPF:" ; Gmail 2532 "Received-SPF:" ; Gmail
2533 "Received:" ; RFC 822 (or later) 2533 "Received:" ; RFC 822 (or later)
2534 "References:" ; RFC 822 (or later) 2534 "References:" ; RFC 822 (or later)
2535 "Registered-Mail-Reply-Requested-By:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2535 "Registered-Mail-Reply-Requested-By:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2536 "Remailed-" ; MH 2536 "Remailed-" ; MH
2537 "Replaces:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2537 "Replaces:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2538 "Replied:" ; MH 2538 "Replied:" ; MH
2539 "Resent-" ; RFC 822 (or later) 2539 "Resent-" ; RFC 822 (or later)
2540 "Return-Path:" ; RFC 822 (or later) 2540 "Return-Path:" ; RFC 822 (or later)
2541 "Return-Receipt-Requested:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2541 "Return-Receipt-Requested:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2542 "Return-Receipt-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2542 "Return-Receipt-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2543 "Seal-Send-Time:" 2543 "Seal-Send-Time:"
2544 "See-Also:" ; H. Spencer: News Article Format and Transmission, June 1994 2544 "See-Also:" ; H. Spencer: News Article Format and Transmission, June 1994
2545 "Sensitivity:" ; RFC 2156, 2421 2545 "Sensitivity:" ; RFC 2156, 2421
2546 "Speech-Act:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2546 "Speech-Act:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2547 "Status:" ; sendmail 2547 "Status:" ; sendmail
2548 "Supersedes:" ; H. Spencer: News Article Format and Transmission, June 1994 2548 "Supersedes:" ; H. Spencer: News Article Format and Transmission, June 1994
2549 "Telefax:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2549 "Telefax:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2550 "Thread-" 2550 "Thread-"
2551 "Thread-Index:" 2551 "Thread-Index:"
2552 "Thread-Topic:" 2552 "Thread-Topic:"
2553 "Translated-By:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2553 "Translated-By:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2554 "Translation-Of:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2554 "Translation-Of:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2555 "Ua-Content-Id:" ; X400 2555 "Ua-Content-Id:" ; X400
2556 "Via:" ; MH 2556 "Via:" ; MH
2557 "X-Abuse-and-DMCA-" 2557 "X-Abuse-and-DMCA-"
@@ -2559,7 +2559,7 @@ of citations entirely, choose \"None\"."
2559 "X-Accept-Language:" ; Netscape/Mozilla 2559 "X-Accept-Language:" ; Netscape/Mozilla
2560 "X-Ack:" 2560 "X-Ack:"
2561 "X-ACL-Warn:" ; http://www.exim.org 2561 "X-ACL-Warn:" ; http://www.exim.org
2562 "X-Admin:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2562 "X-Admin:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2563 "X-Administrivia-To:" 2563 "X-Administrivia-To:"
2564 "X-AMAZON" ; Amazon.com 2564 "X-AMAZON" ; Amazon.com
2565 "X-AnalysisOut:" ; Exchange 2565 "X-AnalysisOut:" ; Exchange
@@ -2594,9 +2594,9 @@ of citations entirely, choose \"None\"."
2594 "X-CanIt-Geo:" ; IEEE spam filter 2594 "X-CanIt-Geo:" ; IEEE spam filter
2595 "X-Cloudmark-SP-" ; Cloudmark (www.cloudmark.com) 2595 "X-Cloudmark-SP-" ; Cloudmark (www.cloudmark.com)
2596 "X-Comment:" ; AT&T Mailennium 2596 "X-Comment:" ; AT&T Mailennium
2597 "X-Complaints-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2597 "X-Complaints-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2598 "X-Completed:" 2598 "X-Completed:"
2599 "X-Confirm-Reading-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2599 "X-Confirm-Reading-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2600 "X-Content-Filtered-By:" 2600 "X-Content-Filtered-By:"
2601 "X-ContentStamp:" ; NetZero 2601 "X-ContentStamp:" ; NetZero
2602 "X-Country-Chain:" ; http://www.declude.com/x-note.htm 2602 "X-Country-Chain:" ; http://www.declude.com/x-note.htm
@@ -2622,13 +2622,13 @@ of citations entirely, choose \"None\"."
2622 "X-Email-Type-Id:" ; Paypal http://www.paypal.com 2622 "X-Email-Type-Id:" ; Paypal http://www.paypal.com
2623 "X-Enigmail-Version:" 2623 "X-Enigmail-Version:"
2624 "X-Envelope-Date:" ; GNU mailutils 2624 "X-Envelope-Date:" ; GNU mailutils
2625 "X-Envelope-From:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2625 "X-Envelope-From:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2626 "X-Envelope-Sender:" 2626 "X-Envelope-Sender:"
2627 "X-Envelope-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2627 "X-Envelope-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2628 "X-EviteMessageId:" ; evite.com 2628 "X-EviteMessageId:" ; evite.com
2629 "X-Evolution:" ; Evolution mail client 2629 "X-Evolution:" ; Evolution mail client
2630 "X-ExtLoop" 2630 "X-ExtLoop"
2631 "X-Face:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2631 "X-Face:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2632 "X-Facebook" ; Facebook 2632 "X-Facebook" ; Facebook
2633 "X-FB-SS:" 2633 "X-FB-SS:"
2634 "X-fmx-" 2634 "X-fmx-"
@@ -2652,7 +2652,7 @@ of citations entirely, choose \"None\"."
2652 "X-Identity:" ; http://www.declude.com/x-note.htm 2652 "X-Identity:" ; http://www.declude.com/x-note.htm
2653 "X-IEEE-UCE-" ; IEEE spam filter 2653 "X-IEEE-UCE-" ; IEEE spam filter
2654 "X-Image-URL:" 2654 "X-Image-URL:"
2655 "X-IMAP:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2655 "X-IMAP:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2656 "X-Info:" ; NTMail 2656 "X-Info:" ; NTMail
2657 "X-IronPort-" ; IronPort AV 2657 "X-IronPort-" ; IronPort AV
2658 "X-ISI-4-30-3-MailScanner:" 2658 "X-ISI-4-30-3-MailScanner:"
@@ -2662,12 +2662,12 @@ of citations entirely, choose \"None\"."
2662 "X-Juno-" ; Juno 2662 "X-Juno-" ; Juno
2663 "X-Key:" 2663 "X-Key:"
2664 "X-Launchpad-" ; plaunchpad.net 2664 "X-Launchpad-" ; plaunchpad.net
2665 "X-List-Host:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2665 "X-List-Host:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2666 "X-List-Subscribe:" ; Unknown mailing list managers 2666 "X-List-Subscribe:" ; Unknown mailing list managers
2667 "X-List-Unsubscribe:" ; Unknown mailing list managers 2667 "X-List-Unsubscribe:" ; Unknown mailing list managers
2668 "X-Listprocessor-" ; ListProc(tm) by CREN 2668 "X-Listprocessor-" ; ListProc(tm) by CREN
2669 "X-Listserver:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2669 "X-Listserver:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2670 "X-Loop:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2670 "X-Loop:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2671 "X-Lrde-Mailscanner:" 2671 "X-Lrde-Mailscanner:"
2672 "X-Lumos-SenderID:" ; Roving ConstantContact 2672 "X-Lumos-SenderID:" ; Roving ConstantContact
2673 "X-mail_abuse_inquiries:" ; http://www.salesforce.com 2673 "X-mail_abuse_inquiries:" ; http://www.salesforce.com
@@ -2693,18 +2693,18 @@ of citations entirely, choose \"None\"."
2693 "X-MessageWall-Score:" ; Unknown mailing list manager, AUC TeX 2693 "X-MessageWall-Score:" ; Unknown mailing list manager, AUC TeX
2694 "X-MHE-Checksum:" ; Checksum added during index search 2694 "X-MHE-Checksum:" ; Checksum added during index search
2695 "X-MIME-Autoconverted:" ; sendmail 2695 "X-MIME-Autoconverted:" ; sendmail
2696 "X-MIMEOLE:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/sendmail 2696 "X-MIMEOLE:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/sendmail
2697 "X-MIMETrack:" 2697 "X-MIMETrack:"
2698 "X-Mms-" ; T-Mobile pictures 2698 "X-Mms-" ; T-Mobile pictures
2699 "X-Mozilla-Status:" ; Netscape/Mozilla 2699 "X-Mozilla-Status:" ; Netscape/Mozilla
2700 "X-MS-" ; MS Outlook 2700 "X-MS-" ; MS Outlook
2701 "X-Msmail-" ; MS Outlook 2701 "X-Msmail-" ; MS Outlook
2702 "X-MSMail-Priority" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2702 "X-MSMail-Priority" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2703 "X-MXL-Hash:" 2703 "X-MXL-Hash:"
2704 "X-NAI-Spam-" ; Network Associates Inc. SpamKiller 2704 "X-NAI-Spam-" ; Network Associates Inc. SpamKiller
2705 "X-News:" ; News 2705 "X-News:" ; News
2706 "X-Newsreader:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2706 "X-Newsreader:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2707 "X-No-Archive:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2707 "X-No-Archive:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2708 "X-Notes-Item:" ; Lotus Notes Domino structured header 2708 "X-Notes-Item:" ; Lotus Notes Domino structured header
2709 "X-Notification-" ; Google+ 2709 "X-Notification-" ; Google+
2710 "X-Notifications:" ; Google+ 2710 "X-Notifications:" ; Google+
@@ -2713,7 +2713,7 @@ of citations entirely, choose \"None\"."
2713 "X-ORBL:" 2713 "X-ORBL:"
2714 "X-Orcl-Content-Type:" 2714 "X-Orcl-Content-Type:"
2715 "X-Organization:" 2715 "X-Organization:"
2716 "X-Original-Arrival-Type:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2716 "X-Original-Arrival-Type:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2717 "X-Original-Complaints-To:" 2717 "X-Original-Complaints-To:"
2718 "X-Original-Date:" ; SourceForge mailing list manager 2718 "X-Original-Date:" ; SourceForge mailing list manager
2719 "X-Original-To:" 2719 "X-Original-To:"
@@ -2733,10 +2733,10 @@ of citations entirely, choose \"None\"."
2733 "X-Provags-ID:" 2733 "X-Provags-ID:"
2734 "X-PSTN-" 2734 "X-PSTN-"
2735 "X-Qotd-" ; User added 2735 "X-Qotd-" ; User added
2736 "X-RCPT-TO:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2736 "X-RCPT-TO:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2737 "X-Received-Date:" 2737 "X-Received-Date:"
2738 "X-Received:" 2738 "X-Received:"
2739 "X-Report-Abuse-To:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2739 "X-Report-Abuse-To:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2740 "X-Request-" 2740 "X-Request-"
2741 "X-Resolved-to:" ; fastmail.fm 2741 "X-Resolved-to:" ; fastmail.fm
2742 "X-Return-Path-Hint:" ; Roving ConstantContact 2742 "X-Return-Path-Hint:" ; Roving ConstantContact
@@ -2753,7 +2753,7 @@ of citations entirely, choose \"None\"."
2753 "X-SBRule:" ; Spam 2753 "X-SBRule:" ; Spam
2754 "X-Scanned-By:" 2754 "X-Scanned-By:"
2755 "X-Sender-ID:" ; Google+ 2755 "X-Sender-ID:" ; Google+
2756 "X-Sender:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2756 "X-Sender:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2757 "X-Sendergroup:" ; Cisco Email Security (formerly IronPort; http://www.ironport.com) 2757 "X-Sendergroup:" ; Cisco Email Security (formerly IronPort; http://www.ironport.com)
2758 "X-Server-Date:" 2758 "X-Server-Date:"
2759 "X-Server-Uuid:" 2759 "X-Server-Uuid:"
@@ -2776,11 +2776,11 @@ of citations entirely, choose \"None\"."
2776 "X-TM-IMSS-Message-ID:" ; http://www.trendmicro.com 2776 "X-TM-IMSS-Message-ID:" ; http://www.trendmicro.com
2777 "X-Trace:" 2777 "X-Trace:"
2778 "X-UID" 2778 "X-UID"
2779 "X-UIDL:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2779 "X-UIDL:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2780 "X-Unity" 2780 "X-Unity"
2781 "X-UNTD-" ; NetZero 2781 "X-UNTD-" ; NetZero
2782 "X-URI:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2782 "X-URI:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2783 "X-URL:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2783 "X-URL:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2784 "X-USANET-" ; usa.net 2784 "X-USANET-" ; usa.net
2785 "X-Usenet-Provider" 2785 "X-Usenet-Provider"
2786 "X-UserInfo1:" 2786 "X-UserInfo1:"
@@ -2792,7 +2792,7 @@ of citations entirely, choose \"None\"."
2792 "X-VSMLoop:" ; NTMail 2792 "X-VSMLoop:" ; NTMail
2793 "X-WebTV-Signature:" 2793 "X-WebTV-Signature:"
2794 "X-Wss-Id:" ; Worldtalk gateways 2794 "X-Wss-Id:" ; Worldtalk gateways
2795 "X-X-Sender:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2795 "X-X-Sender:" ; https://people.dsv.su.se/~jpalme/ietf/mail-headers/
2796 "X-XPT-XSL-Name:" ; Paypal http://www.paypal.com 2796 "X-XPT-XSL-Name:" ; Paypal http://www.paypal.com
2797 "X-xsi-" 2797 "X-xsi-"
2798 "X-XWALL-" ; http://www.dataenter.co.at/doc/xwall_undocumented_config.htm 2798 "X-XWALL-" ; http://www.dataenter.co.at/doc/xwall_undocumented_config.htm
@@ -3036,7 +3036,7 @@ supports it.
3036The first header field used, if present, is the Gnus-specific 3036The first header field used, if present, is the Gnus-specific
3037\"Face:\" field. The \"Face:\" field appeared in GNU Emacs 21 and 3037\"Face:\" field. The \"Face:\" field appeared in GNU Emacs 21 and
3038XEmacs. For more information, see URL 3038XEmacs. For more information, see URL
3039`http://quimby.gnus.org/circus/face/'. Next is the traditional 3039`https://quimby.gnus.org/circus/face/'. Next is the traditional
3040\"X-Face:\" header field. The display of this field requires the 3040\"X-Face:\" header field. The display of this field requires the
3041\"uncompface\" program (see URL 3041\"uncompface\" program (see URL
3042`ftp://ftp.cs.indiana.edu/pub/faces/compface/compface.tar.z'). Recent 3042`ftp://ftp.cs.indiana.edu/pub/faces/compface/compface.tar.z'). Recent
@@ -3049,7 +3049,7 @@ header field if neither the \"Face:\" nor the \"X-Face:\" fields are
3049present. The display of the images requires \"wget\" (see URL 3049present. The display of the images requires \"wget\" (see URL
3050`https://www.gnu.org/software/wget/wget.html'), \"fetch\", or \"curl\" 3050`https://www.gnu.org/software/wget/wget.html'), \"fetch\", or \"curl\"
3051to fetch the image and the \"convert\" program from the ImageMagick 3051to fetch the image and the \"convert\" program from the ImageMagick
3052suite (see URL `http://www.imagemagick.org/'). Of the three header 3052suite (see URL `https://www.imagemagick.org/'). Of the three header
3053fields this is the most efficient in terms of network usage since the 3053fields this is the most efficient in terms of network usage since the
3054image doesn't need to be transmitted with every single mail. 3054image doesn't need to be transmitted with every single mail.
3055 3055
diff --git a/lisp/mh-e/mh-junk.el b/lisp/mh-e/mh-junk.el
index eea04c63783..ebc5038a194 100644
--- a/lisp/mh-e/mh-junk.el
+++ b/lisp/mh-e/mh-junk.el
@@ -58,7 +58,7 @@ program, see:
58(defun mh-blacklist-a-msg (message) 58(defun mh-blacklist-a-msg (message)
59 "Blacklist MESSAGE. 59 "Blacklist MESSAGE.
60If MESSAGE is nil then the message at point is blacklisted. 60If MESSAGE is nil then the message at point is blacklisted.
61The hook `mh-blacklisted-msg-hook' is called after you mark a message 61The hook `mh-blacklist-msg-hook' is called after you mark a message
62for blacklisting." 62for blacklisting."
63 (save-excursion 63 (save-excursion
64 (if (numberp message) 64 (if (numberp message)
diff --git a/lisp/mh-e/mh-thread.el b/lisp/mh-e/mh-thread.el
index fc30187245d..43a589aeca2 100644
--- a/lisp/mh-e/mh-thread.el
+++ b/lisp/mh-e/mh-thread.el
@@ -26,7 +26,7 @@
26 26
27;; The threading portion of this files tries to implement the 27;; The threading portion of this files tries to implement the
28;; algorithm described at: 28;; algorithm described at:
29;; http://www.jwz.org/doc/threading.html 29;; https://www.jwz.org/doc/threading.html
30;; It also begins to implement the threading section of the IMAP - 30;; It also begins to implement the threading section of the IMAP -
31;; SORT and THREAD Extensions RFC at: 31;; SORT and THREAD Extensions RFC at:
32;; http://tools.ietf.org/html/rfc5256 32;; http://tools.ietf.org/html/rfc5256
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index 3e23c05bb0c..427636e8662 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -3110,12 +3110,12 @@ or a symbol, see `completion-pcm--merge-completions'."
3110 (while p 3110 (while p
3111 (pcase p 3111 (pcase p
3112 (`(,(or 'any 'any-delim) point . ,rest) (setq p `(point . ,rest))) 3112 (`(,(or 'any 'any-delim) point . ,rest) (setq p `(point . ,rest)))
3113 ;; This is not just a performance improvement: it also turns 3113 ;; This is not just a performance improvement: it turns a
3114 ;; a terminating `point' into an implicit `any', which 3114 ;; terminating `point' into an implicit `any', which affects
3115 ;; affects the final position of point (because `point' gets 3115 ;; the final position of point (because `point' gets turned
3116 ;; turned into a non-greedy ".*?" regexp whereas we need 3116 ;; into a non-greedy ".*?" regexp whereas we need it to be
3117 ;; it the be greedy when it's at the end, see bug#38458). 3117 ;; greedy when it's at the end, see bug#38458).
3118 (`(,(pred symbolp)) (setq p nil)) ;Implicit terminating `any'. 3118 (`(point) (setq p nil)) ;Implicit terminating `any'.
3119 (_ (push (pop p) n)))) 3119 (_ (push (pop p) n))))
3120 (nreverse n))) 3120 (nreverse n)))
3121 3121
diff --git a/lisp/misearch.el b/lisp/misearch.el
index 958c10a1bf6..6ec10fe2c2e 100644
--- a/lisp/misearch.el
+++ b/lisp/misearch.el
@@ -236,11 +236,7 @@ set in `multi-isearch-buffers' or `multi-isearch-buffers-regexp'."
236 (buf nil) 236 (buf nil)
237 (ido-ignore-item-temp-list bufs)) 237 (ido-ignore-item-temp-list bufs))
238 (while (not (string-equal 238 (while (not (string-equal
239 (setq buf (read-buffer 239 (setq buf (read-buffer (multi-occur--prompt) nil t))
240 (if (eq read-buffer-function #'ido-read-buffer)
241 "Next buffer to search (C-j to end): "
242 "Next buffer to search (RET to end): ")
243 nil t))
244 "")) 240 ""))
245 (add-to-list 'bufs buf) 241 (add-to-list 'bufs buf)
246 (setq ido-ignore-item-temp-list bufs)) 242 (setq ido-ignore-item-temp-list bufs))
diff --git a/lisp/mouse.el b/lisp/mouse.el
index 06fdca12b9c..9e7eee61e57 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -2206,8 +2206,8 @@ and selects that window."
2206 ;; Sort the list to put the most popular major modes first. 2206 ;; Sort the list to put the most popular major modes first.
2207 (setq split-by-major-mode 2207 (setq split-by-major-mode
2208 (sort split-by-major-mode 2208 (sort split-by-major-mode
2209 (function (lambda (elt1 elt2) 2209 (lambda (elt1 elt2)
2210 (> (length elt1) (length elt2)))))) 2210 (> (length elt1) (length elt2)))))
2211 ;; Make a separate submenu for each major mode 2211 ;; Make a separate submenu for each major mode
2212 ;; that has more than one buffer, 2212 ;; that has more than one buffer,
2213 ;; unless all the remaining buffers are less than 1/10 of them. 2213 ;; unless all the remaining buffers are less than 1/10 of them.
@@ -2248,8 +2248,8 @@ and selects that window."
2248 head) 2248 head)
2249 (setq buffers 2249 (setq buffers
2250 (sort buffers 2250 (sort buffers
2251 (function (lambda (elt1 elt2) 2251 (lambda (elt1 elt2)
2252 (string< (buffer-name elt1) (buffer-name elt2)))))) 2252 (string< (buffer-name elt1) (buffer-name elt2)))))
2253 (setq tail buffers) 2253 (setq tail buffers)
2254 (while tail 2254 (while tail
2255 (or (eq ?\s (aref (buffer-name (car tail)) 0)) 2255 (or (eq ?\s (aref (buffer-name (car tail)) 0))
diff --git a/lisp/net/dbus.el b/lisp/net/dbus.el
index 23ba191e3cf..48712a9c3d8 100644
--- a/lisp/net/dbus.el
+++ b/lisp/net/dbus.el
@@ -165,6 +165,9 @@ See URL `https://dbus.freedesktop.org/doc/dbus-specification.html#bus-messages-b
165;; </signal> 165;; </signal>
166;; </interface> 166;; </interface>
167 167
168(defconst dbus-annotation-deprecated (concat dbus-interface-dbus ".Deprecated")
169 "An annotation indicating a deprecated interface, method, signal, or property.")
170
168 171
169;;; Default D-Bus errors. 172;;; Default D-Bus errors.
170 173
diff --git a/lisp/net/eww.el b/lisp/net/eww.el
index 1ed87c66250..fd9fe98439d 100644
--- a/lisp/net/eww.el
+++ b/lisp/net/eww.el
@@ -450,11 +450,11 @@ killed after rendering."
450 450
451;;;###autoload 451;;;###autoload
452(defun eww-search-words () 452(defun eww-search-words ()
453 "Search the web for the text between BEG and END. 453 "Search the web for the text in the region.
454If region is active (and not whitespace), search the web for 454If region is active (and not whitespace), search the web for
455the text between BEG and END. Else, prompt the user for a search 455the text between region beginning and end. Else, prompt the
456string. See the `eww-search-prefix' variable for the search 456user for a search string. See the variable `eww-search-prefix'
457engine used." 457for the search engine used."
458 (interactive) 458 (interactive)
459 (if (use-region-p) 459 (if (use-region-p)
460 (let ((region-string (buffer-substring (region-beginning) (region-end)))) 460 (let ((region-string (buffer-substring (region-beginning) (region-end))))
diff --git a/lisp/net/gnutls.el b/lisp/net/gnutls.el
index e713c94117b..8ad721964dd 100644
--- a/lisp/net/gnutls.el
+++ b/lisp/net/gnutls.el
@@ -348,8 +348,11 @@ defaults to GNUTLS_VERIFY_ALLOW_X509_V1_CA_CRT."
348 (t nil)))) 348 (t nil))))
349 (min-prime-bits (or min-prime-bits gnutls-min-prime-bits))) 349 (min-prime-bits (or min-prime-bits gnutls-min-prime-bits)))
350 350
351 (when verify-hostname-error 351 ;; Only add :hostname if `verify-error' is not t, since t
352 (push :hostname verify-error)) 352 ;; means "include :hostname" Bug#38602.
353 (and verify-hostname-error
354 (not (eq verify-error t))
355 (push :hostname verify-error))
353 356
354 `(:priority ,priority-string 357 `(:priority ,priority-string
355 :hostname ,hostname 358 :hostname ,hostname
diff --git a/lisp/net/net-utils.el b/lisp/net/net-utils.el
index ef3651b0335..8c7d33a67d4 100644
--- a/lisp/net/net-utils.el
+++ b/lisp/net/net-utils.el
@@ -771,7 +771,7 @@ This command uses `smbclient-program' to connect to HOST."
771;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 771;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
772 772
773;; Full list is available at: 773;; Full list is available at:
774;; http://www.iana.org/assignments/port-numbers 774;; https://www.iana.org/assignments/port-numbers
775(defvar network-connection-service-alist 775(defvar network-connection-service-alist
776 (list 776 (list
777 (cons 'echo 7) 777 (cons 'echo 7)
diff --git a/lisp/net/newst-backend.el b/lisp/net/newst-backend.el
index b8f1bccd788..f45abf780f7 100644
--- a/lisp/net/newst-backend.el
+++ b/lisp/net/newst-backend.el
@@ -68,9 +68,6 @@ considered to be running if the newsticker timer list is not empty."
68;; Hard-coding URLs like this is a recipe for propagating obsolete info. 68;; Hard-coding URLs like this is a recipe for propagating obsolete info.
69(defconst newsticker--raw-url-list-defaults 69(defconst newsticker--raw-url-list-defaults
70 '( 70 '(
71 ;; 2017/12: no response.
72;;; ("CNET News.com"
73;;; "http://export.cnet.com/export/feeds/news/rss/1,11176,,00.xml")
74 ("Debian Security Advisories" 71 ("Debian Security Advisories"
75 "http://www.debian.org/security/dsa.en.rdf") 72 "http://www.debian.org/security/dsa.en.rdf")
76 ("Debian Security Advisories - Long format" 73 ("Debian Security Advisories - Long format"
@@ -81,11 +78,6 @@ considered to be running if the newsticker timer list is not empty."
81 3600) 78 3600)
82 ("LWN (Linux Weekly News)" 79 ("LWN (Linux Weekly News)"
83 "https://lwn.net/headlines/rss") 80 "https://lwn.net/headlines/rss")
84 ;; Not updated since 2010.
85;;; ("NY Times: Technology"
86;;; "http://www.nytimes.com/services/xml/rss/userland/Technology.xml")
87;;; ("NY Times"
88;;; "http://www.nytimes.com/services/xml/rss/userland/HomePage.xml")
89 ("Quote of the day" 81 ("Quote of the day"
90 "http://feeds.feedburner.com/quotationspage/qotd" 82 "http://feeds.feedburner.com/quotationspage/qotd"
91 "07:00" 83 "07:00"
@@ -898,7 +890,7 @@ Argument BUFFER is the buffer of the retrieval process."
898 ;; Atom 1.0 feed. 890 ;; Atom 1.0 feed.
899 891
900 ;; (and (eq 'feed (xml-node-name topnode)) 892 ;; (and (eq 'feed (xml-node-name topnode))
901 ;; (string= "http://www.w3.org/2005/Atom" 893 ;; (string= "https://www.w3.org/2005/Atom"
902 ;; (xml-get-attribute topnode 'xmlns))) 894 ;; (xml-get-attribute topnode 'xmlns)))
903 (setq image-url (newsticker--get-logo-url-atom-1.0 topnode)) 895 (setq image-url (newsticker--get-logo-url-atom-1.0 topnode))
904 (setq icon-url (newsticker--get-icon-url-atom-1.0 topnode)) 896 (setq icon-url (newsticker--get-icon-url-atom-1.0 topnode))
diff --git a/lisp/net/newsticker.el b/lisp/net/newsticker.el
index 6329e7660f7..535122a31fb 100644
--- a/lisp/net/newsticker.el
+++ b/lisp/net/newsticker.el
@@ -54,7 +54,7 @@
54;; as well as the following Atom formats: 54;; as well as the following Atom formats:
55;; * Atom 0.3 55;; * Atom 0.3
56;; * Atom 1.0 56;; * Atom 1.0
57;; (see http://www.ietf.org/internet-drafts/draft-ietf-atompub-format-11.txt) 57;; (see https://www.ietf.org/internet-drafts/draft-ietf-atompub-format-11.txt)
58;; That makes Newsticker.el an "Atom aggregator, "RSS reader", "RSS 58;; That makes Newsticker.el an "Atom aggregator, "RSS reader", "RSS
59;; aggregator", and "Feed Reader". 59;; aggregator", and "Feed Reader".
60 60
diff --git a/lisp/net/nsm.el b/lisp/net/nsm.el
index cc22427e6d1..2b300401650 100644
--- a/lisp/net/nsm.el
+++ b/lisp/net/nsm.el
@@ -164,7 +164,7 @@ STATUS SETTINGS. HOST is the host domain, PORT is a TCP port
164number, STATUS is the peer status returned by 164number, STATUS is the peer status returned by
165`gnutls-peer-status', and SETTINGS is the persistent and session 165`gnutls-peer-status', and SETTINGS is the persistent and session
166settings for the host HOST. Please refer to the contents of 166settings for the host HOST. Please refer to the contents of
167`nsm-setting-file' for details. If a problem is found, the check 167`nsm-settings-file' for details. If a problem is found, the check
168function is required to return an error message, and nil 168function is required to return an error message, and nil
169otherwise. 169otherwise.
170 170
diff --git a/lisp/net/puny.el b/lisp/net/puny.el
index cc406076c58..5c58fe02cbf 100644
--- a/lisp/net/puny.el
+++ b/lisp/net/puny.el
@@ -23,7 +23,7 @@
23;;; Commentary: 23;;; Commentary:
24 24
25;; Written by looking at 25;; Written by looking at
26;; http://stackoverflow.com/questions/183485/can-anyone-recommend-a-good-free-javascript-for-punycode-to-unicode-conversion 26;; https://stackoverflow.com/questions/183485/can-anyone-recommend-a-good-free-javascript-for-punycode-to-unicode-conversion
27 27
28;;; Code: 28;;; Code:
29 29
@@ -196,12 +196,12 @@ For instance \"xn--bcher-kva\" => \"bücher\"."
196 (cl-incf i))) 196 (cl-incf i)))
197 (buffer-string))) 197 (buffer-string)))
198 198
199;; http://www.unicode.org/reports/tr39/#Restriction_Level_Detection 199;; https://www.unicode.org/reports/tr39/#Restriction_Level_Detection
200;; http://www.unicode.org/reports/tr31/#Table_Candidate_Characters_for_Inclusion_in_Identifiers 200;; https://www.unicode.org/reports/tr31/#Table_Candidate_Characters_for_Inclusion_in_Identifiers
201 201
202(defun puny-highly-restrictive-string-p (string) 202(defun puny-highly-restrictive-string-p (string)
203 "Say whether STRING is \"highly restrictive\" in the Unicode IDNA sense. 203 "Say whether STRING is \"highly restrictive\" in the Unicode IDNA sense.
204See http://www.unicode.org/reports/tr39/#Restriction_Level_Detection 204See https://www.unicode.org/reports/tr39/#Restriction_Level_Detection
205for details. The main idea is that if you're mixing 205for details. The main idea is that if you're mixing
206scripts (like latin and cyrillic), you may confuse the user by 206scripts (like latin and cyrillic), you may confuse the user by
207using homographs." 207using homographs."
diff --git a/lisp/net/secrets.el b/lisp/net/secrets.el
index 10d061fba20..dc1b468a118 100644
--- a/lisp/net/secrets.el
+++ b/lisp/net/secrets.el
@@ -23,7 +23,7 @@
23;;; Commentary: 23;;; Commentary:
24 24
25;; This package provides an implementation of the Secret Service API 25;; This package provides an implementation of the Secret Service API
26;; <http://www.freedesktop.org/wiki/Specifications/secret-storage-spec>. 26;; <https://www.freedesktop.org/wiki/Specifications/secret-storage-spec>.
27;; This API is meant to make GNOME-Keyring- and KWallet-like daemons 27;; This API is meant to make GNOME-Keyring- and KWallet-like daemons
28;; available under a common D-BUS interface and thus increase 28;; available under a common D-BUS interface and thus increase
29;; interoperability between GNOME, KDE and other applications having 29;; interoperability between GNOME, KDE and other applications having
diff --git a/lisp/net/soap-client.el b/lisp/net/soap-client.el
index f07d214e122..241ce9efcb3 100644
--- a/lisp/net/soap-client.el
+++ b/lisp/net/soap-client.el
@@ -2078,7 +2078,7 @@ This is a specialization of `soap-decode-type' for
2078 soap-headers ; list of (message part use) 2078 soap-headers ; list of (message part use)
2079 soap-body ; message parts present in the body 2079 soap-body ; message parts present in the body
2080 use ; 'literal or 'encoded, see 2080 use ; 'literal or 'encoded, see
2081 ; http://www.w3.org/TR/wsdl#_soap:body 2081 ; https://www.w3.org/TR/wsdl#_soap:body
2082 ) 2082 )
2083 2083
2084(cl-defstruct (soap-binding (:include soap-element)) 2084(cl-defstruct (soap-binding (:include soap-element))
@@ -2111,6 +2111,8 @@ This is a specialization of `soap-decode-type' for
2111 2111
2112 ;; Add the XSD types to the wsdl document 2112 ;; Add the XSD types to the wsdl document
2113 (let ((ns (soap-make-xs-basic-types 2113 (let ((ns (soap-make-xs-basic-types
2114 ;; The following string is a name and not an URL, so
2115 ;; the "http:" should not be changed.
2114 "http://www.w3.org/2001/XMLSchema" "xsd"))) 2116 "http://www.w3.org/2001/XMLSchema" "xsd")))
2115 (soap-wsdl-add-namespace ns wsdl) 2117 (soap-wsdl-add-namespace ns wsdl)
2116 (soap-wsdl-add-alias "xsd" (soap-namespace-name ns) wsdl)) 2118 (soap-wsdl-add-alias "xsd" (soap-namespace-name ns) wsdl))
diff --git a/lisp/net/tramp-compat.el b/lisp/net/tramp-compat.el
index 218594b551c..c554a8d0c2d 100644
--- a/lisp/net/tramp-compat.el
+++ b/lisp/net/tramp-compat.el
@@ -45,6 +45,14 @@
45(declare-function tramp-handle-temporary-file-directory "tramp") 45(declare-function tramp-handle-temporary-file-directory "tramp")
46(defvar tramp-temp-name-prefix) 46(defvar tramp-temp-name-prefix)
47 47
48(defconst tramp-compat-emacs-compiled-version (eval-when-compile emacs-version)
49 "The Emacs version used for compilation.")
50
51(unless (= emacs-major-version
52 (car (version-to-list tramp-compat-emacs-compiled-version)))
53 (warn "Tramp has been compiled with Emacs %s, this is Emacs %s"
54 tramp-compat-emacs-compiled-version emacs-version))
55
48;; For not existing functions, obsolete functions, or functions with a 56;; For not existing functions, obsolete functions, or functions with a
49;; changed argument list, there are compiler warnings. We want to 57;; changed argument list, there are compiler warnings. We want to
50;; avoid them in cases we know what we do. 58;; avoid them in cases we know what we do.
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index a51edae1482..15eab0a4de5 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -756,7 +756,7 @@ for($i = 0; $i < $n; $i++)
756 $stat[1]); 756 $stat[1]);
757} 757}
758printf(\")\\n\");' \"$1\" \"$2\" 2>/dev/null" 758printf(\")\\n\");' \"$1\" \"$2\" 2>/dev/null"
759 "Perl script implementing `directory-files-attributes' as Lisp `read'able 759 "Perl script implementing `directory-files-and-attributes' as Lisp `read'able
760output. 760output.
761Escape sequence %s is replaced with name of Perl binary. 761Escape sequence %s is replaced with name of Perl binary.
762This string is passed to `format', so percent characters need to be doubled.") 762This string is passed to `format', so percent characters need to be doubled.")
@@ -4408,7 +4408,7 @@ process to set up. VEC specifies the connection."
4408 4408
4409 ;; IRIX64 bash expands "!" even when in single quotes. This 4409 ;; IRIX64 bash expands "!" even when in single quotes. This
4410 ;; destroys our shell functions, we must disable it. See 4410 ;; destroys our shell functions, we must disable it. See
4411 ;; <http://stackoverflow.com/questions/3291692/irix-bash-shell-expands-expression-in-single-quotes-yet-shouldnt>. 4411 ;; <https://stackoverflow.com/questions/3291692/irix-bash-shell-expands-expression-in-single-quotes-yet-shouldnt>.
4412 (when (string-match-p "^IRIX64" uname) 4412 (when (string-match-p "^IRIX64" uname)
4413 (tramp-send-command vec "set +H" t)) 4413 (tramp-send-command vec "set +H" t))
4414 4414
diff --git a/lisp/notifications.el b/lisp/notifications.el
index e6ce9a5d76d..3c2a8cf39c0 100644
--- a/lisp/notifications.el
+++ b/lisp/notifications.el
@@ -108,7 +108,7 @@
108 (setq notifications-on-action-object nil))))) 108 (setq notifications-on-action-object nil)))))
109 109
110(defun notifications-on-closed-signal (id &optional reason) 110(defun notifications-on-closed-signal (id &optional reason)
111 "Dispatch signals to callback functions from `notifications-on-closed-map'." 111 "Dispatch signals to callback functions from `notifications-on-close-map'."
112 ;; notification-daemon prior 0.4.0 does not send a reason. So we 112 ;; notification-daemon prior 0.4.0 does not send a reason. So we
113 ;; make it optional, and assume `undefined' as default. 113 ;; make it optional, and assume `undefined' as default.
114 (let* ((bus (dbus-event-bus-name last-input-event)) 114 (let* ((bus (dbus-event-bus-name last-input-event))
diff --git a/lisp/obsolete/erc-hecomplete.el b/lisp/obsolete/erc-hecomplete.el
index 8f554282aed..cd26edeaa24 100644
--- a/lisp/obsolete/erc-hecomplete.el
+++ b/lisp/obsolete/erc-hecomplete.el
@@ -4,7 +4,7 @@
4;; Inc. 4;; Inc.
5 5
6;; Author: Alex Schroeder <alex@gnu.org> 6;; Author: Alex Schroeder <alex@gnu.org>
7;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcCompletion 7;; URL: https://www.emacswiki.org/cgi-bin/wiki.pl?ErcCompletion
8;; Obsolete-since: 24.1 8;; Obsolete-since: 24.1
9 9
10;; This file is part of GNU Emacs. 10;; This file is part of GNU Emacs.
diff --git a/lisp/org/ChangeLog.1 b/lisp/org/ChangeLog.1
index 65d60bee11d..ef62ae7356c 100644
--- a/lisp/org/ChangeLog.1
+++ b/lisp/org/ChangeLog.1
@@ -1615,7 +1615,7 @@
1615 (org-babel-load-in-session-maybe, org-babel-pop-to-session-maybe): 1615 (org-babel-load-in-session-maybe, org-babel-pop-to-session-maybe):
1616 Use it. 1616 Use it.
1617 (org-babel-execute-src-block): Use `copy-tree' to prevent setf 1617 (org-babel-execute-src-block): Use `copy-tree' to prevent setf
1618 from modifying users variables withing let-bound `info' variable. 1618 from modifying users variables within let-bound `info' variable.
1619 1619
1620 * ob-exp.el (org-export-babel-evaluate): Add a 'inline-only 1620 * ob-exp.el (org-export-babel-evaluate): Add a 'inline-only
1621 option. 1621 option.
@@ -1821,7 +1821,7 @@
1821 it is an ARRAY ref, otherwise print it without a final newline. 1821 it is an ARRAY ref, otherwise print it without a final newline.
1822 (org-babel-perl-preface): Content of this variable is prepended to 1822 (org-babel-perl-preface): Content of this variable is prepended to
1823 body before invocation of perl. Rename input parameter body to 1823 body before invocation of perl. Rename input parameter body to
1824 ibody and let-bind body to concatentation of 1824 ibody and let-bind body to concatenation of
1825 `org-babel-perl-preface' and ibody. Implement results 1825 `org-babel-perl-preface' and ibody. Implement results
1826 interpretation so that tables are easier to produce. 1826 interpretation so that tables are easier to produce.
1827 1827
@@ -3142,7 +3142,7 @@
3142 relatively to the current timestamp, not to today's date. 3142 relatively to the current timestamp, not to today's date.
3143 3143
3144 * org-agenda.el (org-agenda-filter-apply): 3144 * org-agenda.el (org-agenda-filter-apply):
3145 Deactive `org-agenda-entry-text-mode' when filtering. 3145 Deactivate `org-agenda-entry-text-mode' when filtering.
3146 (org-agenda-entry-text-mode): Don't allow in filtered views. 3146 (org-agenda-entry-text-mode): Don't allow in filtered views.
3147 Don't show the maximum number of lines when turning off. 3147 Don't show the maximum number of lines when turning off.
3148 3148
@@ -3439,7 +3439,7 @@
3439 (org-edit-src-exit): Cancel the timer. 3439 (org-edit-src-exit): Cancel the timer.
3440 (org-edit-src-save): Prevent saving when editing fixed-width 3440 (org-edit-src-save): Prevent saving when editing fixed-width
3441 buffer, exiting will save already. 3441 buffer, exiting will save already.
3442 (org-edit-src-exit): Inconditionally kill the src/example 3442 (org-edit-src-exit): Unconditionally kill the src/example
3443 editing buffer. 3443 editing buffer.
3444 3444
3445 * org-pcomplete.el (pcomplete/org-mode/file-option): 3445 * org-pcomplete.el (pcomplete/org-mode/file-option):
@@ -3490,7 +3490,7 @@
3490 3490
3491 * org-pcomplete.el (pcomplete/org-mode/file-option/x): 3491 * org-pcomplete.el (pcomplete/org-mode/file-option/x):
3492 Resurrect. Use `org-default-options' to initialize completion 3492 Resurrect. Use `org-default-options' to initialize completion
3493 fonctions for the most important keywords. 3493 functions for the most important keywords.
3494 3494
3495 * org-macs.el (org-default-options): Rename and adapt from 3495 * org-macs.el (org-default-options): Rename and adapt from
3496 `org-get-current-options'. 3496 `org-get-current-options'.
@@ -3588,7 +3588,7 @@
3588 new sorting strategies. 3588 new sorting strategies.
3589 (org-agenda-get-todos, org-agenda-get-timestamps) 3589 (org-agenda-get-todos, org-agenda-get-timestamps)
3590 (org-agenda-get-deadlines, org-agenda-get-scheduled): Add a 3590 (org-agenda-get-deadlines, org-agenda-get-scheduled): Add a
3591 `ts-date' text property with scheduled, deadline or timetamp 3591 `ts-date' text property with scheduled, deadline or timestamp
3592 date. 3592 date.
3593 (org-cmp-ts): New function to compare timestamps. 3593 (org-cmp-ts): New function to compare timestamps.
3594 (org-em): Add a docstring. 3594 (org-em): Add a docstring.
@@ -4800,7 +4800,7 @@
4800 (org-element-timestamp-interpreter): Parse warning delays. 4800 (org-element-timestamp-interpreter): Parse warning delays.
4801 4801
4802 * ox-beamer.el (org-beamer--format-section): Fix regression which 4802 * ox-beamer.el (org-beamer--format-section): Fix regression which
4803 prevents frames from being propely exported. 4803 prevents frames from being properly exported.
4804 4804
4805 * ox.el (org-export-with-backend): Ensure function will use 4805 * ox.el (org-export-with-backend): Ensure function will use
4806 provided back-end. 4806 provided back-end.
@@ -4888,7 +4888,7 @@
4888 which is always nil in this back-end. 4888 which is always nil in this back-end.
4889 4889
4890 * org.el (org-adaptive-fill-function): Look for a fill prefix at 4890 * org.el (org-adaptive-fill-function): Look for a fill prefix at
4891 the beginning of the paragraph and subsquently on its second line 4891 the beginning of the paragraph and subsequently on its second line
4892 instead of the current line. 4892 instead of the current line.
4893 4893
4894 * ob-core.el (org-babel-get-src-block-info): Look for indentation 4894 * ob-core.el (org-babel-get-src-block-info): Look for indentation
@@ -5595,7 +5595,7 @@
5595 (org-export-async-start): Do not call `org-mode' since this is done 5595 (org-export-async-start): Do not call `org-mode' since this is done
5596 already in the previous function. 5596 already in the previous function.
5597 5597
5598 * ox-beamer.el (org-beamer-keyword): Remove frame arount toc when 5598 * ox-beamer.el (org-beamer-keyword): Remove frame around toc when
5599 generated from a TOC keyword. 5599 generated from a TOC keyword.
5600 5600
5601 * org.el (org-export-backends): Do not reset list of loaded 5601 * org.el (org-export-backends): Do not reset list of loaded
@@ -5629,7 +5629,7 @@
5629 during a body-only export. 5629 during a body-only export.
5630 5630
5631 * ox.el (org-export-as): Store export options in :export-options 5631 * ox.el (org-export-as): Store export options in :export-options
5632 porperty within communication channel. 5632 property within communication channel.
5633 5633
5634 * ox-latex.el (org-latex-item): Fix wrong behavior when a counter 5634 * ox-latex.el (org-latex-item): Fix wrong behavior when a counter
5635 is set in an ordered list while its parent is not ordered. 5635 is set in an ordered list while its parent is not ordered.
@@ -5714,7 +5714,7 @@
5714 (org-create-formula-image-with-dvipng) 5714 (org-create-formula-image-with-dvipng)
5715 (org-create-formula-image-with-imagemagick): Use new function. 5715 (org-create-formula-image-with-imagemagick): Use new function.
5716 5716
5717 * ox.el (org-export-get-previous-element): Change order of retured 5717 * ox.el (org-export-get-previous-element): Change order of returned
5718 elements in `org-export-get-previous-element'. 5718 elements in `org-export-get-previous-element'.
5719 5719
5720 * org-element.el (org-element-all-successors): Add `plain-link' 5720 * org-element.el (org-element-all-successors): Add `plain-link'
@@ -5839,10 +5839,10 @@
5839 Remove reference to now renamed `e-ascii' back-end. 5839 Remove reference to now renamed `e-ascii' back-end.
5840 5840
5841 * ox-beamer.el (org-beamer-template): Allow to span documentclass 5841 * ox-beamer.el (org-beamer-template): Allow to span documentclass
5842 options accross multiple lines in template. 5842 options across multiple lines in template.
5843 5843
5844 * ox-latex.el (org-latex-template): Allow to span documentclass 5844 * ox-latex.el (org-latex-template): Allow to span documentclass
5845 options accross multiple lines in template. 5845 options across multiple lines in template.
5846 5846
5847 * ox-texinfo.el (org-texinfo--get-node): Upcase property name. 5847 * ox-texinfo.el (org-texinfo--get-node): Upcase property name.
5848 (org-texinfo--get-node): New function. 5848 (org-texinfo--get-node): New function.
@@ -6524,7 +6524,7 @@
6524 * org.el (org-open-at-point): The new code is being run in the 6524 * org.el (org-open-at-point): The new code is being run in the
6525 same spot as `org-open-link-functions'. In case they failed, 6525 same spot as `org-open-link-functions'. In case they failed,
6526 check if link matches "^id:" and if so, load the id interface and 6526 check if link matches "^id:" and if so, load the id interface and
6527 follwo the link. 6527 follow the link.
6528 6528
65292013-11-12 Rasmus Pank Roulund <rasmus@gmx.us> (tiny change) 65292013-11-12 Rasmus Pank Roulund <rasmus@gmx.us> (tiny change)
6530 6530
@@ -6717,7 +6717,7 @@
67172013-11-12 Vitalie Spinu <spinuvit@gmail.com> 67172013-11-12 Vitalie Spinu <spinuvit@gmail.com>
6718 6718
6719 * ob-tangle.el (org-babel-find-file-noselect-refresh): 6719 * ob-tangle.el (org-babel-find-file-noselect-refresh):
6720 Call `find-file-noselect' with 'nowarn argument to surpress 6720 Call `find-file-noselect' with 'nowarn argument to suppress
6721 `yes-or-no-p' reversion message. 6721 `yes-or-no-p' reversion message.
6722 6722
6723 * ob-core.el (org-babel-where-is-src-block-head): 6723 * ob-core.el (org-babel-where-is-src-block-head):
@@ -6990,7 +6990,7 @@
6990 docstrings. Also fix typos. 6990 docstrings. Also fix typos.
6991 6991
6992 * org-list.el (org-list-struct-fix-box): When a checkbox has to be 6992 * org-list.el (org-list-struct-fix-box): When a checkbox has to be
6993 resetted because of a non-nil ORDERED property value, make sure it 6993 reset because of a non-nil ORDERED property value, make sure it
6994 had a checkbox already. 6994 had a checkbox already.
6995 6995
69962013-02-07 Tokuya Kameshima <kametoku@gmail.com> (tiny change) 69962013-02-07 Tokuya Kameshima <kametoku@gmail.com> (tiny change)
@@ -9533,7 +9533,7 @@
9533 * org-latex.el (org-export-latex-make-header): Ditto. 9533 * org-latex.el (org-export-latex-make-header): Ditto.
9534 9534
9535 * org-clock.el (org-clocktable-write-default): Temporarily disable 9535 * org-clock.el (org-clocktable-write-default): Temporarily disable
9536 `delete-active-region' so that we don't accidently delete an 9536 `delete-active-region' so that we don't accidentally delete an
9537 active region when exporting a subtree/region. 9537 active region when exporting a subtree/region.
9538 9538
9539 * org-clock.el (org-program-exists): Remove. 9539 * org-clock.el (org-program-exists): Remove.
@@ -10419,7 +10419,7 @@
10419 space character when auto-filling. 10419 space character when auto-filling.
10420 10420
10421 * org.el (org-mode): Call external initalizers. Now both filling 10421 * org.el (org-mode): Call external initalizers. Now both filling
10422 code and comments code have their own independant part in org.el. 10422 code and comments code have their own independent part in org.el.
10423 (org-setup-filling): Rename from `org-set-autofill-regexps'. 10423 (org-setup-filling): Rename from `org-set-autofill-regexps'.
10424 (org-setup-comments-handling): New function. 10424 (org-setup-comments-handling): New function.
10425 10425
@@ -10652,7 +10652,7 @@
10652 (org-list-struct-apply-struct, org-insert-item): Remove rule 10652 (org-list-struct-apply-struct, org-insert-item): Remove rule
10653 check. 10653 check.
10654 10654
10655 * org-footnote.el (org-footnote-normalize): Fix positionning in 10655 * org-footnote.el (org-footnote-normalize): Fix positioning in
10656 HTML export without a footnote section. 10656 HTML export without a footnote section.
10657 10657
10658 * org-list.el (org-list-struct-indent): 10658 * org-list.el (org-list-struct-indent):
@@ -11318,7 +11318,7 @@
113182012-04-01 Shaun Johnson <shaun@slugfest.demon.co.uk> (tiny change) 113182012-04-01 Shaun Johnson <shaun@slugfest.demon.co.uk> (tiny change)
11319 11319
11320 * org-exp-blocks.el (org-ditaa-jar-path): Better heuristic to find 11320 * org-exp-blocks.el (org-ditaa-jar-path): Better heuristic to find
11321 the libary name. 11321 the library name.
11322 11322
113232012-04-01 Suvayu Ali <fatkasuvayu+linux@gmail.com> 113232012-04-01 Suvayu Ali <fatkasuvayu+linux@gmail.com>
11324 11324
@@ -11917,7 +11917,7 @@
119172012-04-01 Nicolas Goaziou <n.goaziou@gmail.com> 119172012-04-01 Nicolas Goaziou <n.goaziou@gmail.com>
11918 11918
11919 * org-footnote.el (org-footnote-at-definition-p): Make sure to 11919 * org-footnote.el (org-footnote-at-definition-p): Make sure to
11920 move point at the beginning of the separator before skiping white 11920 move point at the beginning of the separator before skipping white
11921 spaces. Refactor code. 11921 spaces. Refactor code.
11922 11922
119232012-04-01 Eric Schulte <eric.schulte@gmx.com> 119232012-04-01 Eric Schulte <eric.schulte@gmx.com>
@@ -13692,7 +13692,7 @@
136922012-01-03 Carsten Dominik <carsten.dominik@gmail.com> 136922012-01-03 Carsten Dominik <carsten.dominik@gmail.com>
13693 13693
13694 * org-publish.el (org-publish-cache-file-needs-publishing): 13694 * org-publish.el (org-publish-cache-file-needs-publishing):
13695 Fix regexp to not inlcude newlines. 13695 Fix regexp to not include newlines.
13696 13696
136972012-01-03 Carsten Dominik <carsten.dominik@gmail.com> 136972012-01-03 Carsten Dominik <carsten.dominik@gmail.com>
13698 13698
@@ -14560,7 +14560,7 @@
145602012-01-03 Nicolas Goaziou <n.goaziou@gmail.com> 145602012-01-03 Nicolas Goaziou <n.goaziou@gmail.com>
14561 14561
14562 * org-footnote.el (org-footnote-normalize): Effectively remove 14562 * org-footnote.el (org-footnote-normalize): Effectively remove
14563 any footnote tag in non Org buffers, as detailled in the 14563 any footnote tag in non Org buffers, as detailed in the
14564 docstring of `org-footnote-tag-for-non-org-mode-files'. 14564 docstring of `org-footnote-tag-for-non-org-mode-files'.
14565 14565
145662012-01-03 Nicolas Goaziou <n.goaziou@gmail.com> 145662012-01-03 Nicolas Goaziou <n.goaziou@gmail.com>
@@ -15622,7 +15622,7 @@
156222011-07-28 David Maus <dmaus@ictsoc.de> 156222011-07-28 David Maus <dmaus@ictsoc.de>
15623 15623
15624 * ob-haskell.el (org-babel-haskell-export-to-lhs): 15624 * ob-haskell.el (org-babel-haskell-export-to-lhs):
15625 Call `kill-buffer' with argument indiciating to kill current 15625 Call `kill-buffer' with argument indicating to kill current
15626 buffer. Emacs 22 compatibility. 15626 buffer. Emacs 22 compatibility.
15627 15627
156282011-07-28 David Maus <dmaus@ictsoc.de> 156282011-07-28 David Maus <dmaus@ictsoc.de>
@@ -18049,7 +18049,7 @@
18049 18049
18050 * org-table.el (org-table-fedit-finish): Read more general LHS of 18050 * org-table.el (org-table-fedit-finish): Read more general LHS of
18051 formulas. 18051 formulas.
18052 (org-table-formula-handle-@L): New function to hanle @L references. 18052 (org-table-formula-handle-@L): New function to handle @L references.
18053 (org-table-current-ncol): New variable. 18053 (org-table-current-ncol): New variable.
18054 (org-table-line-to-dline): New function. 18054 (org-table-line-to-dline): New function.
18055 (org-table-get-stored-formulas): Accept range formulas as matches. 18055 (org-table-get-stored-formulas): Accept range formulas as matches.
@@ -18058,7 +18058,7 @@
18058 only the region marked by the range, not the content. 18058 only the region marked by the range, not the content.
18059 (org-table-recalculate): Call `org-table-expand-lhs-ranges' to expand 18059 (org-table-recalculate): Call `org-table-expand-lhs-ranges' to expand
18060 range targets. Also check for duplicate access to fields. 18060 range targets. Also check for duplicate access to fields.
18061 (org-table-expand-lhs-ranges): New funktion. 18061 (org-table-expand-lhs-ranges): New function.
18062 (org-table-get-remote-range): Bind `org-table-current-ncol' to protect 18062 (org-table-get-remote-range): Bind `org-table-current-ncol' to protect
18063 the caller's value. 18063 the caller's value.
18064 (org-table-edit-formulas): Support highlighting of range targets. 18064 (org-table-edit-formulas): Support highlighting of range targets.
@@ -19339,8 +19339,8 @@
19339 19339
19340 * org-crypt.el (org-encrypt-string): New function. 19340 * org-crypt.el (org-encrypt-string): New function.
19341 (org-encrypt-entry): Use org-encrypt-string to encrypt, so we use 19341 (org-encrypt-entry): Use org-encrypt-string to encrypt, so we use
19342 cached crypted values. 19342 cached encrypted values.
19343 (org-decrypt-entry): Store crypted text in decrypted text. 19343 (org-decrypt-entry): Store encrypted text in decrypted text.
19344 19344
193452011-07-28 Dan Davison <dandavison7@gmail.com> 193452011-07-28 Dan Davison <dandavison7@gmail.com>
19346 19346
@@ -20331,7 +20331,7 @@
203312010-12-11 Carsten Dominik <carsten.dominik@gmail.com> 203312010-12-11 Carsten Dominik <carsten.dominik@gmail.com>
20332 20332
20333 * org-clock.el (org-quarter-to-date): Define variables. 20333 * org-clock.el (org-quarter-to-date): Define variables.
20334 (org-clock-special-range): Defin variables. Use org-floor*. 20334 (org-clock-special-range): Define variables. Use org-floor*.
20335 (org-clocktable-write-default): Define tcol. 20335 (org-clocktable-write-default): Define tcol.
20336 20336
20337 * org-compat.el (org-floor*): New function. 20337 * org-compat.el (org-floor*): New function.
@@ -22854,7 +22854,7 @@
228542010-11-11 Nicolas Goaziou <n.goaziou@gmail.com> 228542010-11-11 Nicolas Goaziou <n.goaziou@gmail.com>
22855 22855
22856 * org-list.el (org-cycle-item-indentation): Do return t if and 22856 * org-list.el (org-cycle-item-indentation): Do return t if and
22857 only if cycling is possible and succeded. 22857 only if cycling is possible and succeeded.
22858 22858
228592010-11-11 Nicolas Goaziou <n.goaziou@gmail.com> 228592010-11-11 Nicolas Goaziou <n.goaziou@gmail.com>
22860 22860
@@ -28181,7 +28181,7 @@
28181 * org-src.el (org-src-lang-modes): New variable. 28181 * org-src.el (org-src-lang-modes): New variable.
28182 (org-edit-src-code): Translate language. 28182 (org-edit-src-code): Translate language.
28183 28183
28184 * org-exp.el (org-export-format-source-code-or-example): Deal wit 28184 * org-exp.el (org-export-format-source-code-or-example): Deal with
28185 the new structure of the `org-export-latex-listings-langs' 28185 the new structure of the `org-export-latex-listings-langs'
28186 variable. 28186 variable.
28187 28187
@@ -28529,7 +28529,7 @@
28529 28529
28530 * org.el (org-adapt-indentation): Slightly improve the docstring. 28530 * org.el (org-adapt-indentation): Slightly improve the docstring.
28531 (org-occur): Sends an error when the user inputs an empty string. 28531 (org-occur): Sends an error when the user inputs an empty string.
28532 (org-priority): Bugfix: the tag alignement should happen within 28532 (org-priority): Bugfix: the tag alignment should happen within
28533 save-excursion. 28533 save-excursion.
28534 28534
285352009-08-06 Bastien Guerry <bzg@gnu.org> 285352009-08-06 Bastien Guerry <bzg@gnu.org>
@@ -28830,7 +28830,7 @@
28830 28830
28831 * org-agenda.el (org-agenda-mode): Reset list of marks. 28831 * org-agenda.el (org-agenda-mode): Reset list of marks.
28832 (org-agenda-mode-map): Define new keys for refile and bulk action. 28832 (org-agenda-mode-map): Define new keys for refile and bulk action.
28833 (org-agenda-menu): Add menu itesm for refile and bulk action. 28833 (org-agenda-menu): Add menu items for refile and bulk action.
28834 (org-agenda-refile): New function. 28834 (org-agenda-refile): New function.
28835 (org-agenda-set-tags): Optional arguments TAG and ONOFF. 28835 (org-agenda-set-tags): Optional arguments TAG and ONOFF.
28836 (org-agenda-marked-entries): New variable. 28836 (org-agenda-marked-entries): New variable.
@@ -29490,7 +29490,7 @@
29490 New functions. 29490 New functions.
29491 (org-protocol-check-filename-for-protocol): Call `server-edit'. 29491 (org-protocol-check-filename-for-protocol): Call `server-edit'.
29492 29492
29493 * org.el (org-default-properties): New default properteis for 29493 * org.el (org-default-properties): New default properties for
29494 completion. 29494 completion.
29495 29495
29496 * org-exp.el (org-export-add-subtree-options): Add new properties 29496 * org-exp.el (org-export-add-subtree-options): Add new properties
@@ -29842,7 +29842,7 @@
29842 * org-faces.el (org-checkbox): New face. 29842 * org-faces.el (org-checkbox): New face.
29843 29843
29844 * org-exp.el (org-export-html-preprocess): Only create LaTeX 29844 * org-exp.el (org-export-html-preprocess): Only create LaTeX
29845 fragement images if there is an export file. 29845 fragment images if there is an export file.
29846 29846
298472009-08-06 Carsten Dominik <carsten.dominik@gmail.com> 298472009-08-06 Carsten Dominik <carsten.dominik@gmail.com>
29848 29848
@@ -30465,7 +30465,7 @@
30465 workings of `org-toggle-heading'. 30465 workings of `org-toggle-heading'.
30466 (org-toggle-item): Rename from `org-toggle-region-items'. 30466 (org-toggle-item): Rename from `org-toggle-region-items'.
30467 No longer needs a region defined, but will use it if there is one. 30467 No longer needs a region defined, but will use it if there is one.
30468 (org-ctrl-c-minus): Simplify, relying more on the inernal 30468 (org-ctrl-c-minus): Simplify, relying more on the internal
30469 workings of `org-toggle-item'. 30469 workings of `org-toggle-item'.
30470 30470
30471 * org-export-latex.el (org-export-latex-preprocess): Fix bug in 30471 * org-export-latex.el (org-export-latex-preprocess): Fix bug in
@@ -30674,7 +30674,7 @@
30674 converter. 30674 converter.
30675 30675
30676 * org-exp.el (org-export-preprocess-string): Remove clock lines 30676 * org-exp.el (org-export-preprocess-string): Remove clock lines
30677 and timestamps already in the preprocesor. 30677 and timestamps already in the preprocessor.
30678 (org-export-remove-timestamps, org-export-remove-clock-lines): 30678 (org-export-remove-timestamps, org-export-remove-clock-lines):
30679 New functions. 30679 New functions.
30680 (org-export-as-ascii, org-export-as-html): Add the timestamps 30680 (org-export-as-ascii, org-export-as-html): Add the timestamps
@@ -31158,14 +31158,14 @@
311582008-11-24 Carsten Dominik <carsten.dominik@gmail.com> 311582008-11-24 Carsten Dominik <carsten.dominik@gmail.com>
31159 31159
31160 * org-agenda.el (org-get-closed): Re-apply changes 31160 * org-agenda.el (org-get-closed): Re-apply changes
31161 accidentially overwritten by last commit to Emacs. 31161 accidentally overwritten by last commit to Emacs.
31162 31162
31163 * org.el (org-outline-path-complete-in-steps): New option. 31163 * org.el (org-outline-path-complete-in-steps): New option.
31164 (org-refile-get-location): 31164 (org-refile-get-location):
31165 Honor `org-outline-path-complete-in-steps'. 31165 Honor `org-outline-path-complete-in-steps'.
31166 (org-agenda-change-all-lines, org-tags-sparse-tree) 31166 (org-agenda-change-all-lines, org-tags-sparse-tree)
31167 (org-time-string-to-absolute, org-small-year-to-year) 31167 (org-time-string-to-absolute, org-small-year-to-year)
31168 (org-link-escape): Re-apply changes accidentially overwritten 31168 (org-link-escape): Re-apply changes accidentally overwritten
31169 by last commit to Emacs. 31169 by last commit to Emacs.
31170 31170
311712008-11-23 Carsten Dominik <carsten.dominik@gmail.com> 311712008-11-23 Carsten Dominik <carsten.dominik@gmail.com>
diff --git a/lisp/org/ob-plantuml.el b/lisp/org/ob-plantuml.el
index 5bf9e2beee4..49886e292e5 100644
--- a/lisp/org/ob-plantuml.el
+++ b/lisp/org/ob-plantuml.el
@@ -26,7 +26,7 @@
26;; Org-Babel support for evaluating plantuml script. 26;; Org-Babel support for evaluating plantuml script.
27;; 27;;
28;; Inspired by Ian Yang's org-export-blocks-format-plantuml 28;; Inspired by Ian Yang's org-export-blocks-format-plantuml
29;; http://www.emacswiki.org/emacs/org-export-blocks-format-plantuml.el 29;; https://www.emacswiki.org/emacs/org-export-blocks-format-plantuml.el
30 30
31;;; Requirements: 31;;; Requirements:
32 32
diff --git a/lisp/org/ob-ruby.el b/lisp/org/ob-ruby.el
index 90956271cf5..1b8088eaee4 100644
--- a/lisp/org/ob-ruby.el
+++ b/lisp/org/ob-ruby.el
@@ -30,10 +30,10 @@
30;; - ruby and irb executables :: http://www.ruby-lang.org/ 30;; - ruby and irb executables :: http://www.ruby-lang.org/
31;; 31;;
32;; - ruby-mode :: Can be installed through ELPA, or from 32;; - ruby-mode :: Can be installed through ELPA, or from
33;; http://github.com/eschulte/rinari/raw/master/util/ruby-mode.el 33;; https://github.com/eschulte/rinari/raw/master/util/ruby-mode.el
34;; 34;;
35;; - inf-ruby mode :: Can be installed through ELPA, or from 35;; - inf-ruby mode :: Can be installed through ELPA, or from
36;; http://github.com/eschulte/rinari/raw/master/util/inf-ruby.el 36;; https://github.com/eschulte/rinari/raw/master/util/inf-ruby.el
37 37
38;;; Code: 38;;; Code:
39(require 'ob) 39(require 'ob)
diff --git a/lisp/org/ob-sass.el b/lisp/org/ob-sass.el
index 60c081dcb38..c101574696c 100644
--- a/lisp/org/ob-sass.el
+++ b/lisp/org/ob-sass.el
@@ -35,7 +35,7 @@
35 35
36;;; Requirements: 36;;; Requirements:
37 37
38;; - sass-mode :: http://github.com/nex3/haml/blob/master/extra/sass-mode.el 38;; - sass-mode :: https://github.com/nex3/haml/blob/master/extra/sass-mode.el
39 39
40;;; Code: 40;;; Code:
41(require 'ob) 41(require 'ob)
diff --git a/lisp/org/ob-stan.el b/lisp/org/ob-stan.el
index c563a6c3e55..678047c8008 100644
--- a/lisp/org/ob-stan.el
+++ b/lisp/org/ob-stan.el
@@ -41,7 +41,7 @@
41;; For more information and usage examples, visit 41;; For more information and usage examples, visit
42;; https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-stan.html 42;; https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-stan.html
43;; 43;;
44;; [1] http://mc-stan.org/ 44;; [1] https://mc-stan.org/
45 45
46;;; Code: 46;;; Code:
47(require 'ob) 47(require 'ob)
diff --git a/lisp/org/ol-bibtex.el b/lisp/org/ol-bibtex.el
index ad6622714dd..f139d645dad 100644
--- a/lisp/org/ol-bibtex.el
+++ b/lisp/org/ol-bibtex.el
@@ -318,7 +318,7 @@ is non-nil."
318 "Controls whether inherited tags are converted to bibtex keywords. 318 "Controls whether inherited tags are converted to bibtex keywords.
319It is relevant only if `org-bibtex-tags-are-keywords' is non-nil. 319It is relevant only if `org-bibtex-tags-are-keywords' is non-nil.
320Tag inheritance itself is controlled by `org-use-tag-inheritance' 320Tag inheritance itself is controlled by `org-use-tag-inheritance'
321and `org-exclude-tags-from-inheritance'." 321and `org-tags-exclude-from-inheritance'."
322 :group 'org-bibtex 322 :group 'org-bibtex
323 :version "26.1" 323 :version "26.1"
324 :package-version '(Org . "8.3") 324 :package-version '(Org . "8.3")
diff --git a/lisp/org/org-num.el b/lisp/org/org-num.el
index a6ddce733c8..5b8e1dbb6d1 100644
--- a/lisp/org/org-num.el
+++ b/lisp/org/org-num.el
@@ -131,7 +131,7 @@ For example, add \"ARCHIVE\" to this list to avoid numbering
131archived sub-trees. 131archived sub-trees.
132 132
133Tag in this list prevent numbering the whole sub-tree, 133Tag in this list prevent numbering the whole sub-tree,
134irrespective to `org-use-tags-inheritance', or other means to 134irrespective to `org-use-tag-inheritance', or other means to
135control tag inheritance." 135control tag inheritance."
136 :group 'org-appearance 136 :group 'org-appearance
137 :package-version '(Org . "9.3") 137 :package-version '(Org . "9.3")
diff --git a/lisp/org/org-table.el b/lisp/org/org-table.el
index abba29952e6..5c37cb1af52 100644
--- a/lisp/org/org-table.el
+++ b/lisp/org/org-table.el
@@ -6122,7 +6122,7 @@ which will prompt for the width."
6122;; Here are two examples of different styles. 6122;; Here are two examples of different styles.
6123 6123
6124;; Unicode block characters are used to give a smooth effect. 6124;; Unicode block characters are used to give a smooth effect.
6125;; See http://en.wikipedia.org/wiki/Block_Elements 6125;; See https://en.wikipedia.org/wiki/Block_Elements
6126;; Use one of those drawing functions 6126;; Use one of those drawing functions
6127;; - orgtbl-ascii-draw (the default ascii) 6127;; - orgtbl-ascii-draw (the default ascii)
6128;; - orgtbl-uc-draw-grid (unicode with a grid effect) 6128;; - orgtbl-uc-draw-grid (unicode with a grid effect)
@@ -6136,7 +6136,7 @@ which will prompt for the width."
6136It is a variant of orgtbl-ascii-draw with Unicode block 6136It is a variant of orgtbl-ascii-draw with Unicode block
6137characters, for a smooth display. Bars appear as grids (to the 6137characters, for a smooth display. Bars appear as grids (to the
6138extent the font allows)." 6138extent the font allows)."
6139 ;; http://en.wikipedia.org/wiki/Block_Elements 6139 ;; https://en.wikipedia.org/wiki/Block_Elements
6140 ;; best viewed with the "DejaVu Sans Mono" font. 6140 ;; best viewed with the "DejaVu Sans Mono" font.
6141 (orgtbl-ascii-draw value min max width 6141 (orgtbl-ascii-draw value min max width
6142 " \u258F\u258E\u258D\u258C\u258B\u258A\u2589")) 6142 " \u258F\u258E\u258D\u258C\u258B\u258A\u2589"))
diff --git a/lisp/org/org.el b/lisp/org/org.el
index f1a7f61a9a1..7733198c588 100644
--- a/lisp/org/org.el
+++ b/lisp/org/org.el
@@ -2059,7 +2059,7 @@ taken from the (otherwise obsolete) variable `org-todo-interpretation'."
2059 (choice 2059 (choice
2060 :tag "Interpretation" 2060 :tag "Interpretation"
2061 ;;Quick and dirty way to see 2061 ;;Quick and dirty way to see
2062 ;;`org-todo-interpretations'. This takes the 2062 ;;`org-todo-interpretation'. This takes the
2063 ;;place of item arguments 2063 ;;place of item arguments
2064 :convert-widget 2064 :convert-widget
2065 (lambda (widget) 2065 (lambda (widget)
diff --git a/lisp/org/ox.el b/lisp/org/ox.el
index 797efb90b79..2f8fd0c645b 100644
--- a/lisp/org/ox.el
+++ b/lisp/org/ox.el
@@ -5459,7 +5459,7 @@ transcoding it."
5459 (apostrophe :utf-8 "’" :html "&rsquo;")) 5459 (apostrophe :utf-8 "’" :html "&rsquo;"))
5460 ("da" 5460 ("da"
5461 ;; one may use: »...«, "...", ›...‹, or '...'. 5461 ;; one may use: »...«, "...", ›...‹, or '...'.
5462 ;; http://sproget.dk/raad-og-regler/retskrivningsregler/retskrivningsregler/a7-40-60/a7-58-anforselstegn/ 5462 ;; https://sproget.dk/raad-og-regler/retskrivningsregler/retskrivningsregler/a7-40-60/a7-58-anforselstegn/
5463 ;; LaTeX quotes require Babel! 5463 ;; LaTeX quotes require Babel!
5464 (primary-opening 5464 (primary-opening
5465 :utf-8 "»" :html "&raquo;" :latex ">>" :texinfo "@guillemetright{}") 5465 :utf-8 "»" :html "&raquo;" :latex ">>" :texinfo "@guillemetright{}")
@@ -5553,7 +5553,7 @@ transcoding it."
5553 (secondary-closing :utf-8 "’" :html "&rsquo;" :latex "'" :texinfo "'") 5553 (secondary-closing :utf-8 "’" :html "&rsquo;" :latex "'" :texinfo "'")
5554 (apostrophe :utf-8 "’" :html "&rsquo;")) 5554 (apostrophe :utf-8 "’" :html "&rsquo;"))
5555 ("ru" 5555 ("ru"
5556 ;; http://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B2%D1%8B%D1%87%D0%BA%D0%B8#.D0.9A.D0.B0.D0.B2.D1.8B.D1.87.D0.BA.D0.B8.2C_.D0.B8.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D1.83.D0.B5.D0.BC.D1.8B.D0.B5_.D0.B2_.D1.80.D1.83.D1.81.D1.81.D0.BA.D0.BE.D0.BC_.D1.8F.D0.B7.D1.8B.D0.BA.D0.B5 5556 ;; https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B2%D1%8B%D1%87%D0%BA%D0%B8#.D0.9A.D0.B0.D0.B2.D1.8B.D1.87.D0.BA.D0.B8.2C_.D0.B8.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D1.83.D0.B5.D0.BC.D1.8B.D0.B5_.D0.B2_.D1.80.D1.83.D1.81.D1.81.D0.BA.D0.BE.D0.BC_.D1.8F.D0.B7.D1.8B.D0.BA.D0.B5
5557 ;; http://www.artlebedev.ru/kovodstvo/sections/104/ 5557 ;; http://www.artlebedev.ru/kovodstvo/sections/104/
5558 (primary-opening :utf-8 "«" :html "&laquo;" :latex "{}<<" 5558 (primary-opening :utf-8 "«" :html "&laquo;" :latex "{}<<"
5559 :texinfo "@guillemetleft{}") 5559 :texinfo "@guillemetleft{}")
diff --git a/lisp/pcmpl-unix.el b/lisp/pcmpl-unix.el
index 9d346cfbd22..13de4b65e5b 100644
--- a/lisp/pcmpl-unix.el
+++ b/lisp/pcmpl-unix.el
@@ -148,7 +148,7 @@ documentation), this function returns nil."
148 148
149 149
150;; ssh support by Phil Hagelberg. 150;; ssh support by Phil Hagelberg.
151;; http://www.emacswiki.org/cgi-bin/wiki/pcmpl-ssh.el 151;; https://www.emacswiki.org/cgi-bin/wiki/pcmpl-ssh.el
152 152
153(defun pcmpl-ssh-known-hosts () 153(defun pcmpl-ssh-known-hosts ()
154 "Return a list of hosts found in `pcmpl-ssh-known-hosts-file'." 154 "Return a list of hosts found in `pcmpl-ssh-known-hosts-file'."
diff --git a/lisp/play/bubbles.el b/lisp/play/bubbles.el
index 903c0686063..d512a718b48 100644
--- a/lisp/play/bubbles.el
+++ b/lisp/play/bubbles.el
@@ -28,7 +28,7 @@
28;; possible in as few moves as possible. 28;; possible in as few moves as possible.
29 29
30;; Bubbles is an implementation of the "Same Game", similar to "Same 30;; Bubbles is an implementation of the "Same Game", similar to "Same
31;; GNOME" and many others, see <http://en.wikipedia.org/wiki/SameGame>. 31;; GNOME" and many others, see <https://en.wikipedia.org/wiki/SameGame>.
32 32
33;; Installation 33;; Installation
34;; ------------ 34;; ------------
diff --git a/lisp/play/gametree.el b/lisp/play/gametree.el
index ba74afce298..a9417e9e0ac 100644
--- a/lisp/play/gametree.el
+++ b/lisp/play/gametree.el
@@ -121,8 +121,8 @@ Has to contain \"%d\" to output the actual number."
121 :group 'gametree) 121 :group 'gametree)
122 122
123(defcustom gametree-make-heading-function 123(defcustom gametree-make-heading-function
124 (function (lambda (level) 124 (lambda (level)
125 (insert (make-string level ?*)))) 125 (insert (make-string level ?*)))
126 "A function of one numeric argument, LEVEL, to insert a heading at point. 126 "A function of one numeric argument, LEVEL, to insert a heading at point.
127You should change this if you change `outline-regexp'." 127You should change this if you change `outline-regexp'."
128 :type 'function 128 :type 'function
diff --git a/lisp/printing.el b/lisp/printing.el
index 86a2434c0da..90ef02fe7b1 100644
--- a/lisp/printing.el
+++ b/lisp/printing.el
@@ -5,7 +5,7 @@
5;; Author: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com> 5;; Author: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com>
6;; Keywords: wp, print, PostScript 6;; Keywords: wp, print, PostScript
7;; Version: 6.9.3 7;; Version: 6.9.3
8;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre 8;; X-URL: https://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
9 9
10(defconst pr-version "6.9.3" 10(defconst pr-version "6.9.3"
11 "printing.el, v 6.9.3 <2007/12/09 vinicius> 11 "printing.el, v 6.9.3 <2007/12/09 vinicius>
@@ -64,7 +64,7 @@ Please send all bug fixes and enhancements to
64;; interface to ps-print package and it also provides some extra stuff. 64;; interface to ps-print package and it also provides some extra stuff.
65;; 65;;
66;; To download the latest ps-print package see 66;; To download the latest ps-print package see
67;; `http://www.emacswiki.org/cgi-bin/wiki/PsPrintPackage'. 67;; `https://www.emacswiki.org/cgi-bin/wiki/PsPrintPackage'.
68;; Please, see README file for ps-print installation instructions. 68;; Please, see README file for ps-print installation instructions.
69;; 69;;
70;; `printing' was inspired by: 70;; `printing' was inspired by:
@@ -944,8 +944,8 @@ Please send all bug fixes and enhancements to
944;; 944;;
945;; * For `printing' package: 945;; * For `printing' package:
946;; 946;;
947;; printing `http://www.emacswiki.org/cgi-bin/emacs/download/printing.el' 947;; printing `https://www.emacswiki.org/cgi-bin/emacs/download/printing.el'
948;; ps-print `http://www.emacswiki.org/cgi-bin/wiki/PsPrintPackage' 948;; ps-print `https://www.emacswiki.org/cgi-bin/wiki/PsPrintPackage'
949;; 949;;
950;; * For GNU or Unix system: 950;; * For GNU or Unix system:
951;; 951;;
@@ -4721,7 +4721,7 @@ Each element has the form:
4721 4721
4722 (MENU-PART . NUMBER-OF-ITEMS) 4722 (MENU-PART . NUMBER-OF-ITEMS)
4723 4723
4724See `pr-visible-entry-alist'.") 4724See `pr-visible-entry-list'.")
4725 4725
4726 4726
4727(defun pr-menu-index (entry index) 4727(defun pr-menu-index (entry index)
diff --git a/lisp/progmodes/antlr-mode.el b/lisp/progmodes/antlr-mode.el
index 29adf3b1901..00fcb804d43 100644
--- a/lisp/progmodes/antlr-mode.el
+++ b/lisp/progmodes/antlr-mode.el
@@ -1874,7 +1874,7 @@ cell where the two values determine the area inside the braces."
1874(defun antlr-option-spec (level option specs existsp) 1874(defun antlr-option-spec (level option specs existsp)
1875 "Return version correct option value specification. 1875 "Return version correct option value specification.
1876Return specification for option OPTION of kind level LEVEL. SPECS 1876Return specification for option OPTION of kind level LEVEL. SPECS
1877should correspond to the VALUE-SPEC... in `antlr-option-alists'. 1877should correspond to the VALUE-SPEC... in `antlr-options-alists'.
1878EXISTSP determines whether the option already exists." 1878EXISTSP determines whether the option already exists."
1879 (let (value) 1879 (let (value)
1880 (while (and specs (>= antlr-tool-version (caar specs))) 1880 (while (and specs (>= antlr-tool-version (caar specs)))
diff --git a/lisp/progmodes/bat-mode.el b/lisp/progmodes/bat-mode.el
index 87e88163ac7..98e58be2303 100644
--- a/lisp/progmodes/bat-mode.el
+++ b/lisp/progmodes/bat-mode.el
@@ -42,7 +42,7 @@
42;; See documentation of function `bat-mode'. 42;; See documentation of function `bat-mode'.
43;; 43;;
44;; Separate package `dos-indent' (Matthew Fidler) provides rudimentary 44;; Separate package `dos-indent' (Matthew Fidler) provides rudimentary
45;; indentation, see http://www.emacswiki.org/emacs/dos-indent.el. 45;; indentation, see https://www.emacswiki.org/emacs/dos-indent.el.
46;; 46;;
47;; Acknowledgements: 47;; Acknowledgements:
48;; 48;;
diff --git a/lisp/progmodes/cc-styles.el b/lisp/progmodes/cc-styles.el
index 36be9f6c74e..855e467571d 100644
--- a/lisp/progmodes/cc-styles.el
+++ b/lisp/progmodes/cc-styles.el
@@ -395,8 +395,7 @@ a null operation."
395 ;; remain. This is not necessary for c-offsets-alist, since 395 ;; remain. This is not necessary for c-offsets-alist, since
396 ;; c-get-style-variables contains every valid offset type in the 396 ;; c-get-style-variables contains every valid offset type in the
397 ;; fallback entry. 397 ;; fallback entry.
398 (setq c-special-indent-hook 398 (kill-local-variable 'c-special-indent-hook))
399 (default-value 'c-special-indent-hook)))
400 (mapc (lambda (elem) 399 (mapc (lambda (elem)
401 (c-set-style-1 elem dont-override)) 400 (c-set-style-1 elem dont-override))
402 ;; Need to go through the variables backwards when we 401 ;; Need to go through the variables backwards when we
@@ -644,7 +643,7 @@ CC Mode by making sure the proper entries are present on
644 643
645(defun c-make-styles-buffer-local (&optional this-buf-only-p) 644(defun c-make-styles-buffer-local (&optional this-buf-only-p)
646 "Make all CC Mode style variables buffer local. 645 "Make all CC Mode style variables buffer local.
647If `this-buf-only-p' is non-nil, the style variables will be made 646If THIS-BUF-ONLY-P is non-nil, the style variables will be made
648buffer local only in the current buffer. Otherwise they'll be made 647buffer local only in the current buffer. Otherwise they'll be made
649permanently buffer local in any buffer that changes their values. 648permanently buffer local in any buffer that changes their values.
650 649
@@ -662,7 +661,6 @@ any reason to call this function directly."
662 ;; Hooks must be handled specially 661 ;; Hooks must be handled specially
663 (if this-buf-only-p 662 (if this-buf-only-p
664 (if (featurep 'xemacs) (make-local-hook 'c-special-indent-hook)) 663 (if (featurep 'xemacs) (make-local-hook 'c-special-indent-hook))
665 (with-no-warnings (make-variable-buffer-local 'c-special-indent-hook))
666 (setq c-style-variables-are-local-p t)) 664 (setq c-style-variables-are-local-p t))
667 )) 665 ))
668 666
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el
index c62fbab0595..2e4b9d4693c 100644
--- a/lisp/progmodes/cperl-mode.el
+++ b/lisp/progmodes/cperl-mode.el
@@ -33,7 +33,7 @@
33;; support. 33;; support.
34 34
35;; The latest version is available from 35;; The latest version is available from
36;; http://github.com/jrockway/cperl-mode 36;; https://github.com/jrockway/cperl-mode
37;; 37;;
38;; (perhaps in the moosex-declare branch) 38;; (perhaps in the moosex-declare branch)
39 39
diff --git a/lisp/progmodes/ebnf-abn.el b/lisp/progmodes/ebnf-abn.el
index bf9b0e961ba..be82c72910b 100644
--- a/lisp/progmodes/ebnf-abn.el
+++ b/lisp/progmodes/ebnf-abn.el
@@ -38,7 +38,7 @@
38;; ----------- 38;; -----------
39;; 39;;
40;; See the URL: 40;; See the URL:
41;; `http://www.ietf.org/rfc/rfc2234.txt' 41;; `https://www.ietf.org/rfc/rfc2234.txt'
42;; or 42;; or
43;; `http://www.faqs.org/rfcs/rfc2234.html' 43;; `http://www.faqs.org/rfcs/rfc2234.html'
44;; or 44;; or
diff --git a/lisp/progmodes/ebnf-dtd.el b/lisp/progmodes/ebnf-dtd.el
index bdebf0db2c1..ddddb27a11c 100644
--- a/lisp/progmodes/ebnf-dtd.el
+++ b/lisp/progmodes/ebnf-dtd.el
@@ -38,11 +38,11 @@
38;; ---------- 38;; ----------
39;; 39;;
40;; See the URLs: 40;; See the URLs:
41;; `http://www.w3.org/TR/2004/REC-xml-20040204/' 41;; `https://www.w3.org/TR/2004/REC-xml-20040204/'
42;; (Extensible Markup Language (XML) 1.0 (Third Edition)) 42;; (Extensible Markup Language (XML) 1.0 (Third Edition))
43;; `http://www.w3.org/TR/html40/' 43;; `https://www.w3.org/TR/html40/'
44;; (HTML 4.01 Specification) 44;; (HTML 4.01 Specification)
45;; `http://www.w3.org/TR/NOTE-html-970421' 45;; `https://www.w3.org/TR/NOTE-html-970421'
46;; (HTML DTD with support for Style Sheets) 46;; (HTML DTD with support for Style Sheets)
47;; 47;;
48;; 48;;
diff --git a/lisp/progmodes/ebnf-ebx.el b/lisp/progmodes/ebnf-ebx.el
index 20e2d4ca31c..546f1f8a87f 100644
--- a/lisp/progmodes/ebnf-ebx.el
+++ b/lisp/progmodes/ebnf-ebx.el
@@ -38,7 +38,7 @@
38;; ------------ 38;; ------------
39;; 39;;
40;; See the URL: 40;; See the URL:
41;; `http://www.w3.org/TR/2004/REC-xml-20040204/#sec-notation' 41;; `https://www.w3.org/TR/2004/REC-xml-20040204/#sec-notation'
42;; (Extensible Markup Language (XML) 1.0 (Third Edition)) 42;; (Extensible Markup Language (XML) 1.0 (Third Edition))
43;; 43;;
44;; 44;;
diff --git a/lisp/progmodes/ebnf2ps.el b/lisp/progmodes/ebnf2ps.el
index 22c70bf734d..991cd6fc519 100644
--- a/lisp/progmodes/ebnf2ps.el
+++ b/lisp/progmodes/ebnf2ps.el
@@ -5,7 +5,7 @@
5;; Author: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com> 5;; Author: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com>
6;; Keywords: wp, ebnf, PostScript 6;; Keywords: wp, ebnf, PostScript
7;; Version: 4.4 7;; Version: 4.4
8;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre 8;; X-URL: https://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
9 9
10;; This file is part of GNU Emacs. 10;; This file is part of GNU Emacs.
11 11
@@ -326,7 +326,7 @@ Please send all bug fixes and enhancements to
326;; `ebnf-lex-comment-char' and `ebnf-lex-eop-char'. 326;; `ebnf-lex-comment-char' and `ebnf-lex-eop-char'.
327;; 327;;
328;; `abnf' ebnf2ps recognizes the syntax described in the URL: 328;; `abnf' ebnf2ps recognizes the syntax described in the URL:
329;; `http://www.ietf.org/rfc/rfc2234.txt' 329;; `https://www.ietf.org/rfc/rfc2234.txt'
330;; ("Augmented BNF for Syntax Specifications: ABNF"). 330;; ("Augmented BNF for Syntax Specifications: ABNF").
331;; 331;;
332;; `iso-ebnf' ebnf2ps recognizes the syntax described in the URL: 332;; `iso-ebnf' ebnf2ps recognizes the syntax described in the URL:
@@ -342,11 +342,11 @@ Please send all bug fixes and enhancements to
342;; `ebnf-yac-ignore-error-recovery'. 342;; `ebnf-yac-ignore-error-recovery'.
343;; 343;;
344;; `ebnfx' ebnf2ps recognizes the syntax described in the URL: 344;; `ebnfx' ebnf2ps recognizes the syntax described in the URL:
345;; `http://www.w3.org/TR/2004/REC-xml-20040204/#sec-notation' 345;; `https://www.w3.org/TR/2004/REC-xml-20040204/#sec-notation'
346;; ("Extensible Markup Language (XML) 1.0 (Third Edition)") 346;; ("Extensible Markup Language (XML) 1.0 (Third Edition)")
347;; 347;;
348;; `dtd' ebnf2ps recognizes the syntax described in the URL: 348;; `dtd' ebnf2ps recognizes the syntax described in the URL:
349;; `http://www.w3.org/TR/2004/REC-xml-20040204/' 349;; `https://www.w3.org/TR/2004/REC-xml-20040204/'
350;; ("Extensible Markup Language (XML) 1.0 (Third Edition)") 350;; ("Extensible Markup Language (XML) 1.0 (Third Edition)")
351;; 351;;
352;; Any other value is treated as `ebnf'. 352;; Any other value is treated as `ebnf'.
@@ -1779,7 +1779,7 @@ Valid values are:
1779 `ebnf-lex-comment-char' and `ebnf-lex-eop-char'. 1779 `ebnf-lex-comment-char' and `ebnf-lex-eop-char'.
1780 1780
1781 `abnf' ebnf2ps recognizes the syntax described in the URL: 1781 `abnf' ebnf2ps recognizes the syntax described in the URL:
1782 `http://www.ietf.org/rfc/rfc2234.txt' 1782 `https://www.ietf.org/rfc/rfc2234.txt'
1783 (\"Augmented BNF for Syntax Specifications: ABNF\"). 1783 (\"Augmented BNF for Syntax Specifications: ABNF\").
1784 1784
1785 `iso-ebnf' ebnf2ps recognizes the syntax described in the URL: 1785 `iso-ebnf' ebnf2ps recognizes the syntax described in the URL:
@@ -1795,11 +1795,11 @@ Valid values are:
1795 `ebnf-yac-ignore-error-recovery'. 1795 `ebnf-yac-ignore-error-recovery'.
1796 1796
1797 `ebnfx' ebnf2ps recognizes the syntax described in the URL: 1797 `ebnfx' ebnf2ps recognizes the syntax described in the URL:
1798 `http://www.w3.org/TR/2004/REC-xml-20040204/#sec-notation' 1798 `https://www.w3.org/TR/2004/REC-xml-20040204/#sec-notation'
1799 (\"Extensible Markup Language (XML) 1.0 (Third Edition)\") 1799 (\"Extensible Markup Language (XML) 1.0 (Third Edition)\")
1800 1800
1801 `dtd' ebnf2ps recognizes the syntax described in the URL: 1801 `dtd' ebnf2ps recognizes the syntax described in the URL:
1802 `http://www.w3.org/TR/2004/REC-xml-20040204/' 1802 `https://www.w3.org/TR/2004/REC-xml-20040204/'
1803 (\"Extensible Markup Language (XML) 1.0 (Third Edition)\") 1803 (\"Extensible Markup Language (XML) 1.0 (Third Edition)\")
1804 1804
1805Any other value is treated as `ebnf'." 1805Any other value is treated as `ebnf'."
diff --git a/lisp/progmodes/ebrowse.el b/lisp/progmodes/ebrowse.el
index 1c9e805f039..ffd7d03d7a9 100644
--- a/lisp/progmodes/ebrowse.el
+++ b/lisp/progmodes/ebrowse.el
@@ -3544,7 +3544,7 @@ completion."
3544;;; Tags query replace & search 3544;;; Tags query replace & search
3545 3545
3546(defvar ebrowse-tags-loop-call '(ignore) 3546(defvar ebrowse-tags-loop-call '(ignore)
3547 "Function call for `ebrowse-loop-continue'. 3547 "Function call for `ebrowse-tags-loop-continue'.
3548Passed to `apply' for each file in the tree. If it returns nil, proceed 3548Passed to `apply' for each file in the tree. If it returns nil, proceed
3549with the next file.") 3549with the next file.")
3550 3550
diff --git a/lisp/progmodes/flymake-cc.el b/lisp/progmodes/flymake-cc.el
index 19565ef9b13..d1985b4f777 100644
--- a/lisp/progmodes/flymake-cc.el
+++ b/lisp/progmodes/flymake-cc.el
@@ -88,7 +88,7 @@ SOURCE."
88 (cond ((derived-mode-p 'c++-mode) "c++") 88 (cond ((derived-mode-p 'c++-mode) "c++")
89 (t "c"))))) 89 (t "c")))))
90 90
91(defvar-local flymake-cc--proc nil "Internal variable for `flymake-gcc'") 91(defvar-local flymake-cc--proc nil "Internal variable for `flymake-cc'")
92 92
93;; forward declare this to shoosh compiler (instead of requiring 93;; forward declare this to shoosh compiler (instead of requiring
94;; flymake-proc) 94;; flymake-proc)
diff --git a/lisp/progmodes/flymake-proc.el b/lisp/progmodes/flymake-proc.el
index 62f6d1aaea2..152dc725c74 100644
--- a/lisp/progmodes/flymake-proc.el
+++ b/lisp/progmodes/flymake-proc.el
@@ -37,7 +37,7 @@
37;;; Bugs/todo: 37;;; Bugs/todo:
38 38
39;; - Only uses "Makefile", not "makefile" or "GNUmakefile" 39;; - Only uses "Makefile", not "makefile" or "GNUmakefile"
40;; (from http://bugs.debian.org/337339). 40;; (from https://bugs.debian.org/337339).
41 41
42;;; Code: 42;;; Code:
43 43
diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index 086f0b6a085..79df97080df 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -8,7 +8,7 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; Homepage: http://www.emacswiki.org/emacs/GDB-MI 11;; Homepage: https://www.emacswiki.org/emacs/GDB-MI
12 12
13;; GNU Emacs is free software: you can redistribute it and/or modify 13;; GNU Emacs is free software: you can redistribute it and/or modify
14;; it under the terms of the GNU General Public License as published by 14;; it under the terms of the GNU General Public License as published by
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el
index 84c473ddb7e..81021bc64f4 100644
--- a/lisp/progmodes/gud.el
+++ b/lisp/progmodes/gud.el
@@ -1845,7 +1845,7 @@ and source-file directory for your debugger."
1845;; JDB command will get out of the debugger. There is some truly 1845;; JDB command will get out of the debugger. There is some truly
1846;; pathetic JDB documentation available at: 1846;; pathetic JDB documentation available at:
1847;; 1847;;
1848;; http://java.sun.com/products/jdk/1.1/debugging/ 1848;; https://java.sun.com/products/jdk/1.1/debugging/
1849;; 1849;;
1850;; KNOWN PROBLEMS AND FIXME's: 1850;; KNOWN PROBLEMS AND FIXME's:
1851;; 1851;;
diff --git a/lisp/progmodes/hideif.el b/lisp/progmodes/hideif.el
index 9177b13418e..25e75235aa4 100644
--- a/lisp/progmodes/hideif.el
+++ b/lisp/progmodes/hideif.el
@@ -250,7 +250,7 @@ Effective only if `hide-ifdef-expand-reinclusion-protection' is t."
250 250
251(defvar hide-ifdef-env-backup nil 251(defvar hide-ifdef-env-backup nil
252 "This variable is a backup of the previously cleared `hide-ifdef-env'. 252 "This variable is a backup of the previously cleared `hide-ifdef-env'.
253This backup prevents any accidental clearance of `hide-fidef-env' by 253This backup prevents any accidental clearance of `hide-ifdef-env' by
254`hif-clear-all-ifdef-defined'.") 254`hif-clear-all-ifdef-defined'.")
255 255
256(defvar hif-outside-read-only nil 256(defvar hif-outside-read-only nil
diff --git a/lisp/progmodes/idlw-complete-structtag.el b/lisp/progmodes/idlw-complete-structtag.el
index b0542a99da8..3bc3971f5ee 100644
--- a/lisp/progmodes/idlw-complete-structtag.el
+++ b/lisp/progmodes/idlw-complete-structtag.el
@@ -49,7 +49,7 @@
49;; 49;;
50;; New versions of IDLWAVE, documentation, and more information available 50;; New versions of IDLWAVE, documentation, and more information available
51;; from: 51;; from:
52;; http://github.com/jdtsmith/idlwave 52;; https://github.com/jdtsmith/idlwave
53;; 53;;
54;; INSTALLATION 54;; INSTALLATION
55;; ============ 55;; ============
diff --git a/lisp/progmodes/idlw-help.el b/lisp/progmodes/idlw-help.el
index ec4fd58886a..2d4ea465c42 100644
--- a/lisp/progmodes/idlw-help.el
+++ b/lisp/progmodes/idlw-help.el
@@ -32,7 +32,7 @@
32;; along with new versions of IDLWAVE, documentation, and more 32;; along with new versions of IDLWAVE, documentation, and more
33;; information, at: 33;; information, at:
34;; 34;;
35;; http://github.com/jdtsmith/idlwave 35;; https://github.com/jdtsmith/idlwave
36;; 36;;
37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
38 38
diff --git a/lisp/progmodes/idlw-shell.el b/lisp/progmodes/idlw-shell.el
index 99ac0877c8b..38127fccbc3 100644
--- a/lisp/progmodes/idlw-shell.el
+++ b/lisp/progmodes/idlw-shell.el
@@ -40,7 +40,7 @@
40;; 40;;
41;; New versions of IDLWAVE, documentation, and more information 41;; New versions of IDLWAVE, documentation, and more information
42;; available from: 42;; available from:
43;; http://github.com/jdtsmith/idlwave 43;; https://github.com/jdtsmith/idlwave
44;; 44;;
45;; INSTALLATION: 45;; INSTALLATION:
46;; ============= 46;; =============
@@ -58,7 +58,7 @@
58;; The newest version of this file can be found on the maintainers 58;; The newest version of this file can be found on the maintainers
59;; web site. 59;; web site.
60;; 60;;
61;; http://github.com/jdtsmith/idlwave 61;; https://github.com/jdtsmith/idlwave
62;; 62;;
63;; DOCUMENTATION 63;; DOCUMENTATION
64;; ============= 64;; =============
@@ -896,7 +896,7 @@ IDL has currently stepped.")
896 Info documentation for this package is available. Use \\[idlwave-info] 896 Info documentation for this package is available. Use \\[idlwave-info]
897 to display (complain to your sysadmin if that does not work). 897 to display (complain to your sysadmin if that does not work).
898 For PostScript and HTML versions of the documentation, check IDLWAVE's 898 For PostScript and HTML versions of the documentation, check IDLWAVE's
899 homepage at URL `http://github.com/jdtsmith/idlwave'. 899 homepage at URL `https://github.com/jdtsmith/idlwave'.
900 IDLWAVE has customize support - see the group `idlwave'. 900 IDLWAVE has customize support - see the group `idlwave'.
901 901
9028. Keybindings 9028. Keybindings
diff --git a/lisp/progmodes/idlw-toolbar.el b/lisp/progmodes/idlw-toolbar.el
index 23c129c1afc..1866e50d680 100644
--- a/lisp/progmodes/idlw-toolbar.el
+++ b/lisp/progmodes/idlw-toolbar.el
@@ -29,7 +29,7 @@
29 29
30;; New versions of IDLWAVE, documentation, and more information 30;; New versions of IDLWAVE, documentation, and more information
31;; available from: 31;; available from:
32;; http://github.com/jdtsmith/idlwave 32;; https://github.com/jdtsmith/idlwave
33 33
34 34
35;;; Code: 35;;; Code:
diff --git a/lisp/progmodes/idlwave.el b/lisp/progmodes/idlwave.el
index 121f5d63044..86f9f336723 100644
--- a/lisp/progmodes/idlwave.el
+++ b/lisp/progmodes/idlwave.el
@@ -44,7 +44,7 @@
44;; 44;;
45;; New versions of IDLWAVE, documentation, and more information 45;; New versions of IDLWAVE, documentation, and more information
46;; available from: 46;; available from:
47;; http://github.com/jdtsmith/idlwave 47;; https://github.com/jdtsmith/idlwave
48;; 48;;
49;; INSTALLATION 49;; INSTALLATION
50;; ============ 50;; ============
@@ -64,7 +64,7 @@
64;; The newest version of this file is available from the maintainer's 64;; The newest version of this file is available from the maintainer's
65;; Webpage: 65;; Webpage:
66;; 66;;
67;; http://github.com/jdtsmith/idlwave 67;; https://github.com/jdtsmith/idlwave
68;; 68;;
69;; DOCUMENTATION 69;; DOCUMENTATION
70;; ============= 70;; =============
@@ -164,7 +164,7 @@
164 "Major mode for editing IDL .pro files." 164 "Major mode for editing IDL .pro files."
165 :tag "IDLWAVE" 165 :tag "IDLWAVE"
166 :link '(url-link :tag "Home Page" 166 :link '(url-link :tag "Home Page"
167 "http://github.com/jdtsmith/idlwave") 167 "https://github.com/jdtsmith/idlwave")
168 :link '(emacs-commentary-link :tag "Commentary in idlw-shell.el" 168 :link '(emacs-commentary-link :tag "Commentary in idlw-shell.el"
169 "idlw-shell.el") 169 "idlw-shell.el")
170 :link '(emacs-commentary-link :tag "Commentary in idlwave.el" "idlwave.el") 170 :link '(emacs-commentary-link :tag "Commentary in idlwave.el" "idlwave.el")
@@ -1846,7 +1846,7 @@ The main features of this mode are
1846 \\[idlwave-info] to display (complain to your sysadmin if that does 1846 \\[idlwave-info] to display (complain to your sysadmin if that does
1847 not work). For Postscript, PDF, and HTML versions of the 1847 not work). For Postscript, PDF, and HTML versions of the
1848 documentation, check IDLWAVE's homepage at URL 1848 documentation, check IDLWAVE's homepage at URL
1849 `http://github.com/jdtsmith/idlwave'. 1849 `https://github.com/jdtsmith/idlwave'.
1850 IDLWAVE has customize support - see the group `idlwave'. 1850 IDLWAVE has customize support - see the group `idlwave'.
1851 1851
185210.Keybindings 185210.Keybindings
diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el
index 127b24cb890..7265aeee45d 100644
--- a/lisp/progmodes/perl-mode.el
+++ b/lisp/progmodes/perl-mode.el
@@ -258,7 +258,7 @@
258 ;; (or some similar separator), or by one of the special keywords 258 ;; (or some similar separator), or by one of the special keywords
259 ;; corresponding to builtin functions that can take their first arg 259 ;; corresponding to builtin functions that can take their first arg
260 ;; without parentheses. Of course, that presume we're looking at the 260 ;; without parentheses. Of course, that presume we're looking at the
261 ;; *opening* slash. We can afford to mis-match the closing ones 261 ;; *opening* slash. We can afford to mismatch the closing ones
262 ;; here, because they will be re-treated separately later in 262 ;; here, because they will be re-treated separately later in
263 ;; perl-font-lock-special-syntactic-constructs. 263 ;; perl-font-lock-special-syntactic-constructs.
264 ((concat perl--syntax-exp-intro-regexp "\\(/\\)") 264 ((concat perl--syntax-exp-intro-regexp "\\(/\\)")
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 95b6a037bb3..76baa4469c7 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -2078,7 +2078,7 @@ virtualenv."
2078 :group 'python) 2078 :group 'python)
2079 2079
2080(defcustom python-shell-setup-codes nil 2080(defcustom python-shell-setup-codes nil
2081 "List of code run by `python-shell-send-setup-codes'." 2081 "List of code run by `python-shell-send-setup-code'."
2082 :type '(repeat symbol) 2082 :type '(repeat symbol)
2083 :group 'python) 2083 :group 'python)
2084 2084
@@ -2378,9 +2378,11 @@ regexps: `python-shell-prompt-regexp',
2378 2378
2379(defun python-shell-prompt-set-calculated-regexps () 2379(defun python-shell-prompt-set-calculated-regexps ()
2380 "Detect and set input and output prompt regexps. 2380 "Detect and set input and output prompt regexps.
2381Build and set the values for `python-shell-input-prompt-regexp' 2381Build and set the values for
2382and `python-shell-output-prompt-regexp' using the values from 2382`python-shell--prompt-calculated-input-regexp' and
2383`python-shell-prompt-regexp', `python-shell-prompt-block-regexp', 2383`python-shell--prompt-calculated-output-regexp' using the values
2384from `python-shell-prompt-regexp',
2385`python-shell-prompt-block-regexp',
2384`python-shell-prompt-pdb-regexp', 2386`python-shell-prompt-pdb-regexp',
2385`python-shell-prompt-output-regexp', 2387`python-shell-prompt-output-regexp',
2386`python-shell-prompt-input-regexps', 2388`python-shell-prompt-input-regexps',
@@ -2442,7 +2444,7 @@ of `python-shell-buffer-name'."
2442 2444
2443(defun python-shell-internal-get-process-name () 2445(defun python-shell-internal-get-process-name ()
2444 "Calculate the appropriate process name for Internal Python process. 2446 "Calculate the appropriate process name for Internal Python process.
2445The name is calculated from `python-shell-global-buffer-name' and 2447The name is calculated from `python-shell-buffer-name' and
2446the `buffer-name'." 2448the `buffer-name'."
2447 (format "%s[%s]" python-shell-internal-buffer-name (buffer-name))) 2449 (format "%s[%s]" python-shell-internal-buffer-name (buffer-name)))
2448 2450
@@ -3074,7 +3076,7 @@ Returns the output. See `python-shell-send-string-no-output'."
3074(define-obsolete-function-alias 3076(define-obsolete-function-alias
3075 'python-send-string 'python-shell-internal-send-string "24.3") 3077 'python-send-string 'python-shell-internal-send-string "24.3")
3076 3078
3077(defun python-shell-buffer-substring (start end &optional nomain) 3079(defun python-shell-buffer-substring (start end &optional nomain no-cookie)
3078 "Send buffer substring from START to END formatted for shell. 3080 "Send buffer substring from START to END formatted for shell.
3079This is a wrapper over `buffer-substring' that takes care of 3081This is a wrapper over `buffer-substring' that takes care of
3080different transformations for the code sent to be evaluated in 3082different transformations for the code sent to be evaluated in
@@ -3100,12 +3102,13 @@ the python shell:
3100 (goto-char start) 3102 (goto-char start)
3101 (python-util-forward-comment 1) 3103 (python-util-forward-comment 1)
3102 (current-indentation)))) 3104 (current-indentation))))
3103 (fillstr (when (not starts-at-point-min-p) 3105 (fillstr (and (not no-cookie)
3104 (concat 3106 (not starts-at-point-min-p)
3105 (format "# -*- coding: %s -*-\n" encoding) 3107 (concat
3106 (make-string 3108 (format "# -*- coding: %s -*-\n" encoding)
3107 ;; Subtract 2 because of the coding cookie. 3109 (make-string
3108 (- (line-number-at-pos start) 2) ?\n))))) 3110 ;; Subtract 2 because of the coding cookie.
3111 (- (line-number-at-pos start) 2) ?\n)))))
3109 (with-temp-buffer 3112 (with-temp-buffer
3110 (python-mode) 3113 (python-mode)
3111 (when fillstr 3114 (when fillstr
@@ -3144,7 +3147,8 @@ the python shell:
3144 (line-beginning-position) (line-end-position)))) 3147 (line-beginning-position) (line-end-position))))
3145 (buffer-substring-no-properties (point-min) (point-max))))) 3148 (buffer-substring-no-properties (point-min) (point-max)))))
3146 3149
3147(defun python-shell-send-region (start end &optional send-main msg) 3150(defun python-shell-send-region (start end &optional send-main msg
3151 no-cookie)
3148 "Send the region delimited by START and END to inferior Python process. 3152 "Send the region delimited by START and END to inferior Python process.
3149When optional argument SEND-MAIN is non-nil, allow execution of 3153When optional argument SEND-MAIN is non-nil, allow execution of
3150code inside blocks delimited by \"if __name__== \\='__main__\\=':\". 3154code inside blocks delimited by \"if __name__== \\='__main__\\=':\".
@@ -3154,7 +3158,8 @@ non-nil, forces display of a user-friendly message if there's no
3154process running; defaults to t when called interactively." 3158process running; defaults to t when called interactively."
3155 (interactive 3159 (interactive
3156 (list (region-beginning) (region-end) current-prefix-arg t)) 3160 (list (region-beginning) (region-end) current-prefix-arg t))
3157 (let* ((string (python-shell-buffer-substring start end (not send-main))) 3161 (let* ((string (python-shell-buffer-substring start end (not send-main)
3162 no-cookie))
3158 (process (python-shell-get-process-or-error msg)) 3163 (process (python-shell-get-process-or-error msg))
3159 (original-string (buffer-substring-no-properties start end)) 3164 (original-string (buffer-substring-no-properties start end))
3160 (_ (string-match "\\`\n*\\(.*\\)" original-string))) 3165 (_ (string-match "\\`\n*\\(.*\\)" original-string)))
@@ -3178,7 +3183,7 @@ interactively."
3178 (python-shell-send-region 3183 (python-shell-send-region
3179 (save-excursion (python-nav-beginning-of-statement)) 3184 (save-excursion (python-nav-beginning-of-statement))
3180 (save-excursion (python-nav-end-of-statement)) 3185 (save-excursion (python-nav-end-of-statement))
3181 send-main msg))) 3186 send-main msg t)))
3182 3187
3183(defun python-shell-send-buffer (&optional send-main msg) 3188(defun python-shell-send-buffer (&optional send-main msg)
3184 "Send the entire buffer to inferior Python process. 3189 "Send the entire buffer to inferior Python process.
@@ -3200,27 +3205,29 @@ optional argument MSG is non-nil, forces display of a
3200user-friendly message if there's no process running; defaults to 3205user-friendly message if there's no process running; defaults to
3201t when called interactively." 3206t when called interactively."
3202 (interactive (list current-prefix-arg t)) 3207 (interactive (list current-prefix-arg t))
3203 (save-excursion 3208 (let ((starting-pos (point)))
3204 (python-shell-send-region 3209 (save-excursion
3205 (progn 3210 (python-shell-send-region
3206 (end-of-line 1) 3211 (progn
3207 (while (and (or (python-nav-beginning-of-defun) 3212 (end-of-line 1)
3208 (beginning-of-line 1)) 3213 (while (and (or (python-nav-beginning-of-defun)
3209 (> (current-indentation) 0))) 3214 (beginning-of-line 1))
3210 (when (not arg) 3215 (> (current-indentation) 0)))
3211 (while (and 3216 (when (not arg)
3212 (eq (forward-line -1) 0) 3217 (while (and
3213 (if (looking-at (python-rx decorator)) 3218 (eq (forward-line -1) 0)
3214 t 3219 (if (looking-at (python-rx decorator))
3215 (forward-line 1) 3220 t
3216 nil)))) 3221 (forward-line 1)
3217 (point-marker)) 3222 nil))))
3218 (progn 3223 (point-marker))
3219 (or (python-nav-end-of-defun) 3224 (progn
3220 (end-of-line 1)) 3225 (goto-char starting-pos)
3221 (point-marker)) 3226 (or (python-nav-end-of-defun)
3222 nil ;; noop 3227 (end-of-line 1))
3223 msg))) 3228 (point-marker))
3229 nil ;; noop
3230 msg))))
3224 3231
3225(defun python-shell-send-file (file-name &optional process temp-file-name 3232(defun python-shell-send-file (file-name &optional process temp-file-name
3226 delete msg) 3233 delete msg)
@@ -4712,7 +4719,7 @@ customize how labels are formatted."
4712(defun python-imenu-create-flat-index (&optional alist prefix) 4719(defun python-imenu-create-flat-index (&optional alist prefix)
4713 "Return flat outline of the current Python buffer for Imenu. 4720 "Return flat outline of the current Python buffer for Imenu.
4714Optional argument ALIST is the tree to be flattened; when nil 4721Optional argument ALIST is the tree to be flattened; when nil
4715`python-imenu-build-index' is used with 4722`python-imenu-create-index' is used with
4716`python-imenu-format-parent-item-jump-label-function' 4723`python-imenu-format-parent-item-jump-label-function'
4717`python-imenu-format-parent-item-label-function' 4724`python-imenu-format-parent-item-label-function'
4718`python-imenu-format-item-label-function' set to 4725`python-imenu-format-item-label-function' set to
diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el
index a11634bc9f0..14f00597bfc 100644
--- a/lisp/progmodes/ruby-mode.el
+++ b/lisp/progmodes/ruby-mode.el
@@ -4,7 +4,7 @@
4 4
5;; Authors: Yukihiro Matsumoto 5;; Authors: Yukihiro Matsumoto
6;; Nobuyoshi Nakada 6;; Nobuyoshi Nakada
7;; URL: http://www.emacswiki.org/cgi-bin/wiki/RubyMode 7;; URL: https://www.emacswiki.org/cgi-bin/wiki/RubyMode
8;; Created: Fri Feb 4 14:49:13 JST 1994 8;; Created: Fri Feb 4 14:49:13 JST 1994
9;; Keywords: languages ruby 9;; Keywords: languages ruby
10;; Version: 1.2 10;; Version: 1.2
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index 3c249b7bc0e..a8c0e045c6b 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -386,6 +386,7 @@ name symbol."
386 ?~ "_" 386 ?~ "_"
387 ?, "_" 387 ?, "_"
388 ?= "." 388 ?= "."
389 ?/ "."
389 ?\; "." 390 ?\; "."
390 ?| "." 391 ?| "."
391 ?& "." 392 ?& "."
diff --git a/lisp/progmodes/sql.el b/lisp/progmodes/sql.el
index c31c5ddd87e..bfef2a663a0 100644
--- a/lisp/progmodes/sql.el
+++ b/lisp/progmodes/sql.el
@@ -2808,8 +2808,8 @@ See `sql-product-alist' for a list of products and supported features."
2808 2808
2809The KEYWORDS-ONLY flag is passed to font-lock to specify whether 2809The KEYWORDS-ONLY flag is passed to font-lock to specify whether
2810only keywords should be highlighted and syntactic highlighting 2810only keywords should be highlighted and syntactic highlighting
2811skipped. The IMENU flag indicates whether `imenu-mode' should 2811skipped. The IMENU flag indicates whether `imenu' should also be
2812also be configured." 2812configured."
2813 2813
2814 (let 2814 (let
2815 ;; Get the product-specific syntax-alist. 2815 ;; Get the product-specific syntax-alist.
@@ -4293,14 +4293,14 @@ Here is an example for your init file. It keeps the SQLi buffer a
4293certain length. 4293certain length.
4294 4294
4295\(add-hook \\='sql-interactive-mode-hook 4295\(add-hook \\='sql-interactive-mode-hook
4296 (function (lambda () 4296 (lambda ()
4297 (setq comint-output-filter-functions #\\='comint-truncate-buffer)))) 4297 (setq comint-output-filter-functions #\\='comint-truncate-buffer)))
4298 4298
4299Here is another example. It will always put point back to the statement 4299Here is another example. It will always put point back to the statement
4300you entered, right above the output it created. 4300you entered, right above the output it created.
4301 4301
4302\(setq comint-output-filter-functions 4302\(setq comint-output-filter-functions
4303 (function (lambda (STR) (comint-show-output))))" 4303 (lambda (STR) (comint-show-output)))"
4304 :syntax-table sql-mode-syntax-table 4304 :syntax-table sql-mode-syntax-table
4305 ;; FIXME: The doc above uses `setq' on `comint-output-filter-functions', 4305 ;; FIXME: The doc above uses `setq' on `comint-output-filter-functions',
4306 ;; whereas hooks should be manipulated with things like `add/remove-hook'. 4306 ;; whereas hooks should be manipulated with things like `add/remove-hook'.
diff --git a/lisp/ps-def.el b/lisp/ps-def.el
index 65e8011f771..571e1a68c5e 100644
--- a/lisp/ps-def.el
+++ b/lisp/ps-def.el
@@ -5,7 +5,7 @@
5;; Author: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com> 5;; Author: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com>
6;; Kenichi Handa <handa@gnu.org> (multi-byte characters) 6;; Kenichi Handa <handa@gnu.org> (multi-byte characters)
7;; Keywords: wp, print, PostScript 7;; Keywords: wp, print, PostScript
8;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre 8;; X-URL: https://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
9;; Package: ps-print 9;; Package: ps-print
10 10
11;; This file is part of GNU Emacs. 11;; This file is part of GNU Emacs.
diff --git a/lisp/ps-print.el b/lisp/ps-print.el
index 67ee4d24390..351c489f487 100644
--- a/lisp/ps-print.el
+++ b/lisp/ps-print.el
@@ -9,7 +9,7 @@
9;; Maintainer: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com> 9;; Maintainer: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com>
10;; Keywords: wp, print, PostScript 10;; Keywords: wp, print, PostScript
11;; Version: 7.3.5 11;; Version: 7.3.5
12;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre 12;; X-URL: https://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
13 13
14(eval-when-compile (require 'cl-lib)) 14(eval-when-compile (require 'cl-lib))
15 15
@@ -2198,7 +2198,7 @@ The values for `ps-line-number-start':
2198 `ps-line-number-step' inclusive. 2198 `ps-line-number-step' inclusive.
2199 2199
2200 * If `ps-line-number-step' is set to `zebra', must be between 1 and the 2200 * If `ps-line-number-step' is set to `zebra', must be between 1 and the
2201 value of `ps-zebra-strip-height' inclusive. Use this combination if you 2201 value of `ps-zebra-stripe-height' inclusive. Use this combination if you
2202 wish that line number be relative to zebra stripes." 2202 wish that line number be relative to zebra stripes."
2203 :type '(integer :tag "Start Step Interval") 2203 :type '(integer :tag "Start Step Interval")
2204 :version "20" 2204 :version "20"
diff --git a/lisp/ps-samp.el b/lisp/ps-samp.el
index 7c688d53fa9..c5dcf494c0b 100644
--- a/lisp/ps-samp.el
+++ b/lisp/ps-samp.el
@@ -8,7 +8,7 @@
8;; Kenichi Handa <handa@gnu.org> (multi-byte characters) 8;; Kenichi Handa <handa@gnu.org> (multi-byte characters)
9;; Maintainer: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com> 9;; Maintainer: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com>
10;; Keywords: wp, print, PostScript 10;; Keywords: wp, print, PostScript
11;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre 11;; X-URL: https://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
12;; Package: ps-print 12;; Package: ps-print
13 13
14;; This file is part of GNU Emacs. 14;; This file is part of GNU Emacs.
@@ -57,7 +57,7 @@
57 (interactive) 57 (interactive)
58 (ps-print-message-from-summary 'rmail-summary-buffer "RMAIL")) 58 (ps-print-message-from-summary 'rmail-summary-buffer "RMAIL"))
59 59
60;; Used in `ps-rmail-print-article-from-summary', 60;; Used in `ps-rmail-print-message-from-summary',
61;; `ps-gnus-print-article-from-summary' and `ps-vm-print-message-from-summary'. 61;; `ps-gnus-print-article-from-summary' and `ps-vm-print-message-from-summary'.
62(defun ps-print-message-from-summary (summary-buffer summary-default) 62(defun ps-print-message-from-summary (summary-buffer summary-default)
63 (let ((ps-buf (or (and (boundp summary-buffer) 63 (let ((ps-buf (or (and (boundp summary-buffer)
diff --git a/lisp/recentf.el b/lisp/recentf.el
index 877edd4be1f..61c39de12b2 100644
--- a/lisp/recentf.el
+++ b/lisp/recentf.el
@@ -245,7 +245,10 @@ The following values can be set:
245- A number 245- A number
246 Cleanup each time Emacs has been idle that number of seconds. 246 Cleanup each time Emacs has been idle that number of seconds.
247- A time string 247- A time string
248 Cleanup at specified time string, for example at \"11:00pm\". 248 Cleanup at specified time string daily, for example at \"11:00pm\".
249
250If a time string is provided and it is already past the specified time
251for the current day, the first cleanup happens immediately as for `mode'.
249 252
250Setting this variable directly does not take effect; 253Setting this variable directly does not take effect;
251use \\[customize]. 254use \\[customize].
@@ -257,7 +260,7 @@ cleanup the list."
257 :value mode) 260 :value mode)
258 (const :tag "Never" 261 (const :tag "Never"
259 :value never) 262 :value never)
260 (number :tag "When idle that seconds" 263 (number :tag "When idle after (seconds)"
261 :value 300) 264 :value 300)
262 (string :tag "At time" 265 (string :tag "At time"
263 :value "11:00pm")) 266 :value "11:00pm"))
@@ -371,7 +374,8 @@ See also the option `recentf-auto-cleanup'.")
371 recentf-auto-cleanup t 'recentf-cleanup)) 374 recentf-auto-cleanup t 'recentf-cleanup))
372 ((stringp recentf-auto-cleanup) 375 ((stringp recentf-auto-cleanup)
373 (run-at-time 376 (run-at-time
374 recentf-auto-cleanup nil 'recentf-cleanup)))))) 377 ;; Repeat every 24 hours.
378 recentf-auto-cleanup (* 24 60 60) 'recentf-cleanup))))))
375 379
376;;; File functions 380;;; File functions
377;; 381;;
diff --git a/lisp/replace.el b/lisp/replace.el
index 035031ac93d..2d17ec9097c 100644
--- a/lisp/replace.el
+++ b/lisp/replace.el
@@ -1572,6 +1572,18 @@ is not modified."
1572 1572
1573(defvar ido-ignore-item-temp-list) 1573(defvar ido-ignore-item-temp-list)
1574 1574
1575(defun multi-occur--prompt ()
1576 (concat
1577 "Next buffer to search "
1578 (cond
1579 ((eq read-buffer-function #'ido-read-buffer)
1580 (substitute-command-keys
1581 "(\\<ido-completion-map>\\[ido-select-text] to end): "))
1582 ((bound-and-true-p fido-mode)
1583 (substitute-command-keys
1584 "(\\<icomplete-fido-mode-map>\\[icomplete-fido-exit] to end): "))
1585 (t "(RET to end): "))))
1586
1575(defun multi-occur (bufs regexp &optional nlines) 1587(defun multi-occur (bufs regexp &optional nlines)
1576 "Show all lines in buffers BUFS containing a match for REGEXP. 1588 "Show all lines in buffers BUFS containing a match for REGEXP.
1577Optional argument NLINES specifies the number of context lines to show 1589Optional argument NLINES specifies the number of context lines to show
@@ -1587,11 +1599,7 @@ See also `multi-occur-in-matching-buffers'."
1587 (buf nil) 1599 (buf nil)
1588 (ido-ignore-item-temp-list bufs)) 1600 (ido-ignore-item-temp-list bufs))
1589 (while (not (string-equal 1601 (while (not (string-equal
1590 (setq buf (read-buffer 1602 (setq buf (read-buffer (multi-occur--prompt) nil t))
1591 (if (eq read-buffer-function #'ido-read-buffer)
1592 "Next buffer to search (C-j to end): "
1593 "Next buffer to search (RET to end): ")
1594 nil t))
1595 "")) 1603 ""))
1596 (cl-pushnew buf bufs) 1604 (cl-pushnew buf bufs)
1597 (setq ido-ignore-item-temp-list bufs)) 1605 (setq ido-ignore-item-temp-list bufs))
diff --git a/lisp/ses.el b/lisp/ses.el
index 64d03a7fe5f..bfafc132bf5 100644
--- a/lisp/ses.el
+++ b/lisp/ses.el
@@ -395,7 +395,7 @@ left-justification of the result. Set to error-signal if `ses-call-printer'
395encountered an error during printing. Otherwise nil.") 395encountered an error during printing. Otherwise nil.")
396 396
397(defvar ses-start-time nil 397(defvar ses-start-time nil
398 "Time when current operation started. Used by `ses-time-check' to decide 398 "Time when current operation started. Used by `ses--time-check' to decide
399when to emit a progress message.") 399when to emit a progress message.")
400 400
401 401
diff --git a/lisp/shell.el b/lisp/shell.el
index 6129e5efc84..226bdf4d919 100644
--- a/lisp/shell.el
+++ b/lisp/shell.el
@@ -1208,7 +1208,7 @@ Returns t if successful."
1208 (cwd (file-name-as-directory (expand-file-name default-directory))) 1208 (cwd (file-name-as-directory (expand-file-name default-directory)))
1209 (ignored-extensions 1209 (ignored-extensions
1210 (and comint-completion-fignore 1210 (and comint-completion-fignore
1211 (mapconcat (function (lambda (x) (concat (regexp-quote x) "\\'"))) 1211 (mapconcat (lambda (x) (concat (regexp-quote x) "\\'"))
1212 comint-completion-fignore "\\|"))) 1212 comint-completion-fignore "\\|")))
1213 (dir "") (comps-in-dir ()) 1213 (dir "") (comps-in-dir ())
1214 (file "") (abs-file-name "") (completions ())) 1214 (file "") (abs-file-name "") (completions ()))
diff --git a/lisp/simple.el b/lisp/simple.el
index fef22c2fa6f..b6d4e0603ee 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -2067,13 +2067,18 @@ invoking, give a prefix argument to `execute-extended-command'."
2067 ;; BEWARE: Called directly from the C code. 2067 ;; BEWARE: Called directly from the C code.
2068 "Execute CMD as an editor command. 2068 "Execute CMD as an editor command.
2069CMD must be a symbol that satisfies the `commandp' predicate. 2069CMD must be a symbol that satisfies the `commandp' predicate.
2070Optional second arg RECORD-FLAG non-nil 2070
2071means unconditionally put this command in the variable `command-history'. 2071Optional second arg RECORD-FLAG non-nil means unconditionally put
2072Otherwise, that is done only if an arg is read using the minibuffer. 2072this command in the variable `command-history'. Otherwise, that
2073The argument KEYS specifies the value to use instead of (this-command-keys) 2073is done only if an arg is read using the minibuffer.
2074when reading the arguments; if it is nil, (this-command-keys) is used. 2074
2075The argument SPECIAL, if non-nil, means that this command is executing 2075The argument KEYS specifies the value to use instead of the
2076a special event, so ignore the prefix argument and don't clear it." 2076return value of the `this-command-keys' function when reading the
2077arguments; if it is nil, `this-command-keys' is used.
2078
2079The argument SPECIAL, if non-nil, means that this command is
2080executing a special event, so ignore the prefix argument and
2081don't clear it."
2077 (setq debug-on-next-call nil) 2082 (setq debug-on-next-call nil)
2078 (let ((prefixarg (unless special 2083 (let ((prefixarg (unless special
2079 ;; FIXME: This should probably be done around 2084 ;; FIXME: This should probably be done around
@@ -7275,15 +7280,16 @@ Mode' for details."
7275 :lighter " Wrap" 7280 :lighter " Wrap"
7276 (if visual-line-mode 7281 (if visual-line-mode
7277 (progn 7282 (progn
7278 (set (make-local-variable 'visual-line--saved-state) nil) 7283 (unless visual-line--saved-state
7279 ;; Save the local values of some variables, to be restored if 7284 (setq-local visual-line--saved-state (list nil))
7280 ;; visual-line-mode is turned off. 7285 ;; Save the local values of some variables, to be restored if
7281 (dolist (var '(line-move-visual truncate-lines 7286 ;; visual-line-mode is turned off.
7282 truncate-partial-width-windows 7287 (dolist (var '(line-move-visual truncate-lines
7283 word-wrap fringe-indicator-alist)) 7288 truncate-partial-width-windows
7284 (if (local-variable-p var) 7289 word-wrap fringe-indicator-alist))
7285 (push (cons var (symbol-value var)) 7290 (if (local-variable-p var)
7286 visual-line--saved-state))) 7291 (push (cons var (symbol-value var))
7292 visual-line--saved-state))))
7287 (set (make-local-variable 'line-move-visual) t) 7293 (set (make-local-variable 'line-move-visual) t)
7288 (set (make-local-variable 'truncate-partial-width-windows) nil) 7294 (set (make-local-variable 'truncate-partial-width-windows) nil)
7289 (setq truncate-lines nil 7295 (setq truncate-lines nil
@@ -7297,7 +7303,8 @@ Mode' for details."
7297 (kill-local-variable 'truncate-partial-width-windows) 7303 (kill-local-variable 'truncate-partial-width-windows)
7298 (kill-local-variable 'fringe-indicator-alist) 7304 (kill-local-variable 'fringe-indicator-alist)
7299 (dolist (saved visual-line--saved-state) 7305 (dolist (saved visual-line--saved-state)
7300 (set (make-local-variable (car saved)) (cdr saved))) 7306 (when (car saved)
7307 (set (make-local-variable (car saved)) (cdr saved))))
7301 (kill-local-variable 'visual-line--saved-state))) 7308 (kill-local-variable 'visual-line--saved-state)))
7302 7309
7303(defun turn-on-visual-line-mode () 7310(defun turn-on-visual-line-mode ()
diff --git a/lisp/startup.el b/lisp/startup.el
index e39df7568ca..89b1d59ce0a 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -1506,7 +1506,7 @@ Consider using a subdirectory instead, e.g.: %s"
1506(defun x-apply-session-resources () 1506(defun x-apply-session-resources ()
1507 "Apply X resources which specify initial values for Emacs variables. 1507 "Apply X resources which specify initial values for Emacs variables.
1508This is called from a window-system initialization function, such 1508This is called from a window-system initialization function, such
1509as `x-initialize-window-system' for X, either at startup (prior 1509as `window-system-initialization' for X, either at startup (prior
1510to reading the init file), or afterwards when the user first 1510to reading the init file), or afterwards when the user first
1511opens a graphical frame. 1511opens a graphical frame.
1512 1512
diff --git a/lisp/strokes.el b/lisp/strokes.el
index 08a381801d7..c2f03cac0f1 100644
--- a/lisp/strokes.el
+++ b/lisp/strokes.el
@@ -102,7 +102,7 @@
102;; The default value (9) should be fine for most decent computers. 102;; The default value (9) should be fine for most decent computers.
103;; NOTE: This variable should not be set to a number less than 3. 103;; NOTE: This variable should not be set to a number less than 3.
104 104
105;; `strokes-display-strokes-buffer' will allow you to hide the strokes 105;; `strokes-use-strokes-buffer' will allow you to hide the strokes
106;; buffer when doing simple strokes. This is a speedup for slow 106;; buffer when doing simple strokes. This is a speedup for slow
107;; computers as well as people who don't want to see their strokes. 107;; computers as well as people who don't want to see their strokes.
108 108
@@ -581,7 +581,7 @@ The grid is a square whose dimension is [0,GRID-RESOLUTION)."
581 581
582(defun strokes-fill-stroke (unfilled-stroke &optional force) 582(defun strokes-fill-stroke (unfilled-stroke &optional force)
583 "Fill in missing grid locations in the list of UNFILLED-STROKE. 583 "Fill in missing grid locations in the list of UNFILLED-STROKE.
584If FORCE is non-nil, then fill the stroke even if it's `stroke-click'. 584If FORCE is non-nil, then fill the stroke even if it's `strokes-click-p'.
585NOTE: This is where the global variable `strokes-last-stroke' is set." 585NOTE: This is where the global variable `strokes-last-stroke' is set."
586 (setq strokes-last-stroke ; this is global 586 (setq strokes-last-stroke ; this is global
587 (if (and (strokes-click-p unfilled-stroke) 587 (if (and (strokes-click-p unfilled-stroke)
@@ -1629,7 +1629,7 @@ Optional FORCE non-nil will ignore the buffer's read-only status."
1629 ;; The comment below is what I'd have to do if I wanted to 1629 ;; The comment below is what I'd have to do if I wanted to
1630 ;; deal with random newlines in the midst of the compressed 1630 ;; deal with random newlines in the midst of the compressed
1631 ;; strings. If I do this, I'll also have to change 1631 ;; strings. If I do this, I'll also have to change
1632 ;; `strokes-xpm-to-compress-string' to deal with the newline, 1632 ;; `strokes-xpm-to-compressed-string' to deal with the newline,
1633 ;; and possibly other whitespace stuff. YUCK! 1633 ;; and possibly other whitespace stuff. YUCK!
1634 ;; (while (re-search-forward "\\+/\\(\\w\\|\\)+/" nil t nil (get-buffer buffer)) 1634 ;; (while (re-search-forward "\\+/\\(\\w\\|\\)+/" nil t nil (get-buffer buffer))
1635 (while (with-current-buffer buffer 1635 (while (with-current-buffer buffer
diff --git a/lisp/subr.el b/lisp/subr.el
index 55217bd4729..b1e382b80ee 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -284,8 +284,11 @@ Then evaluate RESULT to get return value, default nil.
284(defmacro dotimes (spec &rest body) 284(defmacro dotimes (spec &rest body)
285 "Loop a certain number of times. 285 "Loop a certain number of times.
286Evaluate BODY with VAR bound to successive integers running from 0, 286Evaluate BODY with VAR bound to successive integers running from 0,
287inclusive, to COUNT, exclusive. Then evaluate RESULT to get 287inclusive, to COUNT, exclusive.
288the return value (nil if RESULT is omitted). Its use is deprecated. 288
289Finally RESULT is evaluated to get the return value (nil if
290RESULT is omitted). Using RESULT is deprecated, and may result
291in compilation warnings about unused variables.
289 292
290\(fn (VAR COUNT [RESULT]) BODY...)" 293\(fn (VAR COUNT [RESULT]) BODY...)"
291 (declare (indent 1) (debug dolist)) 294 (declare (indent 1) (debug dolist))
@@ -3253,7 +3256,7 @@ See Info node `(elisp)Security Considerations'."
3253 3256
3254 ;; First, quote argument so that CommandLineToArgvW will 3257 ;; First, quote argument so that CommandLineToArgvW will
3255 ;; understand it. See 3258 ;; understand it. See
3256 ;; http://msdn.microsoft.com/en-us/library/17w5ykft%28v=vs.85%29.aspx 3259 ;; https://msdn.microsoft.com/en-us/library/17w5ykft%28v=vs.85%29.aspx
3257 ;; After we perform that level of quoting, escape shell 3260 ;; After we perform that level of quoting, escape shell
3258 ;; metacharacters so that cmd won't mangle our argument. If the 3261 ;; metacharacters so that cmd won't mangle our argument. If the
3259 ;; argument contains no double quote characters, we can just 3262 ;; argument contains no double quote characters, we can just
diff --git a/lisp/talk.el b/lisp/talk.el
index 5541b0a4c69..a18cf263435 100644
--- a/lisp/talk.el
+++ b/lisp/talk.el
@@ -90,7 +90,7 @@ Each element has the form (DISPLAY FRAME BUFFER).")
90 (let ((frame (nth 1 (car tail))) 90 (let ((frame (nth 1 (car tail)))
91 (this-buffer (nth 2 (car tail))) 91 (this-buffer (nth 2 (car tail)))
92 (buffers 92 (buffers
93 (mapcar (function (lambda (elt) (nth 2 elt))) 93 (mapcar (lambda (elt) (nth 2 elt))
94 talk-display-alist))) 94 talk-display-alist)))
95 ;; Put this display's own talk buffer 95 ;; Put this display's own talk buffer
96 ;; at the front of the list. 96 ;; at the front of the list.
diff --git a/lisp/tempo.el b/lisp/tempo.el
index bc398e7eb67..f6612354b1c 100644
--- a/lisp/tempo.el
+++ b/lisp/tempo.el
@@ -75,7 +75,7 @@
75;; ftp.lysator.liu.se in the directory /pub/emacs 75;; ftp.lysator.liu.se in the directory /pub/emacs
76 76
77;; There is also a WWW page at 77;; There is also a WWW page at
78;; http://www.lysator.liu.se/~davidk/elisp/ which has some information 78;; https://www.lysator.liu.se/~davidk/elisp/ which has some information
79 79
80;;; Known bugs: 80;;; Known bugs:
81 81
@@ -306,8 +306,8 @@ mode, ON-REGION is ignored and assumed true if the region is active."
306 (goto-char tempo-region-start)) 306 (goto-char tempo-region-start))
307 (save-excursion 307 (save-excursion
308 (tempo-insert-mark (point-marker)) 308 (tempo-insert-mark (point-marker))
309 (mapc (function (lambda (elt) 309 (mapc (lambda (elt)
310 (tempo-insert elt on-region))) 310 (tempo-insert elt on-region))
311 (symbol-value template)) 311 (symbol-value template))
312 (tempo-insert-mark (point-marker))) 312 (tempo-insert-mark (point-marker)))
313 (tempo-forward-mark)) 313 (tempo-forward-mark))
@@ -449,9 +449,9 @@ never prompted."
449 "Tries all the user-defined element handlers in `tempo-user-elements'." 449 "Tries all the user-defined element handlers in `tempo-user-elements'."
450 ;; Sigh... I need (some list) 450 ;; Sigh... I need (some list)
451 (catch 'found 451 (catch 'found
452 (mapc (function (lambda (handler) 452 (mapc (lambda (handler)
453 (let ((result (funcall handler element))) 453 (let ((result (funcall handler element)))
454 (if result (throw 'found result))))) 454 (if result (throw 'found result))))
455 tempo-user-elements) 455 tempo-user-elements)
456 (throw 'found nil))) 456 (throw 'found nil)))
457 457
@@ -542,7 +542,7 @@ and insert the results."
542;;; tempo-forward-mark 542;;; tempo-forward-mark
543 543
544(defun tempo-forward-mark () 544(defun tempo-forward-mark ()
545 "Jump to the next mark in `tempo-forward-mark-list'." 545 "Jump to the next mark in `tempo-marks'."
546 (interactive) 546 (interactive)
547 (let ((next-mark (catch 'found 547 (let ((next-mark (catch 'found
548 (mapc 548 (mapc
@@ -560,7 +560,7 @@ and insert the results."
560;;; tempo-backward-mark 560;;; tempo-backward-mark
561 561
562(defun tempo-backward-mark () 562(defun tempo-backward-mark ()
563 "Jump to the previous mark in `tempo-back-mark-list'." 563 "Jump to the previous mark in `tempo-marks'."
564 (interactive) 564 (interactive)
565 (let ((prev-mark (catch 'found 565 (let ((prev-mark (catch 'found
566 (let (last) 566 (let (last)
@@ -640,11 +640,11 @@ If `tempo-dirty-collection' is nil, the old collection is reused."
640 tempo-collection) 640 tempo-collection)
641 (setq tempo-collection 641 (setq tempo-collection
642 (apply (function append) 642 (apply (function append)
643 (mapcar (function (lambda (tag-list) 643 (mapcar (lambda (tag-list)
644 ; If the format for 644 ; If the format for
645 ; tempo-local-tags changes, 645 ; tempo-local-tags changes,
646 ; change this 646 ; change this
647 (eval (car tag-list)))) 647 (eval (car tag-list)))
648 tempo-local-tags)))) 648 tempo-local-tags))))
649 (setq tempo-dirty-collection nil))) 649 (setq tempo-dirty-collection nil)))
650 650
diff --git a/lisp/term.el b/lisp/term.el
index f0470d806cd..ff8b3f00f34 100644
--- a/lisp/term.el
+++ b/lisp/term.el
@@ -554,7 +554,7 @@ See also `term-dynamic-complete'.
554This is a good thing to set in mode hooks.") 554This is a good thing to set in mode hooks.")
555 555
556(defvar term-input-filter 556(defvar term-input-filter
557 (function (lambda (str) (not (string-match "\\`\\s *\\'" str)))) 557 (lambda (str) (not (string-match "\\`\\s *\\'" str)))
558 "Predicate for filtering additions to input history. 558 "Predicate for filtering additions to input history.
559Only inputs answering true to this function are saved on the input 559Only inputs answering true to this function are saved on the input
560history list. Default is to save anything that isn't all whitespace.") 560history list. Default is to save anything that isn't all whitespace.")
@@ -860,6 +860,7 @@ is buffer-local."
860 (define-key map [prior] 'term-send-prior) 860 (define-key map [prior] 'term-send-prior)
861 (define-key map [next] 'term-send-next) 861 (define-key map [next] 'term-send-next)
862 (define-key map [xterm-paste] #'term--xterm-paste) 862 (define-key map [xterm-paste] #'term--xterm-paste)
863 (define-key map [?\C-/] #'term-send-C-_)
863 map) 864 map)
864 "Keyboard map for sending characters directly to the inferior process.") 865 "Keyboard map for sending characters directly to the inferior process.")
865 866
@@ -1282,6 +1283,7 @@ without any interpretation."
1282(defun term-send-next () (interactive) (term-send-raw-string "\e[6~")) 1283(defun term-send-next () (interactive) (term-send-raw-string "\e[6~"))
1283(defun term-send-del () (interactive) (term-send-raw-string "\e[3~")) 1284(defun term-send-del () (interactive) (term-send-raw-string "\e[3~"))
1284(defun term-send-backspace () (interactive) (term-send-raw-string "\C-?")) 1285(defun term-send-backspace () (interactive) (term-send-raw-string "\C-?"))
1286(defun term-send-C-_ () (interactive) (term-send-raw-string "\C-_"))
1285 1287
1286(defun term-char-mode () 1288(defun term-char-mode ()
1287 "Switch to char (\"raw\") sub-mode of term mode. 1289 "Switch to char (\"raw\") sub-mode of term mode.
@@ -3638,8 +3640,8 @@ The top-most line is line 0."
3638 (message "Terminal-emulator pager break help...") 3640 (message "Terminal-emulator pager break help...")
3639 (sit-for 0) 3641 (sit-for 0)
3640 (with-electric-help 3642 (with-electric-help
3641 (function (lambda () 3643 (lambda ()
3642 (princ (substitute-command-keys 3644 (princ (substitute-command-keys
3643"\\<term-pager-break-map>\ 3645"\\<term-pager-break-map>\
3644Terminal-emulator MORE break.\n\ 3646Terminal-emulator MORE break.\n\
3645Type one of the following keys:\n\n\ 3647Type one of the following keys:\n\n\
@@ -3657,7 +3659,7 @@ Type one of the following keys:\n\n\
3657Any other key is passed through to the program 3659Any other key is passed through to the program
3658running under the terminal emulator and disables pager processing until 3660running under the terminal emulator and disables pager processing until
3659all pending output has been dealt with.")) 3661all pending output has been dealt with."))
3660 nil)))) 3662 nil)))
3661 3663
3662(defun term-pager-continue (new-count) 3664(defun term-pager-continue (new-count)
3663 (let ((process (get-buffer-process (current-buffer)))) 3665 (let ((process (get-buffer-process (current-buffer))))
diff --git a/lisp/term/internal.el b/lisp/term/internal.el
index 5e22c0f6afe..c54481a5327 100644
--- a/lisp/term/internal.el
+++ b/lisp/term/internal.el
@@ -400,9 +400,9 @@ If TABLE is nil or omitted, `standard-display-table' is used."
400;; The following alist was compiled from: 400;; The following alist was compiled from:
401;; 401;;
402;; Ralf Brown's Interrupt List. file INTERRUP.F, D-2138, Table 01400 402;; Ralf Brown's Interrupt List. file INTERRUP.F, D-2138, Table 01400
403;; http://www.ethnologue.com/country_index.asp (official languages) 403;; https://www.ethnologue.com/country_index.asp (official languages)
404;; http://unicode.org/onlinedat/languages.html 404;; https://unicode.org/onlinedat/languages.html
405;; http://unicode.org/onlinedat/countries.html 405;; https://unicode.org/onlinedat/countries.html
406;; 406;;
407;; Only the official languages listed for each country. 407;; Only the official languages listed for each country.
408;; 408;;
diff --git a/lisp/textmodes/artist.el b/lisp/textmodes/artist.el
index 75b13bd7d8e..80682883c85 100644
--- a/lisp/textmodes/artist.el
+++ b/lisp/textmodes/artist.el
@@ -593,7 +593,7 @@ This variable is initialized by the `artist-make-prev-next-op-alist' function.")
593 (define-key map "\C-c\C-a\C-b" 'artist-submit-bug-report) 593 (define-key map "\C-c\C-a\C-b" 'artist-submit-bug-report)
594 (define-key map [menu-bar artist] (cons "Artist" artist-menu-map)) 594 (define-key map [menu-bar artist] (cons "Artist" artist-menu-map))
595 map) 595 map)
596 "Keymap for `artist-minor-mode'.") 596 "Keymap for `artist-mode'.")
597 597
598(defvar artist-replacement-table (make-vector 256 0) 598(defvar artist-replacement-table (make-vector 256 0)
599 "Replacement table for `artist-replace-char'.") 599 "Replacement table for `artist-replace-char'.")
@@ -1958,7 +1958,8 @@ Return a list (RETURN-CODE STDOUT STDERR)."
1958 1958
1959(defsubst artist-get-char-at-xy (x y) 1959(defsubst artist-get-char-at-xy (x y)
1960 "Return the character found at column X, row Y. 1960 "Return the character found at column X, row Y.
1961Also updates the variables `artist-draw-min-y' and `artist-draw-max-y'." 1961Also updates the variables `artist-draw-region-min-y' and
1962`artist-draw-region-max-y'."
1962 (artist-move-to-xy x y) 1963 (artist-move-to-xy x y)
1963 (let ((curr-y (artist-current-line))) 1964 (let ((curr-y (artist-current-line)))
1964 (setq artist-draw-region-min-y (min curr-y artist-draw-region-min-y)) 1965 (setq artist-draw-region-min-y (min curr-y artist-draw-region-min-y))
@@ -5575,8 +5576,8 @@ The event, EV, is the mouse event."
5575;; - artist-key-set-point-xxx for setting a point in the 5576;; - artist-key-set-point-xxx for setting a point in the
5576;; mode, to be called from `artist-key-set-point-common'. 5577;; mode, to be called from `artist-key-set-point-common'.
5577;; 5578;;
5578;; - artist-key-do-continuously-xxx to be called from 5579;; - artist-key-do-continously-xxx to be called from
5579;; `artist-key-do-continuously-common' whenever the user 5580;; `artist-key-do-continously-common' whenever the user
5580;; moves around. 5581;; moves around.
5581;; 5582;;
5582;; As for the artist-mouse-draw-xxx, these two functions must 5583;; As for the artist-mouse-draw-xxx, these two functions must
diff --git a/lisp/textmodes/css-mode.el b/lisp/textmodes/css-mode.el
index 03edd4703ea..0d1eeed5611 100644
--- a/lisp/textmodes/css-mode.el
+++ b/lisp/textmodes/css-mode.el
@@ -100,7 +100,7 @@
100 "Identifiers for types of media.") 100 "Identifiers for types of media.")
101 101
102(defconst css-property-alist 102(defconst css-property-alist
103 ;; CSS 2.1 properties (http://www.w3.org/TR/CSS21/propidx.html). 103 ;; CSS 2.1 properties (https://www.w3.org/TR/CSS21/propidx.html).
104 ;; 104 ;;
105 ;; Properties duplicated by any of the CSS3 modules below have been 105 ;; Properties duplicated by any of the CSS3 modules below have been
106 ;; removed. 106 ;; removed.
@@ -190,7 +190,7 @@
190 ("z-index" "auto" integer) 190 ("z-index" "auto" integer)
191 191
192 ;; CSS Animations 192 ;; CSS Animations
193 ;; (http://www.w3.org/TR/css3-animations/#property-index) 193 ;; (https://www.w3.org/TR/css3-animations/#property-index)
194 ("animation" single-animation-name time single-timing-function 194 ("animation" single-animation-name time single-timing-function
195 single-animation-iteration-count single-animation-direction 195 single-animation-iteration-count single-animation-direction
196 single-animation-fill-mode single-animation-play-state) 196 single-animation-fill-mode single-animation-play-state)
@@ -204,7 +204,7 @@
204 ("animation-timing-function" single-timing-function) 204 ("animation-timing-function" single-timing-function)
205 205
206 ;; CSS Backgrounds and Borders Module Level 3 206 ;; CSS Backgrounds and Borders Module Level 3
207 ;; (http://www.w3.org/TR/css3-background/#property-index) 207 ;; (https://www.w3.org/TR/css3-background/#property-index)
208 ("background" bg-layer final-bg-layer) 208 ("background" bg-layer final-bg-layer)
209 ("background-attachment" attachment) 209 ("background-attachment" attachment)
210 ("background-clip" box) 210 ("background-clip" box)
@@ -249,7 +249,7 @@
249 ("box-shadow" "none" shadow) 249 ("box-shadow" "none" shadow)
250 250
251 ;; CSS Basic User Interface Module Level 3 (CSS3 UI) 251 ;; CSS Basic User Interface Module Level 3 (CSS3 UI)
252 ;; (http://www.w3.org/TR/css3-ui/#property-index) 252 ;; (https://www.w3.org/TR/css3-ui/#property-index)
253 ("box-sizing" "content-box" "border-box") 253 ("box-sizing" "content-box" "border-box")
254 ("caret-color" "auto" color) 254 ("caret-color" "auto" color)
255 ("cursor" uri x y "auto" "default" "none" "context-menu" "help" 255 ("cursor" uri x y "auto" "default" "none" "context-menu" "help"
@@ -272,7 +272,7 @@
272 ("text-overflow" "clip" "ellipsis" string) 272 ("text-overflow" "clip" "ellipsis" string)
273 273
274 ;; CSS Color Module Level 3 274 ;; CSS Color Module Level 3
275 ;; (http://www.w3.org/TR/css3-color/#property) 275 ;; (https://www.w3.org/TR/css3-color/#property)
276 ("color" color) 276 ("color" color)
277 ("opacity" alphavalue) 277 ("opacity" alphavalue)
278 278
@@ -304,7 +304,7 @@
304 ("grid-template-rows" "none" track-list auto-track-list) 304 ("grid-template-rows" "none" track-list auto-track-list)
305 305
306 ;; CSS Flexible Box Layout Module Level 1 306 ;; CSS Flexible Box Layout Module Level 1
307 ;; (http://www.w3.org/TR/css-flexbox-1/#property-index) 307 ;; (https://www.w3.org/TR/css-flexbox-1/#property-index)
308 ("align-content" "flex-start" "flex-end" "center" "space-between" 308 ("align-content" "flex-start" "flex-end" "center" "space-between"
309 "space-around" "stretch") 309 "space-around" "stretch")
310 ("align-items" "flex-start" "flex-end" "center" "baseline" 310 ("align-items" "flex-start" "flex-end" "center" "baseline"
@@ -323,7 +323,7 @@
323 ("order" integer) 323 ("order" integer)
324 324
325 ;; CSS Fonts Module Level 3 325 ;; CSS Fonts Module Level 3
326 ;; (http://www.w3.org/TR/css3-fonts/#property-index) 326 ;; (https://www.w3.org/TR/css3-fonts/#property-index)
327 ("font" font-style font-variant-css21 font-weight font-stretch 327 ("font" font-style font-variant-css21 font-weight font-stretch
328 font-size line-height font-family "caption" "icon" "menu" 328 font-size line-height font-family "caption" "icon" "menu"
329 "message-box" "small-caption" "status-bar") 329 "message-box" "small-caption" "status-bar")
@@ -419,7 +419,7 @@
419 ("columns" column-width column-count) 419 ("columns" column-width column-count)
420 420
421 ;; CSS Overflow Module Level 3 421 ;; CSS Overflow Module Level 3
422 ;; (http://www.w3.org/TR/css-overflow-3/#property-index) 422 ;; (https://www.w3.org/TR/css-overflow-3/#property-index)
423 ("max-lines" "none" integer) 423 ("max-lines" "none" integer)
424 ("overflow" "visible" "hidden" "scroll" "auto" "paged-x" "paged-y" 424 ("overflow" "visible" "hidden" "scroll" "auto" "paged-x" "paged-y"
425 "paged-x-controls" "paged-y-controls" "fragments") 425 "paged-x-controls" "paged-y-controls" "fragments")
@@ -448,7 +448,7 @@
448 ("text-underline-position" "auto" "under" "left" "right") 448 ("text-underline-position" "auto" "under" "left" "right")
449 449
450 ;; CSS Text Module Level 3 450 ;; CSS Text Module Level 3
451 ;; (http://www.w3.org/TR/css3-text/#property-index) 451 ;; (https://www.w3.org/TR/css3-text/#property-index)
452 ("hanging-punctuation" "none" "first" "force-end" "allow-end" 452 ("hanging-punctuation" "none" "first" "force-end" "allow-end"
453 "last") 453 "last")
454 ("hyphens" "none" "manual" "auto") 454 ("hyphens" "none" "manual" "auto")
@@ -470,7 +470,7 @@
470 ("word-wrap" "normal" "break-word") 470 ("word-wrap" "normal" "break-word")
471 471
472 ;; CSS Transforms Module Level 1 472 ;; CSS Transforms Module Level 1
473 ;; (http://www.w3.org/TR/css3-2d-transforms/#property-index) 473 ;; (https://www.w3.org/TR/css3-2d-transforms/#property-index)
474 ("backface-visibility" "visible" "hidden") 474 ("backface-visibility" "visible" "hidden")
475 ("perspective" "none" length) 475 ("perspective" "none" length)
476 ("perspective-origin" "left" "center" "right" "top" "bottom" 476 ("perspective-origin" "left" "center" "right" "top" "bottom"
@@ -481,7 +481,7 @@
481 ("transform-style" "flat" "preserve-3d") 481 ("transform-style" "flat" "preserve-3d")
482 482
483 ;; CSS Transitions 483 ;; CSS Transitions
484 ;; (http://www.w3.org/TR/css3-transitions/#property-index) 484 ;; (https://www.w3.org/TR/css3-transitions/#property-index)
485 ("transition" single-transition) 485 ("transition" single-transition)
486 ("transition-delay" time) 486 ("transition-delay" time)
487 ("transition-duration" time) 487 ("transition-duration" time)
@@ -503,7 +503,7 @@
503 ("writing-mode" "horizontal-tb" "vertical-rl" "vertical-lr") 503 ("writing-mode" "horizontal-tb" "vertical-rl" "vertical-lr")
504 504
505 ;; Filter Effects Module Level 1 505 ;; Filter Effects Module Level 1
506 ;; (http://www.w3.org/TR/filter-effects/#property-index) 506 ;; (https://www.w3.org/TR/filter-effects/#property-index)
507 ("color-interpolation-filters" "auto" "sRGB" "linearRGB") 507 ("color-interpolation-filters" "auto" "sRGB" "linearRGB")
508 ("filter" "none" filter-function-list) 508 ("filter" "none" filter-function-list)
509 ("flood-color" color) 509 ("flood-color" color)
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index e862e354b5c..65702d081f1 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -524,7 +524,7 @@ invoking `ispell-change-dictionary'.
524 524
525Consider using the `ispell-parser' to check your text. For instance 525Consider using the `ispell-parser' to check your text. For instance
526consider adding: 526consider adding:
527\(add-hook \\='tex-mode-hook (function (lambda () (setq ispell-parser \\='tex)))) 527\(add-hook \\='tex-mode-hook (lambda () (setq ispell-parser \\='tex)))
528in your init file. 528in your init file.
529 529
530\\[flyspell-region] checks all words inside a region. 530\\[flyspell-region] checks all words inside a region.
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index a99dfe40670..05a4bd058c4 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -3937,7 +3937,7 @@ in your init file:
3937 3937
3938You can bind this to the key C-c i in GNUS or mail by adding to 3938You can bind this to the key C-c i in GNUS or mail by adding to
3939`news-reply-mode-hook' or `mail-mode-hook' the following lambda expression: 3939`news-reply-mode-hook' or `mail-mode-hook' the following lambda expression:
3940 (function (lambda () (local-set-key \"\\C-ci\" \\='ispell-message)))" 3940 (lambda () (local-set-key \"\\C-ci\" \\='ispell-message))"
3941 (interactive) 3941 (interactive)
3942 (save-excursion 3942 (save-excursion
3943 (goto-char (point-min)) 3943 (goto-char (point-min))
diff --git a/lisp/textmodes/table.el b/lisp/textmodes/table.el
index c7bf687a9e1..25aa58046f4 100644
--- a/lisp/textmodes/table.el
+++ b/lisp/textmodes/table.el
@@ -339,8 +339,8 @@
339;; When using `table-cell-map-hook' do not use `local-set-key'. 339;; When using `table-cell-map-hook' do not use `local-set-key'.
340;; 340;;
341;; (add-hook 'table-cell-map-hook 341;; (add-hook 'table-cell-map-hook
342;; (function (lambda () 342;; (lambda ()
343;; (local-set-key [<key sequence>] '<function>)))) 343;; (local-set-key [<key sequence>] '<function>)))
344;; 344;;
345;; Adding the above to your init file is a common way to customize a 345;; Adding the above to your init file is a common way to customize a
346;; mode specific keymap. However it does not work for this package. 346;; mode specific keymap. However it does not work for this package.
@@ -349,8 +349,8 @@
349;; explicitly. The correct way of achieving above task is: 349;; explicitly. The correct way of achieving above task is:
350;; 350;;
351;; (add-hook 'table-cell-map-hook 351;; (add-hook 'table-cell-map-hook
352;; (function (lambda () 352;; (lambda ()
353;; (define-key table-cell-map [<key sequence>] '<function>)))) 353;; (define-key table-cell-map [<key sequence>] '<function>)))
354;; 354;;
355;; ----- 355;; -----
356;; Menu: 356;; Menu:
@@ -2929,7 +2929,7 @@ buffer, and leaves the previous contents of the buffer untouched.
2929References used for this implementation: 2929References used for this implementation:
2930 2930
2931HTML: 2931HTML:
2932 URL `http://www.w3.org' 2932 URL `https://www.w3.org'
2933 2933
2934LaTeX: 2934LaTeX:
2935 URL `http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/Tables.html' 2935 URL `http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/Tables.html'
@@ -3503,9 +3503,9 @@ column must consists from cells of same width."
3503 (let ((cell-list (table--vertical-cell-list 'top-to-bottom))) 3503 (let ((cell-list (table--vertical-cell-list 'top-to-bottom)))
3504 (unless 3504 (unless
3505 (and (table--uniform-list-p 3505 (and (table--uniform-list-p
3506 (mapcar (function (lambda (cell) (car (table--get-coordinate (car cell))))) cell-list)) 3506 (mapcar (lambda (cell) (car (table--get-coordinate (car cell)))) cell-list))
3507 (table--uniform-list-p 3507 (table--uniform-list-p
3508 (mapcar (function (lambda (cell) (car (table--get-coordinate (cdr cell))))) cell-list))) 3508 (mapcar (lambda (cell) (car (table--get-coordinate (cdr cell)))) cell-list)))
3509 (error "Cells in this column are not in uniform width")) 3509 (error "Cells in this column are not in uniform width"))
3510 (unless lu-coord 3510 (unless lu-coord
3511 (setq lu-coord (table--get-coordinate (caar cell-list)))) 3511 (setq lu-coord (table--get-coordinate (caar cell-list))))
diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el
index a905d148009..11db25cb7a2 100644
--- a/lisp/textmodes/tex-mode.el
+++ b/lisp/textmodes/tex-mode.el
@@ -422,7 +422,7 @@ An alternative value is \" . \", if you use a font with a narrow period."
422 (push (cons "--" (match-beginning 0)) menu)) 422 (push (cons "--" (match-beginning 0)) menu))
423 423
424 ;; Sort in increasing buffer position order. 424 ;; Sort in increasing buffer position order.
425 (sort menu (function (lambda (a b) (< (cdr a) (cdr b)))))))) 425 (sort menu (lambda (a b) (< (cdr a) (cdr b)))))))
426 426
427;;;; 427;;;;
428;;;; Outline support 428;;;; Outline support
diff --git a/lisp/thingatpt.el b/lisp/thingatpt.el
index 3c2d766ffb1..558a3fd7368 100644
--- a/lisp/thingatpt.el
+++ b/lisp/thingatpt.el
@@ -278,7 +278,7 @@ If nil, construct the regexp from `thing-at-point-uri-schemes'.")
278 "Regexp matching a URI without a scheme component.") 278 "Regexp matching a URI without a scheme component.")
279 279
280(defvar thing-at-point-uri-schemes 280(defvar thing-at-point-uri-schemes
281 ;; Officials from http://www.iana.org/assignments/uri-schemes.html 281 ;; Officials from https://www.iana.org/assignments/uri-schemes.html
282 '("aaa://" "about:" "acap://" "apt:" "bzr://" "bzr+ssh://" 282 '("aaa://" "about:" "acap://" "apt:" "bzr://" "bzr+ssh://"
283 "attachment:/" "chrome://" "cid:" "content://" "crid://" "cvs://" 283 "attachment:/" "chrome://" "cid:" "content://" "crid://" "cvs://"
284 "data:" "dav:" "dict://" "doi:" "dns:" "dtn:" "feed:" "file:/" 284 "data:" "dav:" "dict://" "doi:" "dns:" "dtn:" "feed:" "file:/"
diff --git a/lisp/thumbs.el b/lisp/thumbs.el
index dd259ec1ff6..3aa7ff0836b 100644
--- a/lisp/thumbs.el
+++ b/lisp/thumbs.el
@@ -30,7 +30,7 @@
30;; your images, use image-dired.el 30;; your images, use image-dired.el
31;; 31;;
32;; The 'convert' program from 'ImageMagick' 32;; The 'convert' program from 'ImageMagick'
33;; [URL:http://www.imagemagick.org/] is required. 33;; [URL:https://www.imagemagick.org/] is required.
34;; 34;;
35;; Thanks: Alex Schroeder <alex@gnu.org> for maintaining the package at some 35;; Thanks: Alex Schroeder <alex@gnu.org> for maintaining the package at some
36;; time. The peoples at #emacs@freenode.net for numerous help. RMS 36;; time. The peoples at #emacs@freenode.net for numerous help. RMS
diff --git a/lisp/url/ChangeLog.1 b/lisp/url/ChangeLog.1
index cf168ebf470..0309440defa 100644
--- a/lisp/url/ChangeLog.1
+++ b/lisp/url/ChangeLog.1
@@ -449,7 +449,7 @@
449 449
4502012-04-10 William Xu <william.xwl@gmail.com> (tiny change) 4502012-04-10 William Xu <william.xwl@gmail.com> (tiny change)
451 451
452 * url.el (url-retrieve-internal): Hexify multibye URL string first 452 * url.el (url-retrieve-internal): Hexify multibyte URL string first
453 when necessary (bug#7017). 453 when necessary (bug#7017).
454 454
4552012-04-10 Lars Magne Ingebrigtsen <larsi@gnus.org> 4552012-04-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
diff --git a/lisp/url/url-auth.el b/lisp/url/url-auth.el
index f2044617b94..8f39b5ae010 100644
--- a/lisp/url/url-auth.el
+++ b/lisp/url/url-auth.el
@@ -39,7 +39,7 @@
39;;; ------------------------ 39;;; ------------------------
40;;; This implements the BASIC authorization type. See the online 40;;; This implements the BASIC authorization type. See the online
41;;; documentation at 41;;; documentation at
42;;; http://www.w3.org/hypertext/WWW/AccessAuthorization/Basic.html 42;;; https://www.w3.org/hypertext/WWW/AccessAuthorization/Basic.html
43;;; for the complete documentation on this type. 43;;; for the complete documentation on this type.
44;;; 44;;;
45;;; This is very insecure, but it works as a proof-of-concept 45;;; This is very insecure, but it works as a proof-of-concept
diff --git a/lisp/url/url-cache.el b/lisp/url/url-cache.el
index a67e5dcd125..056ad1e0188 100644
--- a/lisp/url/url-cache.el
+++ b/lisp/url/url-cache.el
@@ -125,8 +125,8 @@ The actual return value is the last modification time of the cache file."
125 125
126 (setq fname (and fname 126 (setq fname (and fname
127 (mapconcat 127 (mapconcat
128 (function (lambda (x) 128 (lambda (x)
129 (if (= x ?~) "" (char-to-string x)))) 129 (if (= x ?~) "" (char-to-string x)))
130 fname "")) 130 fname ""))
131 fname (cond 131 fname (cond
132 ((null fname) nil) 132 ((null fname) nil)
diff --git a/lisp/url/url-irc.el b/lisp/url/url-irc.el
index 03a3b37f398..9647df1c13c 100644
--- a/lisp/url/url-irc.el
+++ b/lisp/url/url-irc.el
@@ -22,7 +22,7 @@
22;;; Commentary: 22;;; Commentary:
23 23
24;; IRC URLs are defined in 24;; IRC URLs are defined in
25;; http://www.w3.org/Addressing/draft-mirashi-url-irc-01.txt 25;; https://www.w3.org/Addressing/draft-mirashi-url-irc-01.txt
26 26
27;;; Code: 27;;; Code:
28 28
diff --git a/lisp/url/url.el b/lisp/url/url.el
index 321e79c019f..33a5ebcdccc 100644
--- a/lisp/url/url.el
+++ b/lisp/url/url.el
@@ -24,7 +24,7 @@
24 24
25;;; Commentary: 25;;; Commentary:
26 26
27;; Registered URI schemes: http://www.iana.org/assignments/uri-schemes 27;; Registered URI schemes: https://www.iana.org/assignments/uri-schemes
28 28
29;;; Code: 29;;; Code:
30 30
diff --git a/lisp/vc/pcvs.el b/lisp/vc/pcvs.el
index cb0494ee91c..1e4343cc6be 100644
--- a/lisp/vc/pcvs.el
+++ b/lisp/vc/pcvs.el
@@ -1624,8 +1624,7 @@ With prefix argument, prompt for cvs flags."
1624(defun-cvs-mode (cvs-mode-diff . DOUBLE) (flags) 1624(defun-cvs-mode (cvs-mode-diff . DOUBLE) (flags)
1625 "Diff the selected files against the repository. 1625 "Diff the selected files against the repository.
1626This command compares the files in your working area against the 1626This command compares the files in your working area against the
1627revision which they are based upon. 1627revision which they are based upon."
1628See also `cvs-diff-ignore-marks'."
1629 (interactive 1628 (interactive
1630 (list (cvs-add-branch-prefix 1629 (list (cvs-add-branch-prefix
1631 (cvs-add-secondary-branch-prefix 1630 (cvs-add-secondary-branch-prefix
diff --git a/lisp/wdired.el b/lisp/wdired.el
index 6defbf8bc86..40f4cd97190 100644
--- a/lisp/wdired.el
+++ b/lisp/wdired.el
@@ -344,7 +344,7 @@ non-nil means return old filename."
344 ;; Don't unquote the old name, it wasn't quoted in the first place 344 ;; Don't unquote the old name, it wasn't quoted in the first place
345 (and file (setq file (wdired-normalize-filename file (not old))))) 345 (and file (setq file (wdired-normalize-filename file (not old)))))
346 (if (or no-dir old) 346 (if (or no-dir old)
347 file 347 (if no-dir (file-relative-name file) file)
348 (and file (> (length file) 0) 348 (and file (> (length file) 0)
349 (concat (dired-current-directory) file)))))) 349 (concat (dired-current-directory) file))))))
350 350
@@ -913,9 +913,9 @@ Like original function but it skips read-only words."
913 (if (= (length perms-new) 10) 913 (if (= (length perms-new) 10)
914 (progn 914 (progn
915 (setq perm-tmp 915 (setq perm-tmp
916 (int-to-string (wdired-perms-to-number perms-new))) 916 (string-to-number
917 (unless (equal 0 (process-file dired-chmod-program 917 (int-to-string (wdired-perms-to-number perms-new)) 8))
918 nil nil nil perm-tmp filename)) 918 (unless (set-file-modes filename perm-tmp)
919 (setq errors (1+ errors)) 919 (setq errors (1+ errors))
920 (dired-log "%s %s `%s' failed\n\n" 920 (dired-log "%s %s `%s' failed\n\n"
921 dired-chmod-program perm-tmp filename))) 921 dired-chmod-program perm-tmp filename)))
diff --git a/lisp/whitespace.el b/lisp/whitespace.el
index 2e05d93bf59..669057811a5 100644
--- a/lisp/whitespace.el
+++ b/lisp/whitespace.el
@@ -5,7 +5,7 @@
5;; Author: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com> 5;; Author: Vinicius Jose Latorre <viniciusjl.gnu@gmail.com>
6;; Keywords: data, wp 6;; Keywords: data, wp
7;; Version: 13.2.2 7;; Version: 13.2.2
8;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre 8;; X-URL: https://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
9 9
10;; This file is part of GNU Emacs. 10;; This file is part of GNU Emacs.
11 11
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index 0a2ddb0ea1d..6568cd2c8f1 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -203,27 +203,100 @@ nil means read a single character."
203 :group 'widgets 203 :group 'widgets
204 :type 'boolean) 204 :type 'boolean)
205 205
206(defun widget--simplify-menu (extended)
207 "Convert the EXTENDED menu into a menu composed of simple menu items.
208
209Each item in the simplified menu is of the form (ITEM-STRING . REAL-BINDING),
210where both elements are taken from the EXTENDED MENU. ITEM-STRING is the
211correspondent ITEM-NAME in the menu-item entry:
212 (menu-item ITEM-NAME REAL-BINDING . ITEM-PROPERTY-LIST), and REAL-BINDING is
213the symbol in the key vector, as in `define-key'.
214 (See `(elisp)Defining Menus' for more information.)
215
216Only visible, enabled and meaningful menu items make their way into
217the returned simplified menu. That is:
218For the menu item to be visible, it has to either lack a :visible form in its
219item-property-list, or the :visible form has to evaluate to a non-nil value.
220For the menu item to be enabled, it has to either lack a :enabled form in its
221item-property-list, or the :enable form has to evaluate to a non-nil value.
222Additionally, if the menu item is a radio button, then its selected form has
223to evaluate to nil for the menu item to be meaningful."
224 (let (simplified)
225 (map-keymap (lambda (ev def)
226 (when (and (eq (nth 0 def) 'menu-item)
227 (nth 2 def)) ; Only menu-items with a real binding.
228 ;; Loop through the item-property-list, looking for
229 ;; :visible, :enable (or :active) and :button properties.
230 (let ((plist (nthcdr 3 def))
231 (enable t) ; Enabled by default.
232 (visible t) ; Visible by default.
233 selected keyword value)
234 (while (and plist (cdr plist)
235 (keywordp (setq keyword (car plist))))
236 (setq value (cadr plist))
237 (cond ((memq keyword '(:visible :included))
238 (setq visible value))
239 ((memq keyword '(:enable :active))
240 (setq enable value))
241 ((and (eq keyword :button)
242 (eq (car value) :radio))
243 (setq selected (cdr value))))
244 (setq plist (cddr plist)))
245 (when (and (eval visible)
246 (eval enable)
247 (or (not selected)
248 (not (eval selected))))
249 (push (cons (nth 1 def) ev) simplified)))))
250 extended)
251 (reverse simplified)))
252
206(defun widget-choose (title items &optional event) 253(defun widget-choose (title items &optional event)
207 "Choose an item from a list. 254 "Choose an item from a list.
208 255
209First argument TITLE is the name of the list. 256First argument TITLE is the name of the list.
210Second argument ITEMS is a list whose members are either 257Second argument ITEMS should be a menu, either with simple item definitions,
258or with extended item definitions.
259When ITEMS has simple item definitions, it is a list whose members are either
211 (NAME . VALUE), to indicate selectable items, or just strings to 260 (NAME . VALUE), to indicate selectable items, or just strings to
212 indicate unselectable items. 261 indicate unselectable items.
262
263When ITEMS is a menu that uses an extended format, then ITEMS should be a
264keymap, and each binding should look like this:
265 (menu-item ITEM-NAME REAL-BINDING . ITEM-PROPERTY-LIST)
266or like this: (menu-item ITEM-NAME) to indicate a non-selectable item.
267REAL-BINDING should be a symbol, and should not be a keymap, because submenus
268are not supported.
269
213Optional third argument EVENT is an input event. 270Optional third argument EVENT is an input event.
214 271
215The user is asked to choose between each NAME from the items alist, 272If EVENT is a mouse event, and the number of elements in items is less than
216and the VALUE of the chosen element will be returned. If EVENT is a
217mouse event, and the number of elements in items is less than
218`widget-menu-max-size', a popup menu will be used, otherwise the 273`widget-menu-max-size', a popup menu will be used, otherwise the
219minibuffer." 274minibuffer.
275
276The user is asked to choose between each NAME from ITEMS.
277If ITEMS has simple item definitions, then this function returns the VALUE of
278the chosen element. If ITEMS is a keymap, then the return value is the symbol
279in the key vector, as in the argument of `define-key'."
220 (cond ((and (< (length items) widget-menu-max-size) 280 (cond ((and (< (length items) widget-menu-max-size)
221 event (display-popup-menus-p)) 281 event (display-popup-menus-p))
222 ;; Mouse click. 282 ;; Mouse click.
223 (x-popup-menu event 283 (if (keymapp items)
224 (list title (cons "" items)))) 284 ;; Modify the keymap prompt, and then restore the old one, if any.
285 (let ((prompt (keymap-prompt items)))
286 (unwind-protect
287 (progn
288 (setq items (delete prompt items))
289 (push title (cdr items))
290 ;; Return just the first element of the list of events.
291 (car (x-popup-menu event items)))
292 (setq items (delete title items))
293 (when prompt
294 (push prompt (cdr items)))))
295 (x-popup-menu event (list title (cons "" items)))))
225 ((or widget-menu-minibuffer-flag 296 ((or widget-menu-minibuffer-flag
226 (> (length items) widget-menu-max-shortcuts)) 297 (> (length items) widget-menu-max-shortcuts))
298 (when (keymapp items)
299 (setq items (widget--simplify-menu items)))
227 ;; Read the choice of name from the minibuffer. 300 ;; Read the choice of name from the minibuffer.
228 (setq items (cl-remove-if 'stringp items)) 301 (setq items (cl-remove-if 'stringp items))
229 (let ((val (completing-read (concat title ": ") items nil t))) 302 (let ((val (completing-read (concat title ": ") items nil t)))
@@ -233,6 +306,8 @@ minibuffer."
233 (setq val try)) 306 (setq val try))
234 (cdr (assoc val items)))))) 307 (cdr (assoc val items))))))
235 (t 308 (t
309 (when (keymapp items)
310 (setq items (widget--simplify-menu items)))
236 ;; Construct a menu of the choices 311 ;; Construct a menu of the choices
237 ;; and then use it for prompting for a single character. 312 ;; and then use it for prompting for a single character.
238 (let* ((next-digit ?0) 313 (let* ((next-digit ?0)
diff --git a/lisp/window.el b/lisp/window.el
index 9aca94d502a..1fcfffcb53d 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -5480,7 +5480,7 @@ frame. The selected window is not changed by this function."
5480 (set-window-parameter 5480 (set-window-parameter
5481 (window-parent new) 'window-side window-side)))) 5481 (window-parent new) 'window-side window-side))))
5482 ((eq window-combination-resize 'atom) 5482 ((eq window-combination-resize 'atom)
5483 ;; Make sure `window--check-frame' won't destroy an existing 5483 ;; Make sure `window--check' won't destroy an existing
5484 ;; atomic window in case the new window gets nested inside. 5484 ;; atomic window in case the new window gets nested inside.
5485 (unless (window-parameter window 'window-atom) 5485 (unless (window-parameter window 'window-atom)
5486 (set-window-parameter window 'window-atom t)) 5486 (set-window-parameter window 'window-atom t))
@@ -7712,7 +7712,7 @@ indirectly called by the latter."
7712 (with-current-buffer (window-buffer window) 7712 (with-current-buffer (window-buffer window)
7713 (cond ((memq major-mode allowed-modes) 7713 (cond ((memq major-mode allowed-modes)
7714 'same) 7714 'same)
7715 ((derived-mode-p allowed-modes) 7715 ((apply #'derived-mode-p allowed-modes)
7716 'derived))))) 7716 'derived)))))
7717 (when (and mode? 7717 (when (and mode?
7718 (not (and inhibit-same-window-p 7718 (not (and inhibit-same-window-p
diff --git a/lisp/xml.el b/lisp/xml.el
index 236d9cbe6c0..c96ff80446a 100644
--- a/lisp/xml.el
+++ b/lisp/xml.el
@@ -655,7 +655,7 @@ Leave point at the first non-blank character after the tag."
655 (setq name (xml-maybe-do-ns (match-string-no-properties 1) nil xml-ns)) 655 (setq name (xml-maybe-do-ns (match-string-no-properties 1) nil xml-ns))
656 (goto-char end-pos) 656 (goto-char end-pos)
657 657
658 ;; See also: http://www.w3.org/TR/2000/REC-xml-20001006#AVNormalize 658 ;; See also: https://www.w3.org/TR/2000/REC-xml-20001006#AVNormalize
659 659
660 ;; Do we have a string between quotes (or double-quotes), 660 ;; Do we have a string between quotes (or double-quotes),
661 ;; or a simple word ? 661 ;; or a simple word ?
diff --git a/m4/pkg.m4 b/m4/pkg.m4
index 13a88901786..f9075e56c87 100644
--- a/m4/pkg.m4
+++ b/m4/pkg.m4
@@ -86,7 +86,7 @@ dnl Check to see whether a particular set of modules exists. Similar to
86dnl PKG_CHECK_MODULES(), but does not set variables or print errors. 86dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
87dnl 87dnl
88dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) 88dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
89dnl only at the first occurence in configure.ac, so if the first place 89dnl only at the first occurrence in configure.ac, so if the first place
90dnl it's called might be skipped (such as if it is within an "if", you 90dnl it's called might be skipped (such as if it is within an "if", you
91dnl have to call PKG_CHECK_EXISTS manually 91dnl have to call PKG_CHECK_EXISTS manually
92AC_DEFUN([PKG_CHECK_EXISTS], 92AC_DEFUN([PKG_CHECK_EXISTS],
diff --git a/nextstep/ChangeLog.1 b/nextstep/ChangeLog.1
index 463705a66a8..5d866e6e274 100644
--- a/nextstep/ChangeLog.1
+++ b/nextstep/ChangeLog.1
@@ -14,7 +14,7 @@
14 14
152014-11-03 Jan Djärv <jan.h.d@swipnet.se> 152014-11-03 Jan Djärv <jan.h.d@swipnet.se>
16 16
17 * INSTALL: Remove univeral binary section. 17 * INSTALL: Remove universal binary section.
18 18
192014-10-20 Glenn Morris <rgm@gnu.org> 192014-10-20 Glenn Morris <rgm@gnu.org>
20 20
diff --git a/src/ChangeLog.10 b/src/ChangeLog.10
index 1c954b20eec..fbbd3608909 100644
--- a/src/ChangeLog.10
+++ b/src/ChangeLog.10
@@ -9344,7 +9344,7 @@
9344 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap. 9344 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
9345 It replaces the corresponding member from struct window, as a 9345 It replaces the corresponding member from struct window, as a
9346 window may now show multiple overlay arrows. 9346 window may now show multiple overlay arrows.
9347 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap. 9347 Remove member overlay_arrow_p, superseded by overlay_arrow_bitmap.
9348 9348
9349 * dispnew.c (row_equal_p, update_window_line, scrolling_window): 9349 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
9350 Compare overlay_arrow_bitmap than overlay_arrow_p members. 9350 Compare overlay_arrow_bitmap than overlay_arrow_p members.
@@ -11141,7 +11141,7 @@
11141 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH. 11141 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
11142 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH. 11142 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
11143 (Qdefvar): Var deleted. 11143 (Qdefvar): Var deleted.
11144 (syms_of_eval): Don't initialze it. 11144 (syms_of_eval): Don't initialize it.
11145 11145
11146 * lread.c (syms_of_lread) <load-history>: Doc fix. 11146 * lread.c (syms_of_lread) <load-history>: Doc fix.
11147 11147
@@ -18716,7 +18716,7 @@
18716 and line_height, and use corresponding new members in struct 18716 and line_height, and use corresponding new members in struct
18717 frame. All uses changed. 18717 frame. All uses changed.
18718 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros; 18718 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
18719 superseeded by corresponding macros in frame.h. 18719 superseded by corresponding macros in frame.h.
18720 18720
18721 * msdos.c: Make (several) trivial substitutions for renamed and 18721 * msdos.c: Make (several) trivial substitutions for renamed and
18722 new macros in dispextern.h, frame.h and window.h. 18722 new macros in dispextern.h, frame.h and window.h.
@@ -19145,7 +19145,7 @@
19145 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable. 19145 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
19146 19146
19147 * lread.c (read1): Before calling index, check if the 2nd 19147 * lread.c (read1): Before calling index, check if the 2nd
19148 arguemnt is in ASCII range. 19148 argument is in ASCII range.
19149 19149
191502003-04-08 Richard M. Stallman <rms@gnu.org> 191502003-04-08 Richard M. Stallman <rms@gnu.org>
19151 19151
@@ -19945,7 +19945,7 @@
199452003-03-09 David Kastrup <dak@gnu.org> 199452003-03-09 David Kastrup <dak@gnu.org>
19946 19946
19947 * process.c (read_process_output): We have allocated enough space 19947 * process.c (read_process_output): We have allocated enough space
19948 for readmax and carryover, so actually use the alloted space. 19948 for readmax and carryover, so actually use the allotted space.
19949 19949
199502003-03-09 Jan Djärv <jan.h.d@swipnet.se> 199502003-03-09 Jan Djärv <jan.h.d@swipnet.se>
19951 19951
@@ -24638,7 +24638,7 @@
24638 * w32gui.h (struct XImage): Define. 24638 * w32gui.h (struct XImage): Define.
24639 24639
24640 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to 24640 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
24641 extract mouse co-ordinates. 24641 extract mouse coordinates.
24642 24642
246432002-03-20 Jason Rumney <jasonr@gnu.org> 246432002-03-20 Jason Rumney <jasonr@gnu.org>
24644 24644
@@ -25377,7 +25377,7 @@
25377 Handle literal output of strings by sharing the 25377 Handle literal output of strings by sharing the
25378 main-line code for strings, using local var `literal'. 25378 main-line code for strings, using local var `literal'.
25379 Handle :propertize feature. 25379 Handle :propertize feature.
25380 (syms_of_xdisp): Initialze and staticpro QCpropertize and 25380 (syms_of_xdisp): Initialize and staticpro QCpropertize and
25381 mode_line_proptrans_alist. 25381 mode_line_proptrans_alist.
25382 25382
253832002-02-11 Kim F. Storm <storm@cua.dk> 253832002-02-11 Kim F. Storm <storm@cua.dk>
diff --git a/src/ChangeLog.11 b/src/ChangeLog.11
index 2942d35561a..1086d1183a2 100644
--- a/src/ChangeLog.11
+++ b/src/ChangeLog.11
@@ -947,7 +947,7 @@
947 (c_string_pos, number_of_chars, message_dolog): 947 (c_string_pos, number_of_chars, message_dolog):
948 (message_log_check_duplicate, set_message_1, store_mode_line_noprop): 948 (message_log_check_duplicate, set_message_1, store_mode_line_noprop):
949 (display_mode_element, display_string): 949 (display_mode_element, display_string):
950 Switch between char * and unsigned char * to stay compatible wth 950 Switch between char * and unsigned char * to stay compatible with
951 C89 pointer rules. 951 C89 pointer rules.
952 952
953 * regex.c: Conform to C89 pointer rules. 953 * regex.c: Conform to C89 pointer rules.
@@ -9492,7 +9492,7 @@
9492 * coding.c (decode_coding_ccl): Fix previous change for the 9492 * coding.c (decode_coding_ccl): Fix previous change for the
9493 multibyte case. 9493 multibyte case.
9494 (encode_coding_ccl): Don't setup ccl program here. Fix for the 9494 (encode_coding_ccl): Don't setup ccl program here. Fix for the
9495 case that the output buffer is fullfilled. 9495 case that the output buffer is fulfilled.
9496 (encode_coding): Setup ccl program here. 9496 (encode_coding): Setup ccl program here.
9497 9497
94982010-03-23 Dan Nicolaescu <dann@ics.uci.edu> 94982010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
@@ -9772,10 +9772,10 @@
97722010-02-17 Kenichi Handa <handa@m17n.org> 97722010-02-17 Kenichi Handa <handa@m17n.org>
9773 9773
9774 * coding.c (decode_coding_ccl): Don't setup ccl program here. 9774 * coding.c (decode_coding_ccl): Don't setup ccl program here.
9775 Fix for the case that the output buffer is fullfilled. 9775 Fix for the case that the output buffer is fulfilled.
9776 (decode_coding): Setup ccl program here. Keep looping when the 9776 (decode_coding): Setup ccl program here. Keep looping when the
9777 decoder stopped because the output buffer is 9777 decoder stopped because the output buffer is
9778 fullfilled (bug#5534). 9778 fulfilled (bug#5534).
9779 9779
9780 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN. 9780 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
9781 9781
@@ -23923,7 +23923,7 @@
23923 23923
239242008-02-01 Kenichi Handa <handa@m17n.org> 239242008-02-01 Kenichi Handa <handa@m17n.org>
23925 23925
23926 * alloc.c (NSTATICS): Increas to 0x600. 23926 * alloc.c (NSTATICS): Increase to 0x600.
23927 23927
239282008-02-01 Kenichi Handa <handa@m17n.org> 239282008-02-01 Kenichi Handa <handa@m17n.org>
23929 23929
@@ -25309,12 +25309,12 @@
25309 25309
25310 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return. 25310 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
25311 (CODING_GET_INFO): Delete argument eol_type. Change callers. 25311 (CODING_GET_INFO): Delete argument eol_type. Change callers.
25312 (decode_coding_utf_8): Don't do eol converion. 25312 (decode_coding_utf_8): Don't do eol conversion.
25313 (detect_coding_utf_16): Check coding->src_chars, not 25313 (detect_coding_utf_16): Check coding->src_chars, not
25314 coding->src_bytes. Add heuristics for those that have no signature. 25314 coding->src_bytes. Add heuristics for those that have no signature.
25315 (decode_coding_emacs_mule, decode_coding_iso_2022) 25315 (decode_coding_emacs_mule, decode_coding_iso_2022)
25316 (decode_coding_sjis, decode_coding_big5, decode_coding_charset): 25316 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
25317 Don't do eol converion. 25317 Don't do eol conversion.
25318 (adjust_coding_eol_type): Return a new coding system. 25318 (adjust_coding_eol_type): Return a new coding system.
25319 (detect_coding): Don't detect eol. Fix for utf-16 detection. 25319 (detect_coding): Don't detect eol. Fix for utf-16 detection.
25320 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on 25320 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
@@ -25952,7 +25952,7 @@
25952 (font_list): The argument REGISTRY is now a list of registry names. 25952 (font_list): The argument REGISTRY is now a list of registry names.
25953 (choose_face_font): If we are choosing an ASCII font, and ATTRS 25953 (choose_face_font): If we are choosing an ASCII font, and ATTRS
25954 specifies an explicit font name, return the name as is. Make a 25954 specifies an explicit font name, return the name as is. Make a
25955 list of registy names. 25955 list of registry names.
25956 25956
25957 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change 25957 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
25958 of x_new_fontset. 25958 of x_new_fontset.
@@ -26647,7 +26647,7 @@
26647 (fontset_set): Delete. 26647 (fontset_set): Delete.
26648 (fontset_face): New arg FACE. Return face ID, not face. 26648 (fontset_face): New arg FACE. Return face ID, not face.
26649 Complete re-write to handle new fontset structure. Change caller. 26649 Complete re-write to handle new fontset structure. Change caller.
26650 (free_face_fontset): Use ASET istead of AREF (X) = Y. 26650 (free_face_fontset): Use ASET instead of AREF (X) = Y.
26651 (face_for_char): Don't call lookup_face. 26651 (face_for_char): Don't call lookup_face.
26652 (make_fontset_for_ascii_face): New arg FACE. 26652 (make_fontset_for_ascii_face): New arg FACE.
26653 (fs_load_font): New arg CHARSET_ID. Don't check 26653 (fs_load_font): New arg CHARSET_ID. Don't check
@@ -31141,7 +31141,7 @@
31141 * term.c (term_mouse_highlight): Remove unused variables. 31141 * term.c (term_mouse_highlight): Remove unused variables.
31142 (Fterm_open_connection): Set gpm_zerobased to 1. 31142 (Fterm_open_connection): Set gpm_zerobased to 1.
31143 (term_mouse_movement, term_mouse_click, handle_one_term_event): 31143 (term_mouse_movement, term_mouse_click, handle_one_term_event):
31144 Use zero based co-ordinates. 31144 Use zero based coordinates.
31145 (handle_one_term_event): Report a drag as mouse movement too. 31145 (handle_one_term_event): Report a drag as mouse movement too.
31146 31146
31147 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM. 31147 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
diff --git a/src/ChangeLog.12 b/src/ChangeLog.12
index 0397a495212..04983fe03e6 100644
--- a/src/ChangeLog.12
+++ b/src/ChangeLog.12
@@ -239,7 +239,7 @@
239 239
240 * lisp.h (find_next_newline_no_quit): Rename to find_next_newline. 240 * lisp.h (find_next_newline_no_quit): Rename to find_next_newline.
241 * xdisp.c (back_to_previous_line_start, forward_to_next_line_start) 241 * xdisp.c (back_to_previous_line_start, forward_to_next_line_start)
242 (get_visually_first_element, move_it_vertically_backward): Ajust users. 242 (get_visually_first_element, move_it_vertically_backward): Adjust users.
243 * bidi.c (bidi_find_paragraph_start): Likewise. 243 * bidi.c (bidi_find_paragraph_start): Likewise.
244 * indent.c (vmotion): Likewise. 244 * indent.c (vmotion): Likewise.
245 245
@@ -7335,7 +7335,7 @@
7335 7335
73362012-08-17 Chong Yidong <cyd@gnu.org> 73362012-08-17 Chong Yidong <cyd@gnu.org>
7337 7337
7338 * xfaces.c (merge_face_vectors): If the target font specfies a 7338 * xfaces.c (merge_face_vectors): If the target font specifies a
7339 font spec, make the font's attributes take precedence over 7339 font spec, make the font's attributes take precedence over
7340 directly-specified attributes. 7340 directly-specified attributes.
7341 (merge_face_ref): Recognize :font. 7341 (merge_face_ref): Recognize :font.
@@ -9265,7 +9265,7 @@
9265 9265
9266 * nsmenu.m (ns_update_menubar, ns_menu_show, process_dialog) 9266 * nsmenu.m (ns_update_menubar, ns_menu_show, process_dialog)
9267 (initFromContents): Use SSDATA where appropriate. 9267 (initFromContents): Use SSDATA where appropriate.
9268 (ns_update_menubar): Add braces to ambigous if-else. 9268 (ns_update_menubar): Add braces to ambiguous if-else.
9269 (initWithTitle): Put () around assignment in if statement. 9269 (initWithTitle): Put () around assignment in if statement.
9270 (ns_menu_show): Remove unused variables window and keymap. 9270 (ns_menu_show): Remove unused variables window and keymap.
9271 (update_frame_tool_bar): Remove unused variable selected_p. 9271 (update_frame_tool_bar): Remove unused variable selected_p.
@@ -14333,7 +14333,7 @@
14333 14333
143342011-11-21 Lars Magne Ingebrigtsen <larsi@gnus.org> 143342011-11-21 Lars Magne Ingebrigtsen <larsi@gnus.org>
14335 14335
14336 * process.c (wait_reading_process_output): Fix asynchrounous 14336 * process.c (wait_reading_process_output): Fix asynchronous
14337 GnuTLS socket handling on some versions of the GnuTLS library. 14337 GnuTLS socket handling on some versions of the GnuTLS library.
14338 (wait_reading_process_output): Add comment and URL. 14338 (wait_reading_process_output): Add comment and URL.
14339 14339
@@ -21271,7 +21271,7 @@
21271 not the number of arguments given. This is simpler and lets GCC 21271 not the number of arguments given. This is simpler and lets GCC
21272 4.6.0 generate slightly better code. 21272 4.6.0 generate slightly better code.
21273 21273
21274 * ftfont.c: Distingish more carefully between FcChar8 and char. 21274 * ftfont.c: Distinguish more carefully between FcChar8 and char.
21275 The previous code passed unsigned char * to a functions like 21275 The previous code passed unsigned char * to a functions like
21276 strlen and xstrcasecmp that expect char *, which does not 21276 strlen and xstrcasecmp that expect char *, which does not
21277 conform to the C standard. 21277 conform to the C standard.
diff --git a/src/ChangeLog.13 b/src/ChangeLog.13
index 791de9a6a8b..87055d70315 100644
--- a/src/ChangeLog.13
+++ b/src/ChangeLog.13
@@ -580,7 +580,7 @@
580 (x_intersect_rectangles, clear_mouse_face, display_tty_menu_item): 580 (x_intersect_rectangles, clear_mouse_face, display_tty_menu_item):
581 * lisp.h (setup_echo_area_for_printing, message_with_string) 581 * lisp.h (setup_echo_area_for_printing, message_with_string)
582 (pos_visible_p): Use bool for boolean. 582 (pos_visible_p): Use bool for boolean.
583 * xdisp.c: Use bool, true, false intstead of int, 1, 0. 583 * xdisp.c: Use bool, true, false instead of int, 1, 0.
584 Remove unnecessary forward decls. 584 Remove unnecessary forward decls.
585 (trace_move) [DEBUG_TRACE_MOVE]: Now static. 585 (trace_move) [DEBUG_TRACE_MOVE]: Now static.
586 (CHECK_IT, CHECK_WINDOW_END): 586 (CHECK_IT, CHECK_WINDOW_END):
@@ -685,7 +685,7 @@
685 Inhibit resizing fullwidth-/height frames in one direction only. 685 Inhibit resizing fullwidth-/height frames in one direction only.
686 Update frame_size_history. 686 Update frame_size_history.
687 (adjust_frame_size): Call frame_size_history_add. 687 (adjust_frame_size): Call frame_size_history_add.
688 (make_frame): Initalize after_make_frame slot. 688 (make_frame): Initialize after_make_frame slot.
689 (Fmake_terminal_frame): Adjust adjust_frame_size call. 689 (Fmake_terminal_frame): Adjust adjust_frame_size call.
690 (Fcan_run_window_configuration_change_hook): Rename to 690 (Fcan_run_window_configuration_change_hook): Rename to
691 Fframe_after_make_frame. Set after_make_frame slot. 691 Fframe_after_make_frame. Set after_make_frame slot.
@@ -1419,7 +1419,7 @@
1419 1419
14202015-01-12 Paul Eggert <eggert@cs.ucla.edu> 14202015-01-12 Paul Eggert <eggert@cs.ucla.edu>
1421 1421
1422 Port to 32-bit MingGW --with-wide-int 1422 Port to 32-bit MinGW --with-wide-int
1423 Problem reported by Eli Zaretskii in: 1423 Problem reported by Eli Zaretskii in:
1424 https://lists.gnu.org/r/emacs-devel/2015-01/msg00265.html 1424 https://lists.gnu.org/r/emacs-devel/2015-01/msg00265.html
1425 * lisp.h (struct Lisp_Sub_Char_Table): Check that offset matches 1425 * lisp.h (struct Lisp_Sub_Char_Table): Check that offset matches
@@ -1635,7 +1635,7 @@
16352015-01-06 Jan Djärv <jan.h.d@swipnet.se> 16352015-01-06 Jan Djärv <jan.h.d@swipnet.se>
1636 1636
1637 * nsterm.m (x_set_window_size): Call updateFrameSize to get real 1637 * nsterm.m (x_set_window_size): Call updateFrameSize to get real
1638 size instead of using widht/height. The frame may be 1638 size instead of using width/height. The frame may be
1639 constrained (Bug#19482). 1639 constrained (Bug#19482).
1640 1640
16412015-01-05 Paul Eggert <eggert@cs.ucla.edu> 16412015-01-05 Paul Eggert <eggert@cs.ucla.edu>
@@ -2102,7 +2102,7 @@
2102 Partially disabled previous change. 2102 Partially disabled previous change.
2103 2103
2104 * image.c (svg_load): Temporarily disabled filename thing for 2104 * image.c (svg_load): Temporarily disabled filename thing for
2105 not-a-file case as it can cause crashs. 2105 not-a-file case as it can cause crashes.
2106 2106
21072014-12-17 Ulf Jasper <ulf.jasper@web.de> 21072014-12-17 Ulf Jasper <ulf.jasper@web.de>
2108 2108
@@ -2807,7 +2807,7 @@
2807 * nsselect.m (QCLIPBOARD, QSECONDARY, QTEXT, QFILE_NAME) 2807 * nsselect.m (QCLIPBOARD, QSECONDARY, QTEXT, QFILE_NAME)
2808 (NXPrimaryPboard, NXSecondaryPboard): Declare static. 2808 (NXPrimaryPboard, NXSecondaryPboard): Declare static.
2809 (Qforeign_selection): Remove. 2809 (Qforeign_selection): Remove.
2810 (ns_get_local_selection): Identation fix. 2810 (ns_get_local_selection): Indentation fix.
2811 (syms_of_nsselect): Remove Qforeign_selection, ns-lost-selection-hooks 2811 (syms_of_nsselect): Remove Qforeign_selection, ns-lost-selection-hooks
2812 2812
2813 * nsselect.m (ns_get_local_selection): Remove calling of 2813 * nsselect.m (ns_get_local_selection): Remove calling of
@@ -5162,7 +5162,7 @@
51622014-07-27 Jan Djärv <jan.h.d@swipnet.se> 51622014-07-27 Jan Djärv <jan.h.d@swipnet.se>
5163 5163
5164 * nsterm.m (applicationDidFinishLaunching antialiasThresholdDidChange): 5164 * nsterm.m (applicationDidFinishLaunching antialiasThresholdDidChange):
5165 Reinstate code removed by the prevoius commit to this file. 5165 Reinstate code removed by the previous commit to this file.
5166 5166
51672014-07-27 Martin Rudalics <rudalics@gmx.at> 51672014-07-27 Martin Rudalics <rudalics@gmx.at>
5168 5168
@@ -7847,11 +7847,11 @@
7847 * w32.c (unsetenv): Remove unused var `retval'. 7847 * w32.c (unsetenv): Remove unused var `retval'.
7848 (emacs_gnutls_pull): Remove unused vars `fdset' and `timeout'. 7848 (emacs_gnutls_pull): Remove unused vars `fdset' and `timeout'.
7849 7849
7850 * w32notify.c (watch_worker): Remove unnecesary var sleep_result. 7850 * w32notify.c (watch_worker): Remove unnecessary var sleep_result.
7851 (start_watching): Remove unused var `thr'. 7851 (start_watching): Remove unused var `thr'.
7852 7852
7853 * w32proc.c (sys_spawnve): Comment out unused vars `first', `last'. 7853 * w32proc.c (sys_spawnve): Comment out unused vars `first', `last'.
7854 (find_child_console): Remove unnecesary var `thread_id'. 7854 (find_child_console): Remove unnecessary var `thread_id'.
7855 7855
7856 * w32term.c (w32_read_socket): Comment out unused vars `row', `columns'. 7856 * w32term.c (w32_read_socket): Comment out unused vars `row', `columns'.
7857 (x_focus_frame): #ifdef 0 unused variable `dpyinfo'. 7857 (x_focus_frame): #ifdef 0 unused variable `dpyinfo'.
@@ -9004,7 +9004,7 @@
9004 * widget.c (pixel_to_text_size): New function. 9004 * widget.c (pixel_to_text_size): New function.
9005 (update_wm_hints): Have size hints respect value of 9005 (update_wm_hints): Have size hints respect value of
9006 frame_resize_pixelwise. 9006 frame_resize_pixelwise.
9007 (EmacsFrameResize): Alway process resize requests pixelwise. 9007 (EmacsFrameResize): Always process resize requests pixelwise.
9008 * window.c (grow_mini_window): Make sure mini window is at least 9008 * window.c (grow_mini_window): Make sure mini window is at least
9009 one line tall. 9009 one line tall.
9010 * xdisp.c (display_menu_bar): Make sure menubar extends till 9010 * xdisp.c (display_menu_bar): Make sure menubar extends till
@@ -10768,7 +10768,7 @@
10768 10768
10769 * search.c (find_newline): Rewrite to prefer offsets to pointers. 10769 * search.c (find_newline): Rewrite to prefer offsets to pointers.
10770 This avoids undefined behavior when subtracting pointers into 10770 This avoids undefined behavior when subtracting pointers into
10771 different aways. On my platform it also makes the code a tad 10771 different always. On my platform it also makes the code a tad
10772 smaller and presumably faster. 10772 smaller and presumably faster.
10773 10773
107742013-11-11 Stefan Monnier <monnier@iro.umontreal.ca> 107742013-11-11 Stefan Monnier <monnier@iro.umontreal.ca>
@@ -13849,7 +13849,7 @@
13849 13849
138502013-08-13 Jan Djärv <jan.h.d@swipnet.se> 138502013-08-13 Jan Djärv <jan.h.d@swipnet.se>
13851 13851
13852 * nsterm.m (ns_set_vertical_scroll_bar): Fix breakage intruduced by 13852 * nsterm.m (ns_set_vertical_scroll_bar): Fix breakage introduced by
13853 2013-08-13 checkin below. Change bool to BOOL, rule is: 13853 2013-08-13 checkin below. Change bool to BOOL, rule is:
13854 All Obj-C code uses BOOL, except for interfaces callable from C. 13854 All Obj-C code uses BOOL, except for interfaces callable from C.
13855 13855
@@ -14041,7 +14041,7 @@
14041 the caller. Do not lock the temp file. Unwind-protect the file 14041 the caller. Do not lock the temp file. Unwind-protect the file
14042 and the file-descriptor. 14042 and the file-descriptor.
14043 (Fcall_process_region): If the input is /dev/null, unwind-protect it. 14043 (Fcall_process_region): If the input is /dev/null, unwind-protect it.
14044 If an asynchrounous process, record it here, not in call_process. 14044 If an asynchronous process, record it here, not in call_process.
14045 (syms_of_callproc) [MSDOS]: Initialize synch_process_tempfile. 14045 (syms_of_callproc) [MSDOS]: Initialize synch_process_tempfile.
14046 * eval.c (set_unwind_protect): New function. 14046 * eval.c (set_unwind_protect): New function.
14047 * fileio.c (write_region): New function, generalized from the 14047 * fileio.c (write_region): New function, generalized from the
@@ -14764,7 +14764,7 @@
14764 All callers changed. 14764 All callers changed.
14765 (create_process): Recover pty_flag from process, not from volatile local. 14765 (create_process): Recover pty_flag from process, not from volatile local.
14766 (create_pty): Stay inside array even when pty allocation fails. 14766 (create_pty): Stay inside array even when pty allocation fails.
14767 (Fmake_serial_process): Omit unnecessary initializaiton of pty_flag. 14767 (Fmake_serial_process): Omit unnecessary initialization of pty_flag.
14768 14768
14769 * lread.c (Fload): Avoid initialization only when lint checking. 14769 * lread.c (Fload): Avoid initialization only when lint checking.
14770 Mention that it's needed only for older GCCs. 14770 Mention that it's needed only for older GCCs.
@@ -17372,7 +17372,7 @@
173722013-03-31 Dmitry Antipov <dmantipov@yandex.ru> 173722013-03-31 Dmitry Antipov <dmantipov@yandex.ru>
17373 17373
17374 * frame.h (struct frame): Drop scroll_bottom_vpos 17374 * frame.h (struct frame): Drop scroll_bottom_vpos
17375 member becaue all real users are dead long ago. 17375 member because all real users are dead long ago.
17376 (FRAME_SCROLL_BOTTOM_VPOS): Remove. 17376 (FRAME_SCROLL_BOTTOM_VPOS): Remove.
17377 * xdisp.c (redisplay_internal): Adjust user. 17377 * xdisp.c (redisplay_internal): Adjust user.
17378 17378
@@ -17394,7 +17394,7 @@
17394 (menuNeedsUpdate:): Add check for ! COCOA || OSX < 10.5 (Bug#12698). 17394 (menuNeedsUpdate:): Add check for ! COCOA || OSX < 10.5 (Bug#12698).
17395 17395
17396 * nsterm.m (menu_will_open_state, menu_mouse_point) 17396 * nsterm.m (menu_will_open_state, menu_mouse_point)
17397 (menu_pending_title): New varaibles. 17397 (menu_pending_title): New variables.
17398 (ns_get_pending_menu_title, ns_check_menu_open) 17398 (ns_get_pending_menu_title, ns_check_menu_open)
17399 (ns_check_pending_open_menu): New functions. 17399 (ns_check_pending_open_menu): New functions.
17400 17400
diff --git a/src/ChangeLog.3 b/src/ChangeLog.3
index 973251859c1..4e403058837 100644
--- a/src/ChangeLog.3
+++ b/src/ChangeLog.3
@@ -11656,8 +11656,8 @@
11656 pixel_to_glyph_translation, and rewritten. Just get coordinates, 11656 pixel_to_glyph_translation, and rewritten. Just get coordinates,
11657 don't return anything. 11657 don't return anything.
11658 (buffer_posn_from_coords): New function - given a window and 11658 (buffer_posn_from_coords): New function - given a window and
11659 co-ordinates on the screen, find the buffer position at those 11659 coordinates on the screen, find the buffer position at those
11660 co-ordinates. 11660 coordinates.
11661 11661
116621991-01-08 Jim Blandy (jimb@geech.ai.mit.edu) 116621991-01-08 Jim Blandy (jimb@geech.ai.mit.edu)
11663 11663
@@ -16140,7 +16140,7 @@
16140 New format %S converts everything (even strings) with prin1. 16140 New format %S converts everything (even strings) with prin1.
16141 * doprnt.c (doprnt): Treat %s like %S. 16141 * doprnt.c (doprnt): Treat %s like %S.
16142 16142
16143 * print.c (Fprin1_to_string): Opt 3nd arg non-nil does princ. 16143 * print.c (Fprin1_to_string): Opt 3rd arg non-nil does princ.
16144 16144
161451988-12-31 Richard Stallman (rms@sugar-bombs.ai.mit.edu) 161451988-12-31 Richard Stallman (rms@sugar-bombs.ai.mit.edu)
16146 16146
diff --git a/src/ChangeLog.8 b/src/ChangeLog.8
index 17522e450f0..c7b99a443d5 100644
--- a/src/ChangeLog.8
+++ b/src/ChangeLog.8
@@ -1572,7 +1572,7 @@
1572 (wait_reading_process_input): Use emacs_strerror, not strerror. 1572 (wait_reading_process_input): Use emacs_strerror, not strerror.
1573 1573
1574 * process.c (status_message, sigchld_handler): Synchronize locale, 1574 * process.c (status_message, sigchld_handler): Synchronize locale,
1575 then use strsignal istead of sys_siglist. 1575 then use strsignal instead of sys_siglist.
1576 * w32proc.c (sys_wait): Likewise. 1576 * w32proc.c (sys_wait): Likewise.
1577 1577
1578 * s/aix3-1.h, s/bsd4-1.h, s/dgux.h, s/gnu-linux.h, s/hiuxmpp.h: 1578 * s/aix3-1.h, s/bsd4-1.h, s/dgux.h, s/gnu-linux.h, s/hiuxmpp.h:
@@ -7560,7 +7560,7 @@
7560 (recompute_basic_faces): Realize basic faces only if face cache is 7560 (recompute_basic_faces): Realize basic faces only if face cache is
7561 allocated, i.e. after init_frame_faces has been called. 7561 allocated, i.e. after init_frame_faces has been called.
7562 7562
7563 * frame.c (make_frame): Initialze face cache with null. 7563 * frame.c (make_frame): Initialize face cache with null.
7564 7564
7565 * xfaces.c (same_size_fonts): Remove. 7565 * xfaces.c (same_size_fonts): Remove.
7566 7566
@@ -9810,7 +9810,7 @@
98101997-10-13 Gerd Moellmann <gerd@acm.org> 98101997-10-13 Gerd Moellmann <gerd@acm.org>
9811 9811
9812 * xdisp.c (redisplay_window): Use available current matrix to 9812 * xdisp.c (redisplay_window): Use available current matrix to
9813 skip faster when only point is moved withing the window. 9813 skip faster when only point is moved within the window.
9814 9814
9815 * intervals.c: Include stdio.h. 9815 * intervals.c: Include stdio.h.
9816 (find_interval): Trace to stderr to catch some nasty error 9816 (find_interval): Trace to stderr to catch some nasty error
@@ -9859,7 +9859,7 @@
9859 * emacs.c: FreeBSD headers for profiling removed. 9859 * emacs.c: FreeBSD headers for profiling removed.
9860 9860
9861 * dispnew.c (direct_output_for_insert): Don't use PT-1 for 9861 * dispnew.c (direct_output_for_insert): Don't use PT-1 for
9862 display cursor, use DEC_POS instread. 9862 display cursor, use DEC_POS instead.
9863 9863
9864 * xfaces.c (load_font): Use x_load_font to load fonts so that 9864 * xfaces.c (load_font): Use x_load_font to load fonts so that
9865 all fonts are in the font table. 9865 all fonts are in the font table.
@@ -11940,7 +11940,7 @@
11940 This avoids a conflict with a system header file paths.h on GNU/Linux. 11940 This avoids a conflict with a system header file paths.h on GNU/Linux.
11941 11941
11942 * callproc.c, lread.c, w32fns.c, xfns.c, xrdb.c: 11942 * callproc.c, lread.c, w32fns.c, xfns.c, xrdb.c:
11943 Use epaths.h istead of paths.h. 11943 Use epaths.h instead of paths.h.
11944 11944
119451999-02-26 Andreas Schwab <schwab@gnu.org> 119451999-02-26 Andreas Schwab <schwab@gnu.org>
11946 11946
diff --git a/src/ChangeLog.9 b/src/ChangeLog.9
index 9f12748fbeb..0c1f72a6787 100644
--- a/src/ChangeLog.9
+++ b/src/ChangeLog.9
@@ -10388,7 +10388,7 @@
10388 ISO_control_0 and ISO_control_1. 10388 ISO_control_0 and ISO_control_1.
10389 10389
10390 * coding.h (enum iso_code_class_type): Member ISO_control_code is 10390 * coding.h (enum iso_code_class_type): Member ISO_control_code is
10391 devided into ISO_control_0 and ISO_control_1. 10391 divided into ISO_control_0 and ISO_control_1.
10392 (struct coding_system): New members src_multibyte, dst_multibyte, 10392 (struct coding_system): New members src_multibyte, dst_multibyte,
10393 errors, and result. Delete member fake_multibyte. 10393 errors, and result. Delete member fake_multibyte.
10394 (CODING_REQUIRE_DECODING): Return 1 if coding->dst_multibyte is 10394 (CODING_REQUIRE_DECODING): Return 1 if coding->dst_multibyte is
diff --git a/src/dbusbind.c b/src/dbusbind.c
index b06077d3b58..cca5f13907d 100644
--- a/src/dbusbind.c
+++ b/src/dbusbind.c
@@ -209,9 +209,12 @@ xd_dbus_type_to_symbol (int type)
209 : Qnil; 209 : Qnil;
210} 210}
211 211
212#define XD_KEYWORDP(object) !NILP (Fkeywordp (object))
213
212/* Check whether a Lisp symbol is a predefined D-Bus type symbol. */ 214/* Check whether a Lisp symbol is a predefined D-Bus type symbol. */
213#define XD_DBUS_TYPE_P(object) \ 215#define XD_DBUS_TYPE_P(object) \
214 (SYMBOLP (object) && ((xd_symbol_to_dbus_type (object) != DBUS_TYPE_INVALID))) 216 XD_KEYWORDP (object) && \
217 ((xd_symbol_to_dbus_type (object) != DBUS_TYPE_INVALID))
215 218
216/* Determine the DBusType of a given Lisp OBJECT. It is used to 219/* Determine the DBusType of a given Lisp OBJECT. It is used to
217 convert Lisp objects, being arguments of `dbus-call-method' or 220 convert Lisp objects, being arguments of `dbus-call-method' or
@@ -463,6 +466,7 @@ xd_signature (char *signature, int dtype, int parent_type, Lisp_Object object)
463 CHECK_CONS (object); 466 CHECK_CONS (object);
464 467
465 elt = XD_NEXT_VALUE (elt); 468 elt = XD_NEXT_VALUE (elt);
469 CHECK_CONS (elt);
466 subtype = XD_OBJECT_TO_DBUS_TYPE (CAR_SAFE (elt)); 470 subtype = XD_OBJECT_TO_DBUS_TYPE (CAR_SAFE (elt));
467 xd_signature (x, subtype, dtype, CAR_SAFE (XD_NEXT_VALUE (elt))); 471 xd_signature (x, subtype, dtype, CAR_SAFE (XD_NEXT_VALUE (elt)));
468 472
@@ -474,11 +478,12 @@ xd_signature (char *signature, int dtype, int parent_type, Lisp_Object object)
474 break; 478 break;
475 479
476 case DBUS_TYPE_STRUCT: 480 case DBUS_TYPE_STRUCT:
477 /* A struct list might contain any number of elements with 481 /* A struct list might contain any (but zero) number of elements
478 different types. No further check needed. */ 482 with different types. No further check needed. */
479 CHECK_CONS (object); 483 CHECK_CONS (object);
480 484
481 elt = XD_NEXT_VALUE (elt); 485 elt = XD_NEXT_VALUE (elt);
486 CHECK_CONS (elt);
482 487
483 /* Compose the signature from the elements. It is enclosed by 488 /* Compose the signature from the elements. It is enclosed by
484 parentheses. */ 489 parentheses. */
@@ -509,6 +514,7 @@ xd_signature (char *signature, int dtype, int parent_type, Lisp_Object object)
509 514
510 /* First element. */ 515 /* First element. */
511 elt = XD_NEXT_VALUE (elt); 516 elt = XD_NEXT_VALUE (elt);
517 CHECK_CONS (elt);
512 subtype = XD_OBJECT_TO_DBUS_TYPE (CAR_SAFE (elt)); 518 subtype = XD_OBJECT_TO_DBUS_TYPE (CAR_SAFE (elt));
513 xd_signature (x, subtype, dtype, CAR_SAFE (XD_NEXT_VALUE (elt))); 519 xd_signature (x, subtype, dtype, CAR_SAFE (XD_NEXT_VALUE (elt)));
514 xd_signature_cat (signature, x); 520 xd_signature_cat (signature, x);
@@ -518,6 +524,7 @@ xd_signature (char *signature, int dtype, int parent_type, Lisp_Object object)
518 524
519 /* Second element. */ 525 /* Second element. */
520 elt = CDR_SAFE (XD_NEXT_VALUE (elt)); 526 elt = CDR_SAFE (XD_NEXT_VALUE (elt));
527 CHECK_CONS (elt);
521 subtype = XD_OBJECT_TO_DBUS_TYPE (CAR_SAFE (elt)); 528 subtype = XD_OBJECT_TO_DBUS_TYPE (CAR_SAFE (elt));
522 xd_signature (x, subtype, dtype, CAR_SAFE (XD_NEXT_VALUE (elt))); 529 xd_signature (x, subtype, dtype, CAR_SAFE (XD_NEXT_VALUE (elt)));
523 xd_signature_cat (signature, x); 530 xd_signature_cat (signature, x);
@@ -1227,7 +1234,7 @@ this connection to those buses. */)
1227 xd_add_watch, 1234 xd_add_watch,
1228 xd_remove_watch, 1235 xd_remove_watch,
1229 xd_toggle_watch, 1236 xd_toggle_watch,
1230 SYMBOLP (bus) 1237 XD_KEYWORDP (bus)
1231 ? (void *) XSYMBOL (bus) 1238 ? (void *) XSYMBOL (bus)
1232 : (void *) XSTRING (bus), 1239 : (void *) XSTRING (bus),
1233 NULL)) 1240 NULL))
@@ -1793,7 +1800,7 @@ xd_read_queued_messages (int fd, void *data)
1793 while (!NILP (busp)) 1800 while (!NILP (busp))
1794 { 1801 {
1795 key = CAR_SAFE (CAR_SAFE (busp)); 1802 key = CAR_SAFE (CAR_SAFE (busp));
1796 if ((SYMBOLP (key) && XSYMBOL (key) == data) 1803 if ((XD_KEYWORDP (key) && XSYMBOL (key) == data)
1797 || (STRINGP (key) && XSTRING (key) == data)) 1804 || (STRINGP (key) && XSTRING (key) == data))
1798 bus = key; 1805 bus = key;
1799 busp = CDR_SAFE (busp); 1806 busp = CDR_SAFE (busp);
diff --git a/src/image.c b/src/image.c
index 6ecf6a70fe2..25d5af8a8d5 100644
--- a/src/image.c
+++ b/src/image.c
@@ -2329,8 +2329,14 @@ lookup_image (struct frame *f, Lisp_Object spec, int face_id)
2329 struct image *img; 2329 struct image *img;
2330 EMACS_UINT hash; 2330 EMACS_UINT hash;
2331 2331
2332 struct face *face = (face_id >= 0) ? FACE_FROM_ID (f, face_id) 2332 if (FRAME_FACE_CACHE (f) == NULL)
2333 : FACE_FROM_ID (f, DEFAULT_FACE_ID); 2333 init_frame_faces (f);
2334 if (FRAME_FACE_CACHE (f)->used == 0)
2335 recompute_basic_faces (f);
2336 if (face_id < 0 || face_id >= FRAME_FACE_CACHE (f)->used)
2337 face_id = DEFAULT_FACE_ID;
2338
2339 struct face *face = FACE_FROM_ID (f, face_id);
2334 unsigned long foreground = FACE_COLOR_TO_PIXEL (face->foreground, f); 2340 unsigned long foreground = FACE_COLOR_TO_PIXEL (face->foreground, f);
2335 unsigned long background = FACE_COLOR_TO_PIXEL (face->background, f); 2341 unsigned long background = FACE_COLOR_TO_PIXEL (face->background, f);
2336 2342
diff --git a/src/indent.c b/src/indent.c
index 581323b91ee..4ecf02b6b96 100644
--- a/src/indent.c
+++ b/src/indent.c
@@ -524,9 +524,11 @@ check_display_width (ptrdiff_t pos, ptrdiff_t col, ptrdiff_t *endpos)
524 comes first. 524 comes first.
525 Return the resulting buffer position and column in ENDPOS and GOALCOL. 525 Return the resulting buffer position and column in ENDPOS and GOALCOL.
526 PREVCOL gets set to the column of the previous position (it's always 526 PREVCOL gets set to the column of the previous position (it's always
527 strictly smaller than the goal column). */ 527 strictly smaller than the goal column), and PREVPOS and PREVBPOS get set
528 to the corresponding buffer character and byte positions. */
528static void 529static void
529scan_for_column (ptrdiff_t *endpos, EMACS_INT *goalcol, ptrdiff_t *prevcol) 530scan_for_column (ptrdiff_t *endpos, EMACS_INT *goalcol,
531 ptrdiff_t *prevpos, ptrdiff_t *prevbpos, ptrdiff_t *prevcol)
530{ 532{
531 int tab_width = SANE_TAB_WIDTH (current_buffer); 533 int tab_width = SANE_TAB_WIDTH (current_buffer);
532 bool ctl_arrow = !NILP (BVAR (current_buffer, ctl_arrow)); 534 bool ctl_arrow = !NILP (BVAR (current_buffer, ctl_arrow));
@@ -540,10 +542,12 @@ scan_for_column (ptrdiff_t *endpos, EMACS_INT *goalcol, ptrdiff_t *prevcol)
540 register ptrdiff_t col = 0, prev_col = 0; 542 register ptrdiff_t col = 0, prev_col = 0;
541 EMACS_INT goal = goalcol ? *goalcol : MOST_POSITIVE_FIXNUM; 543 EMACS_INT goal = goalcol ? *goalcol : MOST_POSITIVE_FIXNUM;
542 ptrdiff_t end = endpos ? *endpos : PT; 544 ptrdiff_t end = endpos ? *endpos : PT;
543 ptrdiff_t scan, scan_byte, next_boundary; 545 ptrdiff_t scan, scan_byte, next_boundary, prev_pos, prev_bpos;
544 546
545 scan = find_newline (PT, PT_BYTE, BEGV, BEGV_BYTE, -1, NULL, &scan_byte, 1); 547 scan = find_newline (PT, PT_BYTE, BEGV, BEGV_BYTE, -1, NULL, &scan_byte, 1);
546 next_boundary = scan; 548 next_boundary = scan;
549 prev_pos = scan;
550 prev_bpos = scan_byte;
547 551
548 window = Fget_buffer_window (Fcurrent_buffer (), Qnil); 552 window = Fget_buffer_window (Fcurrent_buffer (), Qnil);
549 w = ! NILP (window) ? XWINDOW (window) : NULL; 553 w = ! NILP (window) ? XWINDOW (window) : NULL;
@@ -576,6 +580,8 @@ scan_for_column (ptrdiff_t *endpos, EMACS_INT *goalcol, ptrdiff_t *prevcol)
576 if (col >= goal) 580 if (col >= goal)
577 break; 581 break;
578 prev_col = col; 582 prev_col = col;
583 prev_pos = scan;
584 prev_bpos = scan_byte;
579 585
580 { /* Check display property. */ 586 { /* Check display property. */
581 ptrdiff_t endp; 587 ptrdiff_t endp;
@@ -705,6 +711,10 @@ scan_for_column (ptrdiff_t *endpos, EMACS_INT *goalcol, ptrdiff_t *prevcol)
705 *goalcol = col; 711 *goalcol = col;
706 if (endpos) 712 if (endpos)
707 *endpos = scan; 713 *endpos = scan;
714 if (prevpos)
715 *prevpos = prev_pos;
716 if (prevbpos)
717 *prevbpos = prev_bpos;
708 if (prevcol) 718 if (prevcol)
709 *prevcol = prev_col; 719 *prevcol = prev_col;
710} 720}
@@ -720,7 +730,7 @@ current_column_1 (void)
720 EMACS_INT col = MOST_POSITIVE_FIXNUM; 730 EMACS_INT col = MOST_POSITIVE_FIXNUM;
721 ptrdiff_t opoint = PT; 731 ptrdiff_t opoint = PT;
722 732
723 scan_for_column (&opoint, &col, NULL); 733 scan_for_column (&opoint, &col, NULL, NULL, NULL);
724 return col; 734 return col;
725} 735}
726 736
@@ -988,7 +998,7 @@ to reach COLUMN, add spaces/tabs to get there.
988The return value is the current column. */) 998The return value is the current column. */)
989 (Lisp_Object column, Lisp_Object force) 999 (Lisp_Object column, Lisp_Object force)
990{ 1000{
991 ptrdiff_t pos, prev_col; 1001 ptrdiff_t pos, prev_pos, prev_bpos, prev_col;
992 EMACS_INT col; 1002 EMACS_INT col;
993 EMACS_INT goal; 1003 EMACS_INT goal;
994 1004
@@ -997,7 +1007,7 @@ The return value is the current column. */)
997 1007
998 col = goal; 1008 col = goal;
999 pos = ZV; 1009 pos = ZV;
1000 scan_for_column (&pos, &col, &prev_col); 1010 scan_for_column (&pos, &col, &prev_pos, &prev_bpos, &prev_col);
1001 1011
1002 SET_PT (pos); 1012 SET_PT (pos);
1003 1013
@@ -1006,18 +1016,16 @@ The return value is the current column. */)
1006 if (!NILP (force) && col > goal) 1016 if (!NILP (force) && col > goal)
1007 { 1017 {
1008 int c; 1018 int c;
1009 ptrdiff_t pos_byte = PT_BYTE;
1010 1019
1011 pos_byte -= prev_char_len (pos_byte); 1020 c = FETCH_CHAR (prev_bpos);
1012 c = FETCH_CHAR (pos_byte); 1021 if (c == '\t' && prev_col < goal && prev_bpos < PT_BYTE)
1013 if (c == '\t' && prev_col < goal)
1014 { 1022 {
1015 ptrdiff_t goal_pt, goal_pt_byte; 1023 ptrdiff_t goal_pt, goal_pt_byte;
1016 1024
1017 /* Insert spaces in front of the tab to reach GOAL. Do this 1025 /* Insert spaces in front of the tab to reach GOAL. Do this
1018 first so that a marker at the end of the tab gets 1026 first so that a marker at the end of the tab gets
1019 adjusted. */ 1027 adjusted. */
1020 SET_PT_BOTH (PT - 1, PT_BYTE - 1); 1028 SET_PT_BOTH (prev_pos, prev_bpos);
1021 Finsert_char (make_fixnum (' '), make_fixnum (goal - prev_col), Qt); 1029 Finsert_char (make_fixnum (' '), make_fixnum (goal - prev_col), Qt);
1022 1030
1023 /* Now delete the tab, and indent to COL. */ 1031 /* Now delete the tab, and indent to COL. */
diff --git a/src/w16select.c b/src/w16select.c
index 5a68162e25c..b56ced4f2e5 100644
--- a/src/w16select.c
+++ b/src/w16select.c
@@ -224,7 +224,7 @@ set_clipboard_data (unsigned Format, void *Data, unsigned Size, int Raw)
224 224
225 if (!Raw) 225 if (!Raw)
226 { 226 {
227 /* avoid using strchr because it recomputes the length everytime */ 227 /* avoid using strchr because it recomputes the length every time */
228 while ((dp = memchr (dp, '\n', Size - (dp - dstart))) != 0) 228 while ((dp = memchr (dp, '\n', Size - (dp - dstart))) != 0)
229 { 229 {
230 truelen++; 230 truelen++;
diff --git a/src/w32.c b/src/w32.c
index 38bbc496563..d4a8d2e6ffb 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -6520,7 +6520,8 @@ acl_get_file (const char *fname, acl_type_t type)
6520 { 6520 {
6521 xfree (psd); 6521 xfree (psd);
6522 err = GetLastError (); 6522 err = GetLastError ();
6523 if (err == ERROR_NOT_SUPPORTED) 6523 if (err == ERROR_NOT_SUPPORTED
6524 || err == ERROR_ACCESS_DENIED)
6524 errno = ENOTSUP; 6525 errno = ENOTSUP;
6525 else if (err == ERROR_FILE_NOT_FOUND 6526 else if (err == ERROR_FILE_NOT_FOUND
6526 || err == ERROR_PATH_NOT_FOUND 6527 || err == ERROR_PATH_NOT_FOUND
@@ -6538,7 +6539,11 @@ acl_get_file (const char *fname, acl_type_t type)
6538 be encoded in the current ANSI codepage. */ 6539 be encoded in the current ANSI codepage. */
6539 || err == ERROR_INVALID_NAME) 6540 || err == ERROR_INVALID_NAME)
6540 errno = ENOENT; 6541 errno = ENOENT;
6541 else if (err == ERROR_NOT_SUPPORTED) 6542 else if (err == ERROR_NOT_SUPPORTED
6543 /* ERROR_ACCESS_DENIED is what we get for a volume
6544 mounted by WebDAV, which evidently doesn't
6545 support ACLs. */
6546 || err == ERROR_ACCESS_DENIED)
6542 errno = ENOTSUP; 6547 errno = ENOTSUP;
6543 else 6548 else
6544 errno = EIO; 6549 errno = EIO;
diff --git a/src/w32select.c b/src/w32select.c
index 9a4b43bc69a..4e5bd6a00f0 100644
--- a/src/w32select.c
+++ b/src/w32select.c
@@ -956,7 +956,7 @@ DEFUN ("w32-get-clipboard-data", Fw32_get_clipboard_data,
956 956
957 truelen = nbytes; 957 truelen = nbytes;
958 dst = src; 958 dst = src;
959 /* avoid using strchr because it recomputes the length everytime */ 959 /* avoid using strchr because it recomputes the length every time */
960 while ((dst = memchr (dst, '\r', nbytes - (dst - src))) != NULL) 960 while ((dst = memchr (dst, '\r', nbytes - (dst - src))) != NULL)
961 { 961 {
962 if (dst[1] == '\n') /* safe because of trailing '\0' */ 962 if (dst[1] == '\n') /* safe because of trailing '\0' */
diff --git a/src/xdisp.c b/src/xdisp.c
index 152946363ed..d9101592b2a 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -12400,12 +12400,12 @@ unwind_format_mode_line (Lisp_Object vector)
12400 mode_line_string_face_prop = AREF (vector, 5); 12400 mode_line_string_face_prop = AREF (vector, 5);
12401 12401
12402 /* Select window before buffer, since it may change the buffer. */ 12402 /* Select window before buffer, since it may change the buffer. */
12403 if (!NILP (old_window)) 12403 if (WINDOW_LIVE_P (old_window))
12404 { 12404 {
12405 /* If the operation that we are unwinding had selected a window 12405 /* If the operation that we are unwinding had selected a window
12406 on a different frame, reset its frame-selected-window. For a 12406 on a different frame, reset its frame-selected-window. For a
12407 text terminal, reset its top-frame if necessary. */ 12407 text terminal, reset its top-frame if necessary. */
12408 if (!NILP (target_frame_window)) 12408 if (WINDOW_LIVE_P (target_frame_window))
12409 { 12409 {
12410 Lisp_Object frame 12410 Lisp_Object frame
12411 = WINDOW_FRAME (XWINDOW (target_frame_window)); 12411 = WINDOW_FRAME (XWINDOW (target_frame_window));
@@ -12422,7 +12422,7 @@ unwind_format_mode_line (Lisp_Object vector)
12422 /* Restore point of target_frame_window's buffer (Bug#32777). 12422 /* Restore point of target_frame_window's buffer (Bug#32777).
12423 But do this only after old_window has been reselected to 12423 But do this only after old_window has been reselected to
12424 avoid that the window point of target_frame_window moves. */ 12424 avoid that the window point of target_frame_window moves. */
12425 if (!NILP (target_frame_window)) 12425 if (WINDOW_LIVE_P (target_frame_window))
12426 { 12426 {
12427 Lisp_Object buffer = AREF (vector, 10); 12427 Lisp_Object buffer = AREF (vector, 10);
12428 12428
@@ -12850,23 +12850,68 @@ update_menu_bar (struct frame *f, bool save_match_data, bool hooks_run)
12850 Tab-bars 12850 Tab-bars
12851 ***********************************************************************/ 12851 ***********************************************************************/
12852 12852
12853#ifdef HAVE_WINDOW_SYSTEM 12853/* Restore WINDOW as the selected window and its frame as the selected
12854 12854 frame. If WINDOW is dead but the selected frame is live, make the
12855/* Select `frame' temporarily without running all the code in 12855 latter's selected window the selected window. If both, WINDOW and
12856 do_switch_frame. 12856 the selected frame, are dead, assign selected frame and window from
12857 FIXME: Maybe do_switch_frame should be trimmed down similarly 12857 some arbitrary live frame. Abort if no such frame can be found. */
12858 when `norecord' is set. */
12859static void 12858static void
12860fast_set_selected_frame (Lisp_Object frame) 12859restore_selected_window (Lisp_Object window)
12861{ 12860{
12862 if (!EQ (selected_frame, frame)) 12861 if (WINDOW_LIVE_P (window))
12862 /* If WINDOW is live, make it the selected window and its frame's
12863 selected window and set the selected frame to its frame. */
12863 { 12864 {
12864 selected_frame = frame; 12865 selected_window = window;
12865 selected_window = XFRAME (frame)->selected_window; 12866 selected_frame = XWINDOW (window)->frame;
12867 FRAME_SELECTED_WINDOW (XFRAME (selected_frame)) = window;
12868 }
12869 else if (FRAMEP (selected_frame) && FRAME_LIVE_P (XFRAME (selected_frame)))
12870 /* If WINDOW is dead but the selected frame is still live, make the
12871 latter's selected window the selected one. */
12872 selected_window = FRAME_SELECTED_WINDOW (XFRAME (selected_frame));
12873 else
12874 /* If WINDOW and the selected frame are dead, choose some live,
12875 non-child and non-tooltip frame as the new selected frame and
12876 make its selected window the selected window. */
12877 {
12878 Lisp_Object tail;
12879 Lisp_Object frame UNINIT;
12880
12881 FOR_EACH_FRAME (tail, frame)
12882 {
12883 struct frame *f = XFRAME (frame);
12884
12885 if (!FRAME_PARENT_FRAME (f) && !FRAME_TOOLTIP_P (f))
12886 {
12887 selected_frame = frame;
12888 selected_window = FRAME_SELECTED_WINDOW (f);
12889
12890 return;
12891 }
12892 }
12893
12894 /* Abort if we cannot find a live frame. */
12895 emacs_abort ();
12866 } 12896 }
12867} 12897}
12868 12898
12869#endif /* HAVE_WINDOW_SYSTEM */ 12899/* Restore WINDOW, if live, as its frame's selected window. */
12900static void
12901restore_frame_selected_window (Lisp_Object window)
12902{
12903 if (WINDOW_LIVE_P (window))
12904 /* If WINDOW is live, make it its frame's selected window. If that
12905 frame is the selected frame, make WINDOW the selected window as
12906 well. */
12907 {
12908 Lisp_Object frame = XWINDOW (window)->frame;
12909
12910 FRAME_SELECTED_WINDOW (XFRAME (frame)) = window;
12911 if (EQ (frame, selected_frame))
12912 selected_window = window;
12913 }
12914}
12870 12915
12871/* Update the tab-bar item list for frame F. This has to be done 12916/* Update the tab-bar item list for frame F. This has to be done
12872 before we start to fill in any display lines. Called from 12917 before we start to fill in any display lines. Called from
@@ -12939,9 +12984,10 @@ update_tab_bar (struct frame *f, bool save_match_data)
12939 XFRAME (selected_frame)->selected_window)); 12984 XFRAME (selected_frame)->selected_window));
12940#ifdef HAVE_WINDOW_SYSTEM 12985#ifdef HAVE_WINDOW_SYSTEM
12941 Lisp_Object frame; 12986 Lisp_Object frame;
12942 record_unwind_protect (fast_set_selected_frame, selected_frame); 12987 record_unwind_protect (restore_selected_window, selected_window);
12943 XSETFRAME (frame, f); 12988 XSETFRAME (frame, f);
12944 fast_set_selected_frame (frame); 12989 selected_frame = frame;
12990 selected_window = FRAME_SELECTED_WINDOW (f);
12945#endif 12991#endif
12946 12992
12947 /* Build desired tab-bar items from keymaps. */ 12993 /* Build desired tab-bar items from keymaps. */
@@ -13873,9 +13919,10 @@ update_tool_bar (struct frame *f, bool save_match_data)
13873 /* Since we only explicitly preserve selected_frame, 13919 /* Since we only explicitly preserve selected_frame,
13874 check that selected_window would be redundant. */ 13920 check that selected_window would be redundant. */
13875 XFRAME (selected_frame)->selected_window)); 13921 XFRAME (selected_frame)->selected_window));
13876 record_unwind_protect (fast_set_selected_frame, selected_frame); 13922 record_unwind_protect (restore_selected_window, selected_window);
13877 XSETFRAME (frame, f); 13923 XSETFRAME (frame, f);
13878 fast_set_selected_frame (frame); 13924 selected_frame = frame;
13925 selected_window = FRAME_SELECTED_WINDOW (f);
13879 13926
13880 /* Build desired tool-bar items from keymaps. */ 13927 /* Build desired tool-bar items from keymaps. */
13881 new_tool_bar 13928 new_tool_bar
@@ -25217,11 +25264,14 @@ static int
25217display_mode_lines (struct window *w) 25264display_mode_lines (struct window *w)
25218{ 25265{
25219 Lisp_Object old_selected_window = selected_window; 25266 Lisp_Object old_selected_window = selected_window;
25220 Lisp_Object old_selected_frame = selected_frame;
25221 Lisp_Object new_frame = w->frame; 25267 Lisp_Object new_frame = w->frame;
25222 Lisp_Object old_frame_selected_window = XFRAME (new_frame)->selected_window; 25268 ptrdiff_t count = SPECPDL_INDEX ();
25223 int n = 0; 25269 int n = 0;
25224 25270
25271 record_unwind_protect (restore_selected_window, selected_window);
25272 record_unwind_protect
25273 (restore_frame_selected_window, XFRAME (new_frame)->selected_window);
25274
25225 if (window_wants_mode_line (w)) 25275 if (window_wants_mode_line (w))
25226 { 25276 {
25227 Lisp_Object window; 25277 Lisp_Object window;
@@ -25287,9 +25337,8 @@ display_mode_lines (struct window *w)
25287 ++n; 25337 ++n;
25288 } 25338 }
25289 25339
25290 XFRAME (new_frame)->selected_window = old_frame_selected_window; 25340 unbind_to (count, Qnil);
25291 selected_frame = old_selected_frame; 25341
25292 selected_window = old_selected_window;
25293 if (n > 0) 25342 if (n > 0)
25294 w->must_be_updated_p = true; 25343 w->must_be_updated_p = true;
25295 return n; 25344 return n;
diff --git a/test/data/syntax-comments.txt b/test/data/syntax-comments.txt
new file mode 100644
index 00000000000..6f595e4d8dc
--- /dev/null
+++ b/test/data/syntax-comments.txt
@@ -0,0 +1,68 @@
1/* This file is a test file for tests of the comment handling in src/syntax.c.
2 This includes the testing of comments which figure in parse-partial-sexp
3 and scan-lists. */
4
5/* Straight C comments */
61/* comment */1
72/**/2
83// comment
93
104//
114
125/*/5
136*/6
147/* \*/7
158*/8
169/* \\*/9
1710*/10
1811// \
1912
2011
2113// \\
2214
2313
2415/* /*/15
25
26/* C Comments within lists */
2759}59
2850{ /*70 comment */71 }50
2951{ /**/ }51
3052{ //72 comment
3173}52
3253{ //
33}53
3454{ //74 \
35}54
3655{/* */}55
3756{ /*76 \*/ }56
3857*/77
3958}58
4060{ /*78 \\*/79}60
41
42
43/* Straight Pascal comments (not nested) */
4420}20
4521{ Comment }21
4622{}22
4723{
48}23
4924{
5025{25
51}24
5226{ \}26
53
54
55/* Straight Lisp comments (not nested) */
5630
5730
5831; Comment
5931
6032;;;;;;;;;
6132
6233; \
6333
64
65Local Variables:
66mode: fundamental
67eval: (set-syntax-table (make-syntax-table))
68End:
diff --git a/test/lisp/calc/calc-tests.el b/test/lisp/calc/calc-tests.el
index dce82b6f536..0df96a0e2db 100644
--- a/test/lisp/calc/calc-tests.el
+++ b/test/lisp/calc/calc-tests.el
@@ -458,6 +458,122 @@ An existing calc stack is reused, otherwise a new one is created."
458 (calcFunc-choose '(frac -15 2) 3)) 458 (calcFunc-choose '(frac -15 2) 3))
459 (calc-tests--choose -7.5 3)))) 459 (calc-tests--choose -7.5 3))))
460 460
461(ert-deftest calc-business-days ()
462 (cl-flet ((m (s) (math-parse-date s))
463 (b+ (a b) (calcFunc-badd a b))
464 (b- (a b) (calcFunc-bsub a b)))
465 ;; Sanity check.
466 (should (equal (m "2020-09-07") '(date 737675)))
467
468 ;; Test with standard business days (Mon-Fri):
469 (should (equal (b+ (m "2020-09-07") 1) (m "2020-09-08"))) ; Mon->Tue
470 (should (equal (b+ (m "2020-09-08") 1) (m "2020-09-09"))) ; Tue->Wed
471 (should (equal (b+ (m "2020-09-09") 1) (m "2020-09-10"))) ; Wed->Thu
472 (should (equal (b+ (m "2020-09-10") 1) (m "2020-09-11"))) ; Thu->Fri
473 (should (equal (b+ (m "2020-09-11") 1) (m "2020-09-14"))) ; Fri->Mon
474
475 (should (equal (b+ (m "2020-09-07") 4) (m "2020-09-11"))) ; Mon->Fri
476 (should (equal (b+ (m "2020-09-07") 6) (m "2020-09-15"))) ; Mon->Tue
477
478 (should (equal (b+ (m "2020-09-12") 1) (m "2020-09-14"))) ; Sat->Mon
479 (should (equal (b+ (m "2020-09-13") 1) (m "2020-09-14"))) ; Sun->Mon
480
481 (should (equal (b- (m "2020-09-11") 1) (m "2020-09-10"))) ; Fri->Thu
482 (should (equal (b- (m "2020-09-10") 1) (m "2020-09-09"))) ; Thu->Wed
483 (should (equal (b- (m "2020-09-09") 1) (m "2020-09-08"))) ; Wed->Tue
484 (should (equal (b- (m "2020-09-08") 1) (m "2020-09-07"))) ; Tue->Mon
485 (should (equal (b- (m "2020-09-07") 1) (m "2020-09-04"))) ; Mon->Fri
486
487 (should (equal (b- (m "2020-09-11") 4) (m "2020-09-07"))) ; Fri->Mon
488 (should (equal (b- (m "2020-09-15") 6) (m "2020-09-07"))) ; Tue->Mon
489
490 (should (equal (b- (m "2020-09-12") 1) (m "2020-09-11"))) ; Sat->Fri
491 (should (equal (b- (m "2020-09-13") 1) (m "2020-09-11"))) ; Sun->Fri
492
493 ;; Stepping fractional days
494 (should (equal (b+ (m "2020-09-08 21:00") '(frac 1 2))
495 (m "2020-09-09 09:00")))
496 (should (equal (b+ (m "2020-09-11 21:00") '(frac 1 2))
497 (m "2020-09-14 09:00")))
498 (should (equal (b- (m "2020-09-08 21:00") '(frac 1 2))
499 (m "2020-09-08 09:00")))
500 (should (equal (b- (m "2020-09-14 06:00") '(frac 1 2))
501 (m "2020-09-11 18:00")))
502
503 ;; Test with a couple of extra days off:
504 (let ((var-Holidays (list 'vec
505 '(var sat var-sat) '(var sun var-sun)
506 (m "2020-09-09") (m "2020-09-11"))))
507
508 (should (equal (b+ (m "2020-09-07") 1) (m "2020-09-08"))) ; Mon->Tue
509 (should (equal (b+ (m "2020-09-08") 1) (m "2020-09-10"))) ; Tue->Thu
510 (should (equal (b+ (m "2020-09-10") 1) (m "2020-09-14"))) ; Thu->Mon
511 (should (equal (b+ (m "2020-09-14") 1) (m "2020-09-15"))) ; Mon->Tue
512 (should (equal (b+ (m "2020-09-15") 1) (m "2020-09-16"))) ; Tue->Wed
513
514 (should (equal (b- (m "2020-09-16") 1) (m "2020-09-15"))) ; Wed->Tue
515 (should (equal (b- (m "2020-09-15") 1) (m "2020-09-14"))) ; Tue->Mon
516 (should (equal (b- (m "2020-09-14") 1) (m "2020-09-10"))) ; Mon->Thu
517 (should (equal (b- (m "2020-09-10") 1) (m "2020-09-08"))) ; Thu->Tue
518 (should (equal (b- (m "2020-09-08") 1) (m "2020-09-07"))) ; Tue->Mon
519 )
520
521 ;; Test with odd non-business weekdays (Tue, Wed, Sat):
522 (let ((var-Holidays '(vec (var tue var-tue)
523 (var wed var-wed)
524 (var sat var-sat))))
525 (should (equal (b+ (m "2020-09-07") 1) (m "2020-09-10"))) ; Mon->Thu
526 (should (equal (b+ (m "2020-09-10") 1) (m "2020-09-11"))) ; Thu->Fri
527 (should (equal (b+ (m "2020-09-11") 1) (m "2020-09-13"))) ; Fri->Sun
528 (should (equal (b+ (m "2020-09-13") 1) (m "2020-09-14"))) ; Sun->Mon
529
530 (should (equal (b- (m "2020-09-14") 1) (m "2020-09-13"))) ; Mon->Sun
531 (should (equal (b- (m "2020-09-13") 1) (m "2020-09-11"))) ; Sun->Fri
532 (should (equal (b- (m "2020-09-11") 1) (m "2020-09-10"))) ; Fri->Thu
533 (should (equal (b- (m "2020-09-10") 1) (m "2020-09-07"))) ; Thu->Mon
534 )
535 ))
536
537(ert-deftest calc-unix-date ()
538 (let* ((d-1970-01-01 (math-parse-date "1970-01-01"))
539 (d-2020-09-07 (math-parse-date "2020-09-07"))
540 (d-1991-01-09-0600 (math-parse-date "1991-01-09 06:00")))
541 ;; calcFunc-unixtime (command "t U") converts a date value to Unix time,
542 ;; and a number to a date.
543 (should (equal d-1970-01-01 '(date 719163)))
544 (should (equal (calcFunc-unixtime d-1970-01-01 0) 0))
545 (should (equal (calc-tests--calc-to-number (cadr (calcFunc-unixtime 0 0)))
546 (cadr d-1970-01-01)))
547 (should (equal (calcFunc-unixtime d-2020-09-07 0)
548 (* (- (cadr d-2020-09-07)
549 (cadr d-1970-01-01))
550 86400)))
551 (should (equal (calcFunc-unixtime d-1991-01-09-0600 0)
552 663400800))
553 (should (equal (calc-tests--calc-to-number
554 (cadr (calcFunc-unixtime 663400800 0)))
555 726841.25))
556
557 (let ((calc-date-format '(U)))
558 ;; Test parsing Unix time.
559 (should (equal (calc-tests--calc-to-number
560 (cadr (math-parse-date "0")))
561 719163))
562 (should (equal (calc-tests--calc-to-number
563 (cadr (math-parse-date "469324800")))
564 (+ 719163 (/ 469324800 86400))))
565 (should (equal (calc-tests--calc-to-number
566 (cadr (math-parse-date "663400800")))
567 726841.25))
568
569 ;; Test formatting Unix time.
570 (should (equal (math-format-date d-1970-01-01) "0"))
571 (should (equal (math-format-date d-2020-09-07)
572 (number-to-string (* (- (cadr d-2020-09-07)
573 (cadr d-1970-01-01))
574 86400))))
575 (should (equal (math-format-date d-1991-01-09-0600) "663400800")))))
576
461(provide 'calc-tests) 577(provide 'calc-tests)
462;;; calc-tests.el ends here 578;;; calc-tests.el ends here
463 579
diff --git a/test/lisp/electric-tests.el b/test/lisp/electric-tests.el
index 8b9c1c5fcb5..5f63f6831b3 100644
--- a/test/lisp/electric-tests.el
+++ b/test/lisp/electric-tests.el
@@ -887,7 +887,8 @@ baz\"\""
887 (should (equal (buffer-string) "int main () {\n \n}")))) 887 (should (equal (buffer-string) "int main () {\n \n}"))))
888 888
889(ert-deftest electric-layout-control-reindentation () 889(ert-deftest electric-layout-control-reindentation ()
890 "Same as `e-l-int-main-kernel-style', but checking Bug#35254." 890 "Same as `emacs-lisp-int-main-kernel-style', but checking
891Bug#35254."
891 (ert-with-test-buffer () 892 (ert-with-test-buffer ()
892 (plainer-c-mode) 893 (plainer-c-mode)
893 (electric-layout-local-mode 1) 894 (electric-layout-local-mode 1)
diff --git a/test/lisp/emacs-lisp/backtrace-tests.el b/test/lisp/emacs-lisp/backtrace-tests.el
index 12164b46ec3..fbc71e0ec86 100644
--- a/test/lisp/emacs-lisp/backtrace-tests.el
+++ b/test/lisp/emacs-lisp/backtrace-tests.el
@@ -41,7 +41,7 @@
41 (backtrace-mode) 41 (backtrace-mode)
42 (setq backtrace-frames (backtrace-get-frames)) 42 (setq backtrace-frames (backtrace-get-frames))
43 (let ((this-index)) 43 (let ((this-index))
44 ;; Discard all past `backtrace-tests-make-backtrace'. 44 ;; Discard all past `backtrace-tests--make-backtrace'.
45 (dotimes (index (length backtrace-frames)) 45 (dotimes (index (length backtrace-frames))
46 (when (eq (backtrace-frame-fun (nth index backtrace-frames)) 46 (when (eq (backtrace-frame-fun (nth index backtrace-frames))
47 'backtrace-tests--make-backtrace) 47 'backtrace-tests--make-backtrace)
diff --git a/test/lisp/emacs-lisp/edebug-tests.el b/test/lisp/emacs-lisp/edebug-tests.el
index 04a7b2f5a0f..6db07b1b707 100644
--- a/test/lisp/emacs-lisp/edebug-tests.el
+++ b/test/lisp/emacs-lisp/edebug-tests.el
@@ -210,7 +210,7 @@ All other elements will be nil."
210(defvar edebug-tests-thunks nil 210(defvar edebug-tests-thunks nil
211 "List containing thunks to run after each command in a keyboard macro.") 211 "List containing thunks to run after each command in a keyboard macro.")
212(defvar edebug-tests-kbd-macro-index nil 212(defvar edebug-tests-kbd-macro-index nil
213 "Index into `edebug-tests-run-unpacked-kbd-macro's current keyboard macro.") 213 "Index into `edebug-tests-run-kbd-macro's current keyboard macro.")
214 214
215(defun edebug-tests-run-macro (kbdmac &rest thunks) 215(defun edebug-tests-run-macro (kbdmac &rest thunks)
216 "Run a keyboard macro and execute a thunk after each command in it. 216 "Run a keyboard macro and execute a thunk after each command in it.
diff --git a/test/lisp/files-tests.el b/test/lisp/files-tests.el
index 2e9c6adc947..3829f505010 100644
--- a/test/lisp/files-tests.el
+++ b/test/lisp/files-tests.el
@@ -960,7 +960,7 @@ unquoted file names."
960 (let ((linkname (expand-file-name "link" nospecial-dir))) 960 (let ((linkname (expand-file-name "link" nospecial-dir)))
961 (should-error (make-symbolic-link tmpfile linkname)))))))) 961 (should-error (make-symbolic-link tmpfile linkname))))))))
962 962
963;; See `files-tests--file-name-non-special--subprocess'. 963;; See `files-tests-file-name-non-special--subprocess'.
964;; (ert-deftest files-tests-file-name-non-special-process-file ()) 964;; (ert-deftest files-tests-file-name-non-special-process-file ())
965 965
966(ert-deftest files-tests-file-name-non-special-rename-file () 966(ert-deftest files-tests-file-name-non-special-rename-file ()
@@ -1104,7 +1104,7 @@ unquoted file names."
1104 (files-tests--with-temp-non-special-and-file-name-handler (tmpfile nospecial) 1104 (files-tests--with-temp-non-special-and-file-name-handler (tmpfile nospecial)
1105 (should (equal (vc-registered nospecial) (vc-registered tmpfile))))) 1105 (should (equal (vc-registered nospecial) (vc-registered tmpfile)))))
1106 1106
1107;; See test `files-tests--file-name-non-special--buffers'. 1107;; See test `files-tests-file-name-non-special--buffers'.
1108;; (ert-deftest files-tests-file-name-non-special-verify-visited-file-modtime ()) 1108;; (ert-deftest files-tests-file-name-non-special-verify-visited-file-modtime ())
1109 1109
1110(ert-deftest files-tests-file-name-non-special-write-region () 1110(ert-deftest files-tests-file-name-non-special-write-region ()
diff --git a/test/lisp/gnus/gnus-util-tests.el b/test/lisp/gnus/gnus-util-tests.el
index ec58032e84e..47f0a9cf761 100644
--- a/test/lisp/gnus/gnus-util-tests.el
+++ b/test/lisp/gnus/gnus-util-tests.el
@@ -151,8 +151,10 @@
151 (should (equal "Zg==" (gnus-base64-repad "Zg"))) 151 (should (equal "Zg==" (gnus-base64-repad "Zg")))
152 (should (equal "Zg==" (gnus-base64-repad "Zg===="))) 152 (should (equal "Zg==" (gnus-base64-repad "Zg====")))
153 153
154 (should (equal (gnus-base64-repad " ") "")) 154 (should-error (gnus-base64-repad " ")
155 (should (equal (gnus-base64-repad "Zg== ") "Zg==")) 155 :type 'error)
156 (should-error (gnus-base64-repad "Zg== ")
157 :type 'error)
156 (should-error (gnus-base64-repad "Z?\x00g==") 158 (should-error (gnus-base64-repad "Z?\x00g==")
157 :type 'error) 159 :type 'error)
158 ;; line-length 160 ;; line-length
@@ -162,9 +164,10 @@
162 (should-error (gnus-base64-repad "Zm9v\r\nYmFy" t) 164 (should-error (gnus-base64-repad "Zm9v\r\nYmFy" t)
163 :type 'error) 165 :type 'error)
164 (should (equal "Zm9vYmFy" (gnus-base64-repad "Zm9vYmFy" t))) 166 (should (equal "Zm9vYmFy" (gnus-base64-repad "Zm9vYmFy" t)))
165 (should (equal "Zm9vYmFy" (gnus-base64-repad "Zm9v\r\nYmFy" nil))) 167 (should (equal "Zm9vYmFy" (gnus-base64-repad "Zm9v\r\nYmFy")))
166 (should (equal "Zm9vYmFy" (gnus-base64-repad "Zm9v\r\nYmFy\n" nil))) 168 (should (equal "Zm9vYmFy" (gnus-base64-repad "Zm9v\r\nYmFy\n")))
167 (should (equal (gnus-base64-repad "Zm9v\r\n YmFy\r\n" nil) "Zm9vYmFy")) 169 (should (equal "Zm9vYmFy" (gnus-base64-repad "Zm9v\r\n YmFy\r\n")))
170 (should (equal "Zm9vYmFy" (gnus-base64-repad "Zm9v \r\n\tYmFy")))
168 (should-error (gnus-base64-repad "Zm9v\r\nYmFy" nil 3) 171 (should-error (gnus-base64-repad "Zm9v\r\nYmFy" nil 3)
169 :type 'error)) 172 :type 'error))
170 173
diff --git a/test/lisp/gnus/mml-sec-tests.el b/test/lisp/gnus/mml-sec-tests.el
index 4c745ea6d73..427018520c8 100644
--- a/test/lisp/gnus/mml-sec-tests.el
+++ b/test/lisp/gnus/mml-sec-tests.el
@@ -67,7 +67,6 @@ instead of gpg-agent."
67 (condition-case error 67 (condition-case error
68 (let ((epg-gpg-home-directory 68 (let ((epg-gpg-home-directory
69 (expand-file-name "test/data/mml-sec" source-directory)) 69 (expand-file-name "test/data/mml-sec" source-directory))
70 (mml-secure-allow-signing-with-unknown-recipient t)
71 (mml-smime-use 'epg) 70 (mml-smime-use 'epg)
72 ;; Create debug output in empty epg-debug-buffer. 71 ;; Create debug output in empty epg-debug-buffer.
73 (epg-debug t) 72 (epg-debug t)
@@ -762,37 +761,6 @@ Use sign-with-sender and encrypt-to-self."
762 method "no-exp@example.org" "sub@example.org" 2 nil)) 761 method "no-exp@example.org" "sub@example.org" 2 nil))
763 ))))) 762 )))))
764 763
765(ert-deftest mml-secure-sign-verify-2 ()
766 "Sign message without sender; then verify and test for expected result."
767 (skip-unless (test-conf))
768 (mml-secure-test-key-fixture
769 (lambda ()
770 (dolist (method (sign-standards) nil)
771 (let ((mml-secure-openpgp-sign-with-sender nil)
772 (mml-secure-smime-sign-with-sender nil))
773 ;; A single signing key for sender sub@example.org is customized
774 ;; in the fixture, but not used here.
775 ;; By default, gpg uses the first secret key in the keyring, which
776 ;; is 02372A42CA6D40FB (OpenPGP) or
777 ;; 0E58229B80EE33959FF718FEEF25402B479DC6E2 (S/MIME) here.
778 (mml-secure-test-en-decrypt
779 method "uid1@example.org" "sub@example.org" 0 nil)
780
781 ;; From sub@example.org, sign with specified key:
782 (let ((mml-secure-openpgp-signers '("02372A42CA6D40FB"))
783 (mml-secure-smime-signers
784 '("D06AA118653CC38E9D0CAF56ED7A2135E1582177")))
785 (mml-secure-test-en-decrypt
786 method "no-exp@example.org" "sub@example.org" 1 nil))
787
788 ;; From sub@example.org, sign with different specified key:
789 (let ((mml-secure-openpgp-signers '("C3999CF1268DBEA2"))
790 (mml-secure-smime-signers
791 '("0E58229B80EE33959FF718FEEF25402B479DC6E2")))
792 (mml-secure-test-en-decrypt
793 method "no-exp@example.org" "sub@example.org" 1 nil))
794 )))))
795
796(ert-deftest mml-secure-sign-verify-3 () 764(ert-deftest mml-secure-sign-verify-3 ()
797 "Try to sign message with expired OpenPGP subkey, which raises an error. 765 "Try to sign message with expired OpenPGP subkey, which raises an error.
798With Ma Gnus v0.14 and earlier a signature would be created with a wrong key." 766With Ma Gnus v0.14 and earlier a signature would be created with a wrong key."
diff --git a/test/lisp/mail/uudecode-tests.el b/test/lisp/mail/uudecode-tests.el
index 61c20075633..4c9650f556c 100644
--- a/test/lisp/mail/uudecode-tests.el
+++ b/test/lisp/mail/uudecode-tests.el
@@ -43,12 +43,12 @@
43 (uudecode-tests-read-file 43 (uudecode-tests-read-file
44 (expand-file-name "uuencoded.txt" uudecode-tests-data-dir)) 44 (expand-file-name "uuencoded.txt" uudecode-tests-data-dir))
45 "Uuencoded data for bookmark-tests.el 45 "Uuencoded data for bookmark-tests.el
46Same as `bookmark-tests-decoded-str' but uuencoded.") 46Same as `uudecode-tests-decoded-str' but uuencoded.")
47(defvar uudecode-tests-decoded-str 47(defvar uudecode-tests-decoded-str
48 (uudecode-tests-read-file 48 (uudecode-tests-read-file
49 (expand-file-name "uudecoded.txt" uudecode-tests-data-dir)) 49 (expand-file-name "uudecoded.txt" uudecode-tests-data-dir))
50 "Plain text data for bookmark-tests.el 50 "Plain text data for bookmark-tests.el
51Same as `bookmark-tests-encoded-str' but plain text.") 51Same as `uudecode-tests-encoded-str' but plain text.")
52 52
53(ert-deftest uudecode-tests-decode-region-internal () 53(ert-deftest uudecode-tests-decode-region-internal ()
54 ;; Write to buffer 54 ;; Write to buffer
diff --git a/test/lisp/net/dbus-resources/org.gnu.Emacs.TestDBus.xml b/test/lisp/net/dbus-resources/org.gnu.Emacs.TestDBus.xml
new file mode 100644
index 00000000000..620f10510f2
--- /dev/null
+++ b/test/lisp/net/dbus-resources/org.gnu.Emacs.TestDBus.xml
@@ -0,0 +1,49 @@
1<?xml version="1.0"?>
2<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
3<node>
4 <interface name="org.freedesktop.DBus.Introspectable">
5 <method name="Introspect">
6 <arg name="xml" type="s" direction="out"/>
7 </method>
8 </interface>
9 <interface name="org.freedesktop.DBus.Properties">
10 <method name="Get">
11 <arg name="interface" type="s" direction="in"/>
12 <arg name="name" type="s" direction="in"/>
13 <arg name="value" type="v" direction="out"/>
14 </method>
15 <method name="Set">
16 <arg name="interface" type="s" direction="in"/>
17 <arg name="name" type="s" direction="in"/>
18 <arg name="value" type="v" direction="in"/>
19 </method>
20 <method name="GetAll">
21 <arg name="interface" type="s" direction="in"/>
22 <arg name="properties" type="a{sv}" direction="out"/>
23 </method>
24 <signal name="PropertiesChanged">
25 <arg name="interface" type="s"/>
26 <arg name="changed_properties" type="a{sv}"/>
27 <arg name="invalidated_properties" type="as"/>
28 </signal>
29 </interface>
30 <interface name="org.gnu.Emacs.TestDBus.Interface">
31 <method name="Connect">
32 <arg name="uuid" type="s" direction="in"/>
33 <arg name="mode" type="y" direction="in"/>
34 <arg name="options" type="a{sv}" direction="in"/>
35 <arg name="interface" type="s" direction="out"/>
36 </method>
37 <method name="DeprecatedMethod0">
38 <annotation name="org.freedesktop.DBus.Deprecated" value="true"/>
39 </method>
40 <method name="DeprecatedMethod1">
41 <annotation name="org.freedesktop.DBus.Deprecated" value="true"/>
42 </method>
43 <property name="Connected" type="b" access="read"/>
44 <property name="Player" type="o" access="read"/>
45 <annotation name="org.freedesktop.DBus.Deprecated" value="true"/>
46 </interface>
47 <node name="node0"/>
48 <node name="node1"/>
49</node>
diff --git a/test/lisp/net/dbus-tests.el b/test/lisp/net/dbus-tests.el
index 74c0dddcf52..7ebef5d2609 100644
--- a/test/lisp/net/dbus-tests.el
+++ b/test/lisp/net/dbus-tests.el
@@ -46,6 +46,13 @@
46(defconst dbus--test-interface "org.gnu.Emacs.TestDBus.Interface" 46(defconst dbus--test-interface "org.gnu.Emacs.TestDBus.Interface"
47 "Test interface.") 47 "Test interface.")
48 48
49(defconst dbus--tests-dir
50 (file-truename
51 (expand-file-name "dbus-resources"
52 (file-name-directory (or load-file-name
53 buffer-file-name))))
54 "Directory containing introspection test data file.")
55
49(defun dbus--test-availability (bus) 56(defun dbus--test-availability (bus)
50 "Test availability of D-Bus BUS." 57 "Test availability of D-Bus BUS."
51 (should (dbus-list-names bus)) 58 (should (dbus-list-names bus))
@@ -309,7 +316,7 @@
309 (dbus-check-arguments :session dbus--test-service :double "string") 316 (dbus-check-arguments :session dbus--test-service :double "string")
310 :type 'wrong-type-argument) 317 :type 'wrong-type-argument)
311 318
312 ;; `:unix-fd'. UNIX file descriptors are transfered out-of-band. 319 ;; `:unix-fd'. UNIX file descriptors are transferred out-of-band.
313 ;; We do not support this, and so we cannot do much testing here for 320 ;; We do not support this, and so we cannot do much testing here for
314 ;; `:unix-fd' being an argument (which is an index to the file 321 ;; `:unix-fd' being an argument (which is an index to the file
315 ;; descriptor in the array of file descriptors that accompany the 322 ;; descriptor in the array of file descriptors that accompany the
@@ -359,11 +366,11 @@
359 (should 366 (should
360 (dbus-check-arguments 367 (dbus-check-arguments
361 :session dbus--test-service '(:variant (:array "string")))) 368 :session dbus--test-service '(:variant (:array "string"))))
362 ;; No or more than one element. 369 ;; Empty variant.
363 ;; FIXME. 370 (should-error
364 ;; (should-error 371 (dbus-check-arguments :session dbus--test-service '(:variant))
365 ;; (dbus-check-arguments :session dbus--test-service '(:variant)) 372 :type 'wrong-type-argument)
366 ;; :type 'wrong-type-argument) 373 ;; More than one element.
367 (should-error 374 (should-error
368 (dbus-check-arguments 375 (dbus-check-arguments
369 :session dbus--test-service 376 :session dbus--test-service
@@ -375,20 +382,22 @@
375 (should 382 (should
376 (dbus-check-arguments 383 (dbus-check-arguments
377 :session dbus--test-service 384 :session dbus--test-service
378 '(:array (:dict-entry :string "string" :boolean t)))) 385 '(:array (:dict-entry :string "string" :boolean nil))))
379 ;; This is an alternative syntax. FIXME: Shall this be supported? 386 ;; This is an alternative syntax. FIXME: Shall this be supported?
380 (should 387 (should
381 (dbus-check-arguments 388 (dbus-check-arguments
382 :session dbus--test-service 389 :session dbus--test-service
383 '(:array :dict-entry (:string "string" :boolean t)))) 390 '(:array :dict-entry (:string "string" :boolean t))))
384 ;; FIXME: Must be errors. 391 ;; Empty dict-entry.
385 ;; (should 392 (should-error
386 ;; (dbus-check-arguments 393 (dbus-check-arguments
387 ;; :session dbus--test-service '(:array (:dict-entry)))) 394 :session dbus--test-service '(:array (:dict-entry)))
388 ;; (should 395 :type 'wrong-type-argument)
389 ;; (dbus-check-arguments 396 ;; One element.
390 ;; :session dbus--test-service '(:array (:dict-entry :string "string")))) 397 (should-error
391 ;; Not two elements. 398 (dbus-check-arguments
399 :session dbus--test-service '(:array (:dict-entry :string "string")))
400 :type 'wrong-type-argument)
392 (should-error 401 (should-error
393 (dbus-check-arguments 402 (dbus-check-arguments
394 :session dbus--test-service 403 :session dbus--test-service
@@ -405,25 +414,27 @@
405 (dbus-check-arguments 414 (dbus-check-arguments
406 :session dbus--test-service '(:dict-entry :string "string" :boolean t)) 415 :session dbus--test-service '(:dict-entry :string "string" :boolean t))
407 :type 'wrong-type-argument) 416 :type 'wrong-type-argument)
408 ;; FIXME:! This doesn't look right. 417 ;; Different dict entry types are not ched. FIXME: Add check.
409 ;; Different dict entry types can be part of an array ??? 418 ;; (should-error
410 (should 419 ;; (dbus-check-arguments
411 (dbus-check-arguments 420 ;; :session dbus--test-service
412 :session dbus--test-service 421 ;; '(:array
413 '(:array 422 ;; (:dict-entry :string "string1" :boolean t)
414 (:dict-entry :string "string1" :boolean t) 423 ;; (:dict-entry :string "string2" :object-path "/object/path")))
415 (:dict-entry :string "string2" :object-path "/object/path")))) 424 ;; :type 'wrong-type-argument)
416 425
417 ;; `:struct'. There is no restriction what could be an element of a struct. 426 ;; `:struct'. There is no restriction what could be an element of a struct.
418 ;; Empty struct. FIXME: Is this right?
419 ;; (should (dbus-check-arguments :session dbus--test-service '(:struct)))
420 (should 427 (should
421 (dbus-check-arguments 428 (dbus-check-arguments
422 :session dbus--test-service 429 :session dbus--test-service
423 '(:struct 430 '(:struct
424 :string "string" 431 :string "string"
425 :object-path "/object/path" 432 :object-path "/object/path"
426 (:variant (:array :unix-fd 1 :unix-fd 2 :unix-fd 3 :unix-fd 4)))))) 433 (:variant (:array :unix-fd 1 :unix-fd 2 :unix-fd 3 :unix-fd 4)))))
434 ;; Empty struct.
435 (should-error
436 (dbus-check-arguments :session dbus--test-service '(:struct))
437 :type 'wrong-type-argument))
427 438
428(defun dbus--test-register-service (bus) 439(defun dbus--test-register-service (bus)
429 "Check service registration at BUS." 440 "Check service registration at BUS."
@@ -625,6 +636,63 @@ This includes initialization and closing the bus."
625 ;; Cleanup. 636 ;; Cleanup.
626 (dbus-unregister-service :session dbus--test-service))) 637 (dbus-unregister-service :session dbus--test-service)))
627 638
639(defun dbus--test-method-reentry-handler (&rest _args)
640 "Method handler for `dbus-test04-method-reentry'."
641 (dbus-get-all-managed-objects :session dbus--test-service dbus--test-path)
642 42)
643
644(ert-deftest dbus-test04-method-reentry ()
645 "Check receiving method call while awaiting response.
646Ensure that incoming method calls are handled when call to `dbus-call-method'
647is in progress."
648 :tags '(:expensive-test)
649 ;; Simulate application registration. (Bug#43251)
650 (skip-unless dbus--test-enabled-session-bus)
651 (dbus-ignore-errors (dbus-unregister-service :session dbus--test-service))
652
653 (unwind-protect
654 (let ((method "Reentry"))
655 (should
656 (equal
657 (dbus-register-method
658 :session dbus--test-service dbus--test-path
659 dbus--test-interface method #'dbus--test-method-reentry-handler)
660 `((:method :session ,dbus--test-interface ,method)
661 (,dbus--test-service ,dbus--test-path
662 dbus--test-method-reentry-handler))))
663
664 (should
665 (=
666 (dbus-call-method
667 :session dbus--test-service dbus--test-path
668 dbus--test-interface method)
669 42)))
670
671 ;; Cleanup.
672 (dbus-unregister-service :session dbus--test-service)))
673
674(ert-deftest dbus-test04-call-method-timeout ()
675 "Verify `dbus-call-method' request timeout."
676 :tags '(:expensive-test)
677 (skip-unless dbus--test-enabled-session-bus)
678 (dbus-ignore-errors (dbus-unregister-service :session dbus--test-service))
679 (dbus-register-service :session dbus--test-service)
680
681 (unwind-protect
682 (let ((start (current-time)))
683 ;; Test timeout override for method call.
684 (should-error
685 (dbus-call-method
686 :session dbus--test-service dbus--test-path
687 dbus-interface-introspectable "Introspect" :timeout 2500)
688 :type 'dbus-error)
689
690 (should
691 (< 2.4 (float-time (time-since start)) 2.7)))
692
693 ;; Cleanup.
694 (dbus-unregister-service :session dbus--test-service)))
695
628(defvar dbus--test-signal-received nil 696(defvar dbus--test-signal-received nil
629 "Received signal value in `dbus--test-signal-handler'.") 697 "Received signal value in `dbus--test-signal-handler'.")
630 698
@@ -1069,6 +1137,702 @@ This includes initialization and closing the bus."
1069 ;; Cleanup. 1137 ;; Cleanup.
1070 (dbus-unregister-service :session dbus--test-service))) 1138 (dbus-unregister-service :session dbus--test-service)))
1071 1139
1140(defsubst dbus--test-run-property-test (selector name value expected)
1141 "Generate a property test: register, set, get, getall sequence.
1142This is a helper function for the macro `dbus--test-property'.
1143The argument SELECTOR indicates whether the test should expand to
1144`dbus-register-property' (if SELECTOR is `register') or
1145`dbus-set-property' (if SELECTOR is `set').
1146The argument NAME is the property name.
1147The argument VALUE is the value to register or set.
1148The argument EXPECTED is a transformed VALUE representing the
1149form `dbus-get-property' should return."
1150 (cond
1151 ((eq selector 'register)
1152 (should
1153 (equal
1154 (dbus-register-property
1155 :session dbus--test-service dbus--test-path dbus--test-interface name
1156 :readwrite value)
1157 `((:property :session ,dbus--test-interface ,name)
1158 (,dbus--test-service ,dbus--test-path)))))
1159
1160 ((eq selector 'set)
1161 (should
1162 (equal
1163 (dbus-set-property
1164 :session dbus--test-service dbus--test-path dbus--test-interface name
1165 value)
1166 expected)))
1167
1168 (t (signal 'wrong-type-argument "Selector should be 'register or 'set.")))
1169
1170 (should
1171 (equal
1172 (dbus-get-property
1173 :session dbus--test-service dbus--test-path dbus--test-interface name)
1174 expected))
1175
1176 (let ((result
1177 (dbus-get-all-properties
1178 :session dbus--test-service dbus--test-path dbus--test-interface)))
1179 (should (equal (cdr (assoc name result)) expected)))
1180
1181 (let ((result
1182 (dbus-get-all-managed-objects :session dbus--test-service "/"))
1183 result1)
1184 (should (setq result1 (cadr (assoc dbus--test-path result))))
1185 (should (setq result1 (cadr (assoc dbus--test-interface result1))))
1186 (should (equal (cdr (assoc name result1)) expected))))
1187
1188(defsubst dbus--test-property (name &rest value-list)
1189 "Test a D-Bus property named by string argument NAME.
1190The argument VALUE-LIST is a sequence of pairs, where each pair
1191represents a value form and an expected returned value form. The
1192first pair in VALUES is used for `dbus-register-property'.
1193Subsequent pairs of the list are tested with `dbus-set-property'."
1194 (let ((values (car value-list)))
1195 (dbus--test-run-property-test
1196 'register name (car values) (cdr values)))
1197 (dolist (values (cdr value-list))
1198 (dbus--test-run-property-test
1199 'set name (car values) (cdr values))))
1200
1201(ert-deftest dbus-test06-property-types ()
1202 "Check property access and mutation for an own service."
1203 (skip-unless dbus--test-enabled-session-bus)
1204 (dbus-ignore-errors (dbus-unregister-service :session dbus--test-service))
1205 (dbus-register-service :session dbus--test-service)
1206
1207 (unwind-protect
1208 (progn
1209 (dbus--test-property
1210 "ByteArray"
1211 '((:array :byte 1 :byte 2 :byte 3) . (1 2 3))
1212 '((:array :byte 4 :byte 5 :byte 6) . (4 5 6)))
1213
1214 (dbus--test-property
1215 "StringArray"
1216 '((:array "one" "two" :string "three") . ("one" "two" "three"))
1217 '((:array :string "four" :string "five" "six") . ("four" "five" "six")))
1218
1219 (dbus--test-property
1220 "ObjectArray"
1221 '((:array
1222 :object-path "/node00"
1223 :object-path "/node01"
1224 :object-path "/node0/node02")
1225 . ("/node00" "/node01" "/node0/node02"))
1226 '((:array
1227 :object-path "/node10"
1228 :object-path "/node11"
1229 :object-path "/node0/node12")
1230 . ("/node10" "/node11" "/node0/node12")))
1231
1232 (dbus--test-property
1233 "Dictionary"
1234 '((:array
1235 :dict-entry (:string "four" (:variant :string "value of four"))
1236 :dict-entry ("five" (:variant :object-path "/node0"))
1237 :dict-entry ("six" (:variant (:array :byte 4 :byte 5 :byte 6))))
1238 . (("four"
1239 ("value of four"))
1240 ("five"
1241 ("/node0"))
1242 ("six"
1243 ((4 5 6)))))
1244 '((:array
1245 :dict-entry
1246 (:string "key0" (:variant (:array :byte 7 :byte 8 :byte 9)))
1247 :dict-entry ("key1" (:variant :string "value"))
1248 :dict-entry ("key2" (:variant :object-path "/node0/node1")))
1249 . (("key0"
1250 ((7 8 9)))
1251 ("key1"
1252 ("value"))
1253 ("key2"
1254 ("/node0/node1")))))
1255
1256 (dbus--test-property ; Syntax emphasizing :dict compound type.
1257 "Dictionary"
1258 '((:array
1259 (:dict-entry :string "seven" (:variant :string "value of seven"))
1260 (:dict-entry "eight" (:variant :object-path "/node8"))
1261 (:dict-entry "nine" (:variant (:array :byte 9 :byte 27 :byte 81))))
1262 . (("seven"
1263 ("value of seven"))
1264 ("eight"
1265 ("/node8"))
1266 ("nine"
1267 ((9 27 81)))))
1268 '((:array
1269 (:dict-entry
1270 :string "key4" (:variant (:array :byte 7 :byte 49 :byte 125)))
1271 (:dict-entry "key5" (:variant :string "obsolete"))
1272 (:dict-entry "key6" (:variant :object-path "/node6/node7")))
1273 . (("key4"
1274 ((7 49 125)))
1275 ("key5"
1276 ("obsolete"))
1277 ("key6"
1278 ("/node6/node7")))))
1279
1280 (dbus--test-property
1281 "ByteDictionary"
1282 '((:array
1283 (:dict-entry :byte 8 (:variant :string "byte-eight"))
1284 (:dict-entry :byte 16 (:variant :object-path "/byte/sixteen"))
1285 (:dict-entry :byte 48 (:variant (:array :byte 8 :byte 9 :byte 10))))
1286 . (( 8 ("byte-eight"))
1287 (16 ("/byte/sixteen"))
1288 (48 ((8 9 10))))))
1289
1290 (dbus--test-property
1291 "Variant"
1292 '((:variant "Variant string") . ("Variant string"))
1293 '((:variant :byte 42) . (42))
1294 '((:variant :uint32 1000000) . (1000000))
1295 '((:variant :object-path "/variant/path") . ("/variant/path"))
1296 '((:variant :signature "a{sa{sv}}") . ("a{sa{sv}}"))
1297 '((:variant
1298 (:struct
1299 42 "string" (:object-path "/structure/path") (:variant "last")))
1300 . ((42 "string" ("/structure/path") ("last")))))
1301
1302 ;; Test that :read prevents writes.
1303 (should
1304 (equal
1305 (dbus-register-property
1306 :session dbus--test-service dbus--test-path dbus--test-interface
1307 "StringArray" :read '(:array "one" "two" :string "three"))
1308 `((:property :session ,dbus--test-interface "StringArray")
1309 (,dbus--test-service ,dbus--test-path))))
1310
1311 (should-error ; Cannot set property with :read access.
1312 (dbus-set-property
1313 :session dbus--test-service dbus--test-path dbus--test-interface
1314 "StringArray" '(:array "seven" "eight" :string "nine"))
1315 :type 'dbus-error)
1316
1317 (should ; Property value preserved on error.
1318 (equal
1319 (dbus-get-property
1320 :session dbus--test-service dbus--test-path dbus--test-interface
1321 "StringArray")
1322 '("one" "two" "three")))
1323
1324 ;; Test mismatched types in array.
1325 (should-error
1326 (dbus-register-property
1327 :session dbus--test-service dbus--test-path dbus--test-interface
1328 "MixedArray" :readwrite
1329 '(:array
1330 :object-path "/node00"
1331 :string "/node01"
1332 :object-path "/node0/node02"))
1333 :type 'wrong-type-argument)
1334
1335 ;; Test in-range integer values.
1336 (should
1337 (equal
1338 (dbus-register-property
1339 :session dbus--test-service dbus--test-path dbus--test-interface
1340 "ByteValue" :readwrite :byte 255)
1341 `((:property :session ,dbus--test-interface "ByteValue")
1342 (,dbus--test-service ,dbus--test-path))))
1343
1344 (should
1345 (=
1346 (dbus-get-property
1347 :session dbus--test-service dbus--test-path dbus--test-interface
1348 "ByteValue")
1349 255))
1350
1351 (should
1352 (equal
1353 (dbus-register-property
1354 :session dbus--test-service dbus--test-path dbus--test-interface
1355 "ShortValue" :readwrite :int16 32767)
1356 `((:property :session ,dbus--test-interface "ShortValue")
1357 (,dbus--test-service ,dbus--test-path))))
1358
1359 (should
1360 (=
1361 (dbus-get-property
1362 :session dbus--test-service dbus--test-path dbus--test-interface
1363 "ShortValue")
1364 32767))
1365
1366 (should
1367 (equal
1368 (dbus-register-property
1369 :session dbus--test-service dbus--test-path dbus--test-interface
1370 "UShortValue" :readwrite :uint16 65535)
1371 `((:property :session ,dbus--test-interface "UShortValue")
1372 (,dbus--test-service ,dbus--test-path))))
1373
1374 (should
1375 (=
1376 (dbus-get-property
1377 :session dbus--test-service dbus--test-path dbus--test-interface
1378 "UShortValue")
1379 65535))
1380
1381 (should
1382 (equal
1383 (dbus-register-property
1384 :session dbus--test-service dbus--test-path dbus--test-interface
1385 "IntValue" :readwrite :int32 2147483647)
1386 `((:property :session ,dbus--test-interface "IntValue")
1387 (,dbus--test-service ,dbus--test-path))))
1388
1389 (should
1390 (=
1391 (dbus-get-property
1392 :session dbus--test-service dbus--test-path
1393 dbus--test-interface "IntValue")
1394 2147483647))
1395
1396 (should
1397 (equal
1398 (dbus-register-property
1399 :session dbus--test-service dbus--test-path dbus--test-interface
1400 "UIntValue" :readwrite :uint32 4294967295)
1401 `((:property :session ,dbus--test-interface "UIntValue")
1402 (,dbus--test-service ,dbus--test-path))))
1403
1404 (should
1405 (=
1406 (dbus-get-property
1407 :session dbus--test-service dbus--test-path dbus--test-interface
1408 "UIntValue")
1409 4294967295))
1410
1411 (should
1412 (equal
1413 (dbus-register-property
1414 :session dbus--test-service dbus--test-path dbus--test-interface
1415 "LongValue" :readwrite :int64 9223372036854775807)
1416 `((:property :session ,dbus--test-interface "LongValue")
1417 (,dbus--test-service ,dbus--test-path))))
1418
1419 (should
1420 (=
1421 (dbus-get-property
1422 :session dbus--test-service dbus--test-path dbus--test-interface
1423 "LongValue")
1424 9223372036854775807))
1425
1426 (should
1427 (equal
1428 (dbus-register-property
1429 :session dbus--test-service dbus--test-path dbus--test-interface
1430 "ULongValue" :readwrite :uint64 18446744073709551615)
1431 `((:property :session ,dbus--test-interface "ULongValue")
1432 (,dbus--test-service ,dbus--test-path))))
1433
1434 (should
1435 (=
1436 (dbus-get-property
1437 :session dbus--test-service dbus--test-path dbus--test-interface
1438 "ULongValue")
1439 18446744073709551615))
1440
1441 ;; Test integer overflow.
1442 (should
1443 (=
1444 (dbus-set-property
1445 :session dbus--test-service dbus--test-path dbus--test-interface
1446 "ByteValue" :byte 520)
1447 8))
1448
1449 (should
1450 (=
1451 (dbus-get-property
1452 :session dbus--test-service dbus--test-path dbus--test-interface
1453 "ByteValue")
1454 8))
1455
1456 (should-error
1457 (dbus-register-property
1458 :session dbus--test-service dbus--test-path dbus--test-interface
1459 "ShortValue" :readwrite :int16 32800)
1460 :type 'args-out-of-range)
1461
1462 (should-error
1463 (dbus-register-property
1464 :session dbus--test-service dbus--test-path dbus--test-interface
1465 "UShortValue" :readwrite :uint16 65600)
1466 :type 'args-out-of-range)
1467
1468 (should-error
1469 (dbus-register-property
1470 :session dbus--test-service dbus--test-path dbus--test-interface
1471 "IntValue" :readwrite :int32 2147483700)
1472 :type 'args-out-of-range)
1473
1474 (should-error
1475 (dbus-register-property
1476 :session dbus--test-service dbus--test-path dbus--test-interface
1477 "UIntValue" :readwrite :uint32 4294967300)
1478 :type 'args-out-of-range)
1479
1480 (should-error
1481 (dbus-register-property
1482 :session dbus--test-service dbus--test-path dbus--test-interface
1483 "LongValue" :readwrite :int64 9223372036854775900)
1484 :type 'args-out-of-range)
1485
1486 (should-error
1487 (dbus-register-property
1488 :session dbus--test-service dbus--test-path dbus--test-interface
1489 "ULongValue" :readwrite :uint64 18446744073709551700)
1490 :type 'args-out-of-range)
1491
1492 ;; dbus-set-property may change property type.
1493 (should
1494 (=
1495 (dbus-set-property
1496 :session dbus--test-service dbus--test-path dbus--test-interface
1497 "ByteValue" 1024)
1498 1024))
1499
1500 (should
1501 (=
1502 (dbus-get-property
1503 :session dbus--test-service dbus--test-path dbus--test-interface
1504 "ByteValue")
1505 1024))
1506
1507 (should ; Another change property type test.
1508 (equal
1509 (dbus-set-property
1510 :session dbus--test-service dbus--test-path dbus--test-interface
1511 "ByteValue" :boolean t)
1512 t))
1513
1514 (should
1515 (eq
1516 (dbus-get-property
1517 :session dbus--test-service dbus--test-path dbus--test-interface
1518 "ByteValue")
1519 t))
1520
1521 ;; Test invalid type specification.
1522 (should-error
1523 (dbus-register-property
1524 :session dbus--test-service dbus--test-path dbus--test-interface
1525 "InvalidType" :readwrite :keyword 128)
1526 :type 'wrong-type-argument))
1527
1528 ;; Cleanup.
1529 (dbus-unregister-service :session dbus--test-service)))
1530
1531(defun dbus--test-introspect ()
1532 "Return test introspection string."
1533 (when (string-equal dbus--test-path (dbus-event-path-name last-input-event))
1534 (with-temp-buffer
1535 (insert-file-contents-literally
1536 (expand-file-name "org.gnu.Emacs.TestDBus.xml" dbus--tests-dir))
1537 (buffer-string))))
1538
1539(defsubst dbus--test-validate-interface
1540 (iface-name expected-properties expected-methods expected-signals
1541 expected-annotations)
1542 "Validate an interface definition for `dbus-test07-introspection'.
1543The argument IFACE-NAME is a string naming the interface to validate.
1544The arguments EXPECTED-PROPERTIES, EXPECTED-METHODS, EXPECTED-SIGNALS, and
1545EXPECTED-ANNOTATIONS represent the names of the interface's properties,
1546methods, signals, and annotations, respectively."
1547
1548 (let ((interface
1549 (dbus-introspect-get-interface
1550 :session dbus--test-service dbus--test-path iface-name)))
1551 (pcase-let ((`(interface ((name . ,name)) . ,rest) interface))
1552 (should
1553 (string-equal name iface-name))
1554 (should
1555 (string-equal name (dbus-introspect-get-attribute interface "name")))
1556
1557 (let (properties methods signals annotations)
1558 (mapc (lambda (x)
1559 (let ((name (dbus-introspect-get-attribute x "name")))
1560 (cond
1561 ((eq 'property (car x)) (push name properties))
1562 ((eq 'method (car x)) (push name methods))
1563 ((eq 'signal (car x)) (push name signals))
1564 ((eq 'annotation (car x)) (push name annotations)))))
1565 rest)
1566
1567 (should
1568 (equal
1569 (nreverse properties)
1570 expected-properties))
1571 (should
1572 (equal
1573 (nreverse methods)
1574 expected-methods))
1575 (should
1576 (equal
1577 (nreverse signals)
1578 expected-signals))
1579 (should
1580 (equal
1581 (nreverse annotations)
1582 expected-annotations))))))
1583
1584(defsubst dbus--test-validate-annotations (annotations expected-annotations)
1585 "Validate a list of D-Bus ANNOTATIONS.
1586Ensure each string in EXPECTED-ANNOTATIONS names an element of ANNOTATIONS.
1587And ensure each ANNOTATIONS has a value attribute marked \"true\"."
1588 (mapc
1589 (lambda (annotation)
1590 (let ((name (dbus-introspect-get-attribute annotation "name"))
1591 (value (dbus-introspect-get-attribute annotation "value")))
1592 (should
1593 (member name expected-annotations))
1594 (should
1595 (equal value "true"))))
1596 annotations))
1597
1598(defsubst dbus--test-validate-property
1599 (interface property-name _expected-annotations &rest expected-args)
1600 "Validate a property definition for `dbus-test07-introspection'.
1601
1602The argument INTERFACE is a string naming the interface owning PROPERTY-NAME.
1603The argument PROPERTY-NAME is a string naming the property to validate.
1604The arguments EXPECTED-ANNOTATIONS is a list of strings matching
1605the annotation names defined for the method or signal.
1606The argument EXPECTED-ARGS is a list of expected arguments for the property."
1607 (let* ((property
1608 (dbus-introspect-get-property
1609 :session dbus--test-service dbus--test-path interface property-name))
1610 (name (dbus-introspect-get-attribute property "name"))
1611 (type (dbus-introspect-get-attribute property "type"))
1612 (access (dbus-introspect-get-attribute property "access"))
1613 (expected (assoc-string name expected-args)))
1614 (should expected)
1615
1616 (should
1617 (string-equal name property-name))
1618
1619 (should
1620 (string-equal
1621 (nth 0 expected)
1622 name))
1623
1624 (should
1625 (string-equal
1626 (nth 1 expected)
1627 type))
1628
1629 (should
1630 (string-equal
1631 (nth 2 expected)
1632 access))))
1633
1634(defsubst dbus--test-validate-m-or-s (tree expected-annotations expected-args)
1635 "Validate a method or signal definition for `dbus-test07-introspection'.
1636The argument TREE is an sexp returned from either `dbus-introspect-get-method'
1637or `dbus-introspect-get-signal'
1638The arguments EXPECTED-ANNOTATIONS is a list of strings matching
1639the annotation names defined for the method or signal.
1640The argument EXPECTED-ARGS is a list of expected arguments for
1641the method or signal."
1642 (let (args annotations)
1643 (mapc (lambda (elem)
1644 (cond
1645 ((eq 'arg (car elem)) (push elem args))
1646 ((eq 'annotation (car elem)) (push elem annotations))))
1647 tree)
1648 (should
1649 (equal
1650 (nreverse args)
1651 expected-args))
1652 (dbus--test-validate-annotations annotations expected-annotations)))
1653
1654(defsubst dbus--test-validate-signal
1655 (interface signal-name expected-annotations &rest expected-args)
1656 "Validate a signal definition for `dbus-test07-introspection'.
1657
1658The argument INTERFACE is a string naming the interface owning SIGNAL-NAME.
1659The argument SIGNAL-NAME is a string naming the signal to validate.
1660The arguments EXPECTED-ANNOTATIONS is a list of strings matching
1661the annotation names defined for the signal.
1662The argument EXPECTED-ARGS is a list of expected arguments for the signal."
1663 (let ((signal
1664 (dbus-introspect-get-signal
1665 :session dbus--test-service dbus--test-path interface signal-name)))
1666 (pcase-let ((`(signal ((name . ,name)) . ,rest) signal))
1667 (should
1668 (string-equal name signal-name))
1669 (should
1670 (string-equal name (dbus-introspect-get-attribute signal "name")))
1671 (dbus--test-validate-m-or-s rest expected-annotations expected-args))))
1672
1673(defsubst dbus--test-validate-method
1674 (interface method-name expected-annotations &rest expected-args)
1675 "Validate a method definition for `dbus-test07-introspection'.
1676
1677The argument INTERFACE is a string naming the interface owning METHOD-NAME.
1678The argument METHOD-NAME is a string naming the method to validate.
1679The arguments EXPECTED-ANNOTATIONS is a list of strings matching
1680the annotation names defined for the method.
1681The argument EXPECTED-ARGS is a list of expected arguments for the method."
1682 (let ((method
1683 (dbus-introspect-get-method
1684 :session dbus--test-service dbus--test-path interface method-name)))
1685 (pcase-let ((`(method ((name . ,name)) . ,rest) method))
1686 (should
1687 (string-equal name method-name))
1688 (should
1689 (string-equal name (dbus-introspect-get-attribute method "name")))
1690 (dbus--test-validate-m-or-s rest expected-annotations expected-args))))
1691
1692(ert-deftest dbus-test07-introspection ()
1693 "Register an Introspection interface then query it."
1694 (skip-unless dbus--test-enabled-session-bus)
1695 (dbus-ignore-errors (dbus-unregister-service :session dbus--test-service))
1696 (dbus-register-service :session dbus--test-service)
1697
1698 ;; Prepare introspection response.
1699 (dbus-register-method
1700 :session dbus--test-service dbus--test-path dbus-interface-introspectable
1701 "Introspect" 'dbus--test-introspect)
1702 (dbus-register-method
1703 :session dbus--test-service (concat dbus--test-path "/node0")
1704 dbus-interface-introspectable
1705 "Introspect" 'dbus--test-introspect)
1706 (dbus-register-method
1707 :session dbus--test-service (concat dbus--test-path "/node1")
1708 dbus-interface-introspectable
1709 "Introspect" 'dbus--test-introspect)
1710 (unwind-protect
1711 (let ((start (current-time)))
1712 ;; dbus-introspect-get-node-names
1713 (should
1714 (equal
1715 (dbus-introspect-get-node-names
1716 :session dbus--test-service dbus--test-path)
1717 '("node0" "node1")))
1718
1719 ;; dbus-introspect-get-all-nodes
1720 (should
1721 (equal
1722 (dbus-introspect-get-all-nodes
1723 :session dbus--test-service dbus--test-path)
1724 (list dbus--test-path
1725 (concat dbus--test-path "/node0")
1726 (concat dbus--test-path "/node1"))))
1727
1728 ;; dbus-introspect-get-interface-names
1729 (let ((interfaces
1730 (dbus-introspect-get-interface-names
1731 :session dbus--test-service dbus--test-path)))
1732
1733 (should
1734 (equal
1735 interfaces
1736 `(,dbus-interface-introspectable
1737 ,dbus-interface-properties
1738 ,dbus--test-interface)))
1739
1740 (dbus--test-validate-interface
1741 dbus-interface-introspectable nil '("Introspect") nil nil)
1742
1743 ;; dbus-introspect-get-interface via `dbus--test-validate-interface'.
1744 (dbus--test-validate-interface
1745 dbus-interface-properties nil
1746 '("Get" "Set" "GetAll") '("PropertiesChanged") nil)
1747
1748 (dbus--test-validate-interface
1749 dbus--test-interface '("Connected" "Player")
1750 '("Connect" "DeprecatedMethod0" "DeprecatedMethod1") nil
1751 `(,dbus-annotation-deprecated)))
1752
1753 ;; dbus-introspect-get-method-names
1754 (let ((methods
1755 (dbus-introspect-get-method-names
1756 :session dbus--test-service dbus--test-path
1757 dbus--test-interface)))
1758 (should
1759 (equal
1760 methods
1761 '("Connect" "DeprecatedMethod0" "DeprecatedMethod1")))
1762
1763 ;; dbus-introspect-get-method via `dbus--test-validate-method'.
1764 (dbus--test-validate-method
1765 dbus--test-interface "Connect" nil
1766 '(arg ((name . "uuid") (type . "s") (direction . "in")))
1767 '(arg ((name . "mode") (type . "y") (direction . "in")))
1768 '(arg ((name . "options") (type . "a{sv}") (direction . "in")))
1769 '(arg ((name . "interface") (type . "s") (direction . "out"))))
1770
1771 (dbus--test-validate-method
1772 dbus--test-interface "DeprecatedMethod0"
1773 `(,dbus-annotation-deprecated))
1774
1775 (dbus--test-validate-method
1776 dbus--test-interface "DeprecatedMethod1"
1777 `(,dbus-annotation-deprecated)))
1778
1779 ;; dbus-introspect-get-signal-names
1780 (let ((signals
1781 (dbus-introspect-get-signal-names
1782 :session dbus--test-service dbus--test-path
1783 dbus-interface-properties)))
1784 (should
1785 (equal
1786 signals
1787 '("PropertiesChanged")))
1788
1789 ;; dbus-introspect-get-signal via `dbus--test-validate-signal'.
1790 (dbus--test-validate-signal
1791 dbus-interface-properties "PropertiesChanged" nil
1792 '(arg ((name . "interface") (type . "s")))
1793 '(arg ((name . "changed_properties") (type . "a{sv}")))
1794 '(arg ((name . "invalidated_properties") (type . "as")))))
1795
1796 ;; dbus-intropct-get-property-names
1797 (let ((properties
1798 (dbus-introspect-get-property-names
1799 :session dbus--test-service dbus--test-path
1800 dbus--test-interface)))
1801 (should
1802 (equal
1803 properties
1804 '("Connected" "Player")))
1805
1806 ;; dbus-introspect-get-property via `dbus--test-validate-property'.
1807 (dbus--test-validate-property
1808 dbus--test-interface "Connected" nil
1809 '("Connected" "b" "read")
1810 '("Player" "o" "read")))
1811
1812 ;; Elapsed time over a second suggests timeouts.
1813 (should
1814 (< 0.0 (float-time (time-since start)) 1.0)))
1815
1816 ;; Cleanup.
1817 (dbus-unregister-service :session dbus--test-service)))
1818
1819(ert-deftest dbus-test07-introspection-timeout ()
1820 "Verify introspection request timeouts."
1821 :tags '(:expensive-test)
1822 (skip-unless dbus--test-enabled-session-bus)
1823 (dbus-ignore-errors (dbus-unregister-service :session dbus--test-service))
1824 (dbus-register-service :session dbus--test-service)
1825
1826 (unwind-protect
1827 (let ((start (current-time)))
1828 (dbus-introspect-xml :session dbus--test-service dbus--test-path)
1829 ;; Introspection internal timeout is one second.
1830 (should
1831 (< 1.0 (float-time (time-since start)))))
1832
1833 ;; Cleanup.
1834 (dbus-unregister-service :session dbus--test-service)))
1835
1072(defun dbus-test-all (&optional interactive) 1836(defun dbus-test-all (&optional interactive)
1073 "Run all tests for \\[dbus]." 1837 "Run all tests for \\[dbus]."
1074 (interactive "p") 1838 (interactive "p")
diff --git a/test/lisp/obsolete/cl-tests.el b/test/lisp/obsolete/cl-tests.el
index 37061df0a7a..3f3fda3638e 100644
--- a/test/lisp/obsolete/cl-tests.el
+++ b/test/lisp/obsolete/cl-tests.el
@@ -21,7 +21,8 @@
21 21
22;;; Code: 22;;; Code:
23 23
24(require 'cl) 24(with-no-warnings
25 (require 'cl))
25(require 'ert) 26(require 'ert)
26 27
27 28
diff --git a/test/lisp/progmodes/python-tests.el b/test/lisp/progmodes/python-tests.el
index 6b3e63653be..bc77443ff4f 100644
--- a/test/lisp/progmodes/python-tests.el
+++ b/test/lisp/progmodes/python-tests.el
@@ -339,7 +339,7 @@ def func(arg):
339 # I don't do much 339 # I don't do much
340 return arg 340 return arg
341 # This comment is badly indented because the user forced so. 341 # This comment is badly indented because the user forced so.
342 # At this line python.el wont dedent, user is always right. 342 # At this line python.el won't dedent, user is always right.
343 343
344comment_wins_over_ender = True 344comment_wins_over_ender = True
345 345
@@ -358,7 +358,7 @@ comment_wins_over_ender = True
358 ;; The return keyword do make indentation lose a level... 358 ;; The return keyword do make indentation lose a level...
359 (should (= (python-indent-calculate-indentation) 0)) 359 (should (= (python-indent-calculate-indentation) 0))
360 ;; ...but the current indentation was forced by the user. 360 ;; ...but the current indentation was forced by the user.
361 (python-tests-look-at "# At this line python.el wont dedent") 361 (python-tests-look-at "# At this line python.el won't dedent")
362 (should (eq (car (python-indent-context)) :after-comment)) 362 (should (eq (car (python-indent-context)) :after-comment))
363 (should (= (python-indent-calculate-indentation) 4)) 363 (should (= (python-indent-calculate-indentation) 4))
364 ;; Should behave the same for blank lines: potentially a comment. 364 ;; Should behave the same for blank lines: potentially a comment.
diff --git a/test/lisp/simple-tests.el b/test/lisp/simple-tests.el
index 457de91c149..d4b316811e6 100644
--- a/test/lisp/simple-tests.el
+++ b/test/lisp/simple-tests.el
@@ -44,7 +44,7 @@
44;;; `count-words' 44;;; `count-words'
45(ert-deftest simple-test-count-words-bug-41761 () 45(ert-deftest simple-test-count-words-bug-41761 ()
46 (with-temp-buffer 46 (with-temp-buffer
47 (dotimes (i 10) (insert (propertize "test " 'field (cons nil nil)))) 47 (dotimes (_i 10) (insert (propertize "test " 'field (cons nil nil))))
48 (should (= (count-words (point-min) (point-max)) 10)))) 48 (should (= (count-words (point-min) (point-max)) 10))))
49 49
50 50
diff --git a/test/lisp/vc/vc-bzr-tests.el b/test/lisp/vc/vc-bzr-tests.el
index b68a6945129..408d6e8e23d 100644
--- a/test/lisp/vc/vc-bzr-tests.el
+++ b/test/lisp/vc/vc-bzr-tests.el
@@ -131,7 +131,6 @@
131 (make-directory bzrdir) 131 (make-directory bzrdir)
132 (expand-file-name "foo.el" bzrdir))) 132 (expand-file-name "foo.el" bzrdir)))
133 (default-directory (file-name-as-directory bzrdir)) 133 (default-directory (file-name-as-directory bzrdir))
134 (generated-autoload-file (expand-file-name "loaddefs.el" bzrdir))
135 (process-environment (cons (format "HOME=%s" homedir) 134 (process-environment (cons (format "HOME=%s" homedir)
136 process-environment))) 135 process-environment)))
137 (unwind-protect 136 (unwind-protect
@@ -148,7 +147,9 @@
148 ;; causes bzr status to fail. This simulates a broken bzr 147 ;; causes bzr status to fail. This simulates a broken bzr
149 ;; installation. 148 ;; installation.
150 (delete-file ".bzr/checkout/dirstate") 149 (delete-file ".bzr/checkout/dirstate")
151 (should (progn (update-directory-autoloads default-directory) 150 (should (progn (make-directory-autoloads
151 default-directory
152 (expand-file-name "loaddefs.el" bzrdir))
152 t))) 153 t)))
153 (delete-directory homedir t)))) 154 (delete-directory homedir t))))
154 155
diff --git a/test/lisp/wdired-tests.el b/test/lisp/wdired-tests.el
index b89e8c876e2..f876967bf98 100644
--- a/test/lisp/wdired-tests.el
+++ b/test/lisp/wdired-tests.el
@@ -178,6 +178,22 @@ wdired-get-filename before and after editing."
178 (server-force-delete) 178 (server-force-delete)
179 (delete-directory test-dir t)))) 179 (delete-directory test-dir t))))
180 180
181(ert-deftest wdired-test-bug39280 ()
182 "Test for https://debbugs.gnu.org/39280."
183 (let* ((test-dir (make-temp-file "test-dir" 'dir))
184 (fname "foo")
185 (full-fname (expand-file-name fname test-dir)))
186 (make-empty-file full-fname)
187 (let ((buf (find-file-noselect test-dir)))
188 (unwind-protect
189 (with-current-buffer buf
190 (dired-toggle-read-only)
191 (dolist (old '(t nil))
192 (should (equal fname (wdired-get-filename 'nodir old)))
193 (should (equal full-fname (wdired-get-filename nil old))))
194 (wdired-finish-edit))
195 (if buf (kill-buffer buf))
196 (delete-directory test-dir t)))))
181 197
182(provide 'wdired-tests) 198(provide 'wdired-tests)
183;;; wdired-tests.el ends here 199;;; wdired-tests.el ends here
diff --git a/test/manual/cedet/tests/testnsp.cpp b/test/manual/cedet/tests/testnsp.cpp
index fce707bf20b..b72a44c8ca8 100644
--- a/test/manual/cedet/tests/testnsp.cpp
+++ b/test/manual/cedet/tests/testnsp.cpp
@@ -93,7 +93,7 @@ void foo(void) {
93 ; // #4# ( "Mumble" "get" ) 93 ; // #4# ( "Mumble" "get" )
94} 94}
95 95
96// What happens if a type your looking for is scoped withing a type, 96// What happens if a type your looking for is scoped within a type,
97// but you are one level into the completion so the originating scope 97// but you are one level into the completion so the originating scope
98// excludes the type of the variable you are completing through? 98// excludes the type of the variable you are completing through?
99// Thanks Martin Stein for this nice example. 99// Thanks Martin Stein for this nice example.
diff --git a/test/src/coding-tests.el b/test/src/coding-tests.el
index c438ae22ce3..82883a045c8 100644
--- a/test/src/coding-tests.el
+++ b/test/src/coding-tests.el
@@ -143,7 +143,7 @@
143;; Optional 5th arg TRANSLATOR is a function to translate the original 143;; Optional 5th arg TRANSLATOR is a function to translate the original
144;; file contents to match with the expected result of decoding. For 144;; file contents to match with the expected result of decoding. For
145;; instance, when a file of dos eol-type is read by unix eol-type, 145;; instance, when a file of dos eol-type is read by unix eol-type,
146;; `decode-test-lf-to-crlf' must be specified. 146;; `coding-tests-lf-to-crlf' must be specified.
147 147
148(defun coding-tests (content-type write-coding read-coding detected-coding 148(defun coding-tests (content-type write-coding read-coding detected-coding
149 &optional translator) 149 &optional translator)
diff --git a/test/src/indent-tests.el b/test/src/indent-tests.el
new file mode 100644
index 00000000000..7d1a6ce6dc3
--- /dev/null
+++ b/test/src/indent-tests.el
@@ -0,0 +1,59 @@
1;;; indent-tests.el --- tests for src/indent.c -*- lexical-binding:t -*-
2
3;; Copyright (C) 2020 Free Software Foundation, Inc.
4
5;; This file is part of GNU Emacs.
6
7;; This program is free software: you can redistribute it and/or
8;; modify it under the terms of the GNU General Public License as
9;; published by the Free Software Foundation, either version 3 of the
10;; License, or (at your option) any later version.
11;;
12;; This program is distributed in the hope that it will be useful, but
13;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15;; General Public License for more details.
16;;
17;; You should have received a copy of the GNU General Public License
18;; along with this program. If not, see `https://www.gnu.org/licenses/'.
19
20;;; Commentary:
21
22;;; Code:
23
24(ert-deftest indent-tests-move-to-column-invis-1tab ()
25 "Test `move-to-column' when a TAB is followed by invisible text."
26 (should
27 (string=
28 (with-temp-buffer
29 (insert "\tLine starting with INVISIBLE text after TAB\n")
30 (add-text-properties 2 21 '(invisible t))
31 (goto-char (point-min))
32 (move-to-column 7 t)
33 (buffer-substring-no-properties 1 8))
34 " ")))
35
36(ert-deftest indent-tests-move-to-column-invis-2tabs ()
37 "Test `move-to-column' when 2 TABs are followed by invisible text."
38 (should
39 (string=
40 (with-temp-buffer
41 (insert "\t\tLine starting with INVISIBLE text after TAB\n")
42 (add-text-properties 3 22 '(invisible t))
43 (goto-char (point-min))
44 (move-to-column 12 t)
45 (buffer-substring-no-properties 1 11))
46 "\t \tLine")))
47
48(ert-deftest indent-tests-move-to-column-invis-between-tabs ()
49 "Test `move-to-column' when 2 TABs are mixed with invisible text."
50 (should
51 (string=
52 (with-temp-buffer
53 (insert "\txxx\tLine starting with INVISIBLE text after TAB\n")
54 (add-text-properties 6 25 '(invisible t))
55 (add-text-properties 2 5 '(invisible t))
56 (goto-char (point-min))
57 (move-to-column 12 t)
58 (buffer-substring-no-properties 1 14))
59 "\txxx \tLine")))
diff --git a/test/src/regex-resources/BOOST.tests b/test/src/regex-resources/BOOST.tests
index 98fd3b6abf3..756fa00486b 100644
--- a/test/src/regex-resources/BOOST.tests
+++ b/test/src/regex-resources/BOOST.tests
@@ -93,7 +93,7 @@ aa\) !
93. \0 0 1 93. \0 0 1
94 94
95; 95;
96; now move on to the repetion ops, 96; now move on to the repetition ops,
97; starting with operator * 97; starting with operator *
98- match_default normal REG_EXTENDED 98- match_default normal REG_EXTENDED
99a* b 0 0 99a* b 0 0
@@ -275,7 +275,7 @@ a(b*)c\1d abbcbbbd -1 -1
275^(.)\1 abc -1 -1 275^(.)\1 abc -1 -1
276a([bc])\1d abcdabbd 4 8 5 6 276a([bc])\1d abcdabbd 4 8 5 6
277; strictly speaking this is at best ambiguous, at worst wrong, this is what most 277; strictly speaking this is at best ambiguous, at worst wrong, this is what most
278; re implimentations will match though. 278; re implementations will match though.
279a(([bc])\2)*d abbccd 0 6 3 5 3 4 279a(([bc])\2)*d abbccd 0 6 3 5 3 4
280 280
281a(([bc])\2)*d abbcbd -1 -1 281a(([bc])\2)*d abbcbd -1 -1
diff --git a/test/src/syntax-tests.el b/test/src/syntax-tests.el
index 65c56b3b29d..56e03380579 100644
--- a/test/src/syntax-tests.el
+++ b/test/src/syntax-tests.el
@@ -82,4 +82,353 @@ also has open paren syntax (see Bug#24870)."
82 (should (equal (parse-partial-sexp pointC pointX nil nil ppsC) 82 (should (equal (parse-partial-sexp pointC pointX nil nil ppsC)
83 ppsX))))) 83 ppsX)))))
84 84
85
86;;; Commentary:
87;; The next bit tests the handling of comments in syntax.c, in
88;; particular the functions `forward-comment' and `scan-lists' and
89;; `parse-partial-sexp' (in so far as they relate to comments).
90
91;; It is intended to enhance this bit to test nested comments
92;; (2020-10-01).
93
94;; This bit uses the data file test/data/syntax-comments.txt.
95
96(defun syntax-comments-point (n forw)
97 "Return the buffer offset corresponding to the \"label\" N.
98N is a decimal number which appears in the data file, usually
99twice, as \"labels\". It can also be a negative number or zero.
100FORW is t when we're using the label at BOL, nil for the one at EOL.
101
102If the label N doesn't exist in the current buffer, an exception
103is thrown.
104
105When FORW is t and N positive, we return the position after the
106first occurrence of label N at BOL in the data file. With FORW
107nil, we return the position before the last occurrence of the
108label at EOL in the data file.
109
110When N is negative, we return instead the position of the end of
111line that the -N label is on. When it is zero, we return POINT."
112 (if (zerop n)
113 (point)
114 (let ((str (format "%d" (abs n))))
115 (save-excursion
116 (if forw
117 (progn
118 (goto-char (point-min))
119 (re-search-forward
120 (concat "^\\(" str "\\)\\([^0-9\n]\\|$\\)"))
121 (if (< n 0)
122 (progn (end-of-line) (point))
123 (match-end 1)))
124 (goto-char (point-max))
125 (re-search-backward
126 (concat "\\(^\\|[^0-9]\\)\\(" str "\\)$"))
127 (if (< n 0)
128 (progn (end-of-line) (point))
129 (match-beginning 2)))))))
130
131(defun syntax-comments-midpoint (n)
132 "Return the buffer offset corresponding to the \"label\" N.
133N is a positive decimal number which should appear in the buffer
134exactly once. The label need not be at the beginning or end of a
135line.
136
137The return value is the position just before the label.
138
139If the label N doesn't exist in the current buffer, an exception
140is thrown."
141 (let ((str (format "%d" n)))
142 (save-excursion
143 (goto-char (point-min))
144 (re-search-forward
145 (concat "\\(^\\|[^0-9]\\)\\(" str "\\)\\([^0-9\n]\\|$\\)"))
146 (match-beginning 2))))
147
148(eval-and-compile
149 (defvar syntax-comments-section))
150
151(defmacro syntax-comments (-type- -dir- res start &optional stop)
152 "Create an ERT test to test (forward-comment 1/-1).
153The test uses a fixed name data file, which it visits. It calls
154entry and exit functions to set up and tear down syntax entries
155for comment characters. The test is given a name based on the
156global variable `syntax-comments-section', the direction of
157movement and the value of START.
158
159-TYPE- (unquoted) is a symbol from whose name the entry and exit
160function names are derived by appending \"-in\" and \"-out\".
161
162-DIR- (unquoted) is `forward' or `backward', the direction
163`forward-comment' is attempted.
164
165RES, t or nil, is the expected result from `forward-comment'.
166
167START and STOP are decimal numbers corresponding to labels in the
168data file marking the start and expected stop positions. See
169`syntax-comments-point' for a precise specification. If STOP is
170missing or nil, the value of START is assumed for it."
171 (declare (debug t))
172 (let ((forw
173 (cond
174 ((eq -dir- 'forward) t)
175 ((eq -dir- 'backward) nil)
176 (t (error "Invalid -dir- argument \"%s\" to `syntax-comments'" -dir-))))
177 (start-str (format "%d" (abs start)))
178 (type -type-))
179 `(ert-deftest ,(intern (concat "syntax-comments-"
180 syntax-comments-section
181 (if forw "-f" "-b") start-str))
182 ()
183 (with-current-buffer
184 (find-file
185 ,(expand-file-name "data/syntax-comments.txt"
186 (getenv "EMACS_TEST_DIRECTORY")))
187 (,(intern (concat (symbol-name type) "-in")))
188 (goto-char (syntax-comments-point ,start ,forw))
189 (let ((stop (syntax-comments-point ,(or stop start) ,(not forw))))
190 (should (eq (forward-comment ,(if forw 1 -1)) ,res))
191 (should (eq (point) stop)))
192 (,(intern (concat (symbol-name type) "-out")))))))
193
194(defmacro syntax-br-comments (-type- -dir- res -start- &optional stop)
195 "Create an ERT test to test (scan-lists <position> 1/-1 0).
196This is to test the interface between scan-lists and the internal
197comment routines in syntax.c.
198
199The test uses a fixed name data file, which it visits. It calls
200entry and exit functions to set up and tear down syntax entries
201for comment and paren characters. The test is given a name based
202on the global variable `syntax-comments-section', the direction
203of movement and the value of -START-.
204
205-TYPE- (unquoted) is a symbol from whose name the entry and exit
206function names are derived by appending \"-in\" and \"-out\".
207
208-DIR- (unquoted) is `forward' or `backward', the direction
209`scan-lists' is attempted.
210
211RES is t if `scan-lists' is expected to return, nil if it is
212expected to raise a `scan-error' exception.
213
214-START- and STOP are decimal numbers corresponding to labels in the
215data file marking the start and expected stop positions. See
216`syntax-comments-point' for a precise specification. If STOP is
217missing or nil, the value of -START- is assumed for it."
218 (declare (debug t))
219 (let* ((forw
220 (cond
221 ((eq -dir- 'forward) t)
222 ((eq -dir- 'backward) nil)
223 (t (error "Invalid -dir- argument \"%s\" to `syntax-comments'" -dir-))))
224 (start -start-)
225 (start-str (format "%d" (abs start)))
226 (type -type-))
227 `(ert-deftest ,(intern (concat "syntax-br-comments-"
228 syntax-comments-section
229 (if forw "-f" "-b") start-str))
230 ()
231 (with-current-buffer
232 (find-file
233 ,(expand-file-name "data/syntax-comments.txt"
234 (getenv "EMACS_TEST_DIRECTORY")))
235 (,(intern (concat (symbol-name type) "-in")))
236 (let ((start-pos (syntax-comments-point ,start ,forw))
237 ,@(if res
238 `((stop-pos (syntax-comments-point
239 ,(or stop start) ,(not forw))))))
240 ,(if res
241 `(should
242 (eq (scan-lists start-pos ,(if forw 1 -1) 0)
243 stop-pos))
244 `(should-error (scan-lists start-pos ,(if forw 1 -1) 0)
245 :type 'scan-error)))
246 (,(intern (concat (symbol-name type) "-out")))))))
247
248(defmacro syntax-pps-comments (-type- -start- open close &optional -stop-)
249 "Create an ERT test to test `parse-partial-sexp' with comments.
250This is to test the interface between `parse-partial-sexp' and
251the internal comment routines in syntax.c.
252
253The test uses a fixed name data file, which it visits. It calls
254entry and exit functions to set up and tear down syntax entries
255for comment and paren characters. The test is given a name based
256on the global variable `syntax-comments-section', and the value
257of -START-.
258
259The generated test calls `parse-partial-sexp' three times, the
260first two with COMMENTSTOP set to `syntax-table' so as to stop
261after the start and end of the comment. The third call is
262expected to stop at the brace/paren matching the one where the
263test started.
264
265-TYPE- (unquoted) is a symbol from whose name the entry and exit
266function names are derived by appending \"-in\" and \"-out\".
267
268-START- and -STOP- are decimal numbers corresponding to labels in
269the data file marking the start and expected stop positions. See
270`syntax-comments-point' for a precise specification. If -STOP-
271is missing or nil, the value of -START- is assumed for it.
272
273OPEN and CLOSE are decimal numbers corresponding to labels in the
274data file marking just after the comment opener and closer where
275the `parse-partial-sexp's are expected to stop. See
276`syntax-comments-midpoint' for a precise specification."
277 (declare (debug t))
278 (let* ((type -type-)
279 (start -start-)
280 (start-str (format "%d" start))
281 (stop (or -stop- start)))
282 `(ert-deftest ,(intern (concat "syntax-pps-comments-"
283 syntax-comments-section
284 "-" start-str))
285 ()
286 (with-current-buffer
287 (find-file
288 ,(expand-file-name "data/syntax-comments.txt"
289 (getenv "EMACS_TEST_DIRECTORY")))
290 (,(intern (concat (symbol-name type) "-in")))
291 (let ((start-pos (syntax-comments-point ,start t))
292 (open-pos (syntax-comments-midpoint ,open))
293 (close-pos (syntax-comments-midpoint ,close))
294 (stop-pos (syntax-comments-point ,stop nil))
295 s)
296 (setq s (parse-partial-sexp
297 start-pos (point-max) 0 nil nil 'syntax-table))
298 (should (eq (point) open-pos))
299 (setq s (parse-partial-sexp
300 (point) (point-max) 0 nil s 'syntax-table))
301 (should (eq (point) close-pos))
302 (setq s (parse-partial-sexp (point) (point-max) 0 nil s))
303 (should (eq (point) stop-pos)))
304 (,(intern (concat (symbol-name type) "-out")))))))
305
306;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
307;; "Pascal" style comments - single character delimiters, the closing
308;; delimiter not being newline.
309;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
310(defun {-in ()
311 (setq parse-sexp-ignore-comments t)
312 (setq comment-end-can-be-escaped nil)
313 (modify-syntax-entry ?{ "<")
314 (modify-syntax-entry ?} ">"))
315(defun {-out ()
316 (modify-syntax-entry ?{ "(}")
317 (modify-syntax-entry ?} "){"))
318(eval-and-compile
319 (setq syntax-comments-section "pascal"))
320
321(syntax-comments { forward nil 20 0)
322(syntax-comments { backward nil 20 0)
323(syntax-comments { forward t 21)
324(syntax-comments { backward t 21)
325(syntax-comments { forward t 22)
326(syntax-comments { backward t 22)
327
328(syntax-comments { forward t 23)
329(syntax-comments { backward t 23)
330(syntax-comments { forward t 24)
331(syntax-comments { backward t 24)
332(syntax-comments { forward t 26)
333(syntax-comments { backward t 26)
334
335;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
336;; "Lisp" style comments - single character opening delimiters on line
337;; comments.
338;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
339(defun \;-in ()
340 (setq parse-sexp-ignore-comments t)
341 (setq comment-end-can-be-escaped nil)
342 (modify-syntax-entry ?\n ">")
343 (modify-syntax-entry ?\; "<"))
344(defun \;-out ()
345 (modify-syntax-entry ?\n " ")
346 (modify-syntax-entry ?\; "."))
347(eval-and-compile
348 (setq syntax-comments-section "lisp"))
349
350(syntax-comments \; backward nil 30 30)
351(syntax-comments \; forward t 31)
352(syntax-comments \; backward t 31)
353(syntax-comments \; forward t 32)
354(syntax-comments \; backward t 32)
355(syntax-comments \; forward t 33)
356(syntax-comments \; backward t 33)
357
358;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
359;; Emacs 27 "C" style comments - `comment-end-can-be-escaped' is non-nil.
360;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
361(defun /*-in ()
362 (setq parse-sexp-ignore-comments t)
363 (setq comment-end-can-be-escaped t)
364 (modify-syntax-entry ?/ ". 124b")
365 (modify-syntax-entry ?* ". 23")
366 (modify-syntax-entry ?\n "> b"))
367(defun /*-out ()
368 (setq comment-end-can-be-escaped nil)
369 (modify-syntax-entry ?/ ".")
370 (modify-syntax-entry ?* ".")
371 (modify-syntax-entry ?\n " "))
372(eval-and-compile
373 (setq syntax-comments-section "c"))
374
375(syntax-comments /* forward t 1)
376(syntax-comments /* backward t 1)
377(syntax-comments /* forward t 2)
378(syntax-comments /* backward t 2)
379(syntax-comments /* forward t 3)
380(syntax-comments /* backward t 3)
381
382(syntax-comments /* forward t 4)
383(syntax-comments /* backward t 4)
384(syntax-comments /* forward t 5 6)
385(syntax-comments /* backward nil 5 0)
386(syntax-comments /* forward nil 6 0)
387(syntax-comments /* backward t 6 5)
388
389(syntax-comments /* forward t 7 8)
390(syntax-comments /* backward nil 7 0)
391(syntax-comments /* forward nil 8 0)
392(syntax-comments /* backward t 8 7)
393(syntax-comments /* forward t 9)
394(syntax-comments /* backward t 9)
395
396(syntax-comments /* forward nil 10 0)
397(syntax-comments /* backward nil 10 0)
398(syntax-comments /* forward t 11)
399(syntax-comments /* backward t 11)
400
401(syntax-comments /* forward t 13 14)
402(syntax-comments /* backward nil 13 -14)
403(syntax-comments /* forward t 15)
404(syntax-comments /* backward t 15)
405
406;; Emacs 27 "C" style comments inside brace lists.
407(syntax-br-comments /* forward t 50)
408(syntax-br-comments /* backward t 50)
409(syntax-br-comments /* forward t 51)
410(syntax-br-comments /* backward t 51)
411(syntax-br-comments /* forward t 52)
412(syntax-br-comments /* backward t 52)
413
414(syntax-br-comments /* forward t 53)
415(syntax-br-comments /* backward t 53)
416(syntax-br-comments /* forward t 54 20)
417(syntax-br-comments /* backward t 54)
418(syntax-br-comments /* forward t 55)
419(syntax-br-comments /* backward t 55)
420
421(syntax-br-comments /* forward t 56 58)
422(syntax-br-comments /* backward t 58 56)
423(syntax-br-comments /* backward nil 59)
424(syntax-br-comments /* forward t 60)
425(syntax-br-comments /* backward t 60)
426
427;; Emacs 27 "C" style comments parsed by `parse-partial-sexp'.
428(syntax-pps-comments /* 50 70 71)
429(syntax-pps-comments /* 52 72 73)
430(syntax-pps-comments /* 54 74 55 20)
431(syntax-pps-comments /* 56 76 77 58)
432(syntax-pps-comments /* 60 78 79)
433
85;;; syntax-tests.el ends here 434;;; syntax-tests.el ends here