1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-22 14:52:34 -07:00
Commit graph

181633 commits

Author SHA1 Message Date
Eshel Yaron
72c262d5d1
; Adapt 'elisp-fontify-symbol' to 'cursor-sensor-mode' changes
* lisp/progmodes/elisp-mode.el (elisp-fontify-symbol): Mark
the 'cursor-sensor-functions' property as 'rear-nonsticky',
to adapt to 'cursor-sensor-mode' taking into account
property stickiness since f4a1c00656.  See also bug#80593.
2026-03-19 17:29:27 +01:00
Ihor Radchenko
e4aa9cfbab New option to enable global-whitespace-mode in special-buffers (bug#79230)
* lisp/whitespace.el (whitespace-global-mode-buffers): New custom
option.
(whitespace-enable-predicate): Use it.
(whitespace-global-modes): Refer to the new option.
2026-03-19 17:51:02 +02:00
Eli Zaretskii
0801652979 ; * lisp/ibuffer.el (ibuffer-fontification-alist): Doc fix (bug#80618). 2026-03-19 17:46:57 +02:00
Eli Zaretskii
ee42c392d2 ; Fix documentation of window-dimension functions
* doc/lispref/windows.texi (Window Sizes):
* src/window.c (Fwindow_body_height, Fwindow_total_height)
(Fwindow_total_width, Fwindow_body_width): Clarify that window
dimensions are returned in canonical columns and lines.
(Bug#80620)
2026-03-19 17:40:31 +02:00
Elias Gabriel Perez
5c961f4903 hideshow: Fix 'hs-hide-block-behavior' set to 'after-cursor'.
Bug#80455.

* etc/NEWS: Document changed behavior.

* lisp/progmodes/hideshow.el (hs-get-near-block): Remove
'forward-line'.
(hs-hide-block-behavior): Update docstring.

* doc/emacs/programs.texi (Hideshow): Update.

Suggested-by: Dima Kogan <dima@secretsauce.net>
2026-03-19 17:27:57 +02:00
Eli Zaretskii
687fe594d6 Fix "make install-nt" in parallel builds
* Makefile.in (install-nt): Add order-only dependency on $(NTDIR).
Suggested by Joel Reicher <joel.reicher@gmail.com>.  (Bug#80470)
2026-03-19 17:19:44 +02:00
Elías Gabriel Pérez
c911495fb1 hideshow: New minor mode 'hs-indentation-mode'. (Bug#80179)
This minor mode configures hs-minor-mode to use
indentation-based folding.

* lisp/progmodes/hideshow.el (hs-hideable-block-p): New
function.
(hs-indentation-respect-end-block): New option.
(hs-indentation--store-vars): New variable.
(hs-cycle-filter, hs-get-first-block-on-line, hs-get-near-block)
(hs-find-block-beg-fn--default): Adapt code to use
'hs-hideable-block-p'.
(hs-block-positions): Update.
(hs-indentation-mode): New minor mode.

* doc/emacs/programs.texi (Hideshow): Update documentation.

* etc/NEWS: Announce changes

* test/lisp/progmodes/hideshow-tests.el: Add 'require'.
(hideshow-check-indentation-folding): New test.
2026-03-19 17:11:54 +02:00
Eli Zaretskii
1f04208898 ; * lisp/files.el (find-sibling-rules): Doc fix. 2026-03-19 09:54:07 +02:00
Stefan Monnier
7fae444857 lisp/progmodes/elisp-mode.el (elisp--local-macroenv): Add static-if 2026-03-18 09:33:55 -04:00
Stéphane Marks
7ae5562bd4 Kick the event loop in NS drag and drop (bug#80592)
Eliminate an annoying event-loop delay after dropping into an
Emacs window.

* src/nsterm.m: ([EmacsView performDragOperation:]): Kick the
event loop after posting the DRAG_N_DROP_EVENT.
2026-03-18 10:34:29 +00:00
Michael R. Mauger
6db7ab34a1 Window handling bug fixes.
* lisp/play/zone.el: (zone--build-zone-buffer): select window.
(zone--prepare-frames): Avoid dedicated windows.
2026-03-17 18:32:40 -04:00
Stefan Monnier
dd264fb439 (delete-selection-repeat-replace-region): Partial fix for bug#80216
* lisp/delsel.el (delete-selection-repeat-replace-region): Clarify the
need for `delete-selection-save-to-register`.
2026-03-17 12:40:22 -04:00
Tassilo Horn
fdfe617e73 Further improve blink-matching-paren-highlight-offscreen
* lisp/simple.el (blink-matching-paren-offscreen): Inherit from
show-paren-match face.
(blink-paren-open-paren-line-string): Add blink-matching-paren-offscreen
face properties to opening paren instead of replacing original
fontification.
* lisp/paren.el (show-paren-context-when-offscreen): Mention
blink-matching-paren-highlight-offscreen in docstring.
2026-03-17 06:13:54 +01:00
Dmitry Gutov
f8696367bc Assign bit gravity to window in Lucid and Motif ports too
* src/widget.c (EmacsFrameRealize): Assign bit_gravity, and use
the value of NorthWestGravity which matches the GTK3 behavior,
and the general intuition that window's contents should move
with its top-left corner.  The result is that the frame is not
blinking during resizing (bug#80369).

* src/xfns.c (x_window) [!USE_X_TOOLKIT]: Change bit_gravity from
StaticGravity to NorthWestGravity as well, to match the others.
2026-03-16 23:55:24 +02:00
Philip Kaludercic
4147410852
; Fix handling of string by the use-package keyword :vc
This makes :vc behave more like 'package-vc-install'.

* lisp/use-package/use-package-core.el (use-package-normalize/:vc):
Translate :vc arguments that are just a string into a minimal
package specification containing only a :url field, thus
preventing a type error down the line.
2026-03-16 18:23:37 +01:00
Pip Cet
aa90b0fb4a Count characters correctly in 'str_as_multibyte'
* src/character.c (str_as_multibyte): Increment CHARS for each
character produced, not just once.
2026-03-16 16:28:36 +00:00
Basil L. Contovounesios
88600757ae Remove more regex macros from src/conf_post.h
Further to bug#80428, they are no longer used since commit of
2018-08-05 "Simplify regex-emacs code by assuming Emacs".
Suggested by Pip Cet <pipcet@protonmail.com>.

* src/conf_post.h [emacs] (RE_TRANSLATE_TYPE): Remove;
no longer used except under lib-src.
[emacs] (RE_TRANSLATE): Remove; redefined in src/regex-emacs.c.
2026-03-16 14:29:26 +01:00
Michael Albinus
1bae55cdbf * lisp/emacs-lisp/shortdoc.el (list): Fix `ensure-proper-list' examples. 2026-03-16 09:17:18 +01:00
Michael Albinus
1aed658f3b Use consistent alias name in tramp-compat.el
* lisp/net/tramp-compat.el (tramp-compat-error-type-p):
Rename from `tramp-error-type-p'.
2026-03-16 09:02:03 +01:00
Stefan Monnier
e9e9c7cf8e lisp/startup.el (command-line): Simplify with error-message-string
Suggested by Basil L. Contovounesios <basil@contovou.net>.
2026-03-15 17:29:41 -04:00
Stefan Monnier
e2004eb56f Merge remote-tracking branch 'origin/scratch/error-API' 2026-03-15 17:17:21 -04:00
Sean Whitton
fe9f6a5872 ; Tweak wording of newcomer instructions. 2026-03-15 20:29:08 +00:00
Sean Whitton
e770ddb5e8 ; Tweak documentation for ensure-proper-list. 2026-03-15 20:27:41 +00:00
Sean Whitton
14037f5852 Set frame-inhibit-implied-resize in newcomers-presets
* etc/themes/newcomers-presets-theme.el (newcomers-presets): Set
frame-inhibit-implied-resize as suggested by Martin Rudalics.
2026-03-15 20:22:18 +00:00
Eshel Yaron
3921af5e5e
; Minor doc improvements for 'let-alist'.
* doc/lispref/lists.texi:
* lisp/emacs-lisp/let-alist.el (let-alist): Improve docs.
Namely, clarify that 'let-alist' does not "see" symbols
introduced by macro-expansion in its body, and that the
generated code looks up symbols in the alist whether or not
they are actually used in runtime.

See also bug#79706 for some relevant discussion.
2026-03-15 13:15:36 +01:00
Eli Zaretskii
edeed3fd88 ; * lisp/bindings.el (mode-line-percent-position): Doc fix (bug#80617). 2026-03-15 12:16:40 +02:00
Philip Kaludercic
55f0f2056c
Add new function 'ensure-proper-list' (bug#80598)
* doc/lispref/lists.texi (Building Lists): Document it.
* etc/NEWS: Mention it.
* lisp/emacs-lisp/shortdoc.el (list): Demonstrate it.
* lisp/subr.el (ensure-proper-list): Add it.
2026-03-15 10:52:01 +01:00
Philip Kaludercic
6901173e44
; Ensure hint to close "Newcomers Theme" is visible
* doc/emacs/custom.texi (Newcomers Theme): Move to the beginning
of the node, so as to be visible even when the Emacs frame is
too small and wrap it in a conditional to not print the message
in non-Info outputs.
2026-03-15 10:52:01 +01:00
Michael Albinus
b38aac5439 ; * etc/NEWS: Presentational fixes and improvements. 2026-03-15 09:44:42 +01:00
Eli Zaretskii
6c4b9b2cc3 ; * src/fns.c (Fstring_make_multibyte, Fstring_as_unibyte): Doc fixes. 2026-03-15 09:55:23 +02:00
Eli Zaretskii
bb0b9635f9 Avoid segfaults in TTY menu-item selection
* src/term.c (tty_menu_show): Don't allow "selection" of items in
a bogus menu.  (Bug#80603)
2026-03-15 08:40:50 +02:00
Eli Zaretskii
f59181008f Avoid another assertion violation in TTY menus
* src/term.c (tty_menu_show): Reject bogus menus whose 'menu_items'
is nil.  (Bug#80603)
2026-03-14 19:00:31 +02:00
Philip Kaludercic
9b97d84318
Add references to "User Lisp" Info node where applicable
* etc/NEWS: Update 'package-vc-install-from-checkout'
obsoletion notice.
* lisp/emacs-lisp/package-vc.el (package-vc-install-from-checkout):
Update obsoletion declaration.
2026-03-14 16:17:51 +01:00
Philip Kaludercic
18dfb0db0e
Remove references to 'package-vc-install-from-checkout' in docs
* lisp/emacs-lisp/package-vc.el: Remove mention in Commentary section.
(package-vc-checkout): Remove suggestion in docstring.
2026-03-14 16:17:51 +01:00
Basil L. Contovounesios
7077633e67 Rename emacs-module.h.in -> emacs-module.in.h
* src/emacs-module.h.in: Rename...
* src/emacs-module.in.h: ...to this, for consistency with all other
lib/*.in.h files (bug#80428).
* Makefile.in (CONFIG_STATUS_FILES_IN):
* admin/release-branch.txt:
* src/emacs-module.c: All uses updated.
* admin/authors.el (authors-renamed-files-alist): Register rename.
* configure.ac: Specify non-default AC_CONFIG_FILES input file.
2026-03-14 15:08:15 +01:00
Basil L. Contovounesios
14c0e69c1d Review some attribute macro usage
* .dir-locals.el (c-noise-macro-names): Remove ANDROID_EXPORT, which
is no longer used.  Add ATTRIBUTE_COLD, ATTRIBUTE_CONST,
ATTRIBUTE_MAY_ALIAS, ATTRIBUTE_NONSTRING, ATTRIBUTE_RETURNS_NONNULL,
EXTERNALLY_VISIBLE, MAYBE_UNUSED, and NODISCARD.
(c-noise-macro-with-parens-names): Also tell cc-mode about some
function-like attribute macros in use (bug#80428).

* src/conf_post.h (RE_TRANSLATE_P): Remove; it is no longer used.
2026-03-14 15:08:15 +01:00
Eli Zaretskii
cbefea79ab ; Update ldefs-boot.el. 2026-03-14 09:04:32 -04:00
Eli Zaretskii
7887f202c6 Avoid assertion violations in tty menus in rare cases
* src/term.c (mouse_get_xy): Restore the lost protection against
'mouse_position' returning nil as mouse coordinates.  (Bug#80603)
2026-03-14 14:11:49 +02:00
Eli Zaretskii
696a4e03bf Fix backward motion in Info manuals under 'scroll-conservatively'
* lisp/info.el (Info-find-node-2): Don't skip the header or
breadcrumbs line when 'scroll-conservatively' is set to a value
that could leave the beginning of the node outside of the window.
(Bug#80553)
2026-03-14 13:11:11 +02:00
Eli Zaretskii
17aa3a7e13 ; Fix last change
* lisp/textmodes/flyspell.el (flyspell-generic-progmode-verify):
Fix capitalization and whitespace of last change.
2026-03-14 12:46:19 +02:00
Timon Reinold
87d13146b2 Fix auto-correct previous word with 'flyspell-prog-mode'
* lisp/textmodes/flyspell.el (flyspell-generic-progmode-verify):
Take into account the word 'flyspell-auto-correct-previous-word'
moved to (i.e., the word starting at point, not the character
before point), when checking whether it should be checked/corrected
by flyspell-prog-mode.  (Bug#80289)

Copyright-paperwork-exempt: yes
2026-03-14 12:43:35 +02:00
Eli Zaretskii
44fa418987 ; * etc/NEWS: Improve one entry. 2026-03-14 09:29:58 +02:00
Stefan Monnier
3ed7ac4e66 (smerge--refine-prepare-regions): Reduce number of args and retvals
* lisp/vc/smerge-mode.el (smerge--refine-set-overlay-props):
New function, extracted from `smerge--refine-prepare-regions`.
(smerge--refine-prepare-regions): Take overlays rather than beg/end
arguments and remove all overlay property manipulation.
(smerge-refine-regions): Create the overlays and pass them to those
two functions.
2026-03-14 02:14:13 -04:00
Dmitry Gutov
949f035544 etags-regen: Don't try to generate tags during completion, by default
* etc/NEWS: Describe the change.

* lisp/progmodes/etags-regen.el
(etags-regen-create-on-completion): New option.
(etags-regen-create-on-completion--set): New function.
(etags-regen-mode): Use it.  Discussed in
https://lists.gnu.org/archive/html/emacs-devel/2026-03/msg00405.html
2026-03-14 04:28:32 +02:00
Philip Kaludercic
9dbcb01153
Simplify 'xref-mouse-mode-map'
See https://mail.gnu.org/archive/html/emacs-devel/2026-03/msg00386.html.

* lisp/progmodes/xref.el (xref-mouse-mode-map): Prevent
C-<down-mouse-1> from triggering 'mouse-buffer-menu' and drop
C-<drag-mouse-1> binding.
2026-03-14 00:03:02 +01:00
Philip Kaludercic
ac39b7c451
* etc/NEWS: Announce 'package-vc-install-from-checkout' obsoletion
(Bug#80604)
2026-03-13 23:50:05 +01:00
Philip Kaludercic
c7d4056539
Give an example of how to use use-package+:vc without :rev
* doc/misc/use-package.texi (Install package): Add an example
block that doesn't use :rev, and instead shows that you can just
pass a URL as a string to :vc.
2026-03-13 23:50:05 +01:00
Paul Eggert
10979aa458 Ignore Emacs developer’s global core.whitespace
* build-aux/git-hooks/pre-commit: Use EMACS_GIT_CORE_WHITESPACE,
not the global core.whitespace, for whitespace checks when committing.
This defaults to empty, which means to use the Git default, and
this should fix Bug#80428 “C indentation in .gitattributes, macros
in .dir-locals.el”.  The environment variable is a better way to
temporarily override the default.
2026-03-13 10:27:49 -07:00
Helmut Eller
0efb47d474 * lisp/loadup.el: No longer GC after loading each file
With the portable dumper it's no longer needed as discussed in
bug#79021.  Originally this was done for the unexec based dumping (see
bug#4287 and commit 0e328d3779).
2026-03-13 15:35:05 +01:00
Eli Zaretskii
4a81c87a7c Avoid assertion violations in 'display_menu_bar'
* src/xdisp.c (display_menu_bar): Return immediately if the
menu-bar items were not yet computed.  This avoids assertion
violations when this function is called as part of creating a new
frame.  (Bug#80603)
2026-03-13 15:57:05 +02:00