]> git.eshelyaron.com Git - emacs.git/log
emacs.git
2 years agoFix running spell-checking in remote buffers
Eli Zaretskii [Sat, 17 Sep 2022 07:10:10 +0000 (10:10 +0300)]
Fix running spell-checking in remote buffers

* lisp/textmodes/ispell.el (ispell-with-safe-default-directory):
Don't use remote 'default-directory' when running the speller.
(Bug#57649)

2 years agoUpdate Unicode support to Unicode version 15.0.0 (bug#57846)
समीर सिंह Sameer Singh [Fri, 16 Sep 2022 01:22:51 +0000 (06:52 +0530)]
Update Unicode support to Unicode version 15.0.0 (bug#57846)

* admin/unidata/BidiBrackets.txt
* admin/unidata/BidiMirroring.txt
* admin/unidata/Blocks.txt
* admin/unidata/IVD_Sequences.txt
* admin/unidata/IdnaMappingTable.txt
* admin/unidata/NormalizationTest.txt
* admin/unidata/PropertyValueAliases.txt
* admin/unidata/ScriptExtensions.txt
* admin/unidata/Scripts.txt
* admin/unidata/SpecialCasing.txt
* admin/unidata/UnicodeData.txt
* admin/unidata/confusables.txt
* admin/unidata/copyright.html
* admin/unidata/emoji-data.txt
* admin/unidata/emoji-sequences.txt
* admin/unidata/emoji-test.txt
* admin/unidata/emoji-zwj-sequences.txt
* test/manual/BidiCharacterTest.txt: Updated files from Unicode
15.0.

* admin/unidata/unidata-gen.el (unidata-file-alist): Add new ranges.

* lisp/international/fontset.el (script-representative-chars): Add
new scripts.
(otf-script-alist): Update from latest version.
(setup-default-fontset): Add new scripts.
* lisp/international/characters.el: Update syntax and category
tables for new characters and scripts.
(char-width-table): Update for changes in Unicode 15.0.

* test/lisp/international/ucs-normalize-tests.el
(ucs-normalize-tests--failing-lines-part1)
(ucs-normalize-tests--failing-lines-part2): Update per the test
results.

* doc/lispref/nonascii.texi (Character Properties): Update Unicode
version number.

* etc/NEWS: Announce support for Unicode 15.0.

2 years agoMerge from origin/emacs-28
Stefan Kangas [Sat, 17 Sep 2022 04:30:41 +0000 (06:30 +0200)]
Merge from origin/emacs-28

320f0cac80 ; * etc/NEWS: Fix typo.
5dbe4fa64a Simplify regexp in make-news-html-file
069ffbda09 * admin/admin.el (make-news-html-file): Set id on correct ...
bcc84ac7fe Add version headlines to HTML NEWS export
5d227ae83e ; * etc/NEWS: Fix formatting.

# Conflicts:
# etc/NEWS

2 years ago; * etc/NEWS: Fix typo.
Stefan Kangas [Sat, 17 Sep 2022 00:13:27 +0000 (02:13 +0200)]
; * etc/NEWS: Fix typo.

2 years agoSimplify regexp in make-news-html-file
Stefan Kangas [Sat, 17 Sep 2022 00:13:05 +0000 (02:13 +0200)]
Simplify regexp in make-news-html-file

* admin/admin.el (make-news-html-file): Simplify regexp.
Suggested by Mattias Engdegård <mattiase@acm.org>.

2 years agoVarious improvements to admin/emake.
Gregory Heytings [Fri, 16 Sep 2022 23:32:31 +0000 (23:32 +0000)]
Various improvements to admin/emake.

* admin/emake: Return the status code of make when the build fails.
Filter the output of emake *clean.  Add three options --no-color
(useful for emake check for example), --no-check (useful for quicker
builds during development) and --no-fast.

2 years agoSupport XFCE in wallpaper.el
Stefan Kangas [Fri, 16 Sep 2022 20:37:56 +0000 (22:37 +0200)]
Support XFCE in wallpaper.el

* lisp/image/wallpaper.el (wallpaper--default-commands)
(wallpaper-command): Support XFCE.  (Bug#57781)
Thanks to Thierry Volpiatto <thievol@posteo.net>.

2 years agoAccept more wide function signatures in docstrings
Stefan Kangas [Fri, 16 Sep 2022 20:24:20 +0000 (22:24 +0200)]
Accept more wide function signatures in docstrings

* test/lisp/emacs-lisp/bytecomp-tests.el
("warn-wide-docstring-ignore-function-signature.el"): New test.
* lisp/emacs-lisp/bytecomp.el (byte-compile--wide-docstring-p):
Make regexp more allowing to silence warning.
* test/lisp/emacs-lisp/bytecomp-resources/warn-wide-docstring-ignore-function-signature.el:
New file.

2 years agoimage-dired: Add support for PDF files (Bug#26432)
Stefan Kangas [Fri, 16 Sep 2022 19:54:29 +0000 (21:54 +0200)]
image-dired: Add support for PDF files (Bug#26432)

* lisp/image/image-dired.el
(image-dired--file-name-regexp): New function.
(image-dired-display-thumbnail-original-image): Clean up.
(image-dired-display-image): Support visiting PDF files.
* lisp/image/image-dired-dired.el
(image-dired-dired-toggle-marked-thumbs):
* lisp/image/image-dired.el (image-dired-get-thumbnail-image)
(image-dired-show-all-from-dir): Use above new function instead of
'image-file-name-regexp'.

2 years agoimage-dired: Print command when debugging
Stefan Kangas [Fri, 16 Sep 2022 19:34:57 +0000 (21:34 +0200)]
image-dired: Print command when debugging

* lisp/image/image-dired-external.el (image-dired-create-thumb-1):
Display command and arguments when debugging.
* lisp/image/image-dired-util.el (image-dired-debug): Rename from
'image-dired-debug-message'.

2 years ago; * lisp/progmodes/cperl-mode.el: Fix typo.
Stefan Kangas [Fri, 16 Sep 2022 19:27:14 +0000 (21:27 +0200)]
; * lisp/progmodes/cperl-mode.el: Fix typo.

2 years ago; * lisp/progmodes/cperl-mode.el: Fix Author header.
Stefan Kangas [Fri, 16 Sep 2022 19:23:17 +0000 (21:23 +0200)]
; * lisp/progmodes/cperl-mode.el: Fix Author header.

2 years agoDelete mystery code from cperl-mode.el
Stefan Kangas [Fri, 16 Sep 2022 19:19:46 +0000 (21:19 +0200)]
Delete mystery code from cperl-mode.el

* lisp/progmodes/cperl-mode.el: Delete commented out code referring to
some 'edit-var-mode-alist' that we don't think is used for anything.

2 years agoDelete some commented out code in cperl-mode.el
Stefan Kangas [Fri, 16 Sep 2022 19:11:26 +0000 (21:11 +0200)]
Delete some commented out code in cperl-mode.el

The differences between this and the existing `cperl-ps-print-init'
are that some faces had been moved from italic to bold or vice versa,
and that there were some obsolete or non-existent face names
mentioned.  So there is no point to keeping it given that it's been
commented out since 1999.

* lisp/progmodes/cperl-mode.el: Delete code commented out since 1999:
a slightly different, duplicate definition of `cperl-ps-print-init'.

2 years agoFix last occurrence of `font-lock-reference-face`
Stefan Monnier [Fri, 16 Sep 2022 18:26:13 +0000 (14:26 -0400)]
Fix last occurrence of `font-lock-reference-face`

Well... except for CC-mode.

* lisp/cedet/semantic/grammar.el (semantic-grammar-mode-keywords-1):
Redirect reference to obsolete `font-lock-reference-face` to
`font-lock-constant-face`.

2 years ago* admin/admin.el (make-news-html-file): Set id on correct tag.
Stefan Kangas [Fri, 16 Sep 2022 17:46:31 +0000 (19:46 +0200)]
* admin/admin.el (make-news-html-file): Set id on correct tag.

2 years agoAdd version headlines to HTML NEWS export
Stefan Kangas [Fri, 16 Sep 2022 17:33:02 +0000 (19:33 +0200)]
Add version headlines to HTML NEWS export

This allows linking to, e.g. "NEWS.28.html#28.1" to go directly to
those release notes.
* admin/admin.el (admin--org-export-headers-format)
(make-news-html-file): Add XX.Y version headlines with an HTML anchor.

2 years ago; * etc/NEWS: Fix formatting.
Stefan Kangas [Fri, 16 Sep 2022 16:54:59 +0000 (18:54 +0200)]
; * etc/NEWS: Fix formatting.

2 years ago* lisp/subr.el (list-of-strings-p): Declare pure and error-free
Mattias Engdegård [Fri, 16 Sep 2022 16:51:10 +0000 (18:51 +0200)]
* lisp/subr.el (list-of-strings-p): Declare pure and error-free

2 years ago* lisp/outline.el: Optimize performance of S-TAB (bug#57813)
Juri Linkov [Fri, 16 Sep 2022 16:16:10 +0000 (19:16 +0300)]
* lisp/outline.el: Optimize performance of S-TAB (bug#57813)

(outline-hide-subtree): Don't call outline--insert-close-button, because
it's handled by outline--fix-up-all-buttons called from outline-flag-region.
(outline-show-subtree): Don't call outline--insert-open-button, same reason.
(outline--fix-up-all-buttons): Check invisible outlines explicitly instead of
using slow outline--cycle-state.

2 years agoEnable `dont-follow' for inotify file notifications
Michael Albinus [Fri, 16 Sep 2022 15:23:59 +0000 (17:23 +0200)]
Enable `dont-follow' for inotify file notifications

* doc/lispref/os.texi (File Notifications): Symlinks aren't followed.

* lisp/filenotify.el (file-notify--add-watch-inotify):
Add `dont-follow' flag.

* lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
Suppress errors when reading process output.

* test/lisp/filenotify-tests.el (file-notify-test11-symlinks)
(file-notify-test11-symlinks-remote): New tests.

2 years ago; Add myself as image-dired maintainer
Stefan Kangas [Fri, 16 Sep 2022 15:04:45 +0000 (17:04 +0200)]
; Add myself as image-dired maintainer

* lisp/image/image-dired-dired.el:
* lisp/image/image-dired-external.el:
* lisp/image/image-dired-tags.el:
* lisp/image/image-dired-util.el:
* lisp/image/image-dired.el: Add myself as maintainer.

2 years agoUse substitute-command-keys in some vc messages
Stefan Kangas [Fri, 16 Sep 2022 14:37:58 +0000 (16:37 +0200)]
Use substitute-command-keys in some vc messages

* lisp/vc/vc-dispatcher.el (vc-start-logentry):
* lisp/vc/vc.el (vc-steal-lock): Use substitute-command-keys.

2 years ago; Merge from origin/emacs-28
Stefan Kangas [Fri, 16 Sep 2022 14:27:37 +0000 (16:27 +0200)]
; Merge from origin/emacs-28

The following commit was skipped:

562c196099 ; * etc/NEWS: Backport fixes from master.

2 years agoMerge from origin/emacs-28
Stefan Kangas [Fri, 16 Sep 2022 14:27:37 +0000 (16:27 +0200)]
Merge from origin/emacs-28

f232d989fd Improve HTML export of NEWS file
397890ba77 Delete "etc/NEWS*.html" from .gitignore
70ca5f6524 ; * etc/NEWS: Fix typos.
19de241a7d Recommend NonGNU ELPA over MELPA
f25f9dbf30 Minor doc fixes in picture.el
520b041b54 * lisp/textmodes/page-ext.el: Improve Commentary.

# Conflicts:
# etc/NEWS

2 years ago; * etc/NEWS: Backport fixes from master.
Stefan Kangas [Fri, 16 Sep 2022 14:16:32 +0000 (16:16 +0200)]
; * etc/NEWS: Backport fixes from master.

Don't merge to master.

2 years agoImprove HTML export of NEWS file
Stefan Kangas [Fri, 16 Sep 2022 12:17:14 +0000 (14:17 +0200)]
Improve HTML export of NEWS file

* admin/admin.el (admin--org-export-headers-format)
(admin--org-html-postamble): New variables.
(admin--require-external-package): New function.
(make-news-html-file): Improve HTML export.

2 years ago; * etc/NEWS.28: Fix merge of NEWS.28.
Stefan Kangas [Fri, 16 Sep 2022 14:10:26 +0000 (16:10 +0200)]
; * etc/NEWS.28: Fix merge of NEWS.28.

2 years agoAdd command to delete temporary markers in NEWS
Stefan Kangas [Fri, 16 Sep 2022 14:06:09 +0000 (16:06 +0200)]
Add command to delete temporary markers in NEWS

* lisp/textmodes/emacs-news-mode.el
(emacs-news-delete-temporary-markers): New command.
* admin/make-tarball.txt: Update instructions.

2 years agocc-fonts.el: Eliminate an Emacs compiler warning introduced yesterday.
Alan Mackenzie [Fri, 16 Sep 2022 13:57:40 +0000 (13:57 +0000)]
cc-fonts.el: Eliminate an Emacs compiler warning introduced yesterday.

* lisp/progmodes/cc-fonts.el (top level): Introduce a cc-bytecomp-defvar for
font-lock-reference-face.

2 years agoFaster and more robust list-of-strings-p
Mattias Engdegård [Fri, 16 Sep 2022 13:29:03 +0000 (15:29 +0200)]
Faster and more robust list-of-strings-p

* lisp/subr.el (list-of-strings-p): Speed up by a factor 4 (approx.)
and don't crash on dotted lists.
* test/lisp/subr-tests.el (test-list-of-strings-p): Extend test.

2 years agoDelete "etc/NEWS*.html" from .gitignore
Stefan Kangas [Fri, 16 Sep 2022 13:16:43 +0000 (15:16 +0200)]
Delete "etc/NEWS*.html" from .gitignore

We actually do want to see it when preparing a release, so that we
don't include it in a tarball by mistake.
* .gitignore: Don't ignore "etc/NEWS*.html".

2 years ago; * etc/NEWS: Fix typos.
Stefan Kangas [Fri, 16 Sep 2022 13:03:19 +0000 (15:03 +0200)]
; * etc/NEWS: Fix typos.

2 years ago; * etc/NEWS: Fix typos.
Michael Albinus [Fri, 16 Sep 2022 13:07:08 +0000 (15:07 +0200)]
; * etc/NEWS: Fix typos.

2 years agoRecommend NonGNU ELPA over MELPA
Stefan Kangas [Fri, 16 Sep 2022 11:59:51 +0000 (13:59 +0200)]
Recommend NonGNU ELPA over MELPA

* doc/misc/org.org (Using CDLaTeX to enter math, Footnotes): Recommend
NonGNU ELPA over MELPA.

2 years agoFix *Help* output for native-comp functions from IELM
Lars Ingebrigtsen [Fri, 16 Sep 2022 11:38:01 +0000 (13:38 +0200)]
Fix *Help* output for native-comp functions from IELM

* lisp/help-fns.el (find-lisp-object-file-name): Don't claim that
native-comp functions that are defined outside of files (for
instance, created by calling `native-compile' in IELM) are in C
source (bug#57819).

2 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Fri, 16 Sep 2022 11:24:17 +0000 (14:24 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

2 years ago; * lisp/image/image-crop.el (image-cut): Doc fix.
Eli Zaretskii [Fri, 16 Sep 2022 11:23:41 +0000 (14:23 +0300)]
; * lisp/image/image-crop.el (image-cut): Doc fix.

2 years agoRegenerate ldefs-boot.el
Lars Ingebrigtsen [Fri, 16 Sep 2022 11:23:34 +0000 (13:23 +0200)]
Regenerate ldefs-boot.el

2 years agoInhibit image-mode resizing in the minibuffer
Lars Ingebrigtsen [Fri, 16 Sep 2022 11:18:16 +0000 (13:18 +0200)]
Inhibit image-mode resizing in the minibuffer

* lisp/image-mode.el (image-fit-to-window): Don't resize when in
the minibuffer (bug#57823).

2 years ago; * lisp/vc/vc.el (vc-responsible-backend): Explain last change.
Eli Zaretskii [Fri, 16 Sep 2022 11:17:56 +0000 (14:17 +0300)]
; * lisp/vc/vc.el (vc-responsible-backend): Explain last change.

2 years agoFix cperl list indentation problem
Lars Ingebrigtsen [Fri, 16 Sep 2022 11:05:54 +0000 (13:05 +0200)]
Fix cperl list indentation problem

* lisp/progmodes/cperl-mode.el (cperl-calculate-indent): Indent
foo:bar() in lists correctly (bug#57829).

2 years agoPrefer defvar-keymap in picture.el
Stefan Kangas [Fri, 16 Sep 2022 10:51:28 +0000 (12:51 +0200)]
Prefer defvar-keymap in picture.el

* lisp/textmodes/picture.el (picture-mode-map): Prefer defvar-keymap.

2 years agoMinor doc fixes in picture.el
Stefan Kangas [Fri, 16 Sep 2022 10:44:08 +0000 (12:44 +0200)]
Minor doc fixes in picture.el

* lisp/textmodes/picture.el: Improve Commentary.
(picture-forward-column, picture-backward-column)
(picture-move-down, picture-move-up, picture-movement-nw)
(picture-movement-ne, picture-movement-sw, picture-movement-se)
(picture-set-motion, picture-clear-line, picture-newline)
(picture-tab, picture-yank-rectangle)
(picture-yank-rectangle-from-register, picture-insert-rectangle)
(picture-draw-rectangle): Minor doc fixes.

2 years agoDon't use autoloaded functions for safe-local-variable
Lars Ingebrigtsen [Fri, 16 Sep 2022 10:36:15 +0000 (12:36 +0200)]
Don't use autoloaded functions for safe-local-variable

* doc/lispref/symbols.texi (Standard Properties): Clarify how
safe-local-variable should look.

* lisp/emacs-lisp/checkdoc.el (checkdoc-ispell-lisp-words)
(checkdoc-symbol-words): Use list-of-strings-p.
(checkdoc-list-of-strings-p): Obsolete.

* lisp/vc/vc-git.el (vc-git-annotate-switches): Remove.
(vc-git-annotate-switches): Open-code the check.

2 years agoAdd new predicate list-of-strings-p
Lars Ingebrigtsen [Fri, 16 Sep 2022 10:29:54 +0000 (12:29 +0200)]
Add new predicate list-of-strings-p

* lisp/subr.el (list-of-strings-p): New function.

2 years ago* lisp/textmodes/page-ext.el: Improve Commentary.
Stefan Kangas [Fri, 16 Sep 2022 10:14:33 +0000 (12:14 +0200)]
* lisp/textmodes/page-ext.el: Improve Commentary.

2 years agoFix sorting of backends in vc-responsible-backend
Lars Ingebrigtsen [Fri, 16 Sep 2022 09:46:25 +0000 (11:46 +0200)]
Fix sorting of backends in vc-responsible-backend

* lisp/vc/vc.el (vc-responsible-backend): When comparing directory
names, expand them first so that we get consistent sorting of ~/
etc (bug#57777).

2 years agoFix icon spec for outline icons
Po Lu [Fri, 16 Sep 2022 09:16:48 +0000 (17:16 +0800)]
Fix icon spec for outline icons

* lisp/outline.el (outline-open):
(outline-close): Fix listing of multiple images.  Reported by
Lars Ingebrigtsen <larsi@gnus.org>.

2 years agoRename `image-elide' to `image-cut' and add more bindings
Lars Ingebrigtsen [Fri, 16 Sep 2022 09:03:35 +0000 (11:03 +0200)]
Rename `image-elide' to `image-cut' and add more bindings

* doc/lispref/display.texi (Showing Images): Update.
* lisp/image.el (image-map): Move binding to mirror Gimp bindings.

* lisp/image/image-crop.el (image-crop-cut-command): Rename.
(image-cut-color): New user option.
(image-cut): Rename and remove prefix.
(image-crop): Remove prefix.
(image-crop--crop-image-update): Add commands to switch to
move/square modes.

2 years agoFix wrong source window being generated for XDND leave events
Po Lu [Fri, 16 Sep 2022 09:01:41 +0000 (17:01 +0800)]
Fix wrong source window being generated for XDND leave events

* src/xterm.c (x_dnd_update_state, handle_one_xevent): Let
x_dnd_last_seen_toplevel remain at its old value until any
XdndLeave event was definitely sent.

2 years agoAvoid asserting for fontset validity before it is used
Po Lu [Fri, 16 Sep 2022 07:52:21 +0000 (15:52 +0800)]
Avoid asserting for fontset validity before it is used

* src/fontset.c (face_for_char): Move `eassert' to before the
fontset is really used.  Suggested by Eli Zaretskii
<eliz@gnu.org>

2 years agoAdd portable versions of the outline SVGs
Po Lu [Fri, 16 Sep 2022 07:45:36 +0000 (15:45 +0800)]
Add portable versions of the outline SVGs

* lisp/outline.el (outline-open):
(outline-close): Add PBM images.

* etc/images/outline-open.pbm:
* etc/images/outline-close.pbm: New images used on systems
without librsvg.

2 years agoAdd outline open/close images (bug#57813)
Juri Linkov [Fri, 16 Sep 2022 07:09:20 +0000 (10:09 +0300)]
Add outline open/close images (bug#57813)

* etc/images/outline-open.svg:
* etc/images/outline-close.svg: New files.

* lisp/outline.el (outline-open, outline-close): Use images
outline-open.svg and outline-close.svg.

* lisp/emacs-lisp/icons.el (icons--create): Add :ascent 'center'.

2 years agoFix crash in GC on macOS (bug#57751)
Gerd Möllmann [Thu, 15 Sep 2022 13:50:12 +0000 (15:50 +0200)]
Fix crash in GC on macOS (bug#57751)

* src/nsterm.m ([EmacsView windowDidMove:]): Initialize input_event.

2 years agoimage-dired: Fix thumbnail options for gm
Peter Münster [Fri, 16 Sep 2022 00:21:22 +0000 (02:21 +0200)]
image-dired: Fix thumbnail options for gm

* lisp/image/image-dired-external.el
(image-dired-cmd-create-standard-thumbnail-options): Fix options for
"gm" (GraphicsMagick).  (Bug#52200)

2 years ago; * etc/NEWS: Improve and re-arrange Image-Dired section.
Stefan Kangas [Thu, 15 Sep 2022 22:22:27 +0000 (00:22 +0200)]
; * etc/NEWS: Improve and re-arrange Image-Dired section.

2 years agoImprove image-dired-display-properties-format
Stefan Kangas [Thu, 15 Sep 2022 21:56:11 +0000 (23:56 +0200)]
Improve image-dired-display-properties-format

* lisp/image/image-dired.el
(image-dired-display-properties-format): Change default format,
improve docstring and add :safe property

2 years agoimage-dired: Show header line on start
Stefan Kangas [Thu, 15 Sep 2022 21:34:41 +0000 (23:34 +0200)]
image-dired: Show header line on start

* lisp/image/image-dired.el (image-dired-show-all-from-dir): Update
header line, to ensure that it is immediately visible on start.

2 years agocombine-change-calls-1: Fix case where `body` also changes other bufs
Stefan Monnier [Thu, 15 Sep 2022 20:31:00 +0000 (16:31 -0400)]
combine-change-calls-1: Fix case where `body` also changes other bufs

* lisp/subr.el (combine-change-calls-1): Only set the current buffer's part
of the `*-change-functions` hooks.

2 years agoimage-dired: Fix performance bug with mouse click
Stefan Kangas [Thu, 15 Sep 2022 20:19:00 +0000 (22:19 +0200)]
image-dired: Fix performance bug with mouse click

* lisp/image/image-dired.el
(image-dired--on-file-in-dired-buffer): Move call to
'image-dired-thumb-update-marks' from here...
(image-dired--do-mark-command): ...to here.  Add new optional
argument UPDATE to control calling it.  Update callers.
(image-dired-mouse-toggle-mark-1): Fix performance bug by setting
above new optional argument to nil.  (Bug#53599)

2 years agoMake image-dired-toggle-mark-thumb-original-file obsolete
Stefan Kangas [Thu, 15 Sep 2022 20:08:19 +0000 (22:08 +0200)]
Make image-dired-toggle-mark-thumb-original-file obsolete

* lisp/image/image-dired.el
(image-dired-toggle-mark-thumb-original-file): Make obsolete.
(image-dired-mouse-toggle-mark-1): Don't use above obsolete
function.

2 years agoInclude nil as valid wallpaper-commmand
Mattias Engdegård [Thu, 15 Sep 2022 19:59:16 +0000 (21:59 +0200)]
Include nil as valid wallpaper-commmand

* lisp/image/wallpaper.el (wallpaper-command):
Include nil in the type since that is a valid value for the variable,
and may be the default value.  This should fix test-custom-opts.

2 years agoCC Mode: Handle C++20 modules
Alan Mackenzie [Thu, 15 Sep 2022 19:54:22 +0000 (19:54 +0000)]
CC Mode: Handle C++20 modules

* lisp/progmodes/cc-engine.el (c-before-after-change-check-c++-modules): New
function.
(c-forward-<>-arglist): Add special handling for "import <...>".

* lisp/progmodes/cc-fonts.el (c-preprocessor-face-name): Add extra "fallback"
face after font-lock-reference-face, namely font-lock-constant-face.
(c-cpp-matchers): Don't fontify the <> delimiters for XEmacs in #include <..>.
(c-basic-matchers-before): Add c-font-lock-c++-modules to the C++ value.
(c-forward-c++-module-name, c-forward-c++-module-partition-name)
(c-font-lock-c++-modules): New functions.

* lisp/progmodes/cc-langs.el (c-get-state-before-change-functions)
(c-before-font-lock-functions): Include
c-before-after-change-check-c++-modules in the C++ value of these variables.
(c-module-name-re): New c-lang-const/var.
(c-other-decl-kwds): Add a C++ value "export".
(c-<>-sexp-kwds): Add a new component c-import-<>-kwds.
(c-import-<>-kwds, c-module-kwds): New c-lang-consts.
(c-module-key): New c-lang-const/var.

2 years ago; Fix wallpaper-set on TTY
Stefan Kangas [Thu, 15 Sep 2022 17:21:51 +0000 (19:21 +0200)]
; Fix wallpaper-set on TTY

* lisp/image/wallpaper.el (wallpaper-set): Don't check for
'display-graphic-p', to allow setting the wallpaper from a TTY.

2 years agoDocument MS-Windows support in wallpaper.el
Stefan Kangas [Thu, 15 Sep 2022 17:12:10 +0000 (19:12 +0200)]
Document MS-Windows support in wallpaper.el

* lisp/image/wallpaper.el: Add MS-Windows to Commentary.
(wallpaper-command, wallpaper-command-args, wallpaper-set):
Document MS-Windows support.

2 years agoImprove error when wallpaper-command is nil
Stefan Kangas [Thu, 15 Sep 2022 16:48:41 +0000 (18:48 +0200)]
Improve error when wallpaper-command is nil

* lisp/image/wallpaper.el (wallpaper-set): Improve the error message
when 'wallpaper-command' is nil.

2 years agoSupport macOS in wallpaper.el
Stefan Kangas [Thu, 15 Sep 2022 16:27:48 +0000 (18:27 +0200)]
Support macOS in wallpaper.el

* lisp/image/wallpaper.el (wallpaper--default-commands)
(wallpaper-command): Support macOS using "osascript".
(wallpaper-set): Display image name when wallpaper-debug is t.

2 years agoFix outline image icon display (bug#57813)
Juri Linkov [Thu, 15 Sep 2022 16:30:17 +0000 (19:30 +0300)]
Fix outline image icon display (bug#57813)

* lisp/outline.el (outline--make-button-overlay): Don't overwrite
image display with string display when image exists.
(outline--fix-up-all-buttons): Optimize.

2 years ago; Silence byte-compiler in wallpaper.el
Stefan Kangas [Thu, 15 Sep 2022 13:44:06 +0000 (15:44 +0200)]
; Silence byte-compiler in wallpaper.el

* lisp/image/wallpaper.el (w32-set-wallpaper): Declare.

2 years ago; Fix last change in w32fns.c.
Eli Zaretskii [Thu, 15 Sep 2022 11:59:50 +0000 (14:59 +0300)]
; Fix last change in w32fns.c.

2 years agoImplement support for 'wallpaper-set' on MS-Windows
Eli Zaretskii [Thu, 15 Sep 2022 11:51:31 +0000 (14:51 +0300)]
Implement support for 'wallpaper-set' on MS-Windows

* src/w32fns.c (Fw32_set_wallpaper): New primitive.
(syms_of_w32fns): Defsubr it.
(globals_of_w32fns): Attempt to load SystemParametersInfoW from
its DLL at run time.

* lisp/image/wallpaper.el (wallpaper-set): Support MS-Windows by
calling 'w32-set-wallpaper'.

* etc/NEWS: Update and simplify wording of the 'wallpaper-set'
entry.

2 years agoAdd rudimentary font-locking to edit-abbrevs-mode
Stefan Kangas [Thu, 15 Sep 2022 09:27:57 +0000 (11:27 +0200)]
Add rudimentary font-locking to edit-abbrevs-mode

* lisp/abbrev.el (abbrev-table-name): New face.
(edit-abbrevs-mode-font-lock-keywords): New defvar.
(edit-abbrevs-mode): Support font-locking.

2 years agoUse `eql` or `eq` instead of `=` in some places
Mattias Engdegård [Sat, 27 Aug 2022 12:20:38 +0000 (14:20 +0200)]
Use `eql` or `eq` instead of `=` in some places

For a switch op to be generated, comparisons must be made using `eq`,
`eql` or `equal`, not `=`.

* lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode):
* lisp/files.el (file-modes-char-to-who, file-modes-char-to-right):
* lisp/international/titdic-cnv.el (tit-process-header):
* lisp/language/ethio-util.el (ethio-input-special-character)
(ethio-fidel-to-tex-buffer):
* lisp/language/lao.el (consonant):
Use `eq` or `eql` instead of `=`.

In these cases either `eq` or `eql` would do and the choice does not
affect the resulting code.  We compare numbers with `eql` and
characters with `eq` as a matter of style.

2 years agoSimplify and shrink reader buffers
Mattias Engdegård [Wed, 14 Sep 2022 17:19:08 +0000 (19:19 +0200)]
Simplify and shrink reader buffers

A big on-stack buffer in a potentially long-running function can
interact badly with the GC's conservative scanning of the C stack.
It may make the scanning slower (since the stack frame is big) and
risks accidental retention of objects from stack detritus
(because the buffer isn't cleaned on entry).

* src/lread.c (stackbufsize): Remove.
(read_integer, read_string_literal, read_bool_vector): Use a local
buffer instead of piggy-backing on that in read0.
(read0): Reduce buffer to something suitable for most identifiers and
numbers.

2 years agomapconcat fast path with `identity` function argument
Mattias Engdegård [Wed, 14 Sep 2022 16:46:40 +0000 (18:46 +0200)]
mapconcat fast path with `identity` function argument

This makes (mapconcat #'identity SEQ) slightly faster than
(apply #'concat SEQ), which used to be much faster.
Notably, `string-join` benefits from this change as it uses mapconcat.

* src/fns.c (Fmapconcat): Speed up execution when the function
argument is `identity`.

2 years agoMore fixes for XDND proxy support
Po Lu [Thu, 15 Sep 2022 07:30:32 +0000 (15:30 +0800)]
More fixes for XDND proxy support

* src/xterm.c (handle_one_xevent): Check replies against
toplevel, not proxy.

2 years agoUse substitute-command-keys in proced-help
Stefan Kangas [Thu, 15 Sep 2022 07:17:30 +0000 (09:17 +0200)]
Use substitute-command-keys in proced-help

* lisp/proced.el (proced-help-string, proced-help): Use
substitute-command-keys.

2 years ago; Fix doc string of 'loaddefs-generate'
Eli Zaretskii [Thu, 15 Sep 2022 06:16:41 +0000 (09:16 +0300)]
; Fix doc string of 'loaddefs-generate'

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Doc fix.
(Bug#57815)

2 years agoRevert "; Fix doc string of 'loaddefs-generate'"
Eli Zaretskii [Thu, 15 Sep 2022 06:14:59 +0000 (09:14 +0300)]
Revert "; Fix doc string of 'loaddefs-generate'"

This reverts commit 5fe9a1a85ae6d54196031157a735352f6ab655ff.
It included unrelated changes.

2 years ago; Fix doc string of 'loaddefs-generate'
Eli Zaretskii [Thu, 15 Sep 2022 06:12:13 +0000 (09:12 +0300)]
; Fix doc string of 'loaddefs-generate'

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Doc fix.
(Bug#57815)

2 years agoMerge from origin/emacs-28
Stefan Kangas [Thu, 15 Sep 2022 04:30:40 +0000 (06:30 +0200)]
Merge from origin/emacs-28

5543aea1b2 Automate exporting etc/NEWS to HTML
23a91163ed * Makefile.in (uninstall): Remove the *.eln files.  (Bug#5...

2 years agoAllow using a symbol as an index into an alist in Eshell
Jim Porter [Tue, 13 Sep 2022 23:14:00 +0000 (16:14 -0700)]
Allow using a symbol as an index into an alist in Eshell

* lisp/eshell/esh-var.el (eshell-index-value): If INDEX is a symbol,
use 'assoc' for indexing.

* test/lisp/eshell/esh-var-tests.el (esh-var-test/interp-var-assoc)
(esh-var-test/quoted-interp-var-assoc): Add checks for indexing via
symbol (bug#57787).

2 years agoUse '^' key for detach command bindings
Sean Whitton [Wed, 14 Sep 2022 16:49:27 +0000 (09:49 -0700)]
Use '^' key for detach command bindings

* lisp/tab-bar.el (tab-prefix-map): Move tear-off-window to C-x w ^ f.
Bind tab-window-detach to C-x w ^ t.
* lisp/window.el (window-prefix-map): Bind tab-detach to C-x t ^ f.

2 years agoAdd image-transform-reset-to-original to manual
Stefan Kangas [Wed, 14 Sep 2022 22:53:12 +0000 (00:53 +0200)]
Add image-transform-reset-to-original to manual

* doc/emacs/files.texi (Image Mode):
Add 'image-transform-reset-to-original'.
Suggested by Juri Linkov <juri@linkov.net>.

2 years agoSupport fbsetbg in wallpaper.el
Stefan Kangas [Wed, 14 Sep 2022 22:53:00 +0000 (00:53 +0200)]
Support fbsetbg in wallpaper.el

* lisp/image/wallpaper.el (wallpaper--default-commands)
(wallpaper-command): Add "fbsetbg".

2 years agopcomplete: Generate completions from --help messages
Augusto Stoffel [Thu, 8 Sep 2022 09:09:42 +0000 (11:09 +0200)]
pcomplete: Generate completions from --help messages

* lisp/pcomplete.el (pcomplete-from-help): New function (and hash
table) to get pcomplete candidates from help messages.
(pcomplete-here-using-help): Helper function to define pcomplete for
simple commands
(pcomplete-completions-at-point): Provide annotation-function and
company-docsig properties.
* lisp/pcmpl-git.el: New file, provides pcomplete for Git.
* lisp/pcmpl-gnu.el: Add pcomplete for awk, gpg and gdb, emacs and
emacsclient.
* lisp/pcmpl-linux.el: Add pcomplete for systemctl and journalctl.
* lisp/pcmpl-rpm.el: Add pcomplete for dnf.
* lisp/pcmpl-unix.el: Add pcomplete for sudo and most commands found
in GNU Coreutils.
* lisp/pcmpl-x.el: Add pcomplete for tex, pdftex, latex, pdflatex,
rigrep and rclone.
* test/lisp/pcomplete-tests.el (pcomplete-test-parse-gpg-help,
pcomplete-test-parse-git-help): Tests for the new functions.

2 years ago; * src/emacs.c (usage_message): Remove stray tabs.
Augusto Stoffel [Wed, 14 Sep 2022 18:11:28 +0000 (20:11 +0200)]
; * src/emacs.c (usage_message): Remove stray tabs.

2 years ago; * lisp/image/image-crop.el (image-elide, image-crop): Doc fixes.
Eli Zaretskii [Wed, 14 Sep 2022 18:37:50 +0000 (21:37 +0300)]
; * lisp/image/image-crop.el (image-elide, image-crop): Doc fixes.

2 years agoAllow specifying the color to use in image-elide
Lars Ingebrigtsen [Wed, 14 Sep 2022 18:21:54 +0000 (20:21 +0200)]
Allow specifying the color to use in image-elide

* lisp/image/image-crop.el (image-crop-elide-command): Adjust to
allow specifying the color.
(image-elide): Prompt for a color.
(image-crop--crop-image-update): Pass the color along.

2 years agoAutomate exporting etc/NEWS to HTML
Stefan Kangas [Wed, 14 Sep 2022 14:22:59 +0000 (16:22 +0200)]
Automate exporting etc/NEWS to HTML

* admin/admin.el (make-news-html-file): New function.
* .gitignore: Ignore generated "etc/NEWS*.html" file.

2 years agoMake image-crop variables into user options
Lars Ingebrigtsen [Wed, 14 Sep 2022 16:33:09 +0000 (18:33 +0200)]
Make image-crop variables into user options

* lisp/image/image-crop.el (image-crop): New group.
(image-crop-crop-command, image-crop-resize-command)
(image-crop-elide-command, image-crop-crop-command): Make into
defcustoms.

2 years agoSupport hsetroot in wallpaper.el
Stefan Kangas [Wed, 14 Sep 2022 16:17:42 +0000 (18:17 +0200)]
Support hsetroot in wallpaper.el

* lisp/image/wallpaper.el (wallpaper--default-commands)
(wallpaper-command): Add "hsetroot".

2 years ago; Fix typo in wallpaper--default-commands
Stefan Kangas [Wed, 14 Sep 2022 16:12:39 +0000 (18:12 +0200)]
; Fix typo in wallpaper--default-commands

* lisp/image/wallpaper.el (wallpaper--default-commands): Fix typo.

2 years ago; * etc/NEWS: Fix typo.
Stefan Kangas [Wed, 14 Sep 2022 15:45:34 +0000 (17:45 +0200)]
; * etc/NEWS: Fix typo.

2 years agoRegenerated ldefs-boot.el
Lars Ingebrigtsen [Wed, 14 Sep 2022 15:54:05 +0000 (17:54 +0200)]
Regenerated ldefs-boot.el

2 years agoSpeed up Emacs build by autoloading vc-git-annotate-switches-safe-p
Lars Ingebrigtsen [Wed, 14 Sep 2022 15:53:41 +0000 (17:53 +0200)]
Speed up Emacs build by autoloading vc-git-annotate-switches-safe-p

* lisp/vc/vc-git.el (vc-git-annotate-switches-safe-p): Put the
definition into the loaddefs file.

2 years agoFix image-mode.el compilation
Lars Ingebrigtsen [Wed, 14 Sep 2022 14:04:42 +0000 (16:04 +0200)]
Fix image-mode.el compilation

* lisp/image/image-crop.el (text-property-search): Require.

2 years agoMake image cropping work in image-mode buffers
Lars Ingebrigtsen [Wed, 14 Sep 2022 14:04:23 +0000 (16:04 +0200)]
Make image cropping work in image-mode buffers

* lisp/image-mode.el (image-mode): Update the buffer text after
cropping (bug#57793).

2 years agoDon't alter the buffer contents in image-crop by default
Lars Ingebrigtsen [Wed, 14 Sep 2022 13:59:55 +0000 (15:59 +0200)]
Don't alter the buffer contents in image-crop by default

* lisp/image/image-crop.el (image-crop-buffer-text-function):
Allow modes to alter the textual representation.
(image-crop): Delete the complete image data without assuming it's
all on one line (which isn't the case in image-mode, for instance).
(image-crop--crop-image-update, image-crop--insert-image-data):
Use image-crop-buffer-text-function.
(image-crop--default-buffer-text): New default action -- don't
alter the buffer contents (bug#57793).