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

180636 commits

Author SHA1 Message Date
Sean Whitton
8afbcb0ffe ; * lisp/vc/vc.el (vc-print-branch-log): Fix declaration. 2025-12-28 13:02:03 +00:00
Sean Whitton
aefc4baca9 Factor out vc--read-limit
* lisp/vc/vc.el (vc--read-limit): New function.
(vc-print-root-log): Call it.
(vc-print-log): Call it.  Modernize style.  Fix docs regarding
LIMIT: it defaults to vc-log-show-limit only for interactive
calls.
2025-12-28 13:00:51 +00:00
Sean Whitton
1b23b4a5ad ; * lisp/ldefs-boot.el: Restore no-byte-compile local variable. 2025-12-28 12:33:25 +00:00
Sean Whitton
dc34b9a969 ; Regenerate ldefs-boot.el 2025-12-28 12:29:09 +00:00
Sean Whitton
124d3cde04 Move 'C-x v b l' to 'C-x v b L', rename command
* lisp/vc/vc-dir.el (vc-dir-mode-map):
* lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Replace
bindings of 'b l' with 'b L'.
* lisp/vc/vc.el (vc-print-root-branch-log): Rename from
'vc-print-branch-log'.  All uses changed.
(vc-print-branch-log): New obsolete alias.
* doc/emacs/maintaining.texi (VC Change Log)
(VC Directory Commands):
* doc/emacs/vc1-xtra.texi (Editing VC Commands):
* etc/NEWS: Document the change.
2025-12-28 12:28:06 +00:00
Mattias Engdegård
8f9c0c1843 Don't use the term 'null' for empty strings
Zero-length strings are just 'empty'; 'null' can be confusing in several
ways.

* lisp/subr.el (split-string, string-lines):
* doc/lispref/strings.texi (Creating Strings):
Change argument names from 'omit-nulls' to 'omit-empty'.
2025-12-28 12:37:37 +01:00
Mattias Engdegård
bdc34b199d Clean up split-string documentation
* doc/lispref/strings.texi (Creating Strings):
* lisp/subr.el (split-string):

Make it clear that the SEPARATORS argument should not match the empty
string, since the behaviour was entirely an artefact of the original
implementation in this case; it makes little sense otherwise.

Clean up the examples for conciseness and do not waste space on
irrelevant details.
2025-12-28 12:37:37 +01:00
Mattias Engdegård
2592690abe Various split-string improvements
* lisp/subr.el (split-string):
Fix quadratic behaviour in (split-string "xx..." ":" nil " +").
General code reorganisation for speed and reduced allocation.
Fix a regexp bug; eg, (split-string "A;B" "," nil ";\\|:")

* test/lisp/subr-tests.el (subr-test-split-string):
More extensive test coverage.
2025-12-28 12:37:37 +01:00
Mattias Engdegård
aaa6d6e13b ; * doc/lispref/macros.texi (Indenting Macros): more @xref fix-ups 2025-12-28 12:29:05 +01:00
Sean Whitton
3e282e2da5 ; * doc/lispref/macros.texi (Indenting Macros): Fix xref. 2025-12-28 11:25:30 +00:00
Martin Rudalics
01212ce03f Fix two thinkos in 'set-frame-size-and-position'
* lisp/frame.el (set-frame-size-and-position): Correctly
interpret width and height of workarea as returned by
'frame-monitor-attributes'.  If LEFT or RIGHT are floats,
position FRAME according to left/top position of workarea.
2025-12-28 09:27:45 +01:00
Stefan Monnier
cc2a0e90ab (nxml-compute-indent-in-token): Use noindent in CDATA
`noindent` is more precise than what we did since it gives more
info to the caller: `indent-for-tab-command` can treat it
differently (e.g. fall back to `indent-relative`) than `indent-region`.

* lisp/nxml/nxml-mode.el (nxml-compute-indent-in-token): Use `noindent`
in CDATA.
(nxml-compute-indent-in-delimited-token): Remove CDATA case, not used
any nmore.
2025-12-27 15:27:49 -05:00
Jonas Bernoulli
2b6161a19f
lisp-indent-local-overrides: New variable 2025-12-27 20:25:05 +01:00
Eli Zaretskii
ab7ed33f6d ; Sean Whitton stepped up as a co-maintainer
* admin/MAINTAINERS:
* doc/emacs/ack.texi (Acknowledgments): Add Sean Whitton.
2025-12-27 10:08:06 +02:00
Eli Zaretskii
67fdbefce9 ; * CONTRIBUTE: More about preference of US English. 2025-12-27 09:29:01 +02:00
Paul Eggert
9affabf6db Move vc-cloneable-backends-custom-type alias up
* lisp/vc/vc.el (vc-cloneable-backends-custom-type):
Move alias up.  Problem reported by Arash Esbati in:
https://lists.gnu.org/r/emacs-devel/2025-12/msg00772.html
2025-12-26 13:30:13 -08:00
Paul Eggert
ca303033a6 * CONTRIBUTE: American English in messages & IDs. 2025-12-26 13:21:22 -08:00
Paul Eggert
481ad70d5c December 2025 spelling fixes
Some of the fixes are to continue to use American
rather than British spelling.
* doc/misc/modus-themes.org (my-modus-themes-engraved-faces):
Fix misspelled ‘:foreground’s.
* etc/themes/modus-themes.el (modus-themes-faces):
Fix misspelled ‘modus-themes-bold’.
* lisp/emacs-lisp/rx.el (rx--normalize-char-pattern):
Rename from rx--normalise-char-pattern.
(rx--optimize-or-args):	Rename from rx--optimise-or-args.
* lisp/frame.el (frame--special-parameters):
Fix misspelled "right-divider-width".
* lisp/net/tramp.el (tramp-fingerprint-prompt-regexp):
Use American spelling “centered”, to match current libfprintf.
* lisp/org/org-fold-core.el (org-fold-core--optimize-for-huge-buffers):
Rename from org-fold-core--optimise-for-huge-buffers.
(org-fold-core-update-optimization):
Rename from org-fold-core-update-optimisation,
leaving an alias behind.
(org-fold-core-remove-optimization):
Rename from org-fold-core-remove-optimisation,
leaving an alias behind.
* lisp/org/org.el (org-advertized-archive-subtree):
This alias is now obsolete.
* lisp/play/zone.el (zone-ignored-buffers):
Fix misspelling of ‘zone--buffer-encrypted-p’.
* lisp/progmodes/csharp-mode.el (csharp-ts-mode-faces):
Fix misspelling of ‘csharp’ group.
* lisp/vc/vc.el (vc-clonable-backends-custom-type):
Rename from vc-cloneable-backends-custom-type,
leaving an alias behind.
* test/lisp/emacs-lisp/bytecomp-tests.el:
(bytecomp-tests--warn-arity-non-compiled-callee):
Rename from bytecomp-tests--warn-arity-noncompiled-callee.
(bytecomp-test-defface-spec): Reword a deliberate misspelling
of “default” that is so common I don’t want it to pollute the
spelling dictionary.
* test/lisp/emacs-lisp/package-vc-tests.el:
(package-vc-tests-preserve-artifacts):
Rename from package-vc-tests-preserve-artifacts.
* test/lisp/eshell/em-prompt-tests.el:
(em-prompt-test/forward-backward-paragraph-1):
Reword a deliberate misspelling of “goodbye” that is so common I
don’t want it to pollute the spelling dictionary.
2025-12-26 10:22:12 -08:00
Michael Albinus
5b461a4930 Fix problem in tramp-adb
* lisp/net/tramp-adb.el (tramp-adb-do-ls): New function.
(tramp-adb-handle-file-attributes)
(tramp-adb-handle-directory-files-and-attributes)
(tramp-adb-handle-file-name-all-completions): Use it.  (Bug#80054)
2025-12-26 11:28:12 +01:00
Paul Eggert
7be4fe89fc Update from Gnulib by running admin/merge-gnulib 2025-12-25 09:53:17 -08:00
João Távora
0a6daa1412 Eglot: speed up symbol highlighting (bug#80072)
In large buffers, responses to textDocument/documentHighlight
requests may return thousands of occurrences.  Avoid incurring
expensive eglot--lsp-position-to-point calls, by restricting the
highlights to visible region in the active window.

* lisp/progmodes/eglot.el (eglot-highlight-eldoc-function):
Rework.
2025-12-25 16:46:17 +00:00
Juri Linkov
54ae1944e9 * lisp/tab-bar.el (tab-bar-merge-tabs): New command.
(merge-tabs): Alias for 'tab-bar-merge-tabs'.
https://lists.gnu.org/archive/html/emacs-devel/2025-12/msg00721.html
2025-12-24 20:45:07 +02:00
Juri Linkov
2fc957795a * lisp/image-mode.el (image-mode--next-file): Fix infinite loop.
Fix the case when an image file is visited in the directory with
image files without image file extensions, and 'dired-movement-style'
is non-nil, and 'dired-next-line' wraps to the top of the dired buffer,
doesn't find the next image file and goes into an infinite loop.
Remember the original file name and exit the loop when after wrapping
'dired-next-line' reaches the original file.
2025-12-24 19:35:04 +02:00
Stéphane Marks
d576216adb Add ns_set_window_size_and_position
* src/frame.c (Fset_frame_size_and_position_pixelwise): Correct
docstring typo.
* src/nsterm.m (compute_offset): New function of common code.
(ns_set_offset): Call compute_offset.
(ns_set_window_size_and_position): New function.
(ns_create_terminal): Add new function to the hook.
2025-12-24 16:32:04 +01:00
Stéphane Marks
b3aa0a652c In Fns_progress_indicator fix GNUstep enum spelling (bug#79859)
* src/nsfns.m (Fns_progress_indicator): GNUstep spells its level
indicator enum NSContinuousCapacityLevelIndicatorStyle vs. macOS
NSLevelIndicatorStyleContinuousCapacity.
2025-12-24 16:24:19 +01:00
Eli Zaretskii
2566f26e0a Improve documentation of 'word-combining-categories'
* src/category.c (syms_of_category) <word-combining-categories>:
Doc fix.  (Bug#80042)
2025-12-24 15:47:06 +02:00
Stefan Monnier
c6bdfaf358 Merge branch 'cursor-intangible' 2025-12-23 22:48:26 -05:00
Stefan Monnier
fc117f1d3b (cursor-sensor-tangible-pos): Prefer shortening the motion
When moving to the middle of an intangible chunk, and either end
of the chunk would result in a movement in the right direction, prefer
the shorter movement, since it's easier for the users to repeat a
movement than to "go back".
(see https://lists.gnu.org/archive/html/emacs-devel/2025-12/msg00686.html)

* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-tangible-pos):
Refine the choice.
2025-12-23 22:48:05 -05:00
Stefan Monnier
068d94074b (cursor-sensor-tangible-pos): Insist on picking a tangible position
* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-tangible-pos):
Prefer a tangible position, even if it means going in the wrong
direction; and don't favor shorter movement.
2025-12-23 22:48:05 -05:00
Stefan Monnier
e69d60f9f3 (cursor-sensor-tangible-pos): Clarify edge case
* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-tangible-pos):
Make it clear that prevpos/nextpos can be nil only at BOB/EOB.
2025-12-23 22:48:05 -05:00
Stefan Monnier
3e3b5c3213 (cursor-sensor-tangible-pos): Rewrite
The main purpose is to make the code more symmetric and make it
easier to tweak the behavior, compared to the previous code which
focused on moving always in the direction of the overall motion.

* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-tangible-pos):
Rewrite and allow movement in both directions, tho with (hopefully)
minimal changes in behavior.
2025-12-23 22:48:05 -05:00
milkvetch
9b4c2adf73 Fix tool-bar commands in Info
* lisp/info.el (Info-mode-map, Info-history-back-menu)
(Info-history-forward-menu): Unbreak tool-bar commands by fixing
letter-case.  (Bug#80059)

Copyright-paperwork-exempt: yes
2025-12-23 15:27:35 +02:00
Gerd Möllmann
39badb5a38 ; * src/frame.c (Fmake_frame_invisible): Don't skip setting frame invisible. 2025-12-23 04:39:28 +01:00
Po Lu
b0140bcd44 Implement set_window_size_and_position_hook on Android
* java/org/gnu/emacs/EmacsWindow.java (moveResizeWindow): New
method, which alters all of the bounding box of a window at
once.

* src/android.c (android_init_emacs_window): Load method
`move_resize_window'.
(android_move_resize_window): Invoke this method, rather than a
sequence of operations that will produce two ConfigureNotify
events.

* src/androidterm.c (android_set_window_size_and_position_1)
(android_set_window_size_and_position): New functions; ported
from X.
(android_create_terminal): Register the same.
2025-12-23 10:39:45 +08:00
Katsumi Yamaoka
22070c6f2f Revert the commit 70678cd5 (bug#80052)
* message.el (message-get-reply-headers): Revert.
2025-12-23 10:14:17 +09:00
Stephen Gildea
c60ebac646 time-stamp-custom-pattern test: Minor optimization
* test/lisp/time-stamp-tests.el (time-stamp-custom-pattern): Refactor,
lifting the setup of the test buffer out of the loop.
2025-12-22 08:25:58 -08:00
Gerd Möllmann
5879a0c61b ; * lisp/disp-table.el (standard-display-unicode-special-glyphs): fix doc. 2025-12-22 15:01:46 +01:00
Gerd Möllmann
575dc8e534 Fix handling of border face on tty child frames (bug#80043)
* src/dispnew.c (box_from_display_table, box_default,
box_glyph): New functions, extracted from produce_box_glyphs.
(box_from_display_table): Merge face nwith glyph's face.
(box_default): Lookup face.
(produce_box_glyphs): Use new functions.
2025-12-22 15:00:42 +01:00
Eli Zaretskii
acb91f501c ; Improve documentation of 'font-spec'
* src/font.c (Ffont_spec):
* doc/lispref/display.texi (Low-Level Font): More accurate
documentation of 'font-spec's arguments.
2025-12-22 15:36:11 +02:00
Mattias Engdegård
10dc5824b4 ; * test/lisp/emacs-lisp/vtable-tests.el: avoid arity warning 2025-12-22 12:22:16 +01:00
Mattias Engdegård
10fdf48635 Repair package-tests failure
* test/lisp/emacs-lisp/package-tests.el (package-test-install-single):
"already installed" is now an error; adapt test.
2025-12-22 12:11:37 +01:00
Mattias Engdegård
655d277731 * lisp/cus-start.el: Don't complain about :initialize (bug#80051) 2025-12-22 11:47:52 +01:00
Mattias Engdegård
73e10b97cb Recognise %b and %B in compile-time format string checker
* lisp/emacs-lisp/bytecomp.el (byte-compile-format-warn): Add b and B.
2025-12-22 11:22:20 +01:00
Mattias Engdegård
ca5d0de3e5 ; * src/editfns.c (styled_format): fix build for C99 compilers 2025-12-22 11:12:43 +01:00
Martin Rudalics
f3d9371a89 Add functions to set frame size and position in one compound step
* lisp/frame.el (set-frame-size-and-position): New function.
* src/frame.c (adjust_frame_size): Handle requests to set size
and position.
(Fset_frame_size_and_position_pixelwise): New function.
* src/gtkutil.c (xg_frame_set_size_and_position): New function.
(xg_wm_set_size_hint): Handle any non-NorthWestGravity values
for child frames only.  Some GTK implementations don't like
them.
* src/gtkutil.h (xg_frame_set_size_and_position.): Add external
declaration.
* src/termhooks.h (set_window_size_and_position_hook): New hook.
* src/w32term.c (w32_set_window_size_and_position): New
function.
(w32_create_terminal): Make it the Microsoft Windows API
set_window_size_and_position_hook.
* src/xterm.c (x_set_window_size_and_position_1)
(x_set_window_size_and_position): New functions.
(x_create_terminal): Make x_set_window_size_and_position the
set_window_size_and_position_hook for the X protocol.
* src/xterm.h (x_set_window_size_and_position): Add external
declaration.
* etc/NEWS: Announce new functions.
2025-12-22 11:01:53 +01:00
Paul Eggert
5cf8af2290 Simplify new %b/%B code many years from now
* src/editfns.c (styled_format): Do %b and %B with sprintf if
sprintf is known to support them.  This will let us simplify this
code many years from now.  (Bug#79990)
2025-12-22 00:15:09 -08:00
Jacob S. Gordon
cff022f0c3 Add binary format specifications '%b' and '%B'
These produce the binary representation of a number.
'%#b' and '%#B' prefix with '0b' and '0B', respectively.
(bug#79990)
* etc/NEWS: Announce change.
* doc/lispref/strings.texi (Formatting Strings): Describe new format
specs and add to comment on reconstructing the value with 'read'.
* src/editfns.c (format): Update doc string.
(styled_format): Add support for '%b' and '%B'.  To remain
portable, avoid use of 'sprintf' by converting by hand.
* test/src/editfns-tests.el (format-binary-zero, format-binary-floats)
(format-binary-nonzero-integers): Add tests.
(read-large-integer): Add binary test cases.
Co-authored-by: Paul Eggert <eggert@cs.ucla.edu>
2025-12-22 00:15:09 -08:00
Po Lu
1f7c804ab1 ; Fix coding style in w32fns.c
* src/w32fns.c (Fw32_badge, syms_of_w32fns): Stylistic
corrections.
2025-12-22 09:54:38 +08:00
Paul Eggert
366cbebe46 ; Revert previous commit. 2025-12-21 13:23:26 -08:00
Paul Eggert
67c36f9090 ; Revert wrong doc change about, e.g., "-#xa". 2025-12-21 12:58:41 -08:00