Commit graph

175425 commits

Author SHA1 Message Date
Thanos Apollo
d276f45320 Add greek-polytonic input method 2024-11-03 09:23:27 +02:00
Thanos Apollo
7cda5fa4cf Improve greek input method
* lisp/leim/quail/greek.el ("greek"): Add sequences for DIALYTIKA
TONOS (U+0385) and add proper bindings for double angle quotation
marks.  (Bug#73909)
2024-11-03 09:21:17 +02:00
Stefan Kangas
d1b67b4a1c * etc/symbol-releases.eld: Add 'set-transient-map'. 2024-11-03 07:25:29 +01:00
Stefan Kangas
2a41f4ae76 Remove Emacs 24.4 compat code from which-key
* lisp/which-key.el (which-key--show-page): Remove Emacs 24.4
compatibility code.
2024-11-03 07:25:29 +01:00
Stephen Gildea
d245fb3964 Expand manual section on Time Stamps
* doc/emacs/files.texi (Time Stamps): Add examples of enabling
time stamping with add-hook and setting time-stamp-pattern as a
file-local variable.
2024-11-02 09:45:09 -07:00
Eli Zaretskii
435d7d4292 Fix color-lightening and darkening calculations
* lisp/color.el (color-lighten-hsl): Fix calculations (bug#74055).

* test/lisp/color-tests.el (color-tests-lighten-hsl)
(color-tests-lighten-name, color-tests-darken-hsl)
(color-tests-darken-name): Adjust test results.
2024-11-02 18:15:25 +02:00
Eli Zaretskii
99650746d9 Revert "Fix color-lighten-hsl logic"
This reverts commit 656c2dd66e.
That commit was mistaken, see bug#74055.
2024-11-02 17:36:02 +02:00
Eli Zaretskii
021c0ba116 ; * lisp/progmodes/c-ts-common.el: Fix merging snafu. 2024-11-02 08:42:35 -04:00
Eli Zaretskii
aac4a939f9 Merge from origin/emacs-30
f7b85fe986 Improve documentation of letter-case conversions
2024-11-02 08:38:11 -04:00
Eli Zaretskii
1c7110dade ; Merge from origin/emacs-30
The following commits were skipped:

0f9d48e99c project-tests: Add test assertion for bug#73801
b4b0d5a853 project-try-vc: Fix the "sometimes wrong cache" issue
8113b5c562 Fix bugs in dabbrev-expand (bug#74090)
3101c5031e Fix undefined variable in previous commit (bug#73900)
2024-11-02 08:38:11 -04:00
Eli Zaretskii
a88863d32f Merge from origin/emacs-30
e6a8492fab Fix c-ts-common-comment-indent-new-line (bug#73900)

# Conflicts:
#	lisp/progmodes/c-ts-common.el
2024-11-02 08:37:53 -04:00
Eli Zaretskii
244b1ade49 ; Merge from origin/emacs-30
The following commits were skipped:

df5ac0daf0 Fix the call to treesit-thing-defined-p
7a3c10dcb5 Backport: Call tab-bar-tab-post-open-functions during tab...
2024-11-02 08:34:43 -04:00
Eli Zaretskii
9bc6362d6e Merge from origin/emacs-30
98796f95fa Work on proced-tests.el
8a4d13e370 ; * doc/lispref/frames.texi (Yanking Media): Add index en...
0aae02a374 * lisp/files.el (require-with-check): Be a bit more lenie...
cc6a11f483 (with-peg-rules): Fix references to rulesets (bug#74018)
70f084db2f ; * etc/NEWS: Fix typo (bug#74066).
9e1abf11fc Tweak doc w.r.t to "void function" (bug#73886)
7a8ca202c5 Fix flakey proced refine tests (Bug#73441)
55a8cec013 Another 'void' update
2024-11-02 08:34:42 -04:00
Eli Zaretskii
74d3232522 ; * lisp/net/eww.el (eww--html buffer-list): Fix comment style. 2024-11-02 13:33:36 +02:00
Sebastián Monía
6a0c2b8729 More lax doctype check in EWW (bug#73133)
The regexp to match doctype tags was simplified and will match
more legacy entries; also correct binding of 'case-fold-search'.
* lisp/net/eww.el (eww--html buffer-list): Update function.
2024-11-02 13:32:06 +02:00
Eli Zaretskii
0a6d46228d ; * src/nsterm.m (ns_draw_fringe_bitmap): Fix coding style. 2024-11-02 13:16:41 +02:00
Daniel Pettersson
87358e9404 Fix inconsistency in bitmap overlay drawing for macOS
* src/nsterm.m (ns_draw_fringe_bitmap): Respect 'overlay_p',
by not clearing fringe if set, as its done in xterm.  (Bug#71763)
2024-11-02 13:15:13 +02:00
Stefan Kangas
4df832750c Don't start docstrings with "This function"
* lisp/calculator.el (calculator-add-operators):
* lisp/erc/erc-log.el (erc-generate-log-file-name-with-date)
(erc-generate-log-file-name-short):
* lisp/eshell/esh-mode.el (eshell-begin-on-new-line):
* lisp/progmodes/hideif.el (hif-merge-ifdef-region):
* lisp/tab-bar.el (tab-bar--event-to-item):
* lisp/textmodes/artist.el (artist-no-rb-unset-point2)
(artist-no-rb-unset-points):
* lisp/which-key.el (which-key--hide-popup): Don't start function
docstrings with "This function".
2024-11-01 23:56:12 +01:00
Stefan Kangas
471716c67d Mark unused reftex variable as obsolete
* lisp/textmodes/reftex-vars.el
(reftex-toc-split-windows-horizontally-fraction): Mark unused variable
as obsolete in favor of 'reftex-toc-split-windows-fraction'.
2024-11-01 23:56:07 +01:00
Jim Porter
673c906a5b Improve evaluation of conditional Eshell forms
This simplifies the logic for building these forms and also fixes an
issue where a subcommand in a "&&" or "||" conditional had its output
suppressed.

* lisp/eshell/esh-cmd.el (eshell-structure-basic-command): Make
obsolete.
(eshell-silence-test-command): New function...
(eshell-rewrite-while-command, eshell-rewrite-if-command): ... use it,
and make the command form ourselves.
(eshell-parse-pipeline): Use 'and' and 'or' to make the conditional
command sequence.
(eshell-command-success): New macro.
(eshell-do-eval): Add support for 'and' and 'or' forms.

* test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/and-operator/output)
(esh-cmd-test/or-operator/output): New tests.
2024-11-01 11:41:21 -07:00
Stephen Gildea
ffda8dfe84 ; time-stamp: Reformat some long doc strings for clarity.
* lisp/time-stamp.el (time-stamp-format, time-stamp-pattern): Reformat
doc strings for clarity.
(group time-stamp): is a subgroup of "files", not "data".
The "data" group seems to be for editing non-text files.
* test/lisp/time-stamp-tests.el: Fix tense of some doc strings.
2024-11-01 09:36:07 -07:00
Eli Zaretskii
f7b85fe986 Improve documentation of letter-case conversions
* doc/lispref/nonascii.texi (Character Properties):
* doc/lispref/strings.texi (Case Conversion, Case Tables):
Document that special-casing rules override the case-table
conversions.  (Bug#74155)
2024-11-01 16:39:39 +02:00
Manuel Giraud
872be2bb5f New `tmm-menubar' shortcut display style
Bug#74111
* lisp/tmm.el (tmm-shortcut-inside-entry): New user option to
control if the shortcut character is highlighted inside the menu
entry's string.
(tmm-add-one-shortcut): Compute the new shortcut style.
(tmm-add-prompt, tmm-completion-prompt): Adapt the completion
prompt according to the shortcut display style.
(tmm-prompt): Adapt the prompt regexp.
(tmm-shortcut): Simplify default case and make it work with this
change.
* etc/NEWS: Announce the option.
2024-11-01 14:08:29 +02:00
Eli Zaretskii
1863028742 Revert "Remove undefined variable from c-ts-common.el"
This reverts commit 9ff155183c.
This problem was already fixed on the release branch m and
the fix will merged soon.  (Bug#74149)
2024-11-01 09:18:01 +02:00
Jim Porter
9682d385c1 Improve correctness of Eshell globs when using escape characters
This new implementation opts *in* to treating characters as glob
characters, rather than opting out.  This reduces the need to coordinate
with other parts of Eshell and should be harder to break (bug#74033).

* lisp/eshell/em-glob.el (eshell-parse-glob-chars): Return the
propertized globbing character directly.
(eshell--propertize-glob, eshell--glob-char-p)
(eshell--contains-glob-char-p, eshell--all-glob-chars-p): New functions.
(eshell-glob-p): Make obsolete.
(eshell-glob-regexp, eshell-glob-convert-1, eshell-glob-convert): Check
for 'eshell-glob-char' property.
(eshell-extended-glob): Remove text properties when returning no match.
(eshell--glob-anything): New constant.
(eshell-glob-entries): Propertize "*" to treat it as a glob.

* lisp/eshell/em-ls.el (eshell-ls--expand-wildcards): New function...
(eshell-ls--insert-directory): ... use it.

* test/lisp/eshell/em-glob-tests.el: Use 'eshell--propertize-glob' in
tests.
(em-glob-test/convert/literal-characters)
(em-glob-test/convert/mixed-literal-characters): New tests.

* lisp/eshell/em-glob.el (eshell-expand-glob): Rename from
'eshell-extended-glob'.  Update callers.
(eshell-extended-glob): New function to expand a GLOB that hasn't been
propertized yet, for use outside of Eshell command forms.
(eshell-parse-glob-chars): Return the propertized globbing character
directly.
(eshell-parse-glob-string, eshell--glob-char-p)
(eshell--contains-glob-char-p, eshell--all-glob-chars-p): New functions.
(eshell-glob-regexp, eshell-glob-convert-1, eshell-glob-convert): Check
for 'eshell-glob-char' property.
(eshell-glob-p): Make obsolete.
(eshell--glob-anything): New constant...
(eshell-glob-entries): ... use it.

* lisp/eshell/em-ls.el (eshell-ls--expand-wildcards): New function...
(eshell-ls--insert-directory): ... use it.

* test/lisp/eshell/em-glob-tests.el: Use 'eshell-parse-glob-string in
tests.
(em-glob-test/convert/literal-characters)
(em-glob-test/convert/mixed-literal-characters): New tests.
2024-10-31 22:38:10 -07:00
Jim Porter
98e24e369a Fix and improve behavior of 'eshell/clear'
* lisp/eshell/esh-mode.el (eshell-clear): New function.
(eshell/clear): Fix incorrect behavior, and do the right thing when
'eshell-scroll-show-maximum-output' is nil.
(eshell/clear-scrollback): Call 'eshell/clear'.

* test/lisp/eshell/esh-mode-tests.el
(esh-mode-test/clear/eshell-command)
(esh-mode-test/clear/eshell-command/erase)
(esh-mode-test/clear/emacs-command)
(esh-mode-test/clear/emacs-command/erase): New tests.

* etc/NEWS: Mention the new 'eshell-command' (bug#73722).
2024-10-31 22:36:16 -07:00
Steven Allen
9ff155183c Remove undefined variable from c-ts-common.el
This variable came from code copied from c-indent-new-comment-line.
It's a parameter meant to be used by c-context-line-break, not a
global variable.

* lisp/progmodes/c-ts-common.el (c-ts-common-comment-indent-new-line):
Remove reference to undefined variable.  (Bug#74149)
2024-11-01 02:17:24 +01:00
Dmitry Gutov
0f9d48e99c project-tests: Add test assertion for bug#73801
* test/lisp/progmodes/project-tests.el
(project-vc-extra-root-markers-supports-wildcards): End with a
check that we didn't cache a wrong value for parent (bug#73801).

(cherry picked from commit 94a9e40e82)
2024-11-01 02:35:08 +02:00
Dmitry Gutov
b4b0d5a853 project-try-vc: Fix the "sometimes wrong cache" issue
* lisp/progmodes/project.el (project-try-vc--search):
Extract from 'project-try-vc'.
(project-try-vc): Use it.
(project-try-vc--search): Call itself recursively directly, to
avoid creating invalid cache entry (bug#73801).

(cherry picked from commit 29b30eb49f)
2024-11-01 02:34:36 +02:00
Dmitry Gutov
94a9e40e82 project-tests: Add test assertion for bug#73801
* test/lisp/progmodes/project-tests.el
(project-vc-extra-root-markers-supports-wildcards): End with a
check that we didn't cache a wrong value for parent (bug#73801).
2024-11-01 02:32:10 +02:00
Jim Porter
33997047e8 Don't remove trailing slash in Eshell "pwd" for remote root directories
* lisp/eshell/em-dirs.el (eshell/pwd): Check if 'file-local-name' of the
directory is the root dir.
2024-10-31 10:37:24 -07:00
Robert Pluim
9fe7b8ca41 ; * lisp/vc/smerge-mode.el: Fix typo in comment. 2024-10-31 16:28:44 +01:00
Stephen Berman
8113b5c562 Fix bugs in dabbrev-expand (bug#74090)
* lisp/dabbrev.el (dabbrev-expand): Use the buffer where the
expansion was found when setting the internal variables used to
determine the next expansion or a replacement expansion.

* test/lisp/dabbrev-tests.el (ert-x): Require for
'ert-with-temp-directory', 'ert-resource-directory' and
'ert-resource-file'.
(with-dabbrev-test): New macro.
(dabbrev-expand-test-same-buffer-{1,2,3,4})
(dabbrev-expand-test-other-buffer-{1,2,3,4})
(dabbrev-expand-test-minibuffer-{1,2,3,4}): New tests.

* test/lisp/dabbrev-resources/dabbrev-expand.el:
* test/lisp/dabbrev-resources/INSTALL_BEGIN: New test resources.

(cherry picked from commit f6c359cb66)
2024-10-31 12:12:25 +01:00
Cecilio Pardo
bf395fd8bc Fix 'yank-media' to allow yanking SVG data
* lisp/net/mailcap.el (mailcap-mime-type-to-extension): Return
"svg" for mime type 'image/svg+xml'.  Org-mode uses this.
* lisp/yank-media.el (yank-media--find-matching-media): If svg is
supported, don't filter out 'image/svg+xml'.  (Bug#74044)
2024-10-31 12:36:31 +02:00
Augusto Stoffel
9c5b6e88e7 shr.el: Define rendering rule for math tag
* lisp/net/shr.el (shr-tag-math): New function, see bug#73641.
2024-10-31 12:19:48 +02:00
Stephen Berman
f6c359cb66 Fix bugs in dabbrev-expand (bug#74090)
* lisp/dabbrev.el (dabbrev-expand): Use the buffer where the
expansion was found when setting the internal variables used to
determine the next expansion or a replacement expansion.

* test/lisp/dabbrev-tests.el (ert-x): Require for
'ert-with-temp-directory', 'ert-resource-directory' and
'ert-resource-file'.
(with-dabbrev-test): New macro.
(dabbrev-expand-test-same-buffer-{1,2,3,4})
(dabbrev-expand-test-other-buffer-{1,2,3,4})
(dabbrev-expand-test-minibuffer-{1,2,3,4}): New tests.

* test/lisp/dabbrev-resources/dabbrev-expand.el:
* test/lisp/dabbrev-resources/INSTALL_BEGIN: New test resources.
2024-10-31 10:46:27 +01:00
Yuan Fu
3101c5031e
Fix undefined variable in previous commit (bug#73900)
I somehow thought allow-auto-fill is a global variable that's
used by cc.  But it's not.  It's just a function param used by
c-indent-new-comment-line.

* lisp/progmodes/c-ts-common.el:
(c-ts-common-comment-indent-new-line): Remove reference to
allow-auto-fill.
2024-10-30 18:18:50 -07:00
Yuan Fu
e6a8492fab
Fix c-ts-common-comment-indent-new-line (bug#73900)
* lisp/progmodes/c-ts-common.el:
(c-ts-common-comment-indent-new-line): Delete trailing
whitespace before inserting newline.  The insert-line-break
function is the same as in c-indent-new-comment-line.
2024-10-30 18:18:06 -07:00
Yuan Fu
df5ac0daf0
Fix the call to treesit-thing-defined-p
* lisp/treesit.el (treesit-defun-at-point): Add the necessary
2nd argument.
2024-10-30 18:17:59 -07:00
Juri Linkov
7a3c10dcb5 Backport: Call tab-bar-tab-post-open-functions during tabs initialization
* lisp/tab-bar.el (tab-bar-tabs): Run the hook
'tab-bar-tab-post-open-functions' after creating the first tab
in the selected frame's tab-bar list of tabs (bug#74087).
Suggested by Ship Mints <shipmints@gmail.com>.

(cherry picked from commit 2c062dfdf5)
2024-10-30 21:27:27 +02:00
Juri Linkov
2c062dfdf5 Call tab-bar-tab-post-open-functions during tabs initialization
* lisp/tab-bar.el (tab-bar-tabs): Run the hook
'tab-bar-tab-post-open-functions' after creating the first tab
in the selected frame's tab-bar list of tabs (bug#74087).
Suggested by Ship Mints <shipmints@gmail.com>.
2024-10-30 20:32:28 +02:00
Eli Zaretskii
57fe24961f Prevent 'string-pixel-width' from deactivating the region
* lisp/emacs-lisp/subr-x.el (work-buffer--release)
(string-pixel-width): Bind 'deactivate-mark' around buffer
modifications, to avoid deactivating the region as side effect of
calling this function.  (Bug#74091)
2024-10-30 16:55:52 +02:00
Laurence Warne
98796f95fa Work on proced-tests.el
* test/lisp/proced-tests.el
(proced--assert-process-valid-cpu-refinement-explainer): New function
for explaining refinement test failures in greater detail.
2024-10-30 15:12:13 +01:00
Michael Albinus
1bf1753d79 Tramp: Use when-let*', if-let*' and `and-let*' consequently
* lisp/net/tramp-adb.el:
* lisp/net/tramp-androidsu.el:
* lisp/net/tramp-cache.el:
* lisp/net/tramp-cmds.el:
* lisp/net/tramp-compat.el:
* lisp/net/tramp-container.el:
* lisp/net/tramp-crypt.el:
* lisp/net/tramp-ftp.el:
* lisp/net/tramp-fuse.el:
* lisp/net/tramp-gvfs.el:
* lisp/net/tramp-integration.el:
* lisp/net/tramp-message.el:
* lisp/net/tramp-rclone.el:
* lisp/net/tramp-sh.el:
* lisp/net/tramp-smb.el:
* lisp/net/tramp-sshfs.el:
* lisp/net/tramp-sudoedit.el:
* lisp/net/tramp.el:
* test/lisp/net/tramp-tests.el:
Use `when-let*', `if-let*' and `and-let*' consequently.  (Bug#73441)
2024-10-30 10:39:02 +01:00
Sean Whitton
679c0c7b94 ; Revise improvements to vc-git-stash-read
* lisp/vc/vc-git.el (vc-git-stash-read): Use a keyword argument.
Abbreviate the prompt reference to the most recent stash.
(vc-git-stash-pop): Update call to vc-git-stash-read.
2024-10-30 09:34:12 +08:00
Eli Zaretskii
8a4d13e370 ; * doc/lispref/frames.texi (Yanking Media): Add index entry. 2024-10-29 16:27:51 +02:00
Sean Whitton
6a2e49e53f ; * lisp/vc/vc-git.el (vc-git-stash-read): Use string-empty-p. 2024-10-29 20:55:03 +08:00
Sean Whitton
4024c5db89 ; * lisp/vc/vc-git.el (vc-deduce-fileset): Declare. 2024-10-29 20:32:21 +08:00
Sean Whitton
90ffe8a36b Improve prompting for git stashes
* lisp/vc/vc-git.el (vc-git-stash-read): New DEFAULT-MOST-RECENT
optional argument.  Use format-prompt.  Signal user-error
immediately if there are no stashes.  Rewrite docstring.
(vc-git-stash-show, vc-git-stash-apply, vc-git-stash-pop)
(vc-git-stash-delete): Drop trailing ": " from prompts.
(vc-git-stash-pop): Pass non-nil DEFAULT-MOST-RECENT to
vc-git-stash-read.
2024-10-29 20:06:48 +08:00
Sean Whitton
4a49c50a4c VC Git: Use vc-deduce-fileset to determine what to stash
* lisp/vc/vc-git.el (vc-git--deduce-files-for-stash): New function.
(vc-git-stash, vc-git-stash-snapshot): Use it to determine what
to stash.  Update and expand docstrings.
(vc-git-stash-snapshot): No longer unconditionally snapshot all
uncommitted changes across the whole working tree.
2024-10-29 20:06:48 +08:00