Commit graph

13489 commits

Author SHA1 Message Date
Juri Linkov
9026bfb571 More fixes for kill-region-dwim (bug#69097)
* lisp/simple.el (kill-region-dwim): Move the default nil
to the top of choices.
(kill-region): Set the FORCE argument of 'mark' to non-nil
if kill-region-dwim is non-nil.  That allows everyone to use
non-nil kill-region-dwim even if mark-even-if-inactive is nil.
Don't check 'last-command' if kill-region-dwim is non-nil.
That allows everyone to type C-w twice in a row to delete
two previous words.
2024-09-18 20:20:19 +03:00
Dmitry Gutov
8eb66cca78 Rename project-{find-file-in-root,root-find-file}
* lisp/progmodes/project.el (project-root-find-file):
Rename from 'project-find-file-in-root' (bug#73044).
2024-09-17 12:59:56 +03:00
Stefan Kangas
f27553c30a Add make-directory to symbol-releases.eld
This avoids saying (incorrectly) that it was introduced in Emacs 23.1.

* etc/symbol-releases.eld: Add 'make-directory'.
2024-09-15 14:02:36 +02:00
Po Lu
7793b2fe2a Merge from savannah/emacs-30
709ce2aff1 Port to Haiku R1/beta5
21efdd5ef3 Fix c++-ts-mode font-lock for latest c++ grammar (bug#73191)
ffc00eac53 ; Set Transient's version and add admin/MAINTAINERS entry
3822a5e5d1 * admin/update-copyright: Print reminder to do manual upd...
43b678d3d2 * admin/notes/years: Update.
38de992a5a * etc/TODO: New item "support indentation guides".

# Conflicts:
#	admin/notes/years
#	doc/misc/transient.texi
#	lisp/progmodes/c-ts-mode.el
#	lisp/transient.el
2024-09-15 08:54:50 +08:00
Sean Whitton
691f441717 ; * etc/NEWS: Fix variable name. 2024-09-14 17:35:45 +01:00
Philip Kaludercic
7451bd6e39 Allow 'kill-region' to kill the last word when there is no region
* etc/NEWS: Document the new user option.
* lisp/simple.el (kill-region-dwim): New option.
(kill-region): Respect 'kill-region-dwim'.  (Bug#69097)
2024-09-14 17:01:40 +01:00
Stefan Kangas
efde34f422 ; * etc/NEWS: Delete duplicated section title. 2024-09-14 17:08:58 +02:00
David Fussner
b44c00669a Provide a modified xref backend for TeX buffers
In addition to providing a new `xref' backend, the patch also improves
the general handling of expl3 syntax.  Expl3 is the next-generation
LaTeX specification, and has for some time been available by default in
the LaTeX kernel.  The new syntax co-exists in many files with the
standard LaTeX2e syntax, so we try at least minimally to separate the
way modes handle the two specifications, both to reduce
visually-disturbing interference between them and also to improve the
`xref' backend.  (Bug#53749)

* lib-src/etags.c (TeX_commands): Improve parsing of commands in TeX
buffers.
(TEX_defenv): Expand list of commands to tag by default in TeX buffers.
(TeX_help):
* doc/emacs/maintaining.texi (Tag Syntax): Document new tagged commands.
(Identifier Search): Add note about semantic-symref-filepattern-alist,
auto-mode-alist, and xref-find-references.

* lisp/textmodes/tex-mode.el (tex-font-lock-suscript): Test for
underscore in expl3 files and regions, disable subscript face there.
(tex-common-initialization): Set up xref backend for in-tree TeX modes.
Detect expl3 files, and in others set up a list of expl3 regions.
(tex-expl-buffer-parse): New function called in previous.
(tex-expl-buffer-p): New variable to hold the result of previous.
(tex-expl-region-set): New function added to
'syntax-propertize-extend-region-functions' hook.
(tex-expl-region-list): New variable to hold the result of previous.
(tex--xref-backend): New function to identify the xref backend.
(tex--thing-at-point, tex-thingatpt--beginning-of-symbol)
(tex-thingatpt--end-of-symbol, tex--bounds-of-symbol-at-point):
New functions to return 'thing-at-point' for xref backend.
(tex-thingatpt-exclude-chars): New variable to do the same.
(xref-backend-identifier-at-point): New TeX backend method to provide
symbols for processing by xref.
(xref-backend-identifier-completion-table)
(xref-backend-identifier-completion-ignore-case)
(xref-backend-definitions, xref-backend-apropos): Placeholders to
call the standard 'etags' xref backend methods.
(xref-backend-references): Wrapper to call the default xref backend
method, finding as many relevant files as possible and using a bespoke
syntax-propertize-function when required.
(tex--collect-file-extensions, tex-xref-syntax-function): Helper
functions for previous.
(tex-find-references-syntax-table, tex--buffers-list)
(tex--xref-syntax-fun, tex--old-syntax-function): New variables for
the same.
2024-09-14 17:05:33 +02:00
Stefan Kangas
38de992a5a * etc/TODO: New item "support indentation guides".
Ref:
https://lists.gnu.org/r/emacs-devel/2024-07/msg01062.html
2024-09-14 16:36:56 +02:00
Eli Zaretskii
3e98ad3063 ; * etc/NEWS: Fix last change. 2024-09-14 15:42:15 +03:00
Eli Zaretskii
0cf9886cdf Merge from origin/emacs-30
d509a35699 Fix regression in widget-move (bug#72995)
ef0276de82 ; * lisp/cus-edit.el (setopt): Doc fix.  (Bug#73098)
b115c2d5eb ; * lisp/minibuffer.el (completion-pcm--merge-completions...
3cda1fdc3b Correctly include fixed strings before a prefix wildcard ...
57d93d0259 ; * lisp/treesit.el (treesit-major-mode-setup): Doc fix.
ad289f364e ; Improve documentation of 'easy-menu-define'
3cad7cc8dc Set treesit-primary-parser for c and elixir ts mode
2f243fb91d ; Minor doc fix in treesit.el
6a6d7925c9 Fix range handling so it works for multibyte buffer (bug#...
76faf7e609 Revert "Read more on each call to treesit's buffer reader"
c70bd0e3fe Fix tree-sitter indent preset prev-adaptive-prefix
272df33fb8 ; * CONTRIBUTE: Minor copyedits.
8e1187e336 Improve NEWS entries
ca3932121a Don't fail uniquify-tests in non-version-controlled sourc...
79f68597ab ; * etc/ORG-NEWS: Fix typo.
d66b70f360 * doc/misc/auth.texi: Minor copy edits.
2c6b7b2da9 ; * admin/MAINTAINERS: Remove some entries for Artur Mala...
11e7ae3964 Fix bug#72254

# Conflicts:
#	etc/NEWS
2024-09-14 07:55:01 -04:00
Eli Zaretskii
fe6e58f7c5 Merge from origin/emacs-30
68530860ae ; * ChangeLog.4: Update.
fb1db366b9 ; * etc/AUTHORS: Update.
2024-09-14 07:54:56 -04:00
Sean Whitton
f6417ba91b New commands unix-word-rubout, unix-filename-rubout
* lisp/simple.el (forward-unix-word): New function.
(unix-word-rubout, unix-filename-rubout): New commands.
* etc/NEWS: Announce the new commands.
2024-09-14 12:16:51 +01:00
Eli Zaretskii
0a6e988b8d ; * etc/NEWS: Announce the improvements in w32 GUI dialogs. 2024-09-14 14:02:51 +03:00
Visuwesh
db1eb8a282 Make the *grep* buffer editable
* lisp/progmodes/compile.el (compilation--update-markers):
Factor out function...
(compilation-next-error-function): ...from here.  Adjust
to use the above.
* lisp/progmodes/grep.el (grep-edit--prepare-buffer)
(grep-edit-mode-map, grep-edit-mode-hook, grep-edit-mode)
(grep-change-to-grep-edit-mode, grep-edit-save-changes): Add
new 'grep-edit-mode' to make the grep results editable like
in 'occur-edit-mode' by using the 'occur' framework.
(grep-mode-map): Bind 'e' to the new command
'grep-change-to-grep-edit-mode'.
* doc/emacs/building.texi (Grep Searching): Update Info
manual to include the above command.
* etc/NEWS: Announce the change.  (Bug#70820)
2024-09-14 12:41:29 +03:00
Stefan Kangas
f3bb84e53b * etc/symbol-releases.eld: Fix URL. 2024-09-14 00:51:12 +02:00
Robert Pluim
8e1187e336 Improve NEWS entries
* etc/NEWS: Fix typos, and add information about default values of new
  user options.
2024-09-13 15:42:39 +02:00
Robert Pluim
48d2d616f7 ; * etc/NEWS: Improve 'dired-check-symlinks' entry. 2024-09-13 14:07:17 +02:00
Eli Zaretskii
7376623a24 Improve accuracy of character categories
* lisp/international/characters.el: Assign 'digit' category to all
the characters whose Unicode 'general-category' is Nd.

* admin/unidata/blocks.awk: Add code to assign 'symbol' category
to all characters belonging to the 'symbol' script.

* etc/NEWS: Announce the above changes
2024-09-13 14:31:28 +03:00
Robert Pluim
79f68597ab ; * etc/ORG-NEWS: Fix typo. 2024-09-13 09:50:01 +02:00
Eli Zaretskii
04e8ad6489 Update Emacs sources for Unicode 16.0
* lisp/international/ucs-normalize.el (check-range): Update ranges
of character codes with decompositions.
* lisp/international/mule-cmds.el (ucs-names): Update unused
ranges.
* lisp/international/fontset.el (script-representative-chars)
(otf-script-alist, setup-default-fontset): Add new scripts.
* lisp/international/characters.el:
* admin/unidata/blocks.awk:
* test/manual/BidiCharacterTest.txt:
* test/lisp/international/ucs-normalize-tests.el
(ucs-normalize-tests--failing-lines-part2): Update for Unicode
16.0.

* etc/NEWS: Announce support for Unicode 16.0.
2024-09-12 21:12:09 +03:00
Andrea Corallo
fb1db366b9 ; * etc/AUTHORS: Update. 2024-09-11 21:49:52 +02:00
Michael Albinus
f283144658 Allow to disable symbolic links check in Dired
* doc/emacs/dired.texi (Misc Dired Features):
* doc/misc/tramp.texi (Frequently Asked Questions):
Explain dired-check-symlinks.

* etc/NEWS: Describe dired-check-symlinks.
Fix typos.

* lisp/dired.el (dired-check-symlinks): New defcustom.
(dired-font-lock-keywords): Use it.  (Bug#73046)
2024-09-11 17:42:24 +02:00
Paul Nelson
833158c0b7 Add Ediff feature for copying all differences
* lisp/vc/ediff-util.el (ediff-diff-to-diff): With universal
prefix, copy all differences.

* doc/misc/ediff.texi (Quick Help Commands): Document the new feature.
* etc/NEWS: Announce the new feature.

(Bug#72866)
2024-09-11 10:44:25 +02:00
fpi
8332b4dd07 Allow comments to organizer in icalendar event replies (Bug#72831)
* lisp/gnus/gnus-icalendar.el
(gnus-icalendar-event--build-reply-event-body): Add optional COMMENT
argument to be inserted into the reply.
(gnus-icalendar-event-reply-from-buffer): Add COMMENT argument to be
passed through to gnus-icalendar-event--build-reply-event-body
(gnus-icalendar-reply-accept, gnus-icalendar-reply-tentative,
gnus-icalendar-reply-decline): If interactively called with a prefix
argument ask user for a COMMENT to add to the reply.

* test/lisp/gnus/gnus-icalendar-tests.el
(gnus-icalendar-accept-with-comment,
gnus-icalendar-decline-without-changing-comment): New tests.
2024-09-11 10:04:23 +02:00
Po Lu
76487b7454 Merge from savannah/emacs-30
ee3e3a6311 ; Update version number of exec/configure.ac
c5925b6ba5 Fix heex-ts-mode indentation following previews elixir-mo...
c3383be5f0 ; * admin/make-tarball.txt: Improve last change.
8ddb54117f ; * admin/make-tarball.txt: Remove now unnecessary config...
7e194d33f9 * lisp/ldefs-boot.el: Update.
9019536ea6 Fix use of Uniscribe font driver in MinGW build
5c55c860db Avoid crashes in redisplay in batch-mode testing
ba2190e1ae ; * etc/NEWS: Fix indentation.
818c0cc9a5 eglot-test-rust-completion-exit-function: Fix failure in ...
f47297782b ; * doc/lispref/searching.texi (Rx Notation): Simplify rx...
03e5698167 Clarify the semantics of 'string-pixel-width'
9f0603207b ; * src/treesit.c: Minor cleanups of recent changes.
e0d3f74395 * src/treesit.c (treesit_debug_print_parser_list): Fix fo...
bed38ded73 ; * src/treesit.c (treesit_debug_print_parser_list): Fix ...
18c6487dbd ; * src/treesit.c: Add a prototype so there's no warning ...
bf23382f1f Read more on each call to treesit's buffer reader
3435464452 Fix the range handling in treesit.c
3fcec09f75 Add debugging function for treesit.c
0fd259d166 Fix elixir-ts-mode's range query
2329b36b1f ; project-files-relative-names: Update docstring (bug#72701)
e55e2e1c6b Make json-serialize always return a unibyte string (bug#7...
89c99891b2 ; * doc/lispref/os.texi (Suspending Emacs): Fix last change.
4f044d0d3d ; Improve documentation of 'suspend-emacs'
2024-09-11 13:21:58 +08:00
Michael Albinus
ba2190e1ae ; * etc/NEWS: Fix indentation. 2024-09-10 09:24:33 +02:00
Mattias Engdegård
21ff61372b * etc/emacs_lldb.py (Lisp_Object): Recognise Lisp_Sub_Char_Table 2024-09-09 10:30:02 +02:00
Mattias Engdegård
87daaaf9a4 Speed up LLDB support for debugging Emacs
* etc/emacs_lldb.py (Lisp_Object):
Perform some numeric operations in Python instead of invoking LLDB
for evaluation.  Add lots of caches.
2024-09-09 10:30:02 +02:00
Mattias Engdegård
e55e2e1c6b Make json-serialize always return a unibyte string (bug#70007)
The JSON format is defined as a byte sequence and will always be used as
such, so returning a multibyte string makes little sense.

* src/json.c (json_out_to_string): Remove.
(Fjson_serialize): Return unibyte string.
* test/src/json-tests.el (json-serialize/roundtrip)
(json-serialize/roundtrip-scalars, json-serialize/string):
Update tests.
* doc/lispref/text.texi (Parsing JSON): Document.
* etc/NEWS: Announce.
2024-09-08 20:02:34 +02:00
Eli Zaretskii
8081c08ff1 ; Update NEWS for last change. 2024-09-08 09:46:42 +03:00
Dmitry Gutov
79805652af ; Edit the latest NEWS entry 2024-09-08 05:14:02 +03:00
Eli Zaretskii
6dcd3d2404 Merge from origin/emacs-30
b420e149b1 Fix a typo in ediff-init.el
e1304e9b1b Fix 'chart-space-usage' on MS-Windows
04c44405bf Fix alignment and documentation of vtable.el
4d6fadb8d2 ; * lisp/which-key.el: Fix ':package-version' (bug#73072).
54071b9cef ; Improve doc strings of 'tab-bar-mode' and 'tab-line-mode'
87a8b12a0c Fix test failure in erc-networks-tests
dad0935cfc ; * doc/emacs/building.texi (Lisp Libraries): Update (bug...
e4dc6711b0 Fix :hook in 'use-package'
c1cd036d27 ; * doc/lispref/modes.texi (Mode Line Data): Fox wording.
ae2463796f ; Caveats about using :eval in 'mode-line-format'
4047072c7d Update FSF's address
24f12bdd77 Support the new option in ruby-ts-mode too
6c15b7710d Add new option ruby-bracketed-args-indent
7799ef4335 Fix Rmail base64 and qp decoding of MIME payloads
0def396fa8 Update to Org 9.7.11
8c044bd972 ; Fix recent changes in documentation
e0d8879bcd * test/lisp/emacs-lisp/tabulated-list-tests.el: Add missi...
4ff4b78f92 ; Small doc fixes
da980ad838 ; Reword some "allows Xing"
2ca7d5649c ; More accurate text about how `equal` compares various o...

# Conflicts:
#	etc/NEWS
2024-09-07 06:25:15 -04:00
Spencer Baugh
d879c40f68 * etc/NEWS: Mention it.
Add project-find-file-in-root (bug#73044)

Several users have asked me for a command which is just
find-file, but starting from the project root.  In large
projects, where project-files is expensive, this will have
substantially better performance than project-find-file.

Also, it allows opening files which aren't included in
project-files without paying the further cost of running
project--files-in-directory (which is what happens when passing
INCLUDE-ALL=t to project-find-file).

Also, it may help with user confusion about why
project-find-file doesn't behave like find-file (which I've
encountered a few times).

This command is equivalent to C-x p o C-x C-f, but it's nice to
be able to bind it to a specific key.

Overall, this is easy enough to provide, so let's just do that.

* lisp/progmodes/project.el (project-find-file-in-root): Add.

* etc/NEWS: Mention it.
2024-09-06 19:16:46 +03:00
Stefan Kangas
4047072c7d Update FSF's address
* doc/emacs/emacs.texi (Distrib):
* doc/lispintro/emacs-lisp-intro.texi:
* doc/lispref/elisp.texi:
* doc/misc/org.org (Link Abbreviations):
* etc/tutorials/TUTORIAL.eo:
* lisp/elide-head.el:
* lisp/textmodes/page-ext.el: Update the FSF address to 31 Milk Street.
2024-09-02 21:02:09 +02:00
Dmitry Gutov
24f12bdd77 Support the new option in ruby-ts-mode too
* etc/NEWS: Describe it here.

* lisp/progmodes/ruby-ts-mode.el (ruby-ts--parent-call-or-bol):
Support the option ruby-bracketed-args-indent here too (bug#60321).

* test/lisp/progmodes/ruby-ts-mode-tests.el: Include
ruby-bracketed-args-indent.rb as test examples.

* test/lisp/progmodes/ruby-mode-resources/ruby-bracketed-args-indent.rb:
Extend examples for better regression testing.
2024-09-02 21:57:35 +03:00
Kyle Meyer
0def396fa8 Update to Org 9.7.11 2024-09-01 17:51:22 -04:00
Juri Linkov
4ff4b78f92 ; Small doc fixes
* doc/emacs/dired.texi (Operating on Files): Add indexed function
'dired-do-open' to the text.

* doc/emacs/mini.texi (Completion Options): Add indexed functions
'previous-line-completion' and 'next-line-completion' to the text.

* doc/lispref/minibuf.texi (Completion Variables): Remove self-reference.

* doc/lispref/positions.texi (List Motion): Add indexed function
'treesit-forward-sexp' to the text.  Add @vindex for
'forward-sexp-function'.

* etc/NEWS: Group tab-bar and tab-line items separately.
Move two Buffer-menu items to separate outline.
2024-09-01 19:53:52 +03:00
Sean Whitton
da980ad838 ; Reword some "allows Xing"
* doc/emacs/anti.texi (Antinews):
* etc/NEWS:
* etc/NEWS.29:
* lisp/tab-bar.el (tab-bar-select-restore-windows):
* lisp/vc/vc-git.el (vc-git-print-log-follow): Reword to avoid
"allows Xing".  This is reported to be better for non-native
readers.  Based on suggestions of Eli Zaretskii <eliz@gnu.org>.
2024-09-01 11:20:25 +01:00
Mattias Engdegård
59e0b82776 Better ad-hoc Emacs release of symbol introduction override
The file etc/symbol-releases.eld now contains explicit version
information for selected symbols that our NEWS* scraper doesn't
resolve correctly.

* etc/NEWS.unknown: Remove this file, replaced with...
* etc/symbol-releases.eld: ...this new file.
* lisp/help-fns.el (help-fns--first-release-override)
(help-fns--mention-first-function-release)
(help-fns--mention-first-variable-release): New.
(help-fns--mention-first-release): Try the override information first
before scraping the NEWS* files.
2024-08-31 18:46:36 +02:00
Eli Zaretskii
ca8170d906 ; Fix merge problem in etc/NEWS.30.
Author:
2024-08-31 08:20:44 -04:00
Eli Zaretskii
d1f896b5f8 Merge from origin/emacs-30
4b60267d83 Make Python skeletons available in 'python-ts-mode' as well
62dcbfb776 Merge branch 'emacs-30' of git.savannah.gnu.org:/srv/git/...
1baa62b2ac ; * etc/NEWS: Fix typos.
dfcfaa0ef5 More accurate documentation of 'equal' in ELisp Reference
baaf97ce1a ; Fix some ungrammatical uses of "allows to"

# Conflicts:
#	etc/NEWS
2024-08-31 08:14:13 -04:00
Eli Zaretskii
a18c29a7eb Merge from origin/emacs-30
a0f740c88d ; * lisp/progmodes/flymake.el: Fix "Maintainer" header
a943385813 ; * etc/AUTHORS: Update.
762b85be27 ; Revert "; * admin/authors.el (authors-valid-file-names)...
e24d568b56 ; Revert "Revert "; * admin/authors.el (authors-ignored-f...
2d723a280b Revert "; * admin/authors.el (authors-ignored-files): Add...
2a5b129509 Revert "; * admin/authors.el (authors-ignored-files): Ign...
0db53f14a2 ; * admin/authors.el (authors-ignored-files): Ignore Unic...
6734b60c0c ; * admin/authors.el (authors-valid-file-names): Ignore U...
d809d53afc ; * admin/authors.el (authors-ignored-files): Add removed...
766f69bab1 ; * etc/NEWS: Announce VC-dir "Tracking" header. (bug#68183)
37a097d866 ; * admin/authors.el (authors-aliases): Fix regexps.
0fb50e2631 ; * admin/MAINTAINERS: Spencer Baugh maintains flymake.el.
d05d8c336c xwidget: Fix xwidget-at misinterpreting non-xwidget text-...
13f69f254c Fix rare segfaults due to freed fontsets
427fb319da ; * lisp/simple.el (use-region-beginning, use-region-end)...

# Conflicts:
#	admin/MAINTAINERS
#	etc/NEWS
2024-08-31 08:14:03 -04:00
Eli Zaretskii
deb31ba825 ; * etc/NEWS: Move last added entry to its proper place (bug#72827). 2024-08-31 13:38:45 +03:00
xenodium
c36ff7d8e4 Adds NSSpeechRecognitionUsageDescription to Info.plist.in
Without this, we cannot launch processes that use macOS's
speech recognition APIs.
With NSSpeechRecognitionUsageDescription in place, macOS displays the
dialog asking the user to grant permission and allows the speech APIs
to be used from the process.
* nextstep/templates/Info.plist.in: Add
NSSpeechRecognitionUsageDescription key.  (Bug#72827)

* etc/NEWS: Announce the change.

Copyright-paperwork-exempt: yes
2024-08-31 13:36:05 +03:00
David Ponce
b930a698f2 New macro `with-work-buffer'.
* lisp/emacs-lisp/subr-x.el (work-buffer--list)
(work-buffer-limit): New variables.
(work-buffer--get, work-buffer--release): New function.
(with-work-buffer): New macro.  (Bug#72689)

* etc/NEWS: Announce 'with-work-buffer'.
2024-08-31 11:21:42 +03:00
Eli Zaretskii
b25da8729d ; * etc/NEWS: Minor rewording of last change. 2024-08-31 10:05:01 +03:00
Michael Albinus
1baa62b2ac ; * etc/NEWS: Fix typos. 2024-08-30 14:00:47 +02:00
Sean Whitton
ad18b145a5 ; * etc/NEWS: Grammar fixes. 2024-08-30 11:50:19 +01:00
Sean Whitton
baaf97ce1a ; Fix some ungrammatical uses of "allows to"
* doc/emacs/anti.texi (Antinews):
* etc/NEWS:
* etc/NEWS.29:
* lib/cdefs.h:
* lisp/tab-bar.el (tab-bar-select-restore-windows):
* lisp/vc/vc-git.el (vc-git-print-log-follow):
* m4/gnulib-common.m4 (gl_CHECK_FUNCS_SET_RESULTS):
(gl_CHECK_FUNCS_ANDROID): Fix ungrammatical uses of "allows to".
2024-08-30 11:47:35 +01:00