c36fe3df17 Fix c-ts-mode imenu defun name (bug#60296)
a24e350170 Fix treesit--children-covering-range-recurse (bug#60301)
fbb4eb919b Support treesit-defun-name in tree-sitter major modes
6253184afc ; * lisp/treesit.el (treesit-defun-at-point): Guard again...
f8e219ebfa Add treesit-defun-name and friends
35c2ca2ca6 Make treesit-node-at/on guess language at point
7f7def2ae6 ; Add treesit-no-parser error
b6a2e1ddf6 * nt/INSTALL.W64: update instructions for setting up W64 ...
265b91d891 Revert "; Bump minimum supported Windows version for MinG...
75155e4586 ; Bump minimum supported Windows version for MinGW64 to W...
677f6c79eb ; Update minimum requirements of MinGW-w64
7723af5e4a ; * lisp/progmodes/c-ts-mode.el: quote literal string in ...
38866510c7 ; * src/xdisp.c (redisplay_internal): Reinstate the FRAME...
a825aa0b13 Fix definition of CNS 11643-15 charset
a42b20dd95 ; * lisp/progmodes/c-ts-mode.el: Add outline section head...
e4e3634539 Improve c-ts-mode block comment indent (bug#60270)
e30621caa2 ; Add treesit_recursion_limit
6a43af5880 Fix block comment indent and filling for c-ts-mode (bug#5...
e492c21e81 Fix treesit_cursor_helper (bug#60267)
4437dbedf7 Fix restart-emacs alarms (Bug#60220)
121a9ff9f6 Fix alternate stack test in configure
84888080ee Add more functions to "string" shortdoc
c90f97d4e5 Make the Contour terminal an alias of xterm-256color
c3fac9465f ; Fix punctuation in last change.
756bb422a4 Correct wrong info in (info)Go to node
a8c3424d28 Fix typo in TUTORIAL.fr (bug#60261)
24cd2f0daf Add some diff-fixup-modifs tests
d32091199a Fix quoted argument in emacsclient-mail.desktop Exec key
286c48137f ert-x: Move window selection logic to its own macro
823c49cea8 ; ert-x: Simplify `ert-with-test-buffer-selected'
38c6abe4d0 ; ert-x: Add test for buffer read-only state
0e39ad6fa5 Fix crash after X error
(condition-case x A (:success B)) should not compile A for-effect even
if the entire form is in for-effect context.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
Don't optimise the condition-case body form for effect (potentially
discarding its value) if there is a success handler and a variable.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases):
Add test cases.
* lisp/emacs-lisp/ert-x.el (ert-with-buffer-selected): New macro to
temporarily display a buffer in a selected window and evaluate a body.
(ert-with-test-buffer-selected): Use the new macro.
* test/lisp/whitespace-tests.el
(ert-test-with-buffer-selected/current)
(ert-test-with-buffer-selected/selected)
(ert-test-with-buffer-selected/nil-buffer)
(ert-test-with-buffer-selected/modification-hooks)
(ert-test-with-buffer-selected/read-only)
(ert-test-with-buffer-selected/return-value): Add tests.
(Bug#60189)
e59216d3be * Invoke spawed Emacs processes with '-Q' when native com...
777b383dd0 Fix Eshell electric slash when used from the root directo...
c088cdad9e Fix the --without-all build with tree-sitter
ec9fbad908 Fix write-region to null device on MS-Windows
f35da11199 message: Do not default to eudc-capf-complete yet
98c16a8c88 ; * lisp/tab-bar.el: Remaining renaming of "fixed-width" ...
d76d7a3beb whitespace: Avoid mutating original buffer's markers in c...
* lisp/cedet/semantic/decorate/include.el
(semantic-decoration-unparsed-include-reference-reset): Rename
from 'semantic-decoration-unparsed-include-refrence-reset'.
* lisp/emacs-lisp/rx.el (rx--normalize-or-arg): Rename from
'rx--normalise-or-arg'.
* lisp/frame.el (frame--current-background-mode): Rename from
'frame--current-backround-mode'.
* lisp/url/url-future.el (url-future-canceled-p): Rename from
'url-future-cancelled-p'. Update all uses. Make old names into
obsolete function aliases.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-if):
Remove explicit clauses purposing to simplify
(if X nil t) -> (not X)
(if X t nil) -> (not (not X))
but never did so because of a coding mistake (eq instead of equal),
found by a recently added warning. They weren't actually needed
thanks to the optimiser's fixpoint iteration: we eventually get the
same results through
(if X nil t) -> (if (not X) t nil) -> (if (not X) t) -> (not X)
(if X t nil) -> (if X t) -> (not (not X))
* lisp/emacs-lisp/gv.el (alist-get):
Evaluate TESTFN exactly once (previously up to 3 times).
Reduce the macro-expansion to include a call to either assoc or assq,
not both; this reduces the generated code size in some cases.
12e26cc0c1 ; * admin/git-bisect-start: Add mistakenly ommitted commi...
9a751e0a38 ruby-mode: Support endless singleton method definitions too
ce7b7e5af3 Remove comment-start-skip preset in tree-sitter indentati...
c1e015ae32 Fix recent change in tramp-smb.el
cf1b771864 ; * etc/NEWS: Fix typos.
50d18bb6ea Make tramp-archive autoloads robust for older Emacs versions
3941cc29df ; Improve documentation of 'setopt'
6f88de109c ruby-mode: Support endless methods (bug#54702)
91dd893e34 ; * lisp/progmodes/sql.el (sql-product-interactive): Doc ...
138d9dc4cb * lisp/cus-edit.el (setopt--set): Warn instead of rasing ...
d1e0542f33 Allow customising windmove user options with an empty prefix
c2375e7791 Improve and extend admin/git-bisect-start
7cc2313eb0 Make 'rmail-summary-by-thread' faster
88e59b16cb ; Improve documentation of installing tree-sitter and gra...
897f33bf31 Fix the MS-DOS build
660e941235 Avoid crashes in PGTK build due to signal in 'note_mouse_...
0fc5fb2d05 Fix MS-Windows build broken by recent treesit.c changes
5b2e6d04ce Fix wrong capture in typescript-ts-mode (bug#60167)
cb8ccdd267 Add rust-ts-mode (Bug#60136)
9fcf764dd7 Indentation fixes for jsx/tsx (bug#60169)
69f2c71135 Fix treesit-query-validate problem with view-mode
1fc7535546 Use cursor API in treesit-node-parent
5f0286c0af Switch to use cursor API in treesit.c
a275e436df Add treesit_assume_true and treesit_cursor_helper
a54c7a8df0 Remove file-exists-in-trash-p
3e02029642 Update to Org 9.6-49-g47d129
4a8ff671b0 Don’t assume make-directory handler returns nil
44c83b239d Fix copy-directory bug when dest dir exists
bef1edc9ca make-directory now returns t if dir already exists
8a9579ca29 Use make-directory handlers uniformly
627e7e0243 Improve documentation of 'file-exists-p'
c9015ef55f Fix resizing of mini-windows by 'set-minibuffer-message'
5a245bc786 Prevent Abort dialogs from async-compiling jobs on Windows
4d1e4a4893 Fix 'window-max-chars-per-line' when there are no fringes
d65beb820c ; Revert "; * lisp/subr.el (internal--with-narrowing): Si...
1c0b90e5f7 ruby-mode: Recognize instance or global var as first arg ...
3356c0cb16 Fix end-of-defun in ruby-mode
# Conflicts:
# etc/NEWS
Lambda expressions are not comparable; warn about calls such as
(eq x (lambda ...)) etc.
* lisp/emacs-lisp/bytecomp.el (bytecomp--dodgy-eq-arg): Rename to...
(bytecomp--dodgy-eq-arg-p): ...this. Use pcase. Add lambda checks.
(bytecomp--value-type-description, bytecomp--arg-type-description)
(bytecomp--check-eq-args, bytecomp--check-memq-args): Add function
checks. Update calls. Make compiler-macro arguments optional to
avoid crashes in malformed code.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp--with-warning-test): Simplify argument. Run each
compilation with a fresh (empty) warning cache. Add ert-info for
easier debugging.
(bytecomp-warn-dodgy-args-eq, bytecomp-warn-dodgy-args-memq):
Add lambda tests.
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
When a compiler-macro handler is re-invoked (after macro-expanding
arguments), actually use the result instead of pointlessly dropping it
on the floor.
* lisp/emacs-lisp/comp.el (comp-run-async-workers): Disable Abort
dialog popping in the sub-processes that perform async
compilation, by passing w32-disable-abort-dialog=t on their
command line.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-if):
Remove explicit clauses purposing to simplify
(if X nil t) -> (not X)
(if X t nil) -> (not (not X))
but never did so because of a coding mistake (eq instead of equal),
found by a recently added warning. They weren't actually needed
thanks to the optimiser's fixpoint iteration: we eventually get the
same results through
(if X nil t) -> (if (not X) t nil) -> (if (not X) t) -> (not X)
(if X t nil) -> (if X t) -> (not (not X))
* lisp/emacs-lisp/gv.el (alist-get):
Evaluate TESTFN exactly once (previously up to 3 times).
Reduce the macro-expansion to include a call to either assoc or assq,
not both; this reduces the generated code size in some cases.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-if):
Remove explicit clauses purposing to simplify
(if X nil t) -> (not X)
(if X t nil) -> (not (not X))
but never did so because of a coding mistake (eq instead of equal),
found by a recently added warning. They weren't actually needed
thanks to the optimiser's fixpoint iteration: we eventually get the
same results through
(if X nil t) -> (if (not X) t nil) -> (if (not X) t) -> (not X)
(if X t nil) -> (if X t) -> (not (not X))
* lisp/emacs-lisp/gv.el (alist-get):
Evaluate TESTFN exactly once (previously up to 3 times).
Reduce the macro-expansion to include a call to either assoc or assq,
not both; this reduces the generated code size in some cases.
99aa00e6e3 Revert 21b387c39b with last-minute hasty changes (bug#60...
386d6e74d8 Replace an erroneous eq with an equal in cc-defs.el
eb06947063 * lisp/tab-bar.el ([tab-bar]): Use 'make-sparse-keymap' i...
26243f7b65 compile.el: Fix regression with nb of errors in modeline
6e2923d80f Make tab-bar-tab-group-format-function backwards-compatib...
b211a63455 Make tab-bar-tab-group-format-function also handle curren...
367022f316 Ensure package directories for source packages from check...
3a633bdd6d ; * etc/NEWS: Fix recent changes.
6aa5d16c64 * test/README (SELECTOR): Add eglot-tests.el to remote fi...
bb27be36dd Fix bug#60060 in Tramp
d4c2aa4f91 ; * lisp/net/tramp-crypt.el: Fix comment.
8404253d17 * .gitignore: Ignore GDB history files.
12684c3a19 Mention 'tree-sitter' in user manual and NEWS
49d7e0cec6 ; * etc/NEWS: Rearrange entries for tree-sitter supported...
0ad2112a2f ; Announce 'toml-ts-mode' in NEWS.
# Conflicts:
# etc/NEWS
a15cd55044 ; Don't quote nil in comments
da39200c4b ; Checkdoc fixes in dired-aux.el
fd403a5c5a Fix ruby-add-log-current-method after nested class defini...
2ca06aed7b Add indent rules to js/typescript/tsx-ts-mode (bug#60074)
a54d5f500c Improve fontification in csharp-ts-mode (bug#59897)
3db2f560bb Revert "Add expression for generic_name in csharp-ts-mode"
1985762fbd Introduce support for TOML config-format
622838b957 Fix handling of % when searching in .tex or .dtx files
3b226b6024 Treat C++ classes as defuns in C Tree-sitter mode (bug#60...
480f41c7de Add < and > to the syntax table in c++-ts-mode (bug#60049)
fbf0d3b796 Improve fontifications in Typescript mode
f93a5180a6 Update the documentation of overlays (bug#59996)
d51b66ed54 ; Improve description of scoping and let-bindings
752f9dde63 ; Fix a typo in window.el
102a3e3b44 Don't send erc-sasl-user as USER command argument
f0c9088878 Set erc-network to a "given" ID instead of failing
09c0c6b2ba Limit casemapping to appropriate ranges in ERC
44b04c0ac1 Actually accept non-symbols as IDs in erc-open
75f26646d4 ; Be nicer when updating browse-url var in erc-compat
0155fc67be Respect a nil erc-session-password when reconnecting
9ac80e8a6e Add dedicated auth-source section in ERC manual
2d96a18cd0 ; * lisp/emacs-lisp/shortdoc.el: fix mistakes in previous...
1d3cbba7df ; * lisp/progmodes/cmake-ts-mode.el (auto-mode-alist): $ ...
0cc199f1a6 Better shortdoc examples
931d97bf56 Shortdoc: read and evaluate strings after :eval
be165f7533 Fix Tramp tests in eglot-tests, prefix tests uniquely
8c30cb90ba * lisp/vc/vc-git.el (vc-git-checkin): Use make-nearby-tem...
3efe4df1d2 Delete temp files after icalendar tests
# Conflicts:
# etc/NEWS
* lisp/emacs-lisp/package-vc.el (package-vc-install-from-checkout):
Set the :dir entry, since `package-vc--unpack-1' assumes the field is
set, as is the case when invoking `package-vc--unpack'.
Add a byte-compiler warning about attempts to compare literal values
with undefined identity relation to other values. For example:
(eq x 2.0)
(memq x '("a" (b) [c]))
Such incomparable values include all literal conses, strings, vectors,
records and (except for eql and memql) floats and bignums.
The warning currently applies to eq, eql, memq, memql, assq, rassq,
remq and delq.
* lisp/emacs-lisp/bytecomp.el (bytecomp--dodgy-eq-arg)
(bytecomp--value-type-description, bytecomp--arg-type-description)
(bytecomp--warn-dodgy-eq-arg, bytecomp--check-eq-args)
(bytecomp--check-memq-args): New.
(eq, eql, memq, memql, assq, rassq, remq, delq):
Set compiler-macro property.
* lisp/emacs-lisp/byte-run.el (with-suppressed-warnings):
Amend doc string.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp--with-warning-test): Fix text-quoting-style and expand
re-warning so that it doesn't need to be a literal.
(bytecomp-warn-dodgy-args-eq, bytecomp-warn-dodgy-args-memq):
New tests.
* lisp/emacs-lisp/shortdoc.el
(symbol, comparison): New.
(string, list, number): Remove or change examples that do not have
well-defined results, such as `eq` on strings or floats.
Edit other examples for better illustrating each respective operation.
* lisp/emacs-lisp/shortdoc.el (shortdoc--display-function):
If the parameter of :eval is a string then read, evaluate and print
the result. This was always the intention and is documented behaviour.
cd5856e403 Fix bug when calling `rgrep` non-interactively
ba4bdd6a25 Adapt Tramp specific tests in eglot-tests.el
1d5c35c8e4 * lisp/textmodes/texinfo.el (texinfo-flymake): Improve do...
a99d0e7e6c Support a function in the BUFFER-LIST arg of list-buffers...
def51dd645 ; Fix typos
4980ed7a6d Don't allow lazy highlight from recursive minibuffers
4ef8b9f544 Improve resetting face attributes when looking for suitab...
c4b8bc90a8 ; Fix typos in doc strings
c45eb13845 ; * lisp/bs.el (bs-attributes-list): Doc fix
d6adaf487d Add lexical-binding to example package header
03ad1a92a2 Add improved tree-sitter navigation
a5272e2a7c ; * test/src/treesit-tests.el: Add outline headers.
489bcacc7c Add cross-reference to flush-lines
0f9e6532b1 Use font-lock-number-face for numeric values in csharp-mode
4bccb7b211 Make treesit-query-validate create a read-only buffer
c0fe6c72ce Improve dockerfile-ts-mode imenu generation (Bug#59979)
631908f701 Add "->" to python--treesit-operators (bug#59968)
5d4274d9b6 ; * admin/notes/tree-sitter/build-module/build.sh: Add -f...
d264b75669 Align C++ access specifiers to their enclosing class/stru...
ca67d988d8 Add cmake-ts-mode
8ec923775d Tweak various ts-mode's indent and fontification (bug#59931)
647b6a8099 Add expression for generic_name in csharp-ts-mode (bug#59...
5b178efd85 ; Adjust eglot test to recent autopep8/pycodestyle
58b8ed8b55 ; Avoid compilation warning on MS-Windows
40c23c11e8 * lisp/outline.el: Fix the value 'insert' of outline-mino...
527eb11de2 * lisp/minibuffer.el (completions-group-separator): Rever...
42d740fb2c ; Skip two eglot tests when typescript is missing
19ef86f775 ; Remove outdated text describing overlays
081bf58300 Skip Eglot rust-analyzer tests if 'cargo' isn't available
# Conflicts:
# lisp/progmodes/typescript-ts-mode.el
# lisp/treesit.el
Reported by Daniel Pittman.
* lisp/emacs-lisp/rx.el (rx): Move binding of rx--local-definitions...
(rx--to-expr): ...here.
* test/lisp/emacs-lisp/rx-tests.el (rx-let-pcase): New test.
44c5f36149 ; Fix two byte-compiler warnings
a8ee046fb5 Ensure 'package-vc--version' always returns a version
022ab1061b Ensure 'package-vc--main-file' always returns an existing...
357fe91996 Check if package already exists before installing from ch...
5e8bc79f6b ; Fix reference in docstring to 'package-vc-install-from-...
af88b00b19 Refresh the package quickstart file in package-vc
5a092c8e46 ; * admin/notes/tree-sitter/starter-guide (Indent): Minor...
ebef8905b0 Make indirect buffers use tree-sitter parsers of their ba...
8f53fa10d9 Fontify "this" as a keyword in c++-ts-mode (bug#59924)
8de8f1dc05 Add class_body indentation for typescript (bug#59680)
839341d737 Make more granular defun-type-regexp (bug#59873)
8f49137c9b Add dockerfile-ts-mode (Bug#59894)
1014bcc8e3 Fix fontification of method-invocations in js-ts-mode (bu...
7141920c6a Fix escape-sequence feature in typescript-ts-mode (bug#59...
4df35e3491 Improve fontification in csharp-ts-mode (bug#59909)
33a8415eb7 Use 'project--value-in-dir' for 'project-vc-include-untra...
594267395d Update Turkish Hello
940d9070e9 Support newer glib versions (Bug#59061)
0bd26abf7f ; * doc/misc/use-package.texi: Fix @file.
bcf235acd5 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
2ea7a357fd ; * doc/misc/use-package.texi: Fix @acronym.
d268ab1c5d Bring back the project--value-in-dir logic
* lisp/emacs-lisp/package-vc.el (require): Explicitly require cl-lib.
(package-vc--main-file): If the expected file name is missing, try and
find the closest match.
* lisp/emacs-lisp/package-vc.el (package-vc--unpack-1): Call
`package--quickstart-maybe-refresh', just as
`package-install-from-buffer' does. (bug#59728)
9ae1c2762d EUDC: Outline deprecation plans in NEWS
6acf95cbea Fix admin/notes/tree-sitter/build-module/build.sh (bug#59...
cc63c08697 * doc/misc/eww.texi (Overview): Improve introduction.
b8790e320e Consistent fontification of using-directives in csharp-ts...
5257b9cda4 ; Rename c-ts-fontify-error to c-ts-mode--fontify-error
c6b454df33 ; Improve docstring of c-ts-mode--fontify-variable
6187d001f2 Fontify some keywords in type face in c-ts-mode
b3847c0208 ; Minor cleanup in treesit.c
40af27859e ; * lib-src/etags.c (escape_shell_arg_string): Minor doc ...
43b7e7efbf Fix etags builds on non-Windows non-MS-DOS machines
7e6d1d1c47 ; Fix last change in etags.c.
01a4035c86 Fix etags local command injection vulnerability
ed4734405d Avoid crashes in a build --without-modules
70a2eb4a0b Fix 'add-display-text-property' when OBJECT is non-nil
d58d1dd48a Do not run slow tests on EMBA
9b9b39a2d8 Lisp reader undefined behaviour excision
# Conflicts:
# etc/NEWS