]> git.eshelyaron.com Git - emacs.git/log
emacs.git
18 months agoFix file name completion in `shell'
Michael Albinus [Sun, 10 Sep 2023 07:53:47 +0000 (09:53 +0200)]
Fix file name completion in `shell'

* lisp/shell.el (shell-completion-vars): Fix setting of
`pcomplete-remote-file-ignore'.  (Bug#65705)

18 months ago; Fix documentation of last change (bug#65621)
Eli Zaretskii [Sun, 10 Sep 2023 07:44:10 +0000 (10:44 +0300)]
; Fix documentation of last change (bug#65621)

* lisp/dired.el (dired-movement-style): Fix doc string and
customization tags.
(dired-next-line, dired-previous-line): Doc fixes.

* etc/NEWS: Fix wording of last added entry.

18 months ago`dired-next-line' movement style (bug#65621)
shynur [Sat, 2 Sep 2023 14:39:00 +0000 (22:39 +0800)]
`dired-next-line' movement style (bug#65621)

Point will skips empty lines and optionally goto the other
end when encountering a boundary.
* lisp/dired.el (dired-movement-style): Control whether to
skip empty lines and whether to cycle through non-empty
lines.
* lisp/dired.el (dired-next-line): Add a new movement style
controlled by `dired-movement-style'.
* etc/NEWS (dired-movement-style):

18 months agoMake ‘mailcap-viewer-passes-test’ return t for viewers without tests
Felix Dietrich [Sun, 6 Aug 2023 04:01:24 +0000 (06:01 +0200)]
Make ‘mailcap-viewer-passes-test’ return t for viewers without tests

* lisp/net/mailcap.el (mailcap-viewer-passes-test):
Make ‘mailcap-viewer-passes-test’ follow its docstring and return t
for viewers without a test.  (Bug#65224)
* test/lisp/net/mailcap-tests.el
(mailcap-viewer-passes-test-w/o-test-returns-t): New test.

18 months ago; List myself as the Android port maintainer
Po Lu [Sun, 10 Sep 2023 06:11:37 +0000 (14:11 +0800)]
; List myself as the Android port maintainer

* admin/MAINTAINERS: Add myself and Android files.

18 months agoUpdate Android port
Po Lu [Sun, 10 Sep 2023 05:46:52 +0000 (13:46 +0800)]
Update Android port

* src/sfntfont.c (sfntfont_probe_widths): Prevent widths of
glyphs representing control characters from affecting the
average width.

18 months agoCorrect many instances of ``allows to''
Po Lu [Sun, 10 Sep 2023 01:33:50 +0000 (09:33 +0800)]
Correct many instances of ``allows to''

Refer to:
lists.gnu.org/archive/html/emacs-devel/2016-01/msg01598.html

* doc/emacs/frames.texi (Tab Bars):

* doc/emacs/maintaining.texi (Tag Syntax):

* doc/lispref/compile.texi (Native Compilation):

* doc/lispref/control.texi (Destructuring with pcase Patterns):

* doc/lispref/display.texi (Overlay Properties, Glyphless Chars):

* doc/lispref/frames.texi (Size Parameters, Layout Parameters)
(Child Frames):

* doc/lispref/minibuf.texi (Minibuffer Windows):

* doc/lispref/processes.texi (Asynchronous Processes):

* doc/lispref/windows.texi (Precedence of Action Functions)
(Mouse Window Auto-selection):

* doc/misc/autotype.texi (Autoinserting):

* doc/misc/efaq.texi (New in Emacs 28):

* doc/misc/idlwave.texi (Examining Variables):

* doc/misc/ses.texi (Quick Tutorial, Standard formula functions):

* doc/misc/tramp.texi (External methods, FUSE-based methods):

* lisp/comint.el (comint-insert-previous-argument-from-end):

* lisp/emacs-lisp/rmc.el (read-multiple-choice):

* lisp/gnus/gnus-util.el:

* lisp/mail/rmailsum.el (rmail-summary-progressively-narrow):

* lisp/mouse.el (mouse-drag-track):

* lisp/net/tramp-sudoedit.el:

* lisp/obsolete/landmark.el:

* lisp/org/org.el (org-startup-truncated, org-file-apps):

* lisp/pixel-scroll.el (pixel-scroll-precision-mode):

* lisp/progmodes/cperl-mode.el (cperl-praise):

* lisp/simple.el (yank-from-kill-ring, kill-visual-line):

* lisp/window.el (delete-window-choose-selected):

* src/ChangeLog.11:

* src/xdisp.c (syms_of_xdisp):

* src/xterm.c (handle_one_xevent): The construct ``allows to
<infinitive>'' is not English inasmuch as no direct object to
``allows'' is provided.  Correct and rephrase each instance of such a
construct within our documentation and commentary.

18 months agoFix treesit-node-at wrt local parsers
Yuan Fu [Sat, 9 Sep 2023 19:35:13 +0000 (12:35 -0700)]
Fix treesit-node-at wrt local parsers

* lisp/treesit.el (treesit-node-at): Don't compute language at point
first.  Because treesit-language-at uses treesit-node-at with a
language argument. Only call treesit-language-at when PARSER-OR-LANG
is nil.

18 months ago; * doc/emacs/android.texi (Android Windowing): Fix markup error.
Po Lu [Sat, 9 Sep 2023 13:59:30 +0000 (21:59 +0800)]
; * doc/emacs/android.texi (Android Windowing): Fix markup error.

18 months agoAdd byte-compiler warning about useless trailing cond clauses
Mattias Engdegård [Sat, 9 Sep 2023 11:04:54 +0000 (13:04 +0200)]
Add byte-compiler warning about useless trailing cond clauses

Warn about clauses after the default clause, as in

    (cond ((= x 0) (say "none"))
          (t (say "some"))
          (say "goodbye"))

because they are very much an indicator of a mistake (such as
misplaced brackets), and since they are deleted by the optimiser, any
other warnings there are lost and the user wouldn't know that
something is wrong otherwise.

* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Add warning.
* etc/NEWS: Announce.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-test--with-suppressed-warnings): Add test case.

18 months agoDon't cache warnings between bytecode compilation tests
Mattias Engdegård [Sat, 9 Sep 2023 11:03:42 +0000 (13:03 +0200)]
Don't cache warnings between bytecode compilation tests

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--with-fresh-warnings): New macro.
(test-byte-comp-compile-and-load, bytecomp--with-warning-test):
Use it.

18 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 9 Sep 2023 08:33:47 +0000 (04:33 -0400)]
Merge from origin/emacs-29

b8a8106fa1a ; Add missing space in the manual
5b906b62157 Fix defcustom :type of ielm-indirect-setup-hook
82af484ec15 ; Two updates of etc/TODO
0ab2823f518 ; Describe in PROBLEMS 2 problems with keyboard input
4e7112ab211 ; Fix inaccuracy in ELisp reference manual
34bbb6c8d21 Document NonGNU ELPA in FAQ
2af092741e5 Fix remote path setting in Eshell
4613575d97f ; * lisp/completion.el (dynamic-completion-mode): Fix las...
2f0f33fbf9d Update docs for (co-)maintainer changes
b068fcd4a31 * doc/lispref/strings.texi (Text Comparison): Fix typo (b...
2e2a5f8118c Adapt Tramp manual
d32f00a35bc Improve docstring of message-sendmail-envelope-from
1a668cda8bc Unbreak builds with CHECK_STRUCTS.
77b6e9bb17b Improve documentation of EPG
d3382f94714 ; * lisp/completion.el (dynamic-completion-mode): Doc fix.
1458daf3164 Avoid crashes on macOS with context menus

# Conflicts:
# src/pdumper.c

18 months ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 9 Sep 2023 08:32:58 +0000 (04:32 -0400)]
; Merge from origin/emacs-29

The following commit was skipped:

14819131fff Fix c-ts-mode BSD style indentation

18 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 9 Sep 2023 08:32:45 +0000 (04:32 -0400)]
Merge from origin/emacs-29

bc56da92d8d ; Fix error in 'tex-recenter-output-buffer'
d17c5adc057 Fix regexp for recognizing PBM images
9e9f61866e7 Improve wording in ELisp manual
7427efa033b Fix typo (Bug#65764)
59c66244080 ; * lisp/ido.el (ido-completion-buffer): Fix :type (bug#6...
4ec4b18c2a0 Fix libgccjit build on Haiku
80bdcf8f351 (regexp-tests-backtrack-optimization): Mark it as failing
8a9e653cc82 ; Add regression test for bug#65726
6fad73d7cc5 * src/regex-emacs.c (mutually_exclusive_p): Fix inf-loop ...
1d3d4196073 ; * lisp/files.el (save-some-buffers-functions): Doc fix ...
42b14c6e5bb Bump seq version to 2.24
ff5190a174f Add note on ELPA to admin/notes/bug-triage
f1e4cbe72aa ; * etc/PROBLEMS: Minor wording fix.
fd5593c7f25 * etc/PROBLEMS: Mention bug#65432 and its remedy.
dd896ea1e62 Ignore errors when checking for object initializers (bug#...
3550f44c17c ; Fix typos
5b246b9b817 * CONTRIBUTE: Document making ChangeLogs with Magit.
0bd46619413 Doc fixes for obsolete functions and variables
524c0c34f24 ; * lisp/ffap.el (ffap-rfs-regexp): Fix :type (bug#65698).
f48dccc4675 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
71a85e22668 A revision to the Widget manual
dbbcf4a6599 Fix fontification of " in edit-kbd-macro

# Conflicts:
# test/src/regex-emacs-tests.el

18 months ago; * lisp/progmodes/c-ts-mode.el (treesit-parser-root-node): Declare.
Eli Zaretskii [Sat, 9 Sep 2023 08:29:48 +0000 (11:29 +0300)]
; * lisp/progmodes/c-ts-mode.el (treesit-parser-root-node): Declare.

18 months agoUpdate Android port
Po Lu [Sat, 9 Sep 2023 07:49:47 +0000 (15:49 +0800)]
Update Android port

* src/android-asset.h (android_asset_read_internal): Return an
error indication if an exception arises while reading.
(AAsset_getBuffer): Free BUFFER using the C library free
function.

18 months ago; Fix last change
Jim Porter [Sat, 9 Sep 2023 05:24:06 +0000 (22:24 -0700)]
; Fix last change

* test/lisp/eshell/esh-proc-tests.el
(esh-proc-test/sigpipe-exits-process): Make sure we have no *new*
processes, instead of making sure we have no processes at all.

18 months ago; Fix name of an Eshell test
Jim Porter [Sat, 9 Sep 2023 04:08:57 +0000 (21:08 -0700)]
; Fix name of an Eshell test

* test/lisp/eshell/esh-proc-tests.el
(esh-var-test/output/remote-redirect): Rename to...
(esh-proc-test/output/remote-redirect): ... this.

18 months ago* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause): Fix bug#65833
Stefan Monnier [Sat, 9 Sep 2023 02:17:43 +0000 (22:17 -0400)]
* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause): Fix bug#65833

For some reason the intervals case failed to push the var to
`loop-for-bindings` before pushing to `loop-for-sets`.
AFAICT this was the only place where we made that mistake.

18 months agoMicro-optimize sfnt_interpret_trap
Po Lu [Sat, 9 Sep 2023 02:00:17 +0000 (10:00 +0800)]
Micro-optimize sfnt_interpret_trap

* src/sfnt.c (AVOID) [TEST]: Define to its standard value in
lisp.h.
(sfnt_interpret_trap): Label AVOID.

18 months ago* lisp/tempo.el (tempo-insert): Use `pcase` and `dolist`
Stefan Monnier [Fri, 8 Sep 2023 23:41:28 +0000 (19:41 -0400)]
* lisp/tempo.el (tempo-insert): Use `pcase` and `dolist`

18 months ago* lisp/tempo.el (tempo-find-match-string): Simplify
Stefan Monnier [Fri, 8 Sep 2023 23:24:53 +0000 (19:24 -0400)]
* lisp/tempo.el (tempo-find-match-string): Simplify

18 months ago* lisp/tempo.el: Remove left over uses of the dynbind dialect
Stefan Monnier [Fri, 8 Sep 2023 23:22:16 +0000 (19:22 -0400)]
* lisp/tempo.el: Remove left over uses of the dynbind dialect

* lisp/tempo.el (tempo-define-template): Use a real closure.
(tempo-insert, tempo-build-collection): Use lexical scoping.

18 months ago(tempo-user-elements): Make it a proper hook
Stefan Monnier [Fri, 8 Sep 2023 23:18:28 +0000 (19:18 -0400)]
(tempo-user-elements): Make it a proper hook

* lisp/tempo.el (tempo-user-element-functions): Rename from
`tempo-user-elements`.
(tempo-user-elements): Preserve as obsolete alias.
(tempo-is-user-element): Use `run-hook-with-args-until-success`.

18 months ago* lisp/tempo.el: Remove redundant `:group`s and use #'
Stefan Monnier [Fri, 8 Sep 2023 23:15:11 +0000 (19:15 -0400)]
* lisp/tempo.el: Remove redundant `:group`s and use #'

18 months ago; * lisp/progmodes/c-ts-mode.el (c-ts-base-mode): Fix typo.
Yuan Fu [Fri, 8 Sep 2023 17:10:32 +0000 (10:10 -0700)]
; * lisp/progmodes/c-ts-mode.el (c-ts-base-mode): Fix typo.

18 months ago; Add missing space in the manual
Vincent Lefevre [Wed, 6 Sep 2023 11:57:07 +0000 (13:57 +0200)]
; Add missing space in the manual

* doc/lispref/compile.texi (Native-Compilation Variables): Add missing
space.  (Bug#65782)

Copyright-paperwork-exempt: yes

18 months agoFix defcustom :type of ielm-indirect-setup-hook
Mauro Aranda [Fri, 8 Sep 2023 15:44:42 +0000 (12:44 -0300)]
Fix defcustom :type of ielm-indirect-setup-hook

* lisp/ielm.el (ielm-indirect-setup-hook): Fix :type and remove :safe
property, since it was probably a copy-pasta.  (Bug#65821)

18 months agoExtract c-ts-mode--feature-list out
Yuan Fu [Fri, 8 Sep 2023 16:39:54 +0000 (09:39 -0700)]
Extract c-ts-mode--feature-list out

* lisp/progmodes/c-ts-mode.el (c-ts-mode--feature-list): New variable.

18 months ago; * lisp/treesit.el (treesit--indent-1): Get all parsers.
Yuan Fu [Fri, 8 Sep 2023 16:09:14 +0000 (09:09 -0700)]
; * lisp/treesit.el (treesit--indent-1): Get all parsers.

18 months ago; * lisp/treesit.el (treesit--indent-1): Add missing call.
Yuan Fu [Fri, 8 Sep 2023 16:07:46 +0000 (09:07 -0700)]
; * lisp/treesit.el (treesit--indent-1): Add missing call.

18 months ago* lisp/pcomplete.el (pcomplete-completions-at-point): Add hack for bug#65089
Stefan Monnier [Fri, 8 Sep 2023 15:31:35 +0000 (11:31 -0400)]
* lisp/pcomplete.el (pcomplete-completions-at-point): Add hack for bug#65089

Improve our guess for `end` and `buftext` when point is not at the end
of the current "thing to complete".

18 months agoMark two flyspell functions as internal
Stefan Kangas [Fri, 8 Sep 2023 14:47:33 +0000 (16:47 +0200)]
Mark two flyspell functions as internal

* lisp/textmodes/flyspell.el: Minor doc fix.
(flyspell--mode-on, flyspell--mode-off): Rename from
'flyspell-mode-on' and 'flyspell-mode-off'.  The old names are
preserved as obsolete aliases.

18 months ago; Two updates of etc/TODO
Eli Zaretskii [Fri, 8 Sep 2023 13:31:14 +0000 (16:31 +0300)]
; Two updates of etc/TODO

* etc/TODO: Remove the redesign-overlays item (already done in
Emacs 29.1).  Add an item about supporting external indentation
rules.

18 months ago; Describe in PROBLEMS 2 problems with keyboard input
Eli Zaretskii [Fri, 8 Sep 2023 12:35:05 +0000 (15:35 +0300)]
; Describe in PROBLEMS 2 problems with keyboard input

* etc/PROBLEMS: Describe problems with WSL and PGTK keyboard
input.  (Bug#65802)  (Bug#65811)

18 months agoAvoid errors in EWW when EWW is killed
Eli Zaretskii [Fri, 8 Sep 2023 12:11:10 +0000 (15:11 +0300)]
Avoid errors in EWW when EWW is killed

* lisp/net/eww.el (eww-render): Don't signal errors if the page
being rendered was closed.  (Bug#65678)

18 months ago; * doc/lispref/display.texi (Low-Level Font): Fix last change.
Eli Zaretskii [Fri, 8 Sep 2023 12:06:03 +0000 (15:06 +0300)]
; * doc/lispref/display.texi (Low-Level Font): Fix last change.

18 months agoFix typos
Po Lu [Fri, 8 Sep 2023 11:57:40 +0000 (19:57 +0800)]
Fix typos

* src/android.c (android_set_task_name):

* src/sfnt.c (main): Test if fd < 0, not fd < 1.

18 months ago; Fix inaccuracy in ELisp reference manual
Eli Zaretskii [Fri, 8 Sep 2023 11:39:49 +0000 (14:39 +0300)]
; Fix inaccuracy in ELisp reference manual

* doc/lispref/text.texi (Motion by Indent): Remove incorrect
information about return values that can be anything.  (Bug#65819)

18 months agoDocument NonGNU ELPA in FAQ
Stefan Kangas [Fri, 8 Sep 2023 09:43:14 +0000 (11:43 +0200)]
Document NonGNU ELPA in FAQ

* doc/misc/efaq.texi (Packages that do not come with Emacs):
Document NonGNU ELPA.  (Bug#65818)

18 months agoFix Perl script in Tramp
Michael Albinus [Fri, 8 Sep 2023 09:07:54 +0000 (11:07 +0200)]
Fix Perl script in Tramp

* lisp/net/tramp-sh.el (tramp-perl-file-name-all-completions):
Fix Perl script.  (Bug#65744)

18 months agoProperly detect content files in Doc View
Po Lu [Fri, 8 Sep 2023 08:12:12 +0000 (16:12 +0800)]
Properly detect content files in Doc View

* lisp/doc-view.el (doc-view-mode): Detect if file name starts
with /content or /assets, and don't regard it as available to
subprocesses in that case.

18 months agoFix typos in last change
Po Lu [Fri, 8 Sep 2023 03:00:10 +0000 (11:00 +0800)]
Fix typos in last change

* src/font.c (font_dynamic_unparse_xlfd): Remove unused variable.
(Ffont_xlfd_name): Initialize name.

18 months ago; * src/fontset.c: Remove extraneous portion of last change.
Po Lu [Fri, 8 Sep 2023 02:37:53 +0000 (10:37 +0800)]
; * src/fontset.c: Remove extraneous portion of last change.

18 months agoPermit XLFD names to exceed 255 characters
Po Lu [Fri, 8 Sep 2023 02:37:18 +0000 (10:37 +0800)]
Permit XLFD names to exceed 255 characters

* doc/lispref/display.texi (Low-Level Font)
<font-xlfd-name>: Document new argument `long-xlfds'.

* etc/NEWS: Mention removal of XLFD length restrictions.

* src/font.c (font_build_object): Dynamically allocate XLFD,
permitting them to surpass 255 characters in length.
(font_parse_xlfd_1): Cease rejecting XLFDs more than 255
characters in length.
(font_dynamic_unparse_xlfd): New function.  Like
font_unparse_xlfd, but allocate the XLFD dynamically.
(font_delete_unmatched): Dynamically allocate XLFD if necessary.
(Ffont_xlfd_name): New arg LONG_XLFDs.  If t, return a
dynamically allocated XLFD.  All callers changed.

* src/font.h: Update prototypes.

* src/fontset.c (Fnew_fontset): Dynamically allocate XLFD when
establishing fontset name.

18 months agoFix treesit-thing-definition
Yuan Fu [Fri, 8 Sep 2023 00:56:11 +0000 (17:56 -0700)]
Fix treesit-thing-definition

* lisp/treesit.el (treesit-thing-definition): Don't modify
treesit-thing-settings itself.

18 months ago; * lisp/treesit.el (treesit-node-on): Fix treesit-local-parsers-on.
Yuan Fu [Fri, 8 Sep 2023 00:44:32 +0000 (17:44 -0700)]
; * lisp/treesit.el (treesit-node-on): Fix treesit-local-parsers-on.

18 months agoFix treesit-thing-settings for c++-ts-mode (bug#65810)
Yuan Fu [Thu, 7 Sep 2023 23:08:42 +0000 (16:08 -0700)]
Fix treesit-thing-settings for c++-ts-mode (bug#65810)

* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--thing-settings): New varaible.
(c-ts-base-mode): Use c-ts-mode--thing-settings.

18 months ago; * lisp/treesit.el (treesit-update-ranges): Fix use of parser-list.
Yuan Fu [Thu, 7 Sep 2023 23:03:01 +0000 (16:03 -0700)]
; * lisp/treesit.el (treesit-update-ranges): Fix use of parser-list.

18 months agoAdd Ftreesit_parser_tag
Yuan Fu [Thu, 7 Sep 2023 05:15:21 +0000 (22:15 -0700)]
Add Ftreesit_parser_tag

* lisp/treesit.el (treesit-parser-tag): Add.
* src/treesit.c (Ftreesit_parser_tag): Add.

18 months agoChange treesit-local-parsers-in to treesit-local-parsers-on
Yuan Fu [Thu, 7 Sep 2023 23:04:29 +0000 (16:04 -0700)]
Change treesit-local-parsers-in to treesit-local-parsers-on

To improve consistency. We already have treesit-node-at and
treesit-node-on.

* doc/lispref/parsing.texi (Multiple Languages): Update manual.
* lisp/treesit.el (treesit-local-parsers-on): Change to in.
(treesit-font-lock-fontify-region): Change to in.

18 months agoError when trying to make nil or t obsolete
Stefan Kangas [Wed, 6 Sep 2023 09:21:39 +0000 (11:21 +0200)]
Error when trying to make nil or t obsolete

* lisp/emacs-lisp/byte-run.el (make-obsolete, make-obsolete-variable):
Signal error if the symbol to make obsolete is nil or t.  (Bug#62248)
(byte-run--constant-obsolete-warning): New function.
* test/lisp/emacs-lisp/byte-run-tests.el: New file.

18 months agoAdd note regarding `seq` on GNU ELPA
Stefan Kangas [Thu, 7 Sep 2023 21:50:50 +0000 (23:50 +0200)]
Add note regarding `seq` on GNU ELPA

* lisp/emacs-lisp/seq.el: Add note regarding seq on GNU ELPA.

Co-authored-by: Stefan Monnier <monnier@iro.umontreal.ca>
19 months agoFix detection of vtable start and end
Lämppi Lütti [Sat, 22 Oct 2022 04:58:46 +0000 (07:58 +0300)]
Fix detection of vtable start and end

* lisp/emacs-lisp/vtable.el (vtable-beginning-of-table)
(vtable-end-of-table): Fix detection of vtable limits.  (Bug#58712)

Copyright-paperwork-exempt: yes

19 months agoFix remote path setting in Eshell
Jim Porter [Sun, 27 Aug 2023 19:53:40 +0000 (12:53 -0700)]
Fix remote path setting in Eshell

This ensures that we supply Tramp with the local PATH so that it can
do its job of starting the local "ssh", or whatever the method uses
(bug#65551).

* lisp/eshell/esh-proc.el (eshell-gather-process-output): Add special
handling for remote processes.

* test/lisp/eshell/esh-proc-tests.el
(esh-var-test/remote/remote-path): New test.

19 months agoTranslate backslash-saturated regexp to rx
Mattias Engdegård [Thu, 7 Sep 2023 16:06:34 +0000 (18:06 +0200)]
Translate backslash-saturated regexp to rx

* lisp/minibuffer.el (minibuffer--regexp-propertize):
The original regexp had 83 backslashes in 147 characters which may be
some kind of record.  This transformation cuts it down to 6, and the
generated regexp string is about 14 % shorter.

19 months ago* admin/unidata/emoji-zwj.awk: More efficient code generation
Mattias Engdegård [Thu, 7 Sep 2023 09:25:46 +0000 (11:25 +0200)]
* admin/unidata/emoji-zwj.awk: More efficient code generation

Hoist the `eval-when-compile` to encompass the entire list, since
backquote forms aren't automatically evaluated at compile time.
This results in a single constant list in the generated code, and
much less actual code.

19 months ago; * lisp/completion.el (dynamic-completion-mode): Fix last change.
Eli Zaretskii [Thu, 7 Sep 2023 15:52:35 +0000 (18:52 +0300)]
; * lisp/completion.el (dynamic-completion-mode): Fix last change.

19 months agoUpdate docs for (co-)maintainer changes
Stefan Kangas [Thu, 7 Sep 2023 15:48:14 +0000 (17:48 +0200)]
Update docs for (co-)maintainer changes

* admin/MAINTAINERS: Add information on current maintainers as a
canonical place to find this information.
* doc/emacs/ack.texi (Acknowledgments): Update for recent
Emacs (co-)maintainer changes.
* admin/make-tarball.txt: Add note as a reminder to update the above
before making a new release.

19 months ago* doc/lispref/strings.texi (Text Comparison): Fix typo (bug#65799).
Sebastian Miele [Thu, 7 Sep 2023 11:51:12 +0000 (13:51 +0200)]
* doc/lispref/strings.texi (Text Comparison): Fix typo (bug#65799).

19 months agoAdapt Tramp manual
Michael Albinus [Thu, 7 Sep 2023 13:03:42 +0000 (15:03 +0200)]
Adapt Tramp manual

* doc/misc/tramp.texi (Frequently Asked Questions): Do not use
`defadvice'.  Add indices.  (Bug#65481)

19 months agoImprove docstring of message-sendmail-envelope-from
Stefan Kangas [Wed, 6 Sep 2023 20:46:23 +0000 (22:46 +0200)]
Improve docstring of message-sendmail-envelope-from

* lisp/gnus/message.el (message-sendmail-envelope-from): Doc fix.

19 months agoUnbreak builds with CHECK_STRUCTS.
Philipp Stephani [Thu, 7 Sep 2023 09:30:52 +0000 (11:30 +0200)]
Unbreak builds with CHECK_STRUCTS.

* src/pdumper.c (dump_buffer): Fix hash for 'struct buffer'.  The
recent changes to that structure where commits
8f3091defb3ec4396ccea563f67c005044b822ca and
0bd46619413e83fe3c85c8a1dfbf5e20dfce8605, both of which just affected
comments.

19 months agoImprove documentation of EPG
Jens Schmidt [Tue, 29 Aug 2023 20:14:48 +0000 (22:14 +0200)]
Improve documentation of EPG

* lisp/epg.el (epg-context-set-passphrase-callback): Update
GnuPG-version-dependent information in docstring and refer to
Info node `(epa)' for details.
(epg-start-edit-key): Replace description of arguments by a
reference to `epg-edit-key'.
(epg-edit-key): More precisely describe callback operation and
arguments and provide an example of how to edit a key.  (Bug#65603)

19 months agoFix java-ts-mode tests (bug#65738)
john muhl [Mon, 4 Sep 2023 16:36:42 +0000 (11:36 -0500)]
Fix java-ts-mode tests (bug#65738)

* admin/notes/tree-sitter/build-module/batch.sh (languages):
Add Java.
* lisp/progmodes/java-ts-mode.el (java-ts-mode): Pass a list
to 'treesit-thing-settings'.

19 months ago; Fix documentation of last change
Eli Zaretskii [Thu, 7 Sep 2023 08:56:16 +0000 (11:56 +0300)]
; Fix documentation of last change

* lisp/minibuffer.el (minibuffer-regexp-prompts):
* doc/lispref/minibuf.texi (Minibuffer Misc): Fix docs (bug#50766).

19 months agoNew minor mode 'minibuffer-regexp-mode'
martin rudalics [Wed, 6 Sep 2023 08:09:49 +0000 (10:09 +0200)]
New minor mode 'minibuffer-regexp-mode'

This mode is for editing regexps in minibuffer, it highlights
parens via `show-paren-mode' and `blink-matching-paren' in a
user-friendly way, avoids reporting false paren mismatches,
and makes sexp navigation more intuitive.
* lisp/minibuffer.el (minibuffer-regexp-mode)
(minibuffer--regexp-primed, minibuffer--regexp-prompt-regexp):
New variables.
(minibuffer--regexp-propertize, minibuffer--regexp-primed)
(minibuffer--regexp-before-change)
(minibuffer--regexp-after-change)
(minibuffer--regexp-post-self-insert, minibuffer--regexp-setup)
(minibuffer--regexp-exit, minibuffer-regexp-mode): New functions.
(minibuffer-regexp-prompts): New option.

* doc/lispref/minibuf.texi (Minibuffer Misc): Document the new
mode and its option.

* etc/NEWS: Announce the new mode.

Bug#50766

19 months ago; Fix recent changes in treesit documentation
Eli Zaretskii [Thu, 7 Sep 2023 08:09:56 +0000 (11:09 +0300)]
; Fix recent changes in treesit documentation

* lisp/treesit.el (treesit-local-parsers-at)
(treesit-local-parsers-in):
* doc/lispref/parsing.texi (Multiple Languages):
 (Using Parser): Fix wording of recently added docs.

19 months ago; * lisp/completion.el (dynamic-completion-mode): Doc fix.
Eli Zaretskii [Thu, 7 Sep 2023 06:52:23 +0000 (09:52 +0300)]
; * lisp/completion.el (dynamic-completion-mode): Doc fix.

19 months agoAvoid crashes on macOS with context menus
Daniel Martín [Thu, 13 Jul 2023 08:47:35 +0000 (10:47 +0200)]
Avoid crashes on macOS with context menus

* src/nsmenu.m ([EmacsMenu menuNeedsUpdate:]): Avoid crashes with
context menus.  (Bug#63495)

19 months agoFix c-ts-mode BSD style indentation
Yuan Fu [Wed, 6 Sep 2023 03:12:19 +0000 (20:12 -0700)]
Fix c-ts-mode BSD style indentation

* lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-styles):
Add else_clause.

(cherry picked from commit d392a5d3c11b7e7479d31421f8237f29952c909e)

19 months agoTag NEWS
Po Lu [Thu, 7 Sep 2023 03:02:12 +0000 (11:02 +0800)]
Tag NEWS

* etc/NEWS: Tag Android as documented, given that all pertinent
documentation has been written.

19 months ago; * ChangeLog.android: Minor formatting correction.
Po Lu [Thu, 7 Sep 2023 02:32:23 +0000 (02:32 +0000)]
; * ChangeLog.android: Minor formatting correction.

19 months agoPort Proced to Android
Po Lu [Thu, 7 Sep 2023 01:35:59 +0000 (09:35 +0800)]
Port Proced to Android

* configure.ac (HAVE_PROCFS): Define if opsys is `android'.

* src/android.c (android_set_task_name): New function.
(android_run_select_thread, android_run_debug_thread): Set the
name of the LWP for debugging purposes.

* src/process.c (create_process): Set F_SETPIPE_SZ on Android in
addition to GNU/Linux.

* src/sysdep.c (procfs_ttyname, system_process_attributes)
[__ANDROID__]: Enable procfs_ttyname on Android systems.

19 months agoRemedy bug#63395
Po Lu [Thu, 7 Sep 2023 00:58:21 +0000 (08:58 +0800)]
Remedy bug#63395

* src/gtkutil.c (xg_update_frame_menubar): Avoid scaling the
requisiton height twice.  (bug#63395)

19 months agoFix perl-mode indentation after a hanging paren
Mauro Aranda [Thu, 20 Oct 2022 11:41:42 +0000 (08:41 -0300)]
Fix perl-mode indentation after a hanging paren

* lisp/progmodes/perl-mode.el (perl-hanging-paren-p): Allow
comments.  (Bug#34245)
* test/lisp/progmodes/perl-mode-tests.el (perl-test-bug-34245): New
test.

19 months ago* lisp/progmodes/project.el: Bump version to 0.10.0.
Dmitry Gutov [Wed, 6 Sep 2023 20:54:30 +0000 (23:54 +0300)]
* lisp/progmodes/project.el: Bump version to 0.10.0.

19 months ago(project-try-vc): When found non-VC project root, still search for the backend
Dmitry Gutov [Wed, 6 Sep 2023 20:30:27 +0000 (23:30 +0300)]
(project-try-vc): When found non-VC project root, still search for the backend

* lisp/progmodes/project.el (project-try-vc): When finding a
non-VC project root, still try to search for the containing
responsible VC backend, if any (bug#65704).

19 months ago; Fix error in 'tex-recenter-output-buffer'
Eshel Yaron [Tue, 5 Sep 2023 16:58:02 +0000 (18:58 +0200)]
; Fix error in 'tex-recenter-output-buffer'

* lisp/textmodes/tex-mode.el (tex-recenter-output-buffer): Check
that 'display-buffer' returned a window, rather than nil, before
selecting it.  (Bug#65762)

19 months agoRemove compat code from flyspell
Stefan Kangas [Wed, 6 Sep 2023 16:34:40 +0000 (18:34 +0200)]
Remove compat code from flyspell

* lisp/textmodes/flyspell.el: Delete redundant autoloads.

19 months agoFix regexp for recognizing PBM images
David Ponce [Thu, 24 Aug 2023 10:55:03 +0000 (12:55 +0200)]
Fix regexp for recognizing PBM images

* lisp/image.el (image-type-header-regexps): Don't use [:space:],
as its meaning depends on the current buffer's syntax tables.
(Bug#65496)

19 months agoImprove wording in ELisp manual
Eli Zaretskii [Wed, 6 Sep 2023 12:49:11 +0000 (15:49 +0300)]
Improve wording in ELisp manual

* doc/lispref/objects.texi (Printed Representation): Improve
wording.  Suggested by Xie Shynur <one.last.kiss@outlook.com>.
(Bug# 60639)

19 months agoFix typo (Bug#65764)
Joseph Turner [Tue, 5 Sep 2023 19:05:58 +0000 (12:05 -0700)]
Fix typo (Bug#65764)

* lisp/subr.el (backward-word-strictly): Fix typo.

19 months ago; Silence byte-compiler
Stefan Kangas [Wed, 6 Sep 2023 11:00:30 +0000 (13:00 +0200)]
; Silence byte-compiler

* test/lisp/emacs-lisp/cl-lib-tests.el (old-struct)
(cl-lib-old-struct):
* test/lisp/progmodes/eglot-tests.el
(eglot-test-rust-analyzer-watches-files)
(eglot-test-capabilities, eglot-test-path-to-uri-windows):
Silence byte-compiler.

19 months ago; * lisp/ido.el (ido-completion-buffer): Fix :type (bug#65756).
Eli Zaretskii [Wed, 6 Sep 2023 10:49:32 +0000 (13:49 +0300)]
; * lisp/ido.el (ido-completion-buffer): Fix :type (bug#65756).

19 months ago; * lisp/leim/quail/indian.el: correct argument order
Mattias Engdegård [Wed, 6 Sep 2023 08:36:51 +0000 (10:36 +0200)]
; * lisp/leim/quail/indian.el: correct argument order

19 months agoindian.el: fix sorting predicate
Mattias Engdegård [Wed, 6 Sep 2023 08:05:25 +0000 (10:05 +0200)]
indian.el: fix sorting predicate

* lisp/leim/quail/indian.el
(quail-tamil-itrans-compute-syllable-table): Add missing comparison.
Patch from Visuwesh; bug found by an experimental tool.

19 months agoUse *p in interactive form in transpose-chars
Theodor Thornhill [Sat, 17 Dec 2022 12:14:22 +0000 (13:14 +0100)]
Use *p in interactive form in transpose-chars

* lisp/simple.el (transpose-chars): Use '*p' instead of '*P' like the
other transpose-* functions.  (Bug#60157)

19 months agoSupport local parser in treesit-node-at/on
Yuan Fu [Wed, 6 Sep 2023 04:02:13 +0000 (21:02 -0700)]
Support local parser in treesit-node-at/on

* lisp/treesit.el (treesit-node-at)
(treesit-node-on): Support local parser.

19 months ago; Update Ftreesit_parser_list docstring.
Yuan Fu [Wed, 6 Sep 2023 03:15:11 +0000 (20:15 -0700)]
; Update Ftreesit_parser_list docstring.

* doc/lispref/parsing.texi (Using Parser): Update manual.
* src/treesit.c (Ftreesit_parser_list): Update docstring.

19 months agoFix c-ts-mode BSD style indentation
Yuan Fu [Wed, 6 Sep 2023 03:12:19 +0000 (20:12 -0700)]
Fix c-ts-mode BSD style indentation

* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--indent-styles): Add else_clause.

19 months agoSupport tree-sitter local parsers
Yuan Fu [Wed, 6 Sep 2023 02:57:34 +0000 (19:57 -0700)]
Support tree-sitter local parsers

* doc/lispref/parsing.texi (Multiple Languages): Update manual.
* lisp/treesit.el (treesit-range-settings): Add LOCAL-P to range
setting.
(treesit-range-rules): Support :local keyword.
(treesit-local-parsers-at)
(treesit-local-parsers-in)
(treesit--update-ranges-local): New functions.
(treesit-update-ranges)
(treesit-font-lock-fontify-region)
(treesit--indent-1): Support local parsers and prioritize it over
global parsers.

19 months agoAllow filter by tag in treesit-parser-list
Yuan Fu [Tue, 5 Sep 2023 06:45:21 +0000 (23:45 -0700)]
Allow filter by tag in treesit-parser-list

* doc/lispref/parsing.texi: Update manual.
* src/treesit.c (Ftreesit_parser_create): Disallow using t for tag.
(Ftreesit_parser_list): Add LANGUAGE and TAG parameter.

19 months agoUse tagged parser in c-ts-mode
Yuan Fu [Tue, 5 Sep 2023 03:05:50 +0000 (20:05 -0700)]
Use tagged parser in c-ts-mode

Now that we have tags for parsers, use that instead of the
load-name-override hack.

* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--emacs-c-range-query): Change parser to C.
(c-ts-mode--emacs-set-ranges): Use the tagged parser.
(c-ts-mode): Create the tagged parser.

19 months agoAdd tag to tree-sitter parsers
Yuan Fu [Mon, 4 Sep 2023 22:33:19 +0000 (15:33 -0700)]
Add tag to tree-sitter parsers

* doc/lispref/parsing.texi (Using Parser): Update manual.
* lisp/treesit.el (treesit-buffer-root-node)
* src/treesit.c (make_treesit_parser)
* src/treesit.c (Ftreesit_parser_create): Add TAG parameter.
(treesit_resolve_node): Create a parser with nil tag.
* src/treesit.h (Lisp_TS_Parser): Add TAG field.

19 months agoFix libgccjit build on Haiku
Po Lu [Wed, 6 Sep 2023 03:19:32 +0000 (11:19 +0800)]
Fix libgccjit build on Haiku

* configure.ac (LIBGCCJIT_LIBS): Link only with -lgccjit under
Haiku.

19 months agoProperly run emacsclient under Android if DISPLAY is set
Po Lu [Wed, 6 Sep 2023 02:31:26 +0000 (10:31 +0800)]
Properly run emacsclient under Android if DISPLAY is set

* java/org/gnu/emacs/EmacsPixmap.java (EmacsPixmap): Make
dimensions final, since they are never changed after the
constructor.

* lib-src/emacsclient.c (decode_options): If --display is not
provided, always set display to `android' even if DISPLAY is
provided.

* lisp/net/browse-url.el (browse-url): Cease setting DISPLAY
under Android.

* src/callproc.c (getenv_internal, make_environment_block):
Don't afford DISPLAY special treatment under Android.

19 months agoCorrectly handle common prefixes in substring completion
Spencer Baugh [Tue, 5 Sep 2023 19:40:06 +0000 (15:40 -0400)]
Correctly handle common prefixes in substring completion

Substring completion would previously not complete the longest common
substring if that substring was a prefix of all the completion
alternatives.  Now it does.  An explanation of this bug

Substring completion is implemented by passing the `prefix' symbol as
part of the pattern passed to completion-pcm--merge-completions.  This
symbol is supposed to cause completion-pcm--merge-completions to
"grow" a completion of a common substring only from the "right" of the
symbol (a common suffix), not from the "left" of the symbol (a common
prefix).  Yes, this is the opposite of what the name `prefix' would
imply.

When processing a symbolic element of the pattern,
completion-pcm--merge-completions first finds the common prefix of all
the completions in that part of the pattern (using try-completion).
Then for `prefix' and other elements which want to complete a common
suffix, the common prefix is removed from each element and then the
common suffix is calculated with completion--common-suffix.

If the common prefix covers the entirety of all the alternatives
(i.e. when "unique" is true in the code), it's also a common suffix.
In that case, the common suffix calculation (if it runs) is basically
a no-op which will produce an empty string, since we removed the
common prefix before running it.

Before this change, `prefix' elements would unconditionally discard
the common prefix, which produced the wrong result in the case that
common prefix == common suffix.  For example:

  (completion-pcm--merge-completions '("ab" "ab") '(prefix "b"))
  -> ("b")

Now we detect this situation and include the common prefix in this
case for `prefix' elements.  Then we get:

  (completion-pcm--merge-completions '("ab" "ab") '(prefix "b"))
  -> ("b" "a")

which is correct.

* lisp/minibuffer.el (completion-pcm--merge-completions): Don't ignore
a common suffix in a `prefix' pattern element when it's also a common
prefix.
* test/lisp/minibuffer-tests.el (completion-substring-test-5): Add a
test.

19 months agoMake `dns-mode` fontify quoted values correctly
Stefan Kangas [Tue, 5 Sep 2023 21:06:21 +0000 (23:06 +0200)]
Make `dns-mode` fontify quoted values correctly

* lisp/textmodes/dns-mode.el (dns-mode-syntax-table): Fontify
quoted values correctly.  (Bug#62214)
Suggested by Trent W. Buck <trentbuck@gmail.com>.

19 months agoImprove completion of treesit-check-indent command
Daniel Martín [Mon, 12 Dec 2022 10:33:01 +0000 (11:33 +0100)]
Improve completion of treesit-check-indent command

* lisp/treesit.el (treesit--read-major-mode): Helper function to
provide completion for most major modes.
(treesit-check-indent): Use the new interactive spec and improve the
docstring.  (Bug#60001)