1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-06 11:50:51 -08:00
Commit graph

168209 commits

Author SHA1 Message Date
Paul Eggert
f3868cb9d1 Update from Gnulib by running admin/merge-gnulib 2023-08-12 12:57:35 -07:00
Paul Eggert
b66c16c789 Adjust to recent Gnulib changes
The Gnulib regex module now pulls in some wide-char stuff
that I think Emacs doesn’t need.
* admin/merge-gnulib (AVOIDED_MODULES): Add iswblank, iswctype,
iswdigit, iswxdigit, wctype.
2023-08-12 12:57:35 -07:00
Stefan Monnier
f789cb4640 * lisp/emacs-lisp/cl-macs.el (cl--labels-convert): Remove outdated fixme
This was fixed in commit 44d7fd3805.
2023-08-12 14:20:59 -04:00
Eli Zaretskii
3fc9793a26 Merge from origin/emacs-29
842dbf500e * Fix `batch-byte+native-compile' target directory.
8dbd5aa1ee Avoid crashes in 'display_count_lines' when current buffe...
47b4f4cf78 ; * doc/emacs/mini.texi (Completion Commands): Fix a typo...
78999d5213 Update csharp tree-sitter support due to upstream changes
556cb01b48 Substitute command keys in 'ielm-header' at use time
99367078e5 ; * etc/PROBLEMS: Add entry about XIM problems (bug#65205).
03e897c08f Fix rare crashes in redisplay due to problems with fontsets
b1ba06a1e4 Fix a typo in 'leuven-dark-theme.el'
e80a9dcabb ; * admin/git-bisect-start: Update failing commits
9091f42784 ; * admin/git-bisect-start: Update failing commits
344ac529ca ; * etc/PROBLEMS: Fix typo.
bccf848b26 Adapt Tramp test
71bc060e40 Properly expand the JSX indentation rules in 'js-ts-mode'
889cfb42ed * Add `emacs-lisp-native-compile' to easy-menu.
4535aafa8a * lisp/progmodes/elisp-mode.el (emacs-lisp-mode-menu): Si...
173af0cad5 * Introduce `emacs-lisp-native-compile'.
063d7d89d7 Fix the -x switch in non-X builds
5a7fb0b39b Document that `set-mouse-color' does not work everywhere
d06fc72496 ; * doc/emacs/dired.texi (Misc Dired Features): Fix last ...
97b8ac376b Fix the effects and documentation of 'dired-free-space'
75c72e59f6 ; Fix typo
6d11b7b300 Fix cross-reference to eldoc in eglot manual
913e50aba6 Add native-compilation to Emacs Lisp mode menu
b93107c20b Fix emacs-lisp-native-compile-and-load eln target directo...
2023-08-12 13:50:38 -04:00
Eli Zaretskii
276bf5369f ; Merge from origin/emacs-29
The following commits were skipped:

7e3c616086 ; Re-enable the /dev/urandom test
ff21717f05 Disable failing test (bug#65156)
2023-08-12 13:48:34 -04:00
Eli Zaretskii
b289f0769f Merge from origin/emacs-29
4767f5eaee Better fix for bug#65156
dd1d8414b3 Fix insert-file-contents with pipes and /dev/stdin
50649a6d1a ; * etc/PROBLEMS: Fix wording.
f0dda682ff ; * etc/NEWS.28: Add deletion of levents.el.
f4acae842c Fix bug#65042
e1874c4e8b * configure.ac (HAVE_TREE_SITTER): Set NEED_DYNLIB=yes (b...
ef8838c3a5 * etc/NEWS: Mention tramp-show-ad-hoc-proxies.
495bee253f * test/lisp/net/tramp-tests.el (tramp-test42-utf8): Skip ...
de1effd73b ; Fix last change
7c7966862b * test/lisp/net/tramp-tests.el (tramp-test10-write-region...
16205e8db6 ; Improve help-echo in package.el
a95e700698 ; Filter packages available for upgrade via menu bar
adff72dd1d Fix reverting Rmail buffers
2023-08-12 13:42:14 -04:00
Andrea Corallo
842dbf500e * Fix `batch-byte+native-compile' target directory.
* lisp/emacs-lisp/comp.el (batch-native-compile): Don't shadow
`native-compile-target-directory' unless necessary.
2023-08-12 18:51:45 +02:00
Mattias Engdegård
de6c1c4d5c rx: Better translation of char-matching patterns
Translate or-patterns that (even partially) match single characters
into character alternatives which are more efficient in matching,
sometimes algorithmically so.  Example:

  (or "%" (in "a-z") space)

was previously translated to

  "%\\|[a-z]\\|[[:space:]]"

but now becomes

  "[%a-z[:space:]]"

Single-char patterns include `nonl` and `anychar`, which now can also
be used in set operations (union, complement and intersection), and
character classes.  For example, `(or nonl "\n")` is now equivalent to
`anychar`.

* lisp/emacs-lisp/rx.el (rx--expand-def): Remove, split into...
(rx--expand-def-form, rx--expand-def-symbol): ...these.
(rx--translate-compat-symbol-entry)
(rx--translate-compat-form-entry): New functions for handling the
legacy extension mechanism.
(rx--normalise-or-arg): Renamed to...
(rx--normalise-char-pattern): ...this, and rewrite.
(rx--all-string-or-args): Remove, split into...
(rx--all-string-branches-p, rx--collect-or-strings): ...these.
(rx--char-alt-union, rx--intersection-intervals)
(rx--reduce-to-char-alt, rx--optimise-or-args)
(rx--translate-char-alt, rx--human-readable): New.
(rx--translate-or, rx--translate-not, rx--translate-intersection):
Rewrite.
(rx--charset-p, rx--intervals-to-alt, rx--charset-intervals)
(rx--charset-union, rx--charset-intersection, rx--charset-all)
(rx--translate-union): Remove.
(rx--generate-alt): Decide whether to generate a negated character
alternative.
(rx--complement-intervals, rx--intersect-intervals)
(rx--union-intervals): Rename to...
(rx--interval-set-complement, rx--interval-set-intersection)
(rx--interval-set-union): ...these.
(rx--translate-symbol, rx--translate-form): Refactor extension
processing.  Handle synthetic `rx--char-alt` form.
* test/lisp/emacs-lisp/rx-tests.el (rx-or, rx-char-any-raw-byte)
(rx-any, rx-charset-or): Adapt to changes and extend.
* test/lisp/emacs-lisp/rx-tests.el (rx--complement-intervals)
(rx--union-intervals, rx--intersect-intervals): Rename to...
(rx--interval-set-complement, rx--interval-set-union)
(rx--interval-set-intersection): ...these.
2023-08-12 17:40:36 +02:00
Eli Zaretskii
7b1eb9d753 ; * lisp/net/dictionary.el (dictionary-search): Fix last change. 2023-08-12 18:35:24 +03:00
Stefan Kangas
d3dae88e6c Improve dictionary-mode documentation
* lisp/net/dictionary.el (dictionary-mode): Improve docstring
2023-08-12 16:51:54 +02:00
Stefan Kangas
5892b4db8d Convert dictionary-mode to define-derived-mode
* lisp/net/dictionary.el (dictionary-instances): Delete.
(dictionary-mode): Use define-derived-mode.
(dictionary--count-mode-buffers): New function.
(dictionary-close): Use above new function.
2023-08-12 16:32:49 +02:00
Stefan Kangas
b688482096 Remove dictionary-color-support compat code
* lisp/net/dictionary.el (dictionary-color-support): Make obsolete
in favor of 'display-color-p'.  Update single caller.
2023-08-12 16:31:08 +02:00
Stefan Kangas
98e7d37451 ; Fix typo 2023-08-12 15:46:32 +02:00
Stefan Kangas
11be475eee Remove compat code for XEmacs' itimer.el
* lisp/progmodes/idlwave.el (idlwave-update-routine-info)
(idlwave-start-load-rinfo-timer):
* lisp/type-break.el (type-break-cancel-function-timers)
(type-break-run-at-time): Remove XEmacs compat code.
2023-08-12 15:46:17 +02:00
Stefan Kangas
6cc9910227 Make dired-move-to-filename-regexp obsolete
* lisp/dired.el (dired-move-to-filename-regexp): Make Emacs 21
compatibility alias obsolete.
2023-08-12 15:46:17 +02:00
Michael Albinus
57c6501270 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2023-08-12 15:17:59 +02:00
Michael Albinus
26688e0e9c Remove superfluous check from vc-hooks.el
* lisp/vc/vc-hooks.el (vc-registered): Don't check whether
`file-name-handler-alist' is bound, the check is superfluous.
2023-08-12 15:17:32 +02:00
Po Lu
69a1a63ebd ; * java/INSTALL (LOCATING NECESSARY FILES): New section. 2023-08-12 20:59:10 +08:00
Eli Zaretskii
8dbd5aa1ee Avoid crashes in 'display_count_lines' when current buffer was killed
* src/xdisp.c (Fformat_mode_line):
* src/fns.c (Fline_number_at_pos): Don't allow to count lines in a
dead buffer.  (Bug#65060)
2023-08-12 15:06:48 +03:00
Stefan Kangas
a4171e9466 Stop use-package-report from displaying an empty buffer
* lisp/use-package/use-package-core.el (use-package-report): Signal
user-error if there are no statistics to display, instead of showing
an empty buffer.
2023-08-12 12:43:19 +02:00
Daniel Martín
47b4f4cf78 ; * doc/emacs/mini.texi (Completion Commands): Fix a typo (bug#65242). 2023-08-12 11:53:41 +03:00
Eli Zaretskii
7b57886346 Fix 'insert-file-contents' with non-regular files
* src/fileio.c (Finsert_file_contents): Fix the doc string.  Erase
only the accessible portion of the buffer, not the entire buffer.
(Bug#65156)
2023-08-12 11:02:52 +03:00
J M
78999d5213 Update csharp tree-sitter support due to upstream changes
A change in tree-sitter-c-sharp grammar for csharp (commit
18a531), has removed the keyword void_keyword and advised
we should use predefined_type.
* lisp/progmodes/csharp-mode.el (csharp-ts-mode--font-lock-settings):
Support both old and new style of keywords in tree-sitter-c-sharp
grammar.  (Bug#65113)
2023-08-12 10:23:58 +03:00
Matthew Tromp
556cb01b48 Substitute command keys in 'ielm-header' at use time
Before, command keys were substituted into the ielm-header when
ielm.el was loaded, which resulted in the substitutions depending on
the user's current buffer instead of the ielm buffer.
For example, if the user was in an info-mode buffer, the key would
appear as 'H' instead of 'C-h m'.
Now, the command key is substituted after the ielm buffer has been
created.
* lisp/ielm.el (ielm-header): Remove substitute-command-keys.
(inferior-emacs-lisp-mode): Add substitute-command-keys.  (Bug#65213)

Copyright-paperwork-exempt: yes
2023-08-12 10:14:36 +03:00
Eli Zaretskii
99367078e5 ; * etc/PROBLEMS: Add entry about XIM problems (bug#65205). 2023-08-12 10:04:55 +03:00
Eli Zaretskii
03e897c08f Fix rare crashes in redisplay due to problems with fontsets
* src/xdisp.c (get_next_display_element): If we have no usable
face to display a character/composition, treat that as glyphless.
(produce_glyphless_glyph): If neither it->face nor its ASCII face
are usable, fall back to the frame's default font.  (Bug#65198)
2023-08-12 09:38:28 +03:00
Eli Zaretskii
b1ba06a1e4 Fix a typo in 'leuven-dark-theme.el'
* etc/themes/leuven-dark-theme.el (leuven-dark): Fix a typo.
Reported by John Poole <saxcos@posteo.es>.  (Bug#65239)
2023-08-12 09:27:23 +03:00
Paul Eggert
f611c5be21 Update lists of non-UTF files
* .gitattributes: Don't diff text files with encodings
incompatible with UTF-8.  Add some new binary file extensions,
like '.webp'.  etc/e/eterm-direct and java/emacs.keystore
are also binary.
* admin/notes/unicode: Update similarly.
2023-08-11 23:10:29 -07:00
Stefan Monnier
be3cae9f55 * lisp/emacs-lisp/cl-macs.el (cl--labels-convert): Fix bug#65017
This fixes what I consider to be the core of the bug, by handling
`cl--labels-convert-cache` more carefully (i.e. being more careful how
we look up its value and by flushing it ASAP).
2023-08-11 23:14:05 -04:00
Po Lu
1da4fca064 Improve precision pixel scrolling
* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-down-page)
(pixel-scroll-precision-scroll-up-page): Use
pos-visible-in-window-p to opt between the next line or to the
window start rather than computing the next position by hand.
(pixel-scroll-precision-mode): Disable
make-cursor-line-fully-visible.  (bug#65214)
* src/image.c (jpeg_load_body): Fix crash if libjpeg detects an
error before ximg is initialized.
* src/xdisp.c (display_and_set_cursor): Don't display cursor in
vscrolled-away row.
2023-08-12 10:21:34 +08:00
Po Lu
324a109aa3 * lisp/indent-aux.el (kill-ring-deindent-mode): Add autoload cookie. 2023-08-12 09:06:52 +08:00
Po Lu
536b8b7bfd Make kill-ring-deindent-mode autoloaded
* lisp/indent-aux.el
(kill-ring-deindent-buffer-substring-function)
(kill-ring-deindent-mode, indent-aux):
* lisp/simple.el (kill-ring-deindent-buffer-substring-function)
(kill-ring-deindent-mode): Move kill-ring-deindent-mode to
indent-aux.el.
2023-08-12 09:04:19 +08:00
Dmitry Gutov
28ae8440c6 Unbreak project-find-file's future history when cpd is not root
* lisp/progmodes/project.el (project-find-file): Pass in
buffer-file-name as absolute name (bug#63829).
(project--read-file-cpd-relative): Make it relative to the
appropriate common parent dir.
2023-08-12 03:58:53 +03:00
Dmitry Gutov
0bd58dd2d6 xref-find-references-and-replace: Use identifier-at-point in prompt
* lisp/progmodes/xref.el (xref-find-references-and-replace):
Use identifier-at-point in prompt as defined by backend (bug#63939).
2023-08-12 03:39:32 +03:00
Dmitry Gutov
de093d49f2 (project--keymap-prompt): Use help-key-binding face
* lisp/progmodes/project.el (project--keymap-prompt): Use
help-key-binding face and adjust the prompt to fit (bug#64799).
2023-08-12 03:34:53 +03:00
Gregory Heytings
e80a9dcabb ; * admin/git-bisect-start: Update failing commits 2023-08-11 14:22:17 +00:00
Eli Zaretskii
4fa75771d1 ; * lisp/files.el (delete-file): Add expand-file-name back. 2023-08-11 15:03:48 +03:00
Eli Zaretskii
44e941faa1 ; Improve documentation of a recent addition
* lisp/simple.el (kill-ring-deindent-buffer-substring-function):
Doc fix.
2023-08-11 14:52:12 +03:00
Po Lu
3dbf2edb3c Improve kill-ring-deindent-mode
* etc/NEWS:
* lisp/simple.el (kill-ring-deindent-buffer-substring-function):
(kill-ring-deindent-mode): Deindent by the column number at BEG
in lieu of the indentation at BEG.
2023-08-11 16:08:16 +08:00
Po Lu
dcd551d6c8 New global minor mode `kill-ring-deindent-mode'
* etc/NEWS: Announce the new minor mode.

* lisp/simple.el (kill-ring-deindent-buffer-substring-function):
New function.
(kill-ring-deindent-mode): New minor mode, for trimming excess
indentation from saved text.
2023-08-11 15:58:57 +08:00
Po Lu
43cc92d6e4 Minor adjustments to Android port
* java/org/gnu/emacs/EmacsService.java (readDirectoryEntry):
Also refrain from returning NULL or file names containing
non-representable NULL bytes.
* src/callproc.c (get_current_directory): Clean up by employing
android_is_special_directory.
2023-08-11 14:55:21 +08:00
Po Lu
cc6fed326a Repair mailutils configury
* configure.ac (with_mailutils): When processing defaults,
set to yes-unless-android if with_features.
(HAVE_MAILUTILS): Later, disable Mailutils if yes-on-android
and with_android is set.  This is the minimal Emacs build
for the build machine.  (bug#65190)
2023-08-11 08:57:04 +08:00
Jim Porter
a71a96f6ef ; * doc/misc/eshell.texi (Bugs and ideas): Remove already-fixed bugs. 2023-08-10 15:02:11 -07:00
Jim Porter
60090abcbc Return separators from 'eshell-split-commands' directly when requested
This eliminates the need for using a dynamically-bound variable to
hold the list of separators.

* lisp/eshell/esh-cmd.el (eshell--sep-terms): Remove.
(eshell-split-commands): New function, adapted from
'eshell-separate-commands'.
(eshell-separate-commands): Make obsolete, and call
'eshell-split-commands'.
(eshell-parse-command, eshell-parse-pipeline): Use
'eshell-split-commands'.

* lisp/eshell/esh-arg.el (eshell-parse-delimiter): Update comment.
2023-08-10 10:55:49 -07:00
Jim Porter
3659fc3ed8 Simplify command parsing in Eshell
* lisp/eshell/esh-cmd.el (eshell-parse-command): Do all modifications
to each command in a single pass.
(eshell-parse-pipeline): Remove unncessary reversing of parsed
results.
2023-08-10 10:55:49 -07:00
Gregory Heytings
9091f42784 ; * admin/git-bisect-start: Update failing commits 2023-08-10 17:34:40 +00:00
Robert Pluim
344ac529ca ; * etc/PROBLEMS: Fix typo. 2023-08-10 12:44:37 +02:00
Michael Albinus
bccf848b26 Adapt Tramp test
* test/lisp/net/tramp-tests.el (tramp-test41-special-characters):
Skip for macOS.
2023-08-10 12:17:59 +02:00
Po Lu
65f71ca9aa Uniformly verify sfnt_read_table_directory doesn't return TTC header
* src/sfntfont.c (sfnt_enum_font, sfntfont_read_cmap)
(sfnt_open_tables): Check for -1 return value from
sfnt_read_table_directory.
2023-08-10 17:25:49 +08:00
Mattias Engdegård
f48e47fb49 ; [NSString lispString]: clarify unpaired surrogate behaviour 2023-08-10 11:17:17 +02:00