]> git.eshelyaron.com Git - emacs.git/log
emacs.git
4 years agoFix Objective-C C99 build problem
Alan Third [Thu, 27 Aug 2020 19:50:42 +0000 (20:50 +0100)]
Fix Objective-C C99 build problem

* configure.ac (NS_IMPL_GNUSTEP): GCC appears to need to be told to
use C99 when compiling Objective-C.

4 years agoAdd GNUstep build to Gitlab CI/CD
Alan Third [Thu, 27 Aug 2020 17:33:31 +0000 (18:33 +0100)]
Add GNUstep build to Gitlab CI/CD

* .gitlab-ci.yml (test-gnustep): New test target.

4 years agoAdd support for parsing column numbers in Visual Studio messages
Daniel Martín [Sun, 26 Jul 2020 13:24:59 +0000 (15:24 +0200)]
Add support for parsing column numbers in Visual Studio messages

* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Extend regular expression to match optional column numbers.
*
test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data):
Add a test.
* test/lisp/progmodes/compile-tests.el (compile-test-error-regexps):
Update the total number of compilation errors in a test.
* etc/compilation.txt: Update compilation.txt with the newly supported
message format.
* etc/NEWS: Advertise the feature.

4 years agoFix Bug#43052
Michael Albinus [Fri, 28 Aug 2020 17:54:50 +0000 (19:54 +0200)]
Fix Bug#43052

* test/lisp/net/tramp-tests.el (tramp-test04-substitute-in-file-name):
Make user name unique.  (Bug#43052)

4 years agoAdd commands to run shell commands in project root
Stefan Kangas [Fri, 28 Aug 2020 17:23:01 +0000 (19:23 +0200)]
Add commands to run shell commands in project root

* lisp/progmodes/project.el (project-async-shell-command)
(project-shell-command): New commands to run 'async-shell-command'
and 'shell-command' in project's root directory.
(project-prefix-map): Bind commands to '!' and '&'.
* doc/emacs/maintaining.texi (Project File Commands): Document the
new commands.
* etc/NEWS: Announce the new commands.

4 years agoMake XEmacs compat aliases obsolete in warnings.el
Stefan Kangas [Fri, 28 Aug 2020 15:29:31 +0000 (17:29 +0200)]
Make XEmacs compat aliases obsolete in warnings.el

* lisp/emacs-lisp/warnings.el (display-warning-minimum-level)
(log-warning-minimum-level): Make XEmacs compat aliases into obsolete
aliases for 'warning-minimum-level' and 'warning-minimum-log-level'.

4 years agoUse lexical-binding in warnings.el and add tests
Stefan Kangas [Fri, 28 Aug 2020 15:18:15 +0000 (17:18 +0200)]
Use lexical-binding in warnings.el and add tests

* lisp/warnings.el: Use lexical-binding.
Remove redundant :group args.

* test/lisp/warnings-tests.el: New file.

4 years agoNew eieio-persistent-make-instance generic function
Eric Abrahamsen [Fri, 28 Aug 2020 00:58:03 +0000 (17:58 -0700)]
New eieio-persistent-make-instance generic function

This allows override of the read process for eieio-persistent objects,
providing the possibility of matching read/write customization for
eieio-persistent subclasses.

* lisp/emacs-lisp/eieio-base.el (eieio-persistent-make-instance): New
generic function for constructing instances from object data written
to disk. Previously known as eieio-persistent-convert-list-to-object.

4 years agoRemove redundant slot validation in eieio-persistent-read
Eric Abrahamsen [Fri, 28 Aug 2020 00:17:19 +0000 (17:17 -0700)]
Remove redundant slot validation in eieio-persistent-read

Actual object creation (in `make-instance') will later run all slot
values through cl-typep, which does a better job of validation. This
validation is redundant, and slows the read process down.

* lisp/emacs-lisp/eieio-base.el (eieio-persistent-fix-value): Rename
from `eieio-persistent-validate/fix-slot-value', as we no longer
validate, and we don't care about the slot definition.
(eieio-persistent-slot-type-is-class-p): Delete function.
(eieio-persistent-convert-list-to-object): Still call
`eieio--full-class-object', to trigger an autoload if necessary, but
discard the return value.

4 years agoFix indent-region for identifiers with underscores in cperl-mode
Harald Jörg [Fri, 28 Aug 2020 14:33:13 +0000 (16:33 +0200)]
Fix indent-region for identifiers with underscores in cperl-mode

 * lisp/progmodes/cperl-mode.el (cperl-fix-line-spacing): Fix Bug#18985.
 Hash keys or function names starting with a Perl keyword followed
 by an underscore (as in "for_me" are no longer split into two words
 by M-x indent-region.

4 years ago* lisp/mwheel.el: Improve package description.
Stefan Kangas [Fri, 28 Aug 2020 14:10:09 +0000 (16:10 +0200)]
* lisp/mwheel.el: Improve package description.

4 years ago* test/src/fileio-tests.el: Preserve HOME when a test fails
Mattias Engdegård [Fri, 28 Aug 2020 08:26:32 +0000 (10:26 +0200)]
* test/src/fileio-tests.el: Preserve HOME when a test fails

4 years agoFix most of fileio-tests on MS-Windows
Eli Zaretskii [Fri, 28 Aug 2020 06:58:50 +0000 (09:58 +0300)]
Fix most of fileio-tests on MS-Windows

* test/src/fileio-tests.el (fileio-tests--HOME-trailing-slash)
(fileio-tests--expand-file-name-trailing-slash): Account for drive
letters in MS-Windows/MS-DOS file names.  (Bug#26911)

4 years agoFix recently-introduced expand-file-name bug
Paul Eggert [Thu, 27 Aug 2020 21:46:52 +0000 (14:46 -0700)]
Fix recently-introduced expand-file-name bug

The bug was that (expand-file-name "~") returned something
like "/home/eggert/" instead of "/home/eggert".
Problem reported by Mattias Engdegård (Bug#26911#27).
* src/fileio.c (Fexpand_file_name): When concatenating NEWDIR to
NM, instead of stripping trailing slashes from NEWDIR (which can
turn non-symlinks into symlinks), strip leading slashes from NM.
This also simplifies the code by removing no-longer-needed DOS_NT
special-casing.  Also, remove an unnecessary ‘target[length] = 0;’
as that byte will be overwritten by the next memcpy anyway.
* test/src/fileio-tests.el (fileio-tests--HOME-trailing-slash):
New test.

4 years agoSet Gnus server 'closed status in gnus-close-server
Eric Abrahamsen [Thu, 27 Aug 2020 15:00:14 +0000 (08:00 -0700)]
Set Gnus server 'closed status in gnus-close-server

* lisp/gnus/gnus-int.el (gnus-close-server): Set 'closed status here.
* lisp/gnus/gnus-group.el (gnus-group-suspend): Not here.

4 years agoSwitch Gnus D-Bus signal from :session to :system
Eric Abrahamsen [Thu, 27 Aug 2020 20:57:03 +0000 (13:57 -0700)]
Switch Gnus D-Bus signal from :session to :system

* lisp/gnus/gnus-dbus.el (gnus-dbus-register-sleep-signal): Apparently
this needs to be :system -- perhaps because PrepareForSleep is a
system-level event?

4 years agoAdapt tramp-tests
Michael Albinus [Thu, 27 Aug 2020 18:34:36 +0000 (20:34 +0200)]
Adapt tramp-tests

* test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name)
(tramp-test05-expand-file-name-relative): Adapt tests.

4 years ago; * etc/NEWS: Fix formatting of a recently-added entry.
Eli Zaretskii [Thu, 27 Aug 2020 17:06:33 +0000 (20:06 +0300)]
; * etc/NEWS: Fix formatting of a recently-added entry.

4 years agoKeep the user theme in sync when marking a variable as set
Mauro Aranda [Thu, 27 Aug 2020 14:22:35 +0000 (16:22 +0200)]
Keep the user theme in sync when marking a variable as set

* lisp/custom.el (customize-mark-as-set): Keep the user theme in sync
even if the new value of the variable is the saved-value or the
standard-value.  If we don't do this, custom themes might end up
stepping over the user preferences in a session (bug#28904).

4 years agoMake minibuf-eldef respect minibuffer-default-prompt-format
Lars Ingebrigtsen [Thu, 27 Aug 2020 12:46:27 +0000 (14:46 +0200)]
Make minibuf-eldef respect minibuffer-default-prompt-format

* lisp/minibuf-eldef.el (minibuffer-default--in-prompt-regexps):
Take minibuffer-default-prompt-format into account.

4 years agoSubstitute command keys in display-local-help
Stefan Kangas [Thu, 27 Aug 2020 11:38:37 +0000 (13:38 +0200)]
Substitute command keys in display-local-help

* lisp/help-at-pt.el (display-local-help): Pass 'help-echo' property
through 'substitute-command-keys' before displaying to be consistent
with tooltips.  (Bug#37628)

This was discussed in:
https://lists.gnu.org/archive/html/emacs-devel/2019-10/msg00090.html

4 years agoPrevent spurious tabs by RET in todo-edit-mode (bug#43068)
Stephen Berman [Thu, 27 Aug 2020 11:53:22 +0000 (13:53 +0200)]
Prevent spurious tabs by RET in todo-edit-mode (bug#43068)

* lisp/calendar/todo-mode.el (todo-key-bindings-t)
(todo-edit-mode-map): Remove remapping of `newline' to
`newline-and-indent'.
(todo-modes-set-1): Remove local setting of `indent-line-function'.
(todo-edit-mode): Locally set `indent-line-function' to `todo-indent'.

* test/lisp/calendar/todo-mode-tests.el (todo-test-move-item05):
Prevent interactive test failure.  (Until the addition of testcat4
to todo-test-1.todo, the test passed by chance, since testcat3 is
empty and has no archived items.)
(todo-test-edit-item-date-month): Refer to bug number.
(todo-test-multiline-item-indentation-1)
(todo-test-multiline-item-indentation-2)
(todo-test-multiline-item-indentation-3): New tests.

* test/lisp/calendar/todo-mode-resources/todo-test-1.todo: Remove
spurious tabs from testcat1.

4 years agoMinor clean up in flyspell.el
Stefan Kangas [Thu, 27 Aug 2020 09:58:27 +0000 (11:58 +0200)]
Minor clean up in flyspell.el

* lisp/textmodes/flyspell.el (flyspell-buffers): Declare obsolete.
(flyspell--prev-meta-tab-binding): Doc fix.

4 years agodired: Show broken/circular links w/ different face
Tino Calancha [Thu, 27 Aug 2020 09:51:30 +0000 (11:51 +0200)]
dired: Show broken/circular links w/ different face

* lisp/dired.el (dired-broken-symlink): New face.
(dired-font-lock-keywords):
Use it for broken/circular links (Bug#39145).

* etc/NEWS (Changes in Specialized Modes and Packages in Emacs 28.1):
Announce this change.

4 years agoOnly show flyspell welcome message interactively
Stefan Kangas [Thu, 27 Aug 2020 09:38:00 +0000 (11:38 +0200)]
Only show flyspell welcome message interactively

* lisp/textmodes/flyspell.el (flyspell-mode): Only show welcome
message when called interactively.  (Bug#43065)

4 years agoAdd ASTEC-X issue to PROBLEMS
Stefan Kangas [Thu, 27 Aug 2020 05:58:17 +0000 (07:58 +0200)]
Add ASTEC-X issue to PROBLEMS

* etc/PROBLEMS: Mention problem with multiple monitors on proprietary
X Server ASTEC-X.  (Bug#36779)

4 years agoFix flyspell welcome message
Stefan Kangas [Thu, 27 Aug 2020 05:07:39 +0000 (07:07 +0200)]
Fix flyspell welcome message

* lisp/textmodes/flyspell.el (flyspell-mode, flyspell-mode-on):
Fix showing welcome message when `flyspell-issue-welcome-flag' and
`flyspell-issue-message-flag' are both non-nil.  (Bug#43065)

4 years ago; Add the necessary argument (bug#42967)
Dmitry Gutov [Thu, 27 Aug 2020 08:32:50 +0000 (11:32 +0300)]
; Add the necessary argument (bug#42967)

4 years agoAllow a function for the :secret in a plstore
Andrew G Cohen [Thu, 27 Aug 2020 05:14:26 +0000 (13:14 +0800)]
Allow a function for the :secret in a plstore

* lisp/auth-source.el (auth-source-plstore-search): If the :secret
value is a function, call it on plist to obtain the real password.

4 years ago; * lisp/textmodes/flyspell.el (flyspell-mode-on): Fix typo.
Stefan Kangas [Thu, 27 Aug 2020 04:57:52 +0000 (06:57 +0200)]
; * lisp/textmodes/flyspell.el (flyspell-mode-on): Fix typo.

4 years agoRefer to correct mouse button in flyspell message
Stefan Kangas [Thu, 27 Aug 2020 04:48:39 +0000 (06:48 +0200)]
Refer to correct mouse button in flyspell message

* lisp/textmodes/flyspell.el (make-flyspell-overlay)
(flyspell-mode-on): Refer to mouse-3 in help messages when the
variable 'flyspell-use-mouse-3-for-menu' is non-nil.  (Bug#11680)

4 years agoSignal error on Hunspell installation problem
Stefan Kangas [Wed, 26 Aug 2020 19:53:17 +0000 (21:53 +0200)]
Signal error on Hunspell installation problem

* lisp/textmodes/ispell.el (ispell-find-hunspell-dictionaries):
Signal user-error when Hunspell warns that it "Can't open affix or
dictionary files", and propagate this message.  (Bug#25825)

4 years ago; Fix license statements.
Stefan Kangas [Thu, 27 Aug 2020 00:42:36 +0000 (02:42 +0200)]
; Fix license statements.

4 years ago; * lisp/info.el (Info-complete-menu-item): Fix wording of comment.
Stefan Kangas [Thu, 27 Aug 2020 00:35:53 +0000 (02:35 +0200)]
; * lisp/info.el (Info-complete-menu-item): Fix wording of comment.

4 years agoAdd themes modus-operandi and modus-vivendi
Protesilaos Stavrou [Wed, 26 Aug 2020 23:29:35 +0000 (01:29 +0200)]
Add themes modus-operandi and modus-vivendi

* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-vivendi-theme.el: New themes.  (Bug#43019)

4 years agoSort Info index completions alphabetically
Stefan Kangas [Wed, 26 Aug 2020 22:50:59 +0000 (00:50 +0200)]
Sort Info index completions alphabetically

* lisp/info.el (Info-complete-menu-item): Sort the list of completions
alphabetically using 'nreverse'.  This makes no difference for Emacs
but helps third-party completion frameworks such as Ivy.  (Bug#38614)

Suggested by Howard Melman <hmelman@gmail.com>.

4 years ago; Bump xref version
Dmitry Gutov [Wed, 26 Aug 2020 21:54:42 +0000 (00:54 +0300)]
; Bump xref version

4 years agoUnbreak dired-do-find-regexp in Emacs 26
Dmitry Gutov [Wed, 26 Aug 2020 21:54:28 +0000 (00:54 +0300)]
Unbreak dired-do-find-regexp in Emacs 26

* lisp/progmodes/xref.el (xref--show-xrefs):
Support the old convention (bug#42967).

4 years agoUnbreak xref-goto-xref in Emacs 26
Dmitry Gutov [Wed, 26 Aug 2020 21:47:18 +0000 (00:47 +0300)]
Unbreak xref-goto-xref in Emacs 26

* lisp/progmodes/xref.el (xref-goto-xref):
Call next-error-found only if it's defined (bug#42981).

4 years agoFix expand-file-name symlink-to-dir bug
Paul Eggert [Wed, 26 Aug 2020 20:25:35 +0000 (13:25 -0700)]
Fix expand-file-name symlink-to-dir bug

Problem reported by Yegor Timoshenko (Bug#26911),
and I ran into it myself recently in normal-top-level.
* doc/lispref/files.texi (File Name Expansion), etc/NEWS: Mention this.
* src/fileio.c (Fexpand_file_name): Expand "/a/b/." to "/a/b/" not
"/a/b", to avoid misinterpreting a symlink "/a/b".  Similarly,
expand "/a/b/c/.." to "/a/b/" not "/a/b".
* test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name):
Adjust to match new behavior.
(tramp-test05-expand-file-name-relative): This test now succeeds,
at least on Fedora 31.
* test/src/fileio-tests.el:
(fileio-tests--expand-file-name-trailing-slash) New test.

4 years agoFix PWD startup checking with symlinks
Paul Eggert [Wed, 26 Aug 2020 17:53:32 +0000 (10:53 -0700)]
Fix PWD startup checking with symlinks

* lisp/startup.el (normal-top-level): Do not put "." after "/";
it’s not needed and with current file-name-as-directory it does
the wrong thing if PWD is a symlink.

4 years ago* lisp/files.el (insert-directory): Simplify (if ... X X) to X.
Paul Eggert [Wed, 26 Aug 2020 17:51:48 +0000 (10:51 -0700)]
* lisp/files.el (insert-directory): Simplify (if ... X X) to X.

4 years agoSync latest SKK-JISYO.L
Stefan Kangas [Wed, 26 Aug 2020 15:25:53 +0000 (17:25 +0200)]
Sync latest SKK-JISYO.L

* leim/SKK-DIC/SKK-JISYO.L: Sync to current upstream version.

4 years agoAllow disabling double buffering at build time
leo [Wed, 26 Aug 2020 13:03:08 +0000 (15:03 +0200)]
Allow disabling double buffering at build time

* configure.ac: Allow disabling double buffering (bug#32032).

Copyright-paperwork-exempt: yes

4 years agoAllow directories to be called .el in -add-subdirs-to-load-path
Robert Pluim [Wed, 26 Aug 2020 12:47:22 +0000 (14:47 +0200)]
Allow directories to be called .el in -add-subdirs-to-load-path

* lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
Allow the directories to be called "<foo>.el" (bug#32266).

4 years agoFix doc-view problem with file names with spaces in them
Glenn Morris [Wed, 26 Aug 2020 12:37:13 +0000 (14:37 +0200)]
Fix doc-view problem with file names with spaces in them

* lisp/doc-view.el (doc-view-get-bounding-box): Don't bug out on
file names with spaces in them (bug#33344).

4 years agoUse format-prompt a couple of places
Lars Ingebrigtsen [Wed, 26 Aug 2020 12:08:21 +0000 (14:08 +0200)]
Use format-prompt a couple of places

* lisp/ps-print.el (ps-print-preprint):
* lisp/help-fns.el (describe-function): Use `format-prompt'
(bug#12443).

4 years agoImplement a way to customize "default" values
Lars Ingebrigtsen [Wed, 26 Aug 2020 12:07:25 +0000 (14:07 +0200)]
Implement a way to customize "default" values

* doc/lispref/minibuf.texi (Text from Minibuffer): Document them.

* lisp/minibuffer.el (format-prompt): New function (bug#12443).
(minibuffer-default-prompt-format): New variable.

4 years agoMake the epa key display slightly more informative
Lars Ingebrigtsen [Wed, 26 Aug 2020 11:22:55 +0000 (13:22 +0200)]
Make the epa key display slightly more informative

* lisp/epa.el (epa--button-key-text): Say what the validity
characters output by GPG mean (bug#34726).

4 years agoDocument ispell comment/string checking commands in the user manual
Štěpán Němec [Thu, 9 Apr 2020 14:17:57 +0000 (16:17 +0200)]
Document ispell comment/string checking commands in the user manual

* doc/emacs/fixit.texi (Spelling): Mention
'ispell-comments-and-strings' and 'ispell-comment-or-string-at-point'.
(bug#6411)

4 years agoispell: Commands to check comments or strings at point or in region
Štěpán Němec [Wed, 8 Apr 2020 18:32:51 +0000 (20:32 +0200)]
ispell: Commands to check comments or strings at point or in region

* lisp/textmodes/ispell.el (ispell-comments-and-strings): Accept START
and END arguments, defaulting to active region in interactive calls.
(ispell-comment-or-string-at-point): New command. (bug#6411)

4 years ago; * doc/lispref/backups.texi (Auto-Saving): Fix wording of last change.
Eli Zaretskii [Wed, 26 Aug 2020 10:46:56 +0000 (13:46 +0300)]
; * doc/lispref/backups.texi (Auto-Saving): Fix wording of last change.

4 years agoDon't recommend redefining auto-save filename functions
Noam Postavsky [Wed, 26 Aug 2020 10:37:24 +0000 (12:37 +0200)]
Don't recommend redefining auto-save filename functions

* doc/lispref/backups.texi (Auto-Saving): Document
auto-save-file-name-transforms.
* lisp/files.el (make-auto-save-file-name)
(auto-save-file-name-p): Remove suggestion to redefine for
customization (bug#34911).

4 years agoterm.el: Use correct exit status in suggested dir-tracking functions
Phil Sainty [Wed, 26 Aug 2020 10:03:32 +0000 (12:03 +0200)]
term.el: Use correct exit status in suggested dir-tracking functions

* lisp/term.el: Make some of the examples better (bug#43055).

4 years agoeshell: Remove unnecessary check in em-hist
Brian Leung [Wed, 26 Aug 2020 10:01:14 +0000 (12:01 +0200)]
eshell: Remove unnecessary check in em-hist

* lisp/eshell/em-hist.el
(eshell-previous-matching-input-string-position): Both before and
within the while loop, n is always smaller than n (bug#43056).

Copyright-paperwork-exempt: yes

4 years agoRemove side-effect-free markup for assoc-default
Lars Ingebrigtsen [Wed, 26 Aug 2020 09:28:18 +0000 (11:28 +0200)]
Remove side-effect-free markup for assoc-default

* lisp/subr.el (assoc-default): assoc-default isn't
side-effect-free, because it takes a :test parameter that can do
anything (bug#37943).

4 years agoFix lexical misunderstandings in gnus-icalendar-tests.el (bug#39782)
Mattias Engdegård [Wed, 26 Aug 2020 08:34:29 +0000 (10:34 +0200)]
Fix lexical misunderstandings in gnus-icalendar-tests.el (bug#39782)

* test/lisp/gnus/gnus-icalendar-tests.el:
(icalendar-tests--get-ical-event): Remove unused function accidentally
copy-pasted from icalendar-tests.el.
(gnus-icalendar-parse, gnus-icalendary-byday):
Remove unintended initial newlines.
Duplicate comma-escaping backslashes so that they have intended
effects, conforming to RFC 5545.
Remove ineffective comma-escaping backslashes where not intended.

4 years agoregex-emacs: copy less when reallocating
Paul Eggert [Wed, 26 Aug 2020 07:07:09 +0000 (00:07 -0700)]
regex-emacs: copy less when reallocating

* src/regex-emacs.c (GROW_FAIL_STACK): Copy just the
occupied stack slots, as the rest are garbage.

4 years agoregex-emacs: fix leak on memory allocation failure
Paul Eggert [Wed, 26 Aug 2020 07:07:08 +0000 (00:07 -0700)]
regex-emacs: fix leak on memory allocation failure

* src/regex-emacs.c (ENSURE_FAIL_STACK): If the failure
stack cannot be grown, free locally-allocated storage
before returning.

4 years agoregex-emacs: subscript-check register numbers
Paul Eggert [Wed, 26 Aug 2020 07:07:08 +0000 (00:07 -0700)]
regex-emacs: subscript-check register numbers

* src/regex-emacs.c (PUSH_FAILURE_REG, POP_FAILURE_REG_OR_COUNT)
(re_match_2_internal): Add some easserts for subscript checking.

4 years agoregex-emacs: omit regstart tests and regend set
Paul Eggert [Wed, 26 Aug 2020 07:07:08 +0000 (00:07 -0700)]
regex-emacs: omit regstart tests and regend set

* src/regex-emacs.c (PUSH_FAILURE_REG, POP_FAILURE_REG_OR_COUNT)
(re_match_2_internal): Add some assertions that regstart
is set whenever regend is.
(re_match_2_internal): Omit two unnecessary REG_UNSET (regstart ...)s
and one unnecessary assignment to regend.

4 years agoregex-emacs omit allocation of 3 slots
Paul Eggert [Wed, 26 Aug 2020 07:07:08 +0000 (00:07 -0700)]
regex-emacs omit allocation of 3 slots

* src/regex-emacs.c (re_match_2_internal): Avoid
unnecessary allocation of REGEND[0], BEST_REGSTART[0],
BEST_REGEND[0].

4 years agoregex-emacs omit POS runtime check
Paul Eggert [Wed, 26 Aug 2020 07:07:08 +0000 (00:07 -0700)]
regex-emacs omit POS runtime check

* src/regex-emacs.c (re_match_2_internal): Replace unnecessary
runtime check of POS with some eassumes.

4 years agoFix gpg2-related test failures on RHEL 7.8
Paul Eggert [Wed, 26 Aug 2020 01:33:22 +0000 (18:33 -0700)]
Fix gpg2-related test failures on RHEL 7.8

* test/lisp/gnus/mml-sec-tests.el (test-conf)
(mml-secure-en-decrypt-passphrase-no-cache-openpgp-todo)
(mml-secure-run-tests-with-gpg2):
Use epg-find-configuration instead of the obsolescent
epg-configuration.  This fixes test failures on RHEL 7.8,
where ‘gpg’ and ‘gpg2’ are both 2.0.22.

4 years agomml-secure-en-decrypt-sign-1-2-double is unstable
Paul Eggert [Wed, 26 Aug 2020 01:02:58 +0000 (18:02 -0700)]
mml-secure-en-decrypt-sign-1-2-double is unstable

* test/lisp/gnus/mml-sec-tests.el:
(mml-secure-en-decrypt-sign-1-2-double): Mark this as unstable.

4 years agoUpdate from Gnulib
Paul Eggert [Wed, 26 Aug 2020 00:56:57 +0000 (17:56 -0700)]
Update from Gnulib

This incorporates:
2020-08-25 verify: Avoid warnings when assume(0) is used
* lib/verify.h: Copy from Gnulib.

4 years agoAdd package prefix to jsonrpc defconst
Stefan Kangas [Tue, 25 Aug 2020 22:37:40 +0000 (00:37 +0200)]
Add package prefix to jsonrpc defconst

* lisp/jsonrpc.el (jsonrpc-default-request-timeout): Rename from
'jrpc-default-request-timeout'.
(jrpc-default-request-timeout): Make into obsolete variable alias
for 'jsonrpc-default-request-timeout'.  (Bug#40054)

4 years agoOmit "V" at the start of DEFVAR_BOOL vars
Paul Eggert [Tue, 25 Aug 2020 21:27:17 +0000 (14:27 -0700)]
Omit "V" at the start of DEFVAR_BOOL vars

Problem noted by Stefan Monnier in:
https://lists.gnu.org/r/emacs-devel/2020-08/msg00846.html
* src/font.c (xft_ignore_color_fonts):
* src/syntax.c (comment_end_can_be_escaped):
* src/xdisp.c (word_wrap_by_category, display_fill_column_indicator):
Rename these DEFVAR_BOOL variables to avoid the initial "V"
that wrongly suggests that they are Lisp_Object variables.
All uses changed.

4 years agoAdd undefine keyword to make-mode
Daniel Colascione [Tue, 25 Aug 2020 17:53:53 +0000 (10:53 -0700)]
Add undefine keyword to make-mode

* lisp/progmodes/make-mode.el (makefile-gmake-statements): Add
"undefine" to the list of gmake keywords

4 years agoAdd "Delete" submenu to Dired "Operate" menu
Stefan Kangas [Mon, 24 Aug 2020 00:17:52 +0000 (02:17 +0200)]
Add "Delete" submenu to Dired "Operate" menu

* lisp/dired.el (dired-mode-map): Add "Delete" submenu to "Operate"
menu with an entry for 'dired-do-flagged-delete'.  (Bug#41524)

4 years agoAdd basic D-Bus integration to Gnus
Eric Abrahamsen [Fri, 21 Aug 2020 20:36:58 +0000 (13:36 -0700)]
Add basic D-Bus integration to Gnus

* lisp/gnus/gnus-dbus.el: New library, registering a signal that
closes all Gnus servers when the system is going to sleep.
* lisp/gnus/gnus-start.el: Check new option
`gnus-dbus-close-on-sleep', and register the appropriate D-Bus signal
if it is non-nil.
* lisp/gnus/gnus.el: New gnus-dbus customization group.
* doc/misc/gnus.texi: Document.

4 years agoPreserve setf semantics in 'substring', 'cons', 'logand' expanders
Štěpán Němec [Sat, 11 Apr 2020 22:27:51 +0000 (00:27 +0200)]
Preserve setf semantics in 'substring', 'cons', 'logand' expanders

* doc/lispref/variables.texi (Adding Generalized Variables): Fix example.
* lisp/emacs-lisp/cl-lib.el (substring)
* lisp/emacs-lisp/gv.el (cons, logand): Return the value being
assigned, as specified for 'setf'.  (bug#35546)

4 years agoTweak the file/buffer comparison from previous save-some-buffers change
Lars Ingebrigtsen [Tue, 25 Aug 2020 15:07:39 +0000 (17:07 +0200)]
Tweak the file/buffer comparison from previous save-some-buffers change

* lisp/files.el (save-some-buffers): Relax the "similarity" regexp
from the previous regexp: Don't show both file and buffer names if
the file is /tmp/foo and the buffer name is foo<zot>.

4 years agoFix problem with folded Gcc headers in Gnus
Lars Ingebrigtsen [Tue, 25 Aug 2020 14:57:53 +0000 (16:57 +0200)]
Fix problem with folded Gcc headers in Gnus

* lisp/gnus/gnus-msg.el (gnus-inews-do-gcc): Tokenize the gcc
header properly (there may be newlines and tabs in the separators)
(bug#43036).

4 years agoPossibly mention both file and buffer names in save-some-buffers
Lars Ingebrigtsen [Tue, 25 Aug 2020 14:47:10 +0000 (16:47 +0200)]
Possibly mention both file and buffer names in save-some-buffers

* lisp/files.el (save-some-buffers): If the file and buffer names
are dissimilar, mention both their names (bug#8399).

4 years agoDon't bug out in gnus-icalendar when there no recurring event
Lars Ingebrigtsen [Tue, 25 Aug 2020 14:36:15 +0000 (16:36 +0200)]
Don't bug out in gnus-icalendar when there no recurring event

* lisp/gnus/gnus-icalendar.el
(gnus-icalendar-event:recurring-days): Fix previous patch
(bug#43038) -- don't bug out when there's no recurring event.

4 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Tue, 25 Aug 2020 14:27:09 +0000 (16:27 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

4 years ago* admin/admin.el (reminder-for-release-blocking-bugs): New command.
Michael Albinus [Tue, 25 Aug 2020 13:19:11 +0000 (15:19 +0200)]
* admin/admin.el (reminder-for-release-blocking-bugs): New command.

4 years agoremove-overlays doc clarification
Lars Ingebrigtsen [Tue, 25 Aug 2020 14:22:07 +0000 (16:22 +0200)]
remove-overlays doc clarification

* lisp/subr.el (remove-overlays): Doc fix (bug#13648).

4 years agoDoc fix for copy-directory
Lars Ingebrigtsen [Tue, 25 Aug 2020 12:42:22 +0000 (14:42 +0200)]
Doc fix for copy-directory

* lisp/files.el (copy-directory): PARENTS is no longer the last
argument.

4 years agoMerge from origin/emacs-27
Michael Albinus [Tue, 25 Aug 2020 13:29:38 +0000 (15:29 +0200)]
Merge from origin/emacs-27

44104a607a Fix error in GMP test
e26e63444d Add Feature testing for Windows binaries
4e2caef384 ; * src/character.c (str_as_multibyte): Fix the commentary.
d3a4ce8420 Revert "; * etc/NEWS: Remove temporary note on documentati...
16f00e36dc * admin/admin.el (set-version): Trap yet another NEWS error.
121be3e118 ; * etc/NEWS: Remove temporary note on documentation.  (Bu...
5fcb97dabd Fix cond jump table compilation (bug#42919)

4 years ago; * lisp/info.el (Info-up): Fix a typo in a comment.
Eli Zaretskii [Tue, 25 Aug 2020 13:03:51 +0000 (16:03 +0300)]
; * lisp/info.el (Info-up): Fix a typo in a comment.

4 years agoExtend background colours in shr
Lars Ingebrigtsen [Tue, 25 Aug 2020 11:57:00 +0000 (13:57 +0200)]
Extend background colours in shr

* lisp/net/shr.el (shr-colorize-region): Extend backgrounds to the
end (bug#43031).  This avoid ragged edges to the right when, for
instance, the <body> has a bgcolor.
(shr-face-background): Ditto.

4 years agoTweak how "u" works in Info buffers when scroll-conservatively is set
Stephen Berman [Tue, 25 Aug 2020 11:30:58 +0000 (13:30 +0200)]
Tweak how "u" works in Info buffers when scroll-conservatively is set

* info.el (Info-up): If scroll-conservatively is non-zero and
less than 101, display as much of the superior node above the
target line as possible (Bug#13690).

4 years agoMake shadowing warning in describe_map less confusing
Lars Ingebrigtsen [Tue, 25 Aug 2020 11:14:00 +0000 (13:14 +0200)]
Make shadowing warning in describe_map less confusing

* src/keymap.c (describe_map): A binding may be shadowed by
something else than a mode (bug#14086) (just a `define-key'
works), so don't say that it's a mode that shadows it.

4 years agoRevert previous hideshow commit
Lars Ingebrigtsen [Tue, 25 Aug 2020 08:07:08 +0000 (10:07 +0200)]
Revert previous hideshow commit

Hideshow has defaults that are overridden if we look for derived modes
in hs-special-modes-alist.  For instance, in lisp-interaction-mode
we'll choose a lookup based on parent modes, and that overrides the
default (bug#43032).

This reverts a415179b56f022f50138f55d231070e3d1b00697.

4 years agoUpdate from Gnulib
Paul Eggert [Mon, 24 Aug 2020 23:18:48 +0000 (16:18 -0700)]
Update from Gnulib

This incorporates:
* lib/diffseq.h, m4/inttypes.m4: Copy from Gnulib.
* m4/gnulib-comp.m4: Regenerate.

4 years agoFix error in GMP test
Phillip Lord [Mon, 24 Aug 2020 21:44:21 +0000 (22:44 +0100)]
Fix error in GMP test

* etc/w32-feature.el: Update to use system-configuration-features for
  GMP test.

4 years agoAdd Feature testing for Windows binaries
Phillip Lord [Mon, 24 Aug 2020 21:14:01 +0000 (22:14 +0100)]
Add Feature testing for Windows binaries

* etc/w32-feature.el: New file

4 years agoreplace-buffer-contents cleanups
Paul Eggert [Mon, 24 Aug 2020 20:12:51 +0000 (13:12 -0700)]
replace-buffer-contents cleanups

* src/editfns.c (NOTE_DELETE, NOTE_INSERT): Avoid unnecessary parens.
(Freplace_buffer_contents): Check args before returning results.
Avoid integer overflow when computing too_expensive, and work even
if MAX-COSTS is bignum.  Call alloca and/or malloc just once, not
three times.
(set_bit, bit_is_set): Simplify micro-optimization by using eassume.

4 years agoFix replace-region-contents performance bug
Paul Eggert [Mon, 24 Aug 2020 20:12:51 +0000 (13:12 -0700)]
Fix replace-region-contents performance bug

* src/editfns.c (rbc_quitcounter): Remove; the quitcounter
is now part of the context.
(EXTRA_CONTEXT_FIELDS): Remove unused member early_abort_tests.
Add jmp, quitcounter.
(Freplace_buffer_contents): Use setjmp/longjmp to recover from
a compareseq that runs too long.  Omit unnecessary rarely_quit
call.
(buffer_chars_equal): Occasionally check for early abort and
longjmp out if so (Bug#43016).

4 years agoClarify sorting order by file-backup-file-names
Lars Ingebrigtsen [Mon, 24 Aug 2020 20:04:28 +0000 (22:04 +0200)]
Clarify sorting order by file-backup-file-names

* doc/lispref/backups.texi (Backup Names): Ditto.

* lisp/files.el (file-backup-file-names): Clarify sorting order.

4 years agoRewrite the epa key interface to use buttons instead of widgets
Lars Ingebrigtsen [Mon, 24 Aug 2020 19:54:56 +0000 (21:54 +0200)]
Rewrite the epa key interface to use buttons instead of widgets

* lisp/epa.el (epa-font-lock-keywords): Removed.
(epa-key-list-mode-map): Bind tab/backtab to button navigation.
(epa-key): Remove widget.
(epa--button-key-text): Return the propertized text instead of
return a widget text.
(epa-key-list-mode): Don't use font locking; everything is output
as it should be.
(epa--insert-keys): Rewrite to just output the data instead of
widgetising.
(epa--select-keys): Insert buttons instead of widgets.

4 years agoFix error when loading a new, non-existent foo.gpg file
Lars Ingebrigtsen [Mon, 24 Aug 2020 18:50:08 +0000 (20:50 +0200)]
Fix error when loading a new, non-existent foo.gpg file

* lisp/epa-file.el (epa-file-insert-file-contents): Propagate the
correct error upwards (bug introduced by fixing bug#3829, and
messing up where the `when' form ended).
Reported by "Herbert J. Skuhra" <herbert@gojira.at>.

4 years agoDocument file-backup-file-names
Lars Ingebrigtsen [Mon, 24 Aug 2020 18:11:19 +0000 (20:11 +0200)]
Document file-backup-file-names

* doc/lispref/backups.texi (Backup Names): Document
file-backup-file-names.

4 years ago; * etc/NEWS: Fix wording of recently-added entries.
Eli Zaretskii [Mon, 24 Aug 2020 18:06:37 +0000 (21:06 +0300)]
; * etc/NEWS: Fix wording of recently-added entries.

4 years agoExtend the default value in dired-diff to all the backup files
Lars Ingebrigtsen [Mon, 24 Aug 2020 17:15:27 +0000 (19:15 +0200)]
Extend the default value in dired-diff to all the backup files

* lisp/dired-aux.el (dired-diff): When diffing files with backup
files, put all the backup files into the defaults so that they can
be reached with `M-n' from `read-file-name' (bug#24089).

4 years agoAdd a new function 'file-backup-file-names'
Lars Ingebrigtsen [Mon, 24 Aug 2020 16:26:05 +0000 (18:26 +0200)]
Add a new function 'file-backup-file-names'

* lisp/files.el (file-backup-file-names): New function (bug#24089).
(file-newest-backup): Use it.

4 years agoFix inferior octave single-quote font lock
Noam Postavsky [Mon, 24 Aug 2020 15:33:49 +0000 (17:33 +0200)]
Fix inferior octave single-quote font lock

* lisp/progmodes/octave.el (octave-mode-syntax-table): Fix
fontification of single quotes in inferior octave mode (bug#25517).

It looks like the problem is that octave-mode-syntax-table sets single
quotes as punctuation even though GNU Octave's manual says single quotes
are string syntax [1].

[1]:
https://www.gnu.org/software/octave/doc/interpreter/String-Objects.html

4 years agoHave gnutls_symmetric cache the results from Fgnutls_ciphers
Lars Ingebrigtsen [Mon, 24 Aug 2020 14:44:24 +0000 (16:44 +0200)]
Have gnutls_symmetric cache the results from Fgnutls_ciphers

* src/gnutls.c (gnutls_symmetric): Cache the results from
Fgnutls_ciphers, since that function isn't very fast (bug#42998).
(syms_of_gnutls): Initialize cache variable.