Commit graph

177436 commits

Author SHA1 Message Date
Stefan Kangas
672df0288b Bump python.el package version to 0.30
* lisp/progmodes/python.el: Bump package version to 0.30.
2025-03-11 01:15:41 +01:00
Stefan Kangas
46f9ebaec3 Make python.el compatible with Emacs 29.1
* lisp/progmodes/python.el (python--treesit-fontify-string): Don't
call treesit--compute-font-lock-level unless it is
fboundp.  (Bug#76873)
2025-03-11 01:14:35 +01:00
Stefan Kangas
8ea65ac642 ; Temporarily disable proced tests on macOS (Bug#76898)
* test/lisp/proced-tests.el (proced-format-test, proced-update-test)
(proced-revert-test, proced-color-test): Disable tests on macOS.
2025-03-11 01:03:50 +01:00
Stefan Kangas
1393b71c2c Prefer defvar-keymap in some additional Gnus libraries
* lisp/gnus/gnus-sum.el (gnus-dead-summary-mode-map):
* lisp/gnus/gnus.el (gnus-article-mode-map)
(gnus-summary-mode-map, gnus-group-mode-map):
* lisp/gnus/mm-decode.el (mm-viewer-completion-map): Prefer
defvar-keymap.
* lisp/gnus/gnus.el (gnus-suppress-keymap): Declare obsolete.
2025-03-11 01:03:14 +01:00
Stefan Monnier
4980089960 lisp/emacs-lisp/track-changes.el: Make GNU ELPA release 2025-03-10 15:48:33 -04:00
Stefan Kangas
bab17c7fb5 ; Add comment to explain recent change
* lisp/vc/log-edit.el (log-edit-font-lock-keywords): Add comment to
explain recent change.  Proposed by Eli Zaretskii <eliz@gnu.org>.
Ref: https://lists.gnu.org/r/emacs-devel/2025-03/msg00587.html
2025-03-10 20:35:28 +01:00
Martin Rudalics
fd4de89460 Fix setting dedicatedness of WINDOW in 'window--display-buffer' (Bug#76911)
* lisp/window.el (window--display-buffer): Consult WINDOW's
'window-side' parameter in order to find out whether it is a
side window (Bug#76911).
2025-03-10 18:42:00 +01:00
Po Lu
7a72589847 ; Fix compiler warning in html-ts-mode.el
* lisp/textmodes/html-ts-mode.el (treesit-node-end)
(treesit-node-start): Declare.
2025-03-10 20:43:02 +08:00
Mauro Aranda
6d99b74ef7 Fix Package name for cond-star
* lisp/emacs-lisp/cond-star.el: Fix name.  (Bug#76861)
2025-03-10 07:45:21 -03:00
Harald Jörg
442d16266e ; cperl-mode.el: Improve docstring cperl-fontify-trailer
* lisp/progmodes/cperl-mode.el (cperl-fontify-trailer): Document
that this setting also affects indentation (Bug#76868).
2025-03-10 11:40:10 +01:00
Sean Whitton
6d62a293af vc-setup-buffer: Don't set current buffer as parent (bug#59457)
* lisp/vc/vc-dispatcher.el (vc-setup-buffer): Don't set the
current buffer as parent (bug#59457).
2025-03-10 17:14:33 +08:00
Sean Whitton
e09a80143d vc-setup-buffer: Kill local file-local-variables-alist too
* lisp/vc/vc-dispatcher.el (vc-setup-buffer): Kill
file-local-variables-alist variable, too (bug#44698).
* lisp/vc/vc.el (vc-log-internal-common): Don't call
kill-all-local-variables here, that's vc-setup-buffer's job.
2025-03-10 17:14:33 +08:00
Martin Rudalics
cbad6215cf Fix handling of frame position values
* src/frame.c (tty_child_pos_param): Handle additional position
values.  New SIZE argument.
(tty_child_frame_rect): Process size before position.
(Fmake_terminal_frame): Do not store calculated size/position
values in parameters to avoid that a negative absolute position
is later interpreted as position relative to bottom/right edge
of parent.
(Fmodify_frame_parameters): For tty child frames process size
before position values so the latter can take a new size into
account.
* src/frame.h: Adjust declaration of tty_child_pos_param.
* src/gtkutil.c (xg_set_geometry): Handle negative frame
position specifications.
* src/msdos.c (IT_set_frame_parameters): For tty child frames
process size before position parameters.
* src/xfns.c (x_window): In the non-GTK toolkit variant leave
negative position values unchanged - the toolkit should know how
to handle them.  Process child frame position parameters
separately.  In the non-toolkit variant process child frame
parameters separately.
2025-03-10 09:33:17 +01:00
Po Lu
94ba1b097e Reenable mmap-based dump allocation on wide int configurations
* src/pdumper.c (VM_SUPPORTED): Don't define to 0 when
!USE_LSB_TAG if WIDE_EMACS_INT.
2025-03-10 12:44:26 +08:00
Po Lu
ab5bfcebdd Fix bug#76805
* src/xterm.c (x_fast_mouse_position): Clear the mouse_moved
flag whether or not mouse motion is reported, to avoid repeated
polling for mouse movement.  (bug#76806)
2025-03-10 12:41:12 +08:00
Po Lu
d343a80e6e ; Fix function declarations in frame.el
* lisp/frame.el (widget-field-text-end, widget-field-start)
(widget-get): Correct function declarations.
2025-03-10 11:31:50 +08:00
Po Lu
02681b0fbf Don't claim that xftfont is being considered for deletion
* configure.ac: Don't claim that Xft is being considered for
deletion or that recent releases are buggy, or imply that
HarfBuzz support is exclusive to Cairo.
2025-03-10 11:28:38 +08:00
Stefan Monnier
c4a2823166 (makefile-dependency-regex): Fix bug#76759
* lisp/progmodes/make-mode.el (makefile-dependency-regex):
Decompose the regexp to be more understandable, and then change
it so the target part can't accidentally match a TAB.

* test/lisp/progmodes/make-mode-tests.el (make-mode-tests--bug17400):
New test.
2025-03-09 22:07:39 -04:00
Po Lu
5176eeb300 ; Correct typos in commentary and error messages
* src/lisp.h (USE_LSB_TAG):

* src/pdumper.c (pdumper_load): Correct typos in commentary and
error messages.
2025-03-10 09:43:13 +08:00
Mauro Aranda
0861da138b Provide better completion for customizing frame parameters
* lisp/frame.el (frame--special-parameters): New const.
(frame--complete-parameter-value): New function.
(initial-frame-alist, minibuffer-frame-alist): Use them in
:type.  (Bug#39143)
* lisp/cus-start.el (default-frame-alist): Use them here as well.
* src/frame.c (frame_parms): Add comment to try to keep
frame--special-parameters updated.
2025-03-09 19:07:40 -03:00
Stefan Kangas
731af8747c ; Fix byte-compiler warning 2025-03-09 18:29:01 +01:00
Stefan Kangas
ce03bf252a Make second arg to defvar-local optional
This change allows declaring a variable both special
and buffer-local like so:

    (defvar-local foo)

* lisp/subr.el (defvar-local): Make second argument optional.
* test/lisp/subr-tests.el (subr-test-defvar-local): New test.
* doc/lispref/variables.texi (Creating Buffer-Local): Document above change.
* etc/NEWS:

* lisp/mb-depth.el (minibuffer-depth-overlay):
* lisp/minibuf-eldef.el (minibuf-eldef-initial-input)
(minibuf-eldef-initial-buffer-length)
(minibuf-eldef-showing-default-in-prompt, minibuf-eldef-overlay):
* lisp/misc.el (list-dynamic-libraries--loaded-only-p):
* lisp/simple.el (minibuffer-history-isearch-message-overlay): Use
above new one-argument form of 'defvar-local'.
2025-03-09 18:24:22 +01:00
Stefan Kangas
a6523599f9 Use lisp-data-mode in recentf-save-file
* lisp/recentf.el (recentf-save-file-header): Add cookie to use
lisp-data-mode in recentf-save-file.
2025-03-09 18:24:21 +01:00
Stefan Kangas
3396f0e567 Use .eld for some relevant cache and data files
* lisp/bookmark.el (bookmark-default-file):
* lisp/net/nsm.el (nsm-settings-file):
* lisp/progmodes/project.el (project-list-file):
* lisp/saveplace.el (save-place-file): Rename files to have the file
suffix ".eld".  This change is backwards-compatible.
2025-03-09 18:24:21 +01:00
Stefan Kangas
87db670d04 Make locate-user-emacs-file accept a list too
This can be used to migrate to a new name, while also keeping
backwards-compatible support for an old name.

* lisp/files.el (locate-user-emacs-file): Accept a list as the
NEW-NAME argument.
* test/lisp/files-tests.el (files-test-locate-user-emacs-file): New
test for the above.
2025-03-09 18:24:21 +01:00
Stefan Kangas
9c6e8589ee Add test for 'locate-user-emacs-file'
* test/lisp/files-tests.el
(files-test-locate-user-emacs-file): New test.
2025-03-09 18:24:21 +01:00
Po Lu
a5f8ce9f1e Re-port to 32-bit systems without alignment primitives
* configure.ac (ALIGNOF_INT, ALIGNOF_LONG, ALIGNOF_LONG_LONG):
New variables.
(emacs_cv_alignas_unavailable): Define if alignas and structure
alignment primitives are unavailable.  In such an environment,
the MSB tagging scheme must be enabled, as must the GNU malloc.

* msdos/sed2v2.inp: Adjust correspondingly.

* src/alloc.c (union emacs_align_type): Remove types which
contain flexible array members.  The address of a field
subsequent to an aggregate with flexible array members cannot
validly be taken.
(mark_memory) [!USE_LSB_TAG && !WIDE_EMACS_INT]: Strip type bits
before scanning memory.

* src/emacs.c (main):

* src/eval.c (Fautoload_do_load):

* src/fns.c (Frequire): Rename a number of illogically named
fields.

* src/lisp.h (ALIGNOF_EMACS_INT): Define to the natural
alignment of EMACS_INT.
(IDEAL_GCALIGNMENT): New macro.
(USE_LSB_TAG): Disable if no alignment specifiers are available,
WIDE_EMACS_INT is undefined, and the natural alignment of
EMACS_INT falls short of LSB tagging's requirements.
(gflags): Rename illogically named fields and don't define them
as bitfields, which runs afoul of certain compiler issues.
(will_dump_p, will_bootstrap_p, will_dump_with_pdumper_p)
(dumped_with_pdumper_p): Adjust accordingly.

* src/pdumper.c (VM_SUPPORTED): Define to 0 when !USE_LSB_TAG.
It is better to read dump files into the heap by hand than to be
supplied with an address that is not representable.
(_dump_object_start_pseudovector): Rename to
dump_object_start_pseudovector, to avoid encroaching on reserved
names.
(START_DUMP_PVEC): Adjust correspondingly.
(dump_mmap_contiguous_vm): Preserve errno around failure
cleanup.
(dump_bitset_bit_set_p): Work around certain compiler issues.
(pdumper_load) [!USE_LSB_TAG]: Reject dump file allocations
that are not representable as Lisp_Objects.

Tested on i386-unknown-solaris2.10, sparc-sun-solaris2.10.
2025-03-09 23:07:33 +08:00
Sean Whitton
57cef07710 Restore find-function-mode-map (bug#76700)
* lisp/emacs-lisp/find-func.el
(find-function-mode-lower-precedence): New option.
(find-function-mode-map): Restore.
(find-function-mode): Don't unconditionally bind keys into the
global map.  Instead respond to the new user option (bug#76700).
* etc/NEWS: Mention the new option in existing entry.
2025-03-09 21:50:16 +08:00
Mauro Aranda
203747b87f Allow changing theme settings without reloading it
* lisp/custom.el (custom--should-apply-setting): Return non-nil
for an enabled theme.  Provide docstring.  This allows for users
to reevaluate a custom-theme-set-* function and see the settings
applied right away.  (Bug#76685)
(custom--inhibit-theme-enable): Adapt docstring.

* etc/NEWS: Announce the new behavior.
2025-03-09 09:22:29 -03:00
Michael Albinus
5890ee840e Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2025-03-09 12:42:06 +01:00
Michael Albinus
ee789d3d27 * admin/notes/jargon: Add AFK and OOO. 2025-03-09 12:41:40 +01:00
Eli Zaretskii
eb03969846 Merge from origin/emacs-30
35c7837c66 Fix TAGS regeneration with Universal Ctags
2025-03-09 07:33:14 -04:00
Eli Zaretskii
7f655b1188 ; Merge from origin/emacs-30
The following commit was skipped:

b1a9a4a48e Fix crash in daemon when "C-x C-c" while a client frame s...
2025-03-09 07:33:14 -04:00
Eli Zaretskii
bcfa9692f0 Merge from origin/emacs-30
af8017b23f Explicitly document read-string return value
cf03c2b609 Improve docstrings of python.el import management
01bcc6961a ; Improve doc strings of Speedbar
bd9c76ab17 Avoid warnings about 'image-scaling-factor' in builds --w...
2025-03-09 07:33:13 -04:00
Gerd Möllmann
6fb68f4310 Fix drawing to the bottom-right corner of terminals
* src/term.c (tty_write_glyphs_1): Renamed from tty_write_glyphs. Don't
check if writing the bottom-right corner.
(tty_write_glyphs): New function handling case of writing to the
bottom-right corner, and otherwise calling tty_write_glyphs_1.
2025-03-09 12:21:00 +01:00
Mauro Aranda
d01b7c85fe Guard against user saving ediff-meta-diff-buffer
* lisp/vc/ediff-mult.el (ediff-collect-custom-diffs): If the
diff buffer is visiting a file, create a new buffer.  (Bug#3348)

* test/lisp/vc/ediff-mult-tests.el: New test file.
2025-03-09 08:10:17 -03:00
Gerd Möllmann
ba20f73d8e macOS: Don't constrainFrameRect for child frames
* src/nsterm.m ([EmacsWindow constrainFrameRect:toScreen:]): Don't do
anything for child frames.
2025-03-09 11:49:27 +01:00
Rudolf Adamkovič
41c1c6ffac Make sure Comint minibuffer password prompts end with space
* lisp/comint.el (comint-watch-for-password-prompt): Add a trailing
space character to the minibuffer password prompt, if it does not
contain one already, per the minibuffer UI conventions.

Bug#76604
2025-03-09 11:46:51 +02:00
Eli Zaretskii
7e89ef2ced ; Fix documentation of previous change.
* lisp/display-fill-column-indicator.el
(display-fill-column-indicator-warning)
(display-fill-column-indicator-warning-face): Doc fixes.

* etc/NEWS: Announce 'display-fill-column-indicator-warning'.
(Bug#76494).
2025-03-09 11:20:33 +02:00
Elías Gabriel Pérez
2322dea77c Highlight fill-column-indicator when current line is too long
* lisp/display-fill-column-indicator.el
(display-fill-column-indicator-warning): New user option.
(display-fill-column-indicator-warning-face): New face.
(display-fill-column-indicator-mode): Add post-command-hook
if `display-fill-column-indicator-warning' is ON.  (Bug#76494)
2025-03-09 11:10:56 +02:00
Arash Esbati
31ebc00ece ; Add debug spec
* lisp/textmodes/reftex-parse.el (reftex-with-special-syntax): Add
debug spec and docstring.
2025-03-09 09:12:37 +01:00
Mauro Aranda
8bea0aae3b Action button when point is just after it
* lisp/cus-edit.el (Custom-newline): If no button at point,
check for a button before point.  (Bug#72341)
2025-03-09 14:28:25 +08:00
Christoph Badura
00e284fc52 VC: New hook to strip CVS template lines when committing
Add a hook function to strip all lines beginning with "CVS:" from the
commit message as CVS does.  Do this only if 'log-edit-vc-backend' is
'CVS'.  (Bug#72341)

* lisp/vc/log-edit.el
(log-edit-done-strip-cvs-lines): New command.
(log-edit-done-hook): Add it as an option.

* test/lisp/vc/log-edit-tests.el
(log-edit-done-strip-cvs-lines-helper): New function.
(log-edit-done-strip-cvs-lines-cvs)
(log-edit-done-strip-cvs-lines-non-cvs)
(log-edit-done-strip-cvs-lines-only-cvs-colon-blank)
(log-edit-done-strip-cvs-lines-only-cvs-colon): New test cases.

* etc/NEWS: Mention log-edit-done-strip-cvs-lines.
2025-03-09 14:28:25 +08:00
Ben Scuron
35c7837c66 Fix TAGS regeneration with Universal Ctags
* lisp/progmodes/etags-regen.el (etags-regen--append-tags): Move
the "-o" option to before the filename, as Ctags doesn't allow
it to follow the file name.  (Bug#76855)

Copyright-paperwork-exempt: yes
2025-03-09 08:19:01 +02:00
Po Lu
4db604f375 ; * java/org/gnu/emacs/EmacsWindow.java (viewLayout): Typo in comment. 2025-03-09 13:22:59 +08:00
Po Lu
1e289586fc Avoid reserved names in sfnt.c
* src/sfnt.c (_MIN, _MAX): Rename to INS_MIN and INS_MAX.
(sfnt_interpret_run): Adjust accordingly.
2025-03-09 13:20:02 +08:00
john muhl
2f1b1414f7 Use TS to support 'hs-minor-mode' in 'lua-ts-mode'
* lisp/progmodes/lua-ts-mode.el (lua-ts-mode): Add list type to
'treesit-thing-settings'.
* lisp/progmodes/hideshow.el (hs-special-modes-alist):
Remove regular expression based implementation.
* test/lisp/progmodes/lua-ts-mode-resources/hide-show.lua: New file.
* test/lisp/progmodes/lua-ts-mode-tests.el (lua-ts-test-hideshow):
Add test.  (Bug#76693)
2025-03-08 20:50:59 +02:00
Michael Heerdegen
7905ea761a Correct (debug body) edebug specs
This fixes Bug#69865.

* lisp/org/ob-exp.el (org-babel-exp--at-source):
* test/lisp/dired-tests.el (dired-test-with-temp-dirs):
* test/lisp/emacs-lisp/package-tests.el (with-fake-help-buffer):
Fix broken edebug specs (debug body) -> (debug (body)).
2025-03-08 18:35:07 +01:00
Kévin Le Gouguec
f23ee93250 Prevent button.el from clearing help-echo strings
In order to fix one of the issues discussed in bug#61413, i.e.
'buttonize' clobbering the help-echo property set by
'icon-string'.

This is a reasonable interpretation of the button.el
docstrings - "if HELP-ECHO, use that as the `help-echo'
property"; conversely, if not HELP-ECHO, then do not do
anything, preserving existing values for that property.

* lisp/button.el (button--properties): Only add a help-echo
property if HELP-ECHO is non-nil.  Add an additional property
for bookkeeping.
(unbuttonize-region): Check for that bookkeeping property
before clearing help-echo.
* test/lisp/button-tests.el (button--preserve-help-echo):
Validate these changes.
2025-03-08 17:29:34 +01:00
Daniel Colascione
269d337f91 Make windmove repetition more robust
Munge this-command when we hit a movement barrier so we override only on
the very next command instead of at the end of a sequence of movement
commands that didn't encounter a barrier.

* (windmove-do-window-select): Use last-command to remember that we hit
a barrier.
2025-03-08 07:53:07 -08:00