]>
git.eshelyaron.com Git - emacs.git/log
Stefan Kangas [Sat, 22 Feb 2025 23:13:21 +0000 (00:13 +0100)]
Prefer incf to cl-incf in emacs-lisp/*.el
* lisp/emacs-lisp/backtrace.el (backtrace--print-func-and-args):
* lisp/emacs-lisp/bindat.el (bindat--type):
* lisp/emacs-lisp/bytecomp.el (byte-recompile-directory):
* lisp/emacs-lisp/chart.el (chart-file-count):
* lisp/emacs-lisp/cl-extra.el (cl-parse-integer, cl--print-table):
* lisp/emacs-lisp/cl-generic.el (cl--defmethod-doc-pos):
* lisp/emacs-lisp/cl-indent.el (common-lisp-loop-part-indentation)
(common-lisp-indent-function-1, lisp-indent-defmethod):
* lisp/emacs-lisp/cl-lib.el (cl--set-substring):
* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause):
* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define):
* lisp/emacs-lisp/cl-print.el (cl-print--cons-tail)
(cl-print--vector-contents, cl-print--struct-contents)
(cl-print--string-props):
* lisp/emacs-lisp/cl-seq.el (cl-substitute):
* lisp/emacs-lisp/comp-cstr.el (comp--range-union)
(comp--range-intersection):
* lisp/emacs-lisp/comp.el (comp-vec-append, comp--gen-counter)
(comp--op-case, comp--limplify-lap-inst, comp--limplify-block)
(comp--limplify-function, comp--maybe-add-vmvar, comp--fwprop*):
* lisp/emacs-lisp/edebug.el (edebug--called-interactively-skip):
* lisp/emacs-lisp/eldoc.el (eldoc--invoke-strategy):
* lisp/emacs-lisp/elp.el (elp--make-wrapper):
* lisp/emacs-lisp/ert-x.el (ert-kill-all-test-buffers):
* lisp/emacs-lisp/ert.el (ert--stats-set-test-and-result)
(ert-write-junit-test-summary-report):
* lisp/emacs-lisp/memory-report.el (memory-report--symbol-plist)
(memory-report--object-size-1):
* lisp/emacs-lisp/oclosure.el (oclosure--index-table)
(oclosure--define-functions):
* lisp/emacs-lisp/package.el (package-menu--perform-transaction):
* lisp/emacs-lisp/smie.el (smie-set-prec2tab, smie-prec2->grammar)
(smie-config--guess, smie-config--guess-1):
* lisp/emacs-lisp/syntax.el (syntax-propertize-rules)
(syntax-ppss--update-stats):
* lisp/emacs-lisp/track-changes.el (track-changes--after): Prefer incf
to cl-incf.
(cherry picked from commit
ae37a1cc3d93d3703b43c5ab2d10f1f3e146cf90 )
Stefan Kangas [Sat, 22 Feb 2025 18:14:51 +0000 (19:14 +0100)]
Prefer incf to cl-incf in tests
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-reify-function):
* test/lisp/emacs-lisp/cl-extra-tests.el (cl-getf):
* test/lisp/emacs-lisp/cl-macs-tests.el
(cl-macs-loop-for-as-arith-order-side-effects)
(cl-macs-loop-for-as-equals-then, cl-macs-loop-do, cl-macs-loop-finally)
(cl-macs-loop-in-ref, cl-macs-loop-being-elements-of-ref)
(cl-macs-test--symbol-macrolet, cl-the):
* test/lisp/emacs-lisp/cl-seq-tests.el (cl-lib-test-remove)
(cl-lib-test-remove-if-not):
* test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el
(edebug-test-code-range):
* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-deduplicate):
* test/lisp/emacs-lisp/generator-tests.el (cps-while-incf):
(cps-test-iter-cleanup-once-only):
* test/lisp/emacs-lisp/hierarchy-tests.el
(hierarchy-labelfn-button-if-does-not-button-unless-condition)
(hierarchy-labelfn-button-if-does-button-when-condition):
* test/lisp/emacs-lisp/let-alist-tests.el (let-alist-evaluate-once):
* test/lisp/emacs-lisp/lisp-mode-tests.el
(indent-sexp, lisp-indent-region):
* test/lisp/emacs-lisp/map-tests.el (test-map-elt-gv)
(test-setf-map-with-function):
* test/lisp/emacs-lisp/multisession-tests.el (multi-test-sqlite-simple)
(multi-test-sqlite-busy, multi-test-files-simple)
(multi-test-files-busy):
* test/lisp/emacs-lisp/oclosure-tests.el
(oclosure-test, oclosure-test-mutate):
* test/lisp/emacs-lisp/track-changes-tests.el
(track-changes-tests--random):
* test/lisp/files-tests.el (files-tests--with-buffer-offer-save):
* test/lisp/net/shr-tests.el (shr-test/zoom-image):
* test/lisp/replace-tests.el (replace-tests-with-undo):
* test/src/buffer-tests.el (test-overlay-randomly):
* test/src/data-tests.el (test-bool-vector-bv-from-hex-string):
* test/src/fns-tests.el (fns-tests-sort):
* test/src/json-tests.el (json-insert/signal, json-insert/throw):
* test/src/minibuf-tests.el (minibuf-tests--strings-to-symbol-alist)
(minibuf-tests--strings-to-string-alist)
(minibuf-tests--strings-to-string-hashtable)
(minibuf-tests--strings-to-symbol-hashtable):
* test/src/process-tests.el (make-process/file-handler/found): Prefer
incf to cl-incf.
(cherry picked from commit
042dc5929b706b5fbc0ea8ada6014661d44a1b53 )
Stefan Kangas [Sat, 22 Feb 2025 18:06:11 +0000 (19:06 +0100)]
Prefer decf to cl-decf
* lisp/auth-source-pass.el (auth-source-pass--find-match-many):
* lisp/calendar/time-date.el (decoded-time-add)
(decoded-time--alter-month, decoded-time--alter-day):
* lisp/dired.el (dired--move-to-next-line):
* lisp/dom.el (dom-pp):
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
* lisp/emacs-lisp/cl-print.el (cl-print-to-string-with-limit):
* lisp/emacs-lisp/cl-seq.el (cl-fill, cl-replace, cl-substitute):
* lisp/emacs-lisp/comp-cstr.el (comp--range-union)
(comp--range-intersection):
* lisp/emacs-lisp/comp.el (comp-vec-prepend, comp--emit-narg-prologue):
* lisp/emacs-lisp/edebug.el (edebug--strip-instrumentation):
* lisp/emacs-lisp/eldoc.el (eldoc--invoke-strategy):
* lisp/emacs-lisp/pp.el (pp--format-definition):
* lisp/emacs-lisp/smie.el (smie-config--guess-1):
* lisp/eshell/esh-io.el (eshell-close-handle, eshell-set-output-handle):
* lisp/gnus/gnus-async.el (gnus-async-prefetch-article):
* lisp/gnus/gnus-group.el (gnus-group-mark-group)
(gnus-group-yank-group):
* lisp/gnus/gnus-salt.el (gnus-tree-forward-line):
* lisp/gnus/gnus-score.el (gnus-decay-scores):
* lisp/gnus/gnus-srvr.el (gnus-browse-toggle-subscription-at-point):
* lisp/gnus/gnus-sum.el (gnus-build-sparse-threads, gnus-parent-headers)
(gnus-update-marks, gnus-summary-work-articles)
(gnus-summary-refer-parent-article, gnus-summary-next-thread)
(gnus-read-header, gnus-summary-insert-new-articles):
* lisp/gnus/gnus-topic.el (gnus-topic-forward-topic):
* lisp/gnus/gnus.el (gnus-short-group-name):
* lisp/gnus/message.el (message-remove-first-header)
(message-shorten-references, message-insert-screenshot):
* lisp/gnus/mm-url.el (mm-url-insert):
* lisp/gnus/nnselect.el (nnselect-push-info):
* lisp/ibuffer.el (ibuffer-backward-line, ibuffer-forward-line)
(ibuffer-map-lines):
* lisp/icomplete.el (icomplete--render-vertical):
* lisp/image/image-dired-external.el (image-dired-create-thumb-1):
* lisp/image/image-dired.el (image-dired-delete-char):
* lisp/mail/ietf-drums-date.el (ietf-drums-date--tokenize-string):
* lisp/mh-e/mh-utils.el (mh-sub-folders-parse):
* lisp/minibuffer.el (minibuffer-completion-help):
* lisp/mpc.el (mpc-cmd-move, mpc-songpointer-refresh-hairy):
* lisp/net/eww.el (eww-process-text-input):
* lisp/net/pop3.el (pop3-wait-for-messages, pop3-uidl-stat)
(pop3-uidl-dele):
* lisp/net/shr-color.el (shr-color-hue-to-rgb):
* lisp/play/5x5.el (5x5-up, 5x5-left):
* lisp/play/decipher.el (decipher-read-alphabet, decipher--digram-total)
(decipher-analyze-buffer):
* lisp/play/hanoi.el (hanoi-insert-ring, hanoi-move-ring):
* lisp/profiler.el (profiler-format-number)
(profiler-calltree-build-unified):
* lisp/progmodes/antlr-mode.el (antlr-next-rule, antlr-indent-line):
* lisp/progmodes/c-ts-common.el (c-ts-common-statement-offset):
* lisp/progmodes/ebrowse.el
(ebrowse-cyclic-display-next/previous-member-list):
* lisp/progmodes/hideif.el (hif-backward-comment):
* lisp/progmodes/js.el (js-beginning-of-defun, js-end-of-defun)
(js-ts--syntax-propertize):
* lisp/progmodes/typescript-ts-mode.el
(tsx-ts--syntax-propertize-captures):
* lisp/rect.el (rectangle--*-char):
* lisp/term.el (term-emulate-terminal):
* lisp/textmodes/reftex-cite.el (reftex-do-citation):
* lisp/textmodes/reftex-index.el (reftex-index-next-phrase):
* lisp/textmodes/reftex-parse.el (reftex-init-section-numbers):
* lisp/textmodes/reftex-sel.el (reftex-select-unmark):
* lisp/textmodes/reftex.el (reftex-silence-toc-markers):
* lisp/treesit.el (treesit-navigate-thing):
* lisp/vc/diff-mode.el (diff-sanity-check-context-hunk-half,
(diff-sanity-check-hunk):
* lisp/vc/pcvs-util.el (cvs-first):
* lisp/vc/smerge-mode.el (smerge-get-current):
* lisp/vc/vc-hg.el (vc-hg--glob-to-pcre):
* test/lisp/net/socks-tests.el
(socks-tests-perform-hello-world-http-request):
* test/src/buffer-tests.el (test-overlay-randomly): Prefer decf to
cl-defc in all code where we can.
(cherry picked from commit
9d7d4db7eb3398e754872f4c82d3d2071ae10fb2 )
Stefan Kangas [Sat, 22 Feb 2025 16:32:31 +0000 (17:32 +0100)]
New macros incf and decf
* lisp/emacs-lisp/cl-lib.el (cl-incf, cl-decf): Move macros from here...
* lisp/emacs-lisp/gv.el (incf, decf): ...to here. Make old names into
aliases, documented as deprecated.
* lisp/obsolete/cl.el: Don't alias incf and decf.
* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-test-incf)
(cl-lib-test-decf): Move tests from here...
* test/lisp/emacs-lisp/gv-tests.el (gv-incf, gv-decf): ...to here.
* doc/lispref/numbers.texi (Arithmetic Operations):
* lisp/emacs-lisp/shortdoc.el (number): Document incf and decf.
* doc/lispref/variables.texi (Multisession Variables):
* doc/misc/cl.texi (Organization, Modify Macros, Modify Macros)
(Modify Macros, Macro Bindings, For Clauses, Property Lists)
(Structures, Efficiency Concerns, Obsolete Setf Customization): Delete
cl-incf and cl-decf documentation, moving any relevant parts to lispref.
Delete some parts that seem to primarily regard implementation details
that do not warrant inclusion in lispref. Update all examples to use
incf/decf.
(cherry picked from commit
95fee880e45184f4820e9704b75887ef2d91bd01 )
Mauro Aranda [Sat, 22 Feb 2025 21:31:40 +0000 (18:31 -0300)]
Fix last commit to wid-edit.el
* lisp/wid-edit.el (widget-editable-list-entry-create): Don't
use save-excursion when indenting. Previously, it was needed
because we inserted the :entry-format string, but we don't do
that anymore. (Bug#53606)
https://lists.gnu.org/archive/html/emacs-devel/2025-02/msg00958.html
(cherry picked from commit
44a1c4a9aea54d6542bcf0c231b080f0ed023229 )
Stefan Monnier [Sat, 22 Feb 2025 19:57:25 +0000 (14:57 -0500)]
(help--append-keystrokes-help): Fix bug#76341
* lisp/help.el (help--append-keystrokes-help): Silence the help message
when there is no help key.
(cherry picked from commit
c830caab2c5bd3d03673c26f053397042dc58ad3 )
Juri Linkov [Sat, 22 Feb 2025 19:52:39 +0000 (21:52 +0200)]
* lisp/treesit.el (treesit-up-list, treesit-outline-level): Improve.
Try to get the parent parser host node that contains the
embedded parser and continue the search from it (bug#76398).
(cherry picked from commit
1ffa0521131c20edbbcba84765870f01411d039e )
Stefan Kangas [Sat, 22 Feb 2025 17:22:12 +0000 (18:22 +0100)]
Delete self-evident explanation from cl.texi
* doc/misc/cl.texi (Setf Extensions): Delete self-evident
explanation.
(cherry picked from commit
ba8a1b902594189fb067c0ff5d761d19d3a2369c )
Stefan Kangas [Sat, 22 Feb 2025 16:18:01 +0000 (17:18 +0100)]
; Delete obsolete commented out parts from cl.texi
* doc/misc/cl.texi (Modify Macros, Obsolete Setf Customization): Delete
commented out documentation that is no longer true, and documentation of
a function that was removed in Emacs 24.3.
(cherry picked from commit
4aae820a017faab47662d0fa82cb5e39d8728d8c )
Eli Zaretskii [Sat, 22 Feb 2025 16:04:04 +0000 (18:04 +0200)]
Make 'text-property-default-nonsticky' buffer-local when set
* src/textprop.c (syms_of_textprop)
<text-property-default-nonsticky>: Make buffer-local when set.
(Bug#76445)
* etc/symbol-releases.eld: Add text-property-default-nonsticky.
* etc/NEWS:
* doc/lispref/text.texi (Sticky Properties): Document the change.
(cherry picked from commit
827a91dbf3a45d6c3c620545b5e620ce76e44bb2 )
Stefan Kangas [Sat, 22 Feb 2025 15:55:06 +0000 (16:55 +0100)]
Expand tests for cl-incf and cl-decf
* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-test-incf)
(cl-lib-test-decf): Expand tests.
(cherry picked from commit
8b6797fa01bf8c8c64bd1f72c1e2475bf2331ad9 )
Eshel Yaron [Sun, 23 Feb 2025 08:17:53 +0000 (09:17 +0100)]
Stefan Kangas [Sun, 19 Jan 2025 12:59:13 +0000 (13:59 +0100)]
; Fix typos
(cherry picked from commit
702cb123faf1bdbacf555188ae4997d6be3765fe )
Lockywolf [Thu, 13 Feb 2025 03:51:50 +0000 (11:51 +0800)]
recentf.el: Add verbosity option
* lisp/recentf.el (recentf-show-messages): New defcustom to
control verbosity.
(recentf-save-list): Use that to control verbosity. (Bug#67946)
(cherry picked from commit
ce28916282800b2e4a5f8e244616e25f9e81831a )
Michael Albinus [Sat, 22 Feb 2025 13:38:24 +0000 (14:38 +0100)]
* lisp/net/tramp-sh.el (tramp-find-executable): Fix check.
(cherry picked from commit
e682fd2d5ba5f471a6e4d07b7f691a1ba9fa1139 )
Eshel Yaron [Sun, 23 Feb 2025 08:15:47 +0000 (09:15 +0100)]
Eshel Yaron [Sun, 23 Feb 2025 08:15:39 +0000 (09:15 +0100)]
Eshel Yaron [Sun, 23 Feb 2025 08:15:26 +0000 (09:15 +0100)]
Eshel Yaron [Sun, 23 Feb 2025 08:15:22 +0000 (09:15 +0100)]
Eli Zaretskii [Sat, 22 Feb 2025 10:07:16 +0000 (12:07 +0200)]
; * admin/authors.el (authors-aliases): Add Vladimir Nikishkin.
(cherry picked from commit
9c1d13c89a94685c0d1120d15e28bfb24e9644c3 )
Eli Zaretskii [Sat, 22 Feb 2025 09:49:25 +0000 (11:49 +0200)]
; Fix saveplace-tests for MS-Windows
* test/lisp/saveplace-tests.el
(saveplace-test-load-alist-from-file): Fix test for MS-Windows.
(cherry picked from commit
456c52978c505ce09467564cda3db30d3d38197c )
shipmints [Thu, 13 Feb 2025 13:10:45 +0000 (08:10 -0500)]
Inhibit "Wrote" message in saveplace.el when non-interactive
* lisp/saveplace.el (save-place-alist-to-file): Tell 'write-region'
to be quiet when called non-interactively. This is in harmony with
'savehist-save'. (Bug#76267)
(cherry picked from commit
8f45cbdee45317faa978732fa5311c3c056b559f )
Visuwesh [Thu, 13 Feb 2025 11:13:06 +0000 (16:43 +0530)]
Make yank-media auto select the best mime type
* lisp/yank-media.el (yank-media-preferred-types): Add new
variable that holds the list of mime types in order of their
preference.
(yank-media-autoselect-function): Add new variable and function
to choose the most preferred media type.
(yank-media): Make 'yank-media' choose the most preferred mime
type by default.
* doc/emacs/killing.texi (Clipboard):
* doc/lispref/frames.texi (Yanking Media): Document the new
behaviour, and the new variables.
* etc/NEWS: Announce the change. (Bug#75116)
(cherry picked from commit
0ee50a3420fb8df8f3477dac610dcd53c633fff5 )
Mauro Aranda [Thu, 6 Feb 2025 11:01:08 +0000 (08:01 -0300)]
Speed up widget creation (Bug#53606)
* lisp/wid-edit.el (widget-default-create, widget-checklist-add-item)
(widget-radio-add-item, widget-editable-list-entry-create): Don't
insert format escapes into the buffer, only to delete them after.
This avoids calls to delete-char and makes widget creation about 3
times faster.
(cherry picked from commit
3e269371507ea4cd7e933e39320d258a3b98de44 )
Eli Zaretskii [Sat, 22 Feb 2025 07:16:05 +0000 (09:16 +0200)]
; * INSTALL.REPO: Minor copyedits.
(cherry picked from commit
443df12eddc66f4e2dbb14113b868f12419508bc )
Stefan Kangas [Sat, 22 Feb 2025 03:21:10 +0000 (04:21 +0100)]
* admin/check-doc-strings: Reduce false positives.
(cherry picked from commit
79ab873b9b679ec0aedb03ce246035d8e5d4b09c )
F. Jason Park [Sat, 15 Feb 2025 02:57:41 +0000 (18:57 -0800)]
Use .pem extension for client certs in ERC docs
* doc/misc/erc.texi (Connecting): Change file-name extensions to .pem in
all examples, and explain that the key and the cert can be combined into
one file.
(SASL): Use .pem extension for certs.
* lisp/erc/erc.el (erc--warn-once-before-connect): Revise doc.
(erc-tls): Use .pem extension for certs. (Bug#76278)
(cherry picked from commit
1f60f86af5edba45a7d59f45ca174f6c288dde3f )
F. Jason Park [Wed, 19 Feb 2025 03:20:45 +0000 (19:20 -0800)]
Don't kill window buffer in erc--split-line
* lisp/erc/erc-backend.el (erc--split-line): Restore original window
buffer before killing temp buffer. (Bug#76404)
(cherry picked from commit
1270e6aec5ff4b6f420d132a2249bb94095a3f11 )
Stefan Kangas [Fri, 21 Feb 2025 17:48:12 +0000 (18:48 +0100)]
Delete note on Emacs 19 modes from comint.el
* lisp/comint.el: Delete note on how to convert pre-Emacs 20 modes to
use comint.el. Emacs 20 was released in 1997, so it's safe to assume
that any relevant code has been updated in the last three decades.
(cherry picked from commit
4ece0e2e46b1eeb315b9ebcdcee09679319128f9 )
Jostein Kjønigsen [Fri, 21 Feb 2025 14:09:26 +0000 (15:09 +0100)]
Fix identation in csharp-mode.el
* lisp/progmodes/csharp-mode.el (csharp-ts-mode--indent-rules): Fix
indentation for using statements and multiline lambdas. (Bug#75883)
Patch based on bug report by Dino Chiesa <dpchiesa@hotmail.com>.
(cherry picked from commit
ecddc8227d9be8283d9bb47639a61c888a036896 )
Stefan Kangas [Fri, 21 Feb 2025 16:40:12 +0000 (17:40 +0100)]
New user option checkdoc-allow-quoting-nil-and-t
* lisp/emacs-lisp/checkdoc.el (checkdoc-allow-quoting-nil-and-t):
New user option that allows turning off the warning for having nil
and t in quotes.
(checkdoc-this-string-valid-engine): Use above new option.
(cherry picked from commit
8d4feb214b7eb802fec34269de11d30b9382cd83 )
Stefan Kangas [Thu, 20 Feb 2025 13:06:46 +0000 (14:06 +0100)]
; Delete superfluous comment
(cherry picked from commit
e7a35dac2fbe5777df531690c770b99e5f7561bb )
Stefan Kangas [Thu, 20 Feb 2025 03:11:23 +0000 (04:11 +0100)]
Prefer defvar-keymap in admin/gitmerge.el
* admin/gitmerge.el (gitmerge-mode-map): Prefer defvar-keymap.
(cherry picked from commit
3c93085650762c04ae3988dedc6b872b7f217143 )
Eshel Yaron [Sun, 23 Feb 2025 08:07:58 +0000 (09:07 +0100)]
Michael Albinus [Fri, 21 Feb 2025 13:47:15 +0000 (14:47 +0100)]
Use a persistent directory as default directory in diff
* lisp/vc/diff.el (diff-no-select): Use `temporary-file-directory'
as default directory. Set default file permissions temporarily to
#o600. (Bug#69606)
(cherry picked from commit
ae439cc1b9f428a8247548f4ef3b992608a3c09b )
Ulrich Müller [Fri, 21 Feb 2025 11:13:20 +0000 (12:13 +0100)]
; Don't fail image tests if jpeg is supported via imagemagick
* test/lisp/image-tests.el (image-supported-file-p/optional):
Consider also the imagemagick case. (Bug#76465)
(cherry picked from commit
76b938fc1d24b9dcc0c50db1dc520fbdacc19a16 )
Ulrich Müller [Fri, 21 Feb 2025 08:15:50 +0000 (09:15 +0100)]
; Skip autorevert test when notify support is missing
* test/lisp/autorevert-tests.el
(auto-revert-test07-auto-revert-several-buffers): Skip if file
notification support is not available. (Bug#76459)
(cherry picked from commit
f8ff9592be9181465740ee98b71513cdbcafc35f )
Ulrich Müller [Fri, 21 Feb 2025 09:36:52 +0000 (10:36 +0100)]
; Skip shr-test/zoom-image test if png or libxml support is missing
* test/lisp/net/shr-tests.el (shr-test/zoom-image): Skip if png
images or libxml are not supported. (Bug#76464)
(cherry picked from commit
230ecb1e273e3fec6400cfad76e9b13f648d9055 )
Ulrich Müller [Fri, 21 Feb 2025 08:58:16 +0000 (09:58 +0100)]
; Skip image type test if support is missing
* test/lisp/image-tests.el (image-type-from-file-name): Skip if
image types are not available. (Bug#76462)
(cherry picked from commit
cc51bd569874cd89a7fa1c3241033e69a5c2dd01 )
Juri Linkov [Fri, 21 Feb 2025 07:55:54 +0000 (09:55 +0200)]
New variable 'treesit-aggregated-outline-predicate' (bug#76398)
* doc/lispref/modes.texi (Outline Minor Mode):
Add 'treesit-aggregated-outline-predicate'.
* lisp/treesit.el (treesit-aggregated-outline-predicate):
New buffer-local variable.
(treesit-outline--at-point):
Use 'treesit-aggregated-outline-predicate'.
(treesit-closest-parser-boundary): New function.
(treesit-outline-search): Use 'treesit-aggregated-outline-predicate'
and 'treesit-closest-parser-boundary'.
(treesit-outline-level): Use 'treesit-aggregated-outline-predicate'.
(treesit-major-mode-setup): Add 'treesit-aggregated-outline-predicate'.
* lisp/textmodes/html-ts-mode.el (html-ts-mode--outline-predicate):
Improve.
* lisp/textmodes/mhtml-ts-mode.el (mhtml-ts-mode):
Set 'treesit-aggregated-outline-predicate'.
(cherry picked from commit
840be8a7d8e7db8ad7f186678226ac51712724ab )
Po Lu [Fri, 21 Feb 2025 05:29:40 +0000 (13:29 +0800)]
* configure.ac (BOBJECTLIST_OWNERSHIP_IS_TEMPLATE_PARAMETER): Correct test.
(cherry picked from commit
f3212fa420c17710a160bc8e762e6e19871f10a3 )
Po Lu [Fri, 21 Feb 2025 05:28:52 +0000 (13:28 +0800)]
Fix reported Haiku build error in emacs-30.1-rc1
* src/haiku_support.cc (keysym_from_raw_char): Don't define
duplicate cases on the previous release.
(cherry picked from commit
25ba2536091dea39c690169784fa9771296eefec )
Philip Kaludercic [Fri, 8 Mar 2024 15:32:00 +0000 (16:32 +0100)]
Have 'submit-emacs-patch' insert maintainers into X-Debbugs-Cc
* lisp/mail/emacsbug.el (submit-emacs-patch): Go through all files
mentioned in the diff and check for maintainers.
(submit-emacs-patch-excluded-maintainers): Add constant. (Bug#69646)
(cherry picked from commit
4411d0de1d5cbf308440982084ad7e15a18efaf2 )
Eshel Yaron [Sun, 23 Feb 2025 08:06:05 +0000 (09:06 +0100)]
Eshel Yaron [Sun, 23 Feb 2025 08:05:24 +0000 (09:05 +0100)]
Eshel Yaron [Sun, 23 Feb 2025 08:05:21 +0000 (09:05 +0100)]
Eshel Yaron [Sun, 23 Feb 2025 08:05:17 +0000 (09:05 +0100)]
Eshel Yaron [Sun, 23 Feb 2025 08:05:02 +0000 (09:05 +0100)]
Eshel Yaron [Sun, 23 Feb 2025 08:03:51 +0000 (09:03 +0100)]
Few new elisp-mode commands
Eshel Yaron [Sun, 23 Feb 2025 08:00:54 +0000 (09:00 +0100)]
scope.el: Improve seq-let handling
Eshel Yaron [Fri, 21 Feb 2025 17:31:10 +0000 (18:31 +0100)]
Better help-echo for condition symbols
Eshel Yaron [Fri, 21 Feb 2025 17:30:55 +0000 (18:30 +0100)]
Make 'electric-pair-mode' buffer-local
Eshel Yaron [Thu, 20 Feb 2025 21:44:44 +0000 (22:44 +0100)]
Mattias Engdegård [Wed, 19 Feb 2025 18:57:16 +0000 (19:57 +0100)]
* src/fns.c (Fmapconcat): Faster fast-path condition
(cherry picked from commit
b481fbe92f793bae2ccd9d2d4efdaf0549390a41 )
Paul Eggert [Thu, 20 Feb 2025 17:42:33 +0000 (09:42 -0800)]
; Spelling fix in comment.
(cherry picked from commit
241e8e5fcf8b4624dc39890a8749f7574a8a6398 )
Eshel Yaron [Thu, 20 Feb 2025 21:44:13 +0000 (22:44 +0100)]
Po Lu [Thu, 20 Feb 2025 12:36:47 +0000 (20:36 +0800)]
Fix signal when first enabling Custom-mode on non-GUI builds
* lisp/cus-edit.el (Custom-mode): Define tool-bar-map if not
bound and elaborate why this must be arranged.
(cherry picked from commit
afd088bd608c0c27f676bbc34a5d596df3db14a1 )
Po Lu [Thu, 20 Feb 2025 11:46:40 +0000 (19:46 +0800)]
Fix set-time-zone-rule on DJGPP
* lisp/loadup.el ("tooltip"): Load even on MS-DOS.
* src/timefns.c (tzvalbuf): Don't define on MS-DOS.
(emacs_getenv_TZ, emacs_setenv_TZ) [MSDOS]: Call getenv and
putenv rather than overwrite existing environment storage to
update DJGPP's environment modification counter.
(cherry picked from commit
1c49cfc711c61e683bda8d5b2546b586e5168706 )
Po Lu [Thu, 20 Feb 2025 06:27:03 +0000 (14:27 +0800)]
; * src/pdumper.c (Fdump_emacs_portable): Fix typo in comment.
(cherry picked from commit
b65971b2c06d34c268b2b0280056e478dbc31586 )
Eshel Yaron [Thu, 20 Feb 2025 21:43:39 +0000 (22:43 +0100)]
Po Lu [Thu, 20 Feb 2025 06:04:59 +0000 (14:04 +0800)]
Port to modern GCC and pdumper on MS-DOS
* config.bat (mvOk): Protoize.
(djgppOk): Include sys/version.h for _DJGPP_MINOR.
* lisp/loadup.el: If system-type is ms-dos, dump bootstrap-emacs
as b-emacs.dmp.
* msdos/INSTALL: Document new versions of tools that have been
verified successfully to compile Emacs.
* msdos/emacs.djl: New linker script that arranges to link
symbols in `.subrs' in a contiguous part of data, as the DJGPP
runtime appears to treat any non-data and non-text section as
allocatable.
* msdos/mainmake.v2 (install): Install emacs.dmp alongside
emacs.exe.
* msdos/sed1v2.inp (CFLAGS): Define to -O2 -g3.
(LDFLAGS): Provide the said linker script.
(HAVE_PDUMPER): Define to yes.
(UNEXEC_OBJ, PAXCTL_dumped, PAXCTL_notdumped): Delete.
(DUMPING): Set to pdumper.
(MAKE_PDUMPER_FINGERPRINT): Don't erase this variable.
Don't stubify or set minstack. Remove native-comp specific
directives. Don't remove temacs prior to copying and replace
`pdmp' extension with DOS-conformant `dmp'.
* msdos/sed2v2.inp (HAVE_UNEXEC): Remove definition.
(HAVE_PDUMPER): Define to 1.
* msdos/sed6.inp (top_srcdir): Define appropriately.
* msdos/sedlibmk.inp (HAVE_BLKCNT_T): Define to 1.
* src/emacs.c (load_pdump) [MSDOS]: Use `dmp' suffix.
* src/pdumper.c (Fdump_emacs_portable) [MSDOS]: Replace ".pdmp"
suffixes with ".dmp".
(cherry picked from commit
c22957c4bf7dd25857a44946169c4818996a49d9 )
Stefan Kangas [Wed, 19 Feb 2025 22:36:07 +0000 (23:36 +0100)]
Prefer defvar-keymap in conf-mode.el
* lisp/textmodes/conf-mode.el (conf-mode-map): Prefer defvar-keymap.
(cherry picked from commit
89f9377139c336dd646335352b0c7480c7e19c4a )
Michael Albinus [Wed, 19 Feb 2025 18:38:25 +0000 (19:38 +0100)]
Simplify Tramp's find-executable
* lisp/net/tramp-cache.el (with-tramp-saved-connection-property):
Fix typo.
* lisp/net/tramp-compat.el: Add TODO.
* lisp/net/tramp-sh.el (tramp-find-executable): Simplify, using
"type -P ...".
(tramp-set-remote-path): Better handling of superlong $PATH.
(tramp-get-remote-path): Adapt/use connection properties.
* test/lisp/net/tramp-tests.el (tramp--test-enabled)
(tramp-test03-file-name-host-rules): Don't wrap
`tramp-cleanup-connection' with `ignore-errors'.
(cherry picked from commit
ec34bccfee68a521e7a98ce8dce9325a146d095b )
Po Lu [Wed, 19 Feb 2025 12:40:12 +0000 (20:40 +0800)]
Fix remaining Android bugs reported over the past months
* java/org/gnu/emacs/EmacsActivity.java (attachWindow):
Guarantee that child windows promoted to toplevels receive
layout parameters that direct them to receive their parents'
dimensions. Otherwise, the size of the window as a child is
retained on Huawei HarmonyOS 4.2 and possibly other Android
distributions.
* java/org/gnu/emacs/EmacsService.java (updateCursorAnchorInfo):
Run anchor updates on the UI thread, as
`InputMethodManager#updateCursorAnchorInfo' is liable to call
`View#requestLayout'.
* java/org/gnu/emacs/EmacsView.java (onMeasure): Always call
`measureChildren', or child frames' onLayout handlers might not
be invoked after they request a layout cycle and are duly
processed in `onLayout'.
(swapBuffers): Delete erroneous commentary.
* java/org/gnu/emacs/EmacsWindow.java (viewLayout): If
overrideRedirect, don't inadvertently clear rect.left and
rect.top by recording the window's WM window-relative position.
Fix typos.
(reparentTo): Invalidate focus after transferring frame.
(translateCoordinates): Account for override-redirect windows.
Mostly important for mouse-drag-and-drop-region.
(cherry picked from commit
ded77feffface0c167edacf0d807273f3d4878db )
Jared Finder [Wed, 19 Feb 2025 07:41:44 +0000 (09:41 +0200)]
* lisp/subr.el (read-key): Add 'tab-line' (bug#76408).
(cherry picked from commit
0c8abe8bb5072c46a93585cb325c249f85f3d9c2 )
Gerd Möllmann [Wed, 19 Feb 2025 07:33:32 +0000 (08:33 +0100)]
Don't call x-popup-function for non-tty frames
* src/menu.c (x_popup_menu_1): Don't call x-popup-function for non-tty
frames
(syms_of_menu): Remove Qx_popup_menu_function because unused, extend doc
string of x-popup-menu-function.
(cherry picked from commit
23bf94a0111474419ca84145c8ede95c6915bd35 )
Po Lu [Wed, 19 Feb 2025 07:34:51 +0000 (15:34 +0800)]
Properly move existing tooltips on Android
* java/org/gnu/emacs/EmacsWindow.java (requestViewLayout): If an
override redirect window, additionally notify the window manager
of layout changes.
(cherry picked from commit
e97be722d392056b6ef9e47664273ee2ca7df374 )
Eshel Yaron [Thu, 20 Feb 2025 21:43:06 +0000 (22:43 +0100)]
Gerd Möllmann [Wed, 19 Feb 2025 07:05:56 +0000 (08:05 +0100)]
Handle nil top frame (bug#76410)
* src/frame.c (do_switch_frame): Don't assume that top_frame is always a
frame, it can be nil.
(cherry picked from commit
1194ebe3a71f97b0ce7c8dcc4edaf7b0f81fdc6f )
Stefan Monnier [Wed, 19 Feb 2025 03:27:08 +0000 (22:27 -0500)]
(json-pretty-print): Rework a bit
* lisp/json.el (json-pretty-print): Call 'replace-buffer-contents'
separately for each json object rather than once at the end, so
its work is easier. Use 'json--print' rather than 'json-encode' so as
to avoid creating yet more temp buffers.
(cherry picked from commit
9143c18ae4752cef8465579dcd713db2032ab045 )
Eshel Yaron [Thu, 20 Feb 2025 21:42:44 +0000 (22:42 +0100)]
Po Lu [Wed, 19 Feb 2025 02:13:00 +0000 (10:13 +0800)]
Don't insist on the presence of a mouse in strokes-mode
* lisp/strokes.el (strokes-mode): Don't test `display-mouse-p',
as the presence of a mouse may vary over the course of an Emacs
session.
(cherry picked from commit
d05894f82d90c6d739aa3d424651fda2c86f68ec )
Eshel Yaron [Thu, 20 Feb 2025 21:42:37 +0000 (22:42 +0100)]
Eshel Yaron [Thu, 20 Feb 2025 21:42:16 +0000 (22:42 +0100)]
Stefan Kangas [Tue, 18 Feb 2025 21:29:40 +0000 (22:29 +0100)]
Make cl-locally obsolete
* doc/misc/cl.texi (Declarations): Don't document cl-locally.
* lisp/emacs-lisp/cl-macs.el (cl-locally): Make into obsolete
function alias for progn.
(cherry picked from commit
4c4f907bad1ad616dda6e5f5eec0b78ebea9f1c4 )
Eshel Yaron [Thu, 20 Feb 2025 21:42:09 +0000 (22:42 +0100)]
Eshel Yaron [Thu, 20 Feb 2025 21:42:05 +0000 (22:42 +0100)]
Stefan Kangas [Mon, 27 Jan 2025 05:46:01 +0000 (06:46 +0100)]
; Fix typos
(cherry picked from commit
be7625cae7303a3c9adc810a23c15e8d9c07eebe )
Eshel Yaron [Thu, 20 Feb 2025 21:41:37 +0000 (22:41 +0100)]
Eshel Yaron [Thu, 20 Feb 2025 21:41:31 +0000 (22:41 +0100)]
Eshel Yaron [Thu, 20 Feb 2025 20:58:10 +0000 (21:58 +0100)]
Use 'compf' in a few more places.
Eshel Yaron [Thu, 20 Feb 2025 20:57:45 +0000 (21:57 +0100)]
(compf): Add Edebug spec
Eshel Yaron [Thu, 20 Feb 2025 20:57:25 +0000 (21:57 +0100)]
* lisp/textmodes/markdown-ts-mode.el: Cleanup.
Eshel Yaron [Thu, 20 Feb 2025 13:01:10 +0000 (14:01 +0100)]
Fix 'called-interactively-p'
Eshel Yaron [Wed, 19 Feb 2025 15:47:16 +0000 (16:47 +0100)]
New macro 'compf'
Stefan Kangas [Tue, 18 Feb 2025 20:52:33 +0000 (21:52 +0100)]
; Fix copyright year in last commit
(cherry picked from commit
ef34303eaf98e0a8a041c741715c741f0a01fd77 )
Rahul Martim Juliato [Sat, 20 Apr 2024 02:21:20 +0000 (23:21 -0300)]
Add markdown-ts-mode
* lisp/textmodes/markdown-ts-mode.el: New file.
Ref: https://lists.gnu.org/r/emacs-devel/2024-06/msg01061.html
(cherry picked from commit
a102dcebb7d10275cc3818f47cd042ddd27868ff )
Stefan Monnier [Tue, 18 Feb 2025 20:37:50 +0000 (15:37 -0500)]
(lexical-binding): Allow changing the default value (bug#74145)
* lisp/loadup.el: Preserve (default-toplevel-value 'lexical-binding).
* src/lread.c (Fload, Feval_buffer): Obey (default-toplevel-value
'lexical-binding).
* doc/lispintro/emacs-lisp-intro.texi (Lexical vs Dynamic Binding
Example): Use the lexical dialect also for the dynamic
scoping example.
* doc/lispref/edebug.texi (Edebug Eval): Remove long-obsolete mention
of Edebug support for `lexical-let`.
(cherry picked from commit
d685d21e8ae0cee566420d4dd68586f018b2ce0b )
Gerd Möllmann [Tue, 18 Feb 2025 20:27:03 +0000 (21:27 +0100)]
; * .mailmap: Change my entries.
(cherry picked from commit
790c2f7c1c8c947b286c09525fc5a0425004a1f6 )
Liu Hui [Tue, 18 Feb 2025 09:52:36 +0000 (17:52 +0800)]
Disable PyREPL in Python shell
The new default REPL (PyREPL) in Python 3.13 is incompatible
with Python shell and displays a warning message when reverting
to the old basic REPL.
* lisp/progmodes/python.el
(python-shell--calculate-process-environment): Use the basic
REPL. (Bug#76205)
(cherry picked from commit
db8af88222bbf06948622d2b4fc4d27b73350b83 )
kobarity [Sun, 16 Feb 2025 10:07:04 +0000 (19:07 +0900)]
Improve completion in IPython/Python 3.13
IPython/Python 3.13 indirectly imports rlcompleter, and the
completer is set up to reference rlcompleter.__main__.
However, this rlcompleter.__main__ is different from the
__main__ in the REPL execution. Therefore, this completer
cannot correctly complete the REPL globals. To address this
issue, we override rlcompleter.__main__ with __main__ only in
the case of IPython.
* lisp/progmodes/python.el (python-shell-completion-native-setup):
Modify __PYTHON_EL_native_completion_setup(). (Bug#76205)
(cherry picked from commit
a75f4449fa2aceab54f28c5ef46f82225376c2a4 )
Stefan Kangas [Tue, 18 Feb 2025 05:11:24 +0000 (06:11 +0100)]
Prefer defvar-keymap in tcl.el
* lisp/progmodes/tcl.el (tcl-mode-map, inferior-tcl-mode-map): Prefer
defvar-keymap.
(cherry picked from commit
c180966b313c87fd8a3a48218340b48ac0b933f2 )
Stefan Kangas [Tue, 18 Feb 2025 05:06:37 +0000 (06:06 +0100)]
Prefer defvar-keymap in pascal.el
* lisp/progmodes/pascal.el (pascal-mode-map, pascal-outline-map):
Prefer defvar-keymap.
(cherry picked from commit
697e7c321144f1d91bcd8f6ed26c78968a156186 )
Stefan Kangas [Tue, 18 Feb 2025 05:03:04 +0000 (06:03 +0100)]
Prefer defvar-keymap in meta-mode.el
* lisp/progmodes/meta-mode.el (meta-common-mode-map): Prefer
defvar-keymap.
(cherry picked from commit
941ba65d1e0b9a42deeff25d793db21cc56c94e0 )
Stefan Kangas [Tue, 18 Feb 2025 04:56:02 +0000 (05:56 +0100)]
Prefer plusp to open-coding it in image-dired
* lisp/image/image-dired.el (image-dired-display-thumbs)
(image-dired-forward-image, image-dired-slideshow-start)
(image-dired-line-up-interactive): Prefer plusp to open-coding it.
(cherry picked from commit
93206cd138ff01d9c2a56e52dd0e5edd8e386ec0 )
Gerd Möllmann [Tue, 18 Feb 2025 15:05:38 +0000 (16:05 +0100)]
; * src/menu.c (x_popup_menu_1): Fix typo.
(cherry picked from commit
4d3a6189418d9fe6b743ce3924a5eead6638dccb )
Stefan Monnier [Tue, 18 Feb 2025 15:05:34 +0000 (10:05 -0500)]
(replace_range): Delete last arg, always the negation of the first bool
* src/insdel.c (replace_range): Merge last arg, with `prepare`.
Rename `prepare` to `run-mode-hooks`.
* src/lisp.h (replace_range): Adjust accordingly.
* src/editfns.c (Ftranslate_region_internal):
* src/cmds.c (internal_self_insert):
* src/search.c (Freplace_match): Adjust callers.
(cherry picked from commit
41624d94cec98c1239c4fc9bb624e55ce0606068 )
Stefan Monnier [Tue, 18 Feb 2025 14:54:48 +0000 (09:54 -0500)]
src/search.c (Freplace_match): Let `replace_range` call the a-c-f
(cherry picked from commit
19f5ccbf39383f9744b9513166a2d2e7ccb85e1c )
Stefan Monnier [Tue, 18 Feb 2025 14:52:35 +0000 (09:52 -0500)]
* src/editfns.c (Fsubst_char_in_region): Delete left-over code
This code was missed back in 2000 (commit
1b16afa45bb6 ).
(cherry picked from commit
9854103b52a666db258bd10e4cd7f1291fb3bd6e )
Gerd Möllmann [Tue, 18 Feb 2025 14:41:07 +0000 (15:41 +0100)]
* src/menu.c (x_popup_menu_1): Use calln.
(cherry picked from commit
bf067daf0df9441ef94ffe6ba2b2d1add3a4ee39 )