Commit graph

94984 commits

Author SHA1 Message Date
Pär Bohrarper
2dae603c41 Fix file listing in submodules with project-files-relative-names=t
* lisp/progmodes/project.el (project--vc-list-files):
Prepend module names to files when project-files-relative-names is
non-nil (bug#71538).
2024-06-14 04:05:46 +03:00
Eshel Yaron
56537ab022
; (completion-basic-all-completions): Fix recent change
* lisp/minibuffer.el (completion-basic-all-completions): Don't
omit base size.

https://lists.gnu.org/archive/html/emacs-devel/2024-06/msg00235.html
2024-06-13 16:43:41 +02:00
Harald Jörg
39e3c30b51 ;cperl-mode.el: Avoid false positives when parsing new Perl syntax
* lisp/progmodes/cperl-mode.el (cperl--package-for-imenu-rx)
(cperl--class-for-imenu-rx): avoid false positives when collecting
imenu entries
* lisp/progmodes/cperl-mode.el (cperl-init-faces): avoid false
positives when detecting package names

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-test-imenu-index): Add test verifying that $class_false is
not shown as a class _false

* test/lisp/progmodes/cperl-mode-resources/grammar.pl: Add a line
containing a false positive "$class_false"
2024-06-13 14:37:13 +02:00
Mattias Engdegård
59367f6a3a php-ts-mode: minor fixes
* lisp/progmodes/php-ts-mode.el (php-ts-mode-flymake-php):
Don't use `any` to mean `not-newline`; it's misleading.
(php-ts-mode--predefined-constant): Remove duplicate "E_USER_NOTICE".
2024-06-13 10:49:28 +02:00
Po Lu
94bcd7964b Correctly define `select' binding on Android
* lisp/term/android-win.el (input-decode-map): Cease binding
select in the initial frame's input-decode-map.

* src/androidterm.c (android_term_init): Binding select in the
freshly created kboard.
(syms_of_androidterm) <Qselect, Qreturn>: New symbols.
2024-06-13 10:46:59 +08:00
Dmitry Gutov
6b7ff60a5e Highlight the suffix in *Completions* buffer in 'basic' style too
* lisp/minibuffer.el (completion-basic-all-completions):
Make sure to highlight the suffix as well (bug#71419).
2024-06-13 00:46:12 +03:00
F. Jason Park
d1e98a8f01 Release ERC 5.6
* lisp/erc/erc.el: Change Version header from 5.6-git to 5.6.  A
`customize-package-emacs-version-alist' mapping for ERC 5.6 to Emacs
30.1 was already added when moving from 5.5 to 5.6-git.  The ERCVER
variable in doc/misc/erc.texi was likewise updated at that time.
Going forward, such changes will continue to happen preemptively, on
the flip side of each release.
(erc-version): Change version from 5.6-git to 5.6.
2024-06-12 12:26:01 -07:00
F. Jason Park
bbac7b9fa3 ; Amend some doc strings in ERC
* lisp/erc/erc-backend.el (define-erc-response-handler): Mention
important distinction between aliases for handlers and hooks, and note
expected type for the latter.
* lisp/erc/erc.el (erc--define-channel-user-status-compat-getter):
Mention that these accessors are not inlined like those generated by
`cl-defstruct'.
2024-06-12 12:26:01 -07:00
Vincenzo Pupillo
e37754fc59 Add php-ts-mode
* etc/NEWS: Mention the new mode.
* lisp/progmodes/php-ts-mode.el: New file.  (Bug#71380)
2024-06-12 21:22:29 +03:00
Stefan Kangas
b8873a7080 Fix misspelled symbols in artist.el
* lisp/textmodes/artist.el (artist-key-undraw-continuously)
(artist-key-draw-continuously)
(artist-key-do-continuously-continuously)
(artist-key-do-continuously-poly)
(artist-key-do-continuously-1point)
(artist-key-do-continuously-2points)
(artist-key-do-continuously-common)
(artist-key-set-point-continuously)
(artist-mouse-draw-continuously): Rename functions to fix misspelling of
"continuously".  Leave old function names as obsolete aliases and update
all callers.
(artist-mt, artist-go-get-undraw-fn, artist-go-get-interval-fn)
(artist-go-get-fill-pred, artist-go-get-fill-fn)
(artist-key-undraw-common, artist-key-draw-common)
(artist-key-do-continously-common, artist-key-set-point-common)
(artist-down-mouse-1): Rename symbol to 'artist-do-continuously' to fix
misspelling of "continuously".  Continue supporting the old symbol for
backwards-compatibility.
2024-06-12 18:17:13 +02:00
Eli Zaretskii
6893c327e9 ; * lisp/menu-bar.el (kill-this-buffer): Another doc fix (bug#71510). 2024-06-12 15:21:27 +03:00
Eli Zaretskii
c4a6b9dbfe ; * lisp/menu-bar.el (kill-this-buffer): Doc fix (bug#71510). 2024-06-12 13:53:19 +03:00
Michael Albinus
9c2fad55fd Fix tramp-compat-auth-info-password
* lisp/net/tramp-compat.el (tramp-compat-auth-info-password):
Use original function only for Emacs 30+.
2024-06-12 12:46:10 +02:00
Eli Zaretskii
af9bf86bd7 ; Fix defcustoms in dired-aux.el
* lisp/dired-aux.el (dired-backup-overwrite)
(dired-create-destination-dirs)
(dired-create-destination-dirs-on-trailing-dirsep)
(dired-vc-rename-file, dired-do-revert-buffer)
(dired-isearch-filenames, dired-confirm-shell-command): Fix doc
strings and customization tags.
2024-06-12 10:19:32 +03:00
Po Lu
5fc75b051f Improve compression of Emacs packages on Android 2.2
* configure.ac (ZIP): Search for a `zip' executable and
substitute the same if targeting SDK 8.

* java/INSTALL: Document new requirement.

* java/Makefile.in (GZIP_PROG, ZIP): New substitutions.
(.PHONY): Delete references to directory-tree.

(install_temp): On SDK 8 and earlier, compress large *.el and
Info files with gzip, and divide install_temp into three
separate directories, with one for large files, another for
gzipped files, and one more for the remainder.
(install_temp/assets/directory-tree, install_temp/assets/version)
(install_temp/assets/build_info): Merge these rules into
install_tmp, that they may execute before the assets directory
is split.
(emacs.apk-in): Package each directory separately, accounting
for their varied compression requirements.

* lisp/term/android-win.el (input-decode-map): Define select to
return in input-decode-map.
2024-06-12 13:52:33 +08:00
Visuwesh
076e8ad5fc Fix customisation buffer for dired group
* lisp/dired-aux.el
(dired-create-destination-dirs-on-trailing-dirsep): Actually
concat the string.  (Bug#71490)
2024-06-11 23:22:53 +02:00
Michael Albinus
5ecff95993 Refactor tramp-*-process-file functions
* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process): Don't compute
process name, this is done in `tramp-skeleton-make-process'.

* lisp/net/tramp-adb.el (tramp-adb-handle-process-file):
* lisp/net/tramp-sh.el (tramp-sh-handle-process-file):
* lisp/net/tramp-sshfs.el (tramp-sshfs-handle-process-file):
Use `tramp-skeleton-process-file'.

* lisp/net/tramp.el (tramp-get-unique-process-name): New defun.
(tramp-skeleton-make-process): Use it.
(tramp-skeleton-process-file): New defmacro.
2024-06-11 14:43:28 +02:00
Robert Pluim
e3078994d8 Show character names when describing translations
This implements Bug#71411.

* lisp/help.el (help-key-description): Use 'char-to-name' to show the
Unicode name of translated keys.
(help--describe-command): And here.

* etc/NEWS: Announce the change.
2024-06-11 11:06:37 +02:00
Robert Pluim
e4b243b931 Use 'char-to-name'
* lisp/international/emoji.el (emoji--name): Lookup name using 'char-to-name'.
* lisp/international/textsec.el (textsec-domain-suspicious-p): And here.
* lisp/simple.el (what-cursor-position): And here.
2024-06-11 11:06:37 +02:00
Robert Pluim
3a4cf1aa1e Add 'char-to-name' convenience function
* lisp/international/mule-cmds.el (char-to-name): New function.  This is
the inverse of 'char-from-name'.
* doc/lispref/nonascii.texi (Character Codes): Document it.
* etc/NEWS: Announce it.
2024-06-11 11:06:37 +02:00
Andrea Corallo
e6b771570e ; Silence a byte-compiler warning in typescript-ts-mode.el
* lisp/progmodes/typescript-ts-mode.el (treesit-node-child): Declare.
2024-06-10 18:03:32 +02:00
Stefan Monnier
d3524560ee * lisp/org/ox.el (org-export-filters-alist): Don't define as constant...
...since we modify it (set it to nil) in `orgtbl-to-generic`.
2024-06-10 10:58:46 -04:00
Stefan Monnier
018a6d2ee9 (rng-do-some-validation): Fix dangerous use of with-silent-modifications
* lisp/nxml/rng-valid.el (rng-do-some-validation): Don't let-bind
`inhibit-modification-hooks` around code which can wait.
(rng-cache-state): Bind it here instead.
2024-06-10 10:43:14 -04:00
Michael Albinus
9b12854743 Refactor tramp-*-make-process functions
* lisp/net/tramp.el (tramp-handle-make-process):
* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
* lisp/net/tramp-androidsu.el (tramp-androidsu-handle-make-process):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process):
Use `tramp-skeleton-make-process'.

* lisp/net/tramp-container.el (tramp-actions-before-shell):
Don't declare.

* lisp/net/tramp-sh.el (tramp-actions-before-shell):
Add ;;;###tramp-autoload cookie.

* lisp/net/tramp.el (tramp-file-local-name): Adapt docstring.
(tramp-skeleton-make-process): New defmacro.
2024-06-10 14:37:48 +02:00
Mattias Engdegård
087b842eed cperl-mode: fix doc string escaping
* lisp/progmodes/cperl-mode.el (cperl--extra-paired-delimiters):
Fix broken escaping.
2024-06-10 14:08:02 +02:00
Mattias Engdegård
331573e407 Org: fix mistakes in regexp, skip set and doc string
All found by Relint.

* lisp/org/org-element.el (org-element-copy-buffer):
Repair incorrect escaping.
* lisp/org/org-macs.el (org--line-empty-p): Fix broken skip-set.
* lisp/org/org.el (org-setup-yank-dnd-handlers): Fix broken regexp.
2024-06-10 14:07:07 +02:00
Eli Zaretskii
bb7b406adb ; Avoid byte-compilation warning in cperl-mode.el
* lisp/progmodes/cperl-mode.el (cperl--extra-paired-delimiters):
Avoid byte-compiler warning about curved quotes.
2024-06-10 14:21:48 +03:00
Harald Jörg
060c48435f cperl-mode.el: Update for the current Perl version 5.040
* etc/NEWS: Announce new features of cperl-mode.

* lisp/progmodes/cperl-mode.el (cperl-menu): Add toggle for extra
paired delimiters.
(defconst): new rx expressions `cperl--sub-name-generated-rx' and
`cperl--field-declaration-rx'
(cperl--imenu-entries-rx): Use the new expressions
(cperl--extra-paired-delimiters): New variable holding the paired
delimiters for Perl 5.36 and newer
(cperl-imenu-sub-keywords): Add autogenerated methods to imenu
(cperl-init-faces): Add the __CLASS__ token, builtin constants,
and attributes for field declarations.
(cperl-short-docs): Add __CLASS__ to one-line docs.
(cperl-extra-paired-delimiters-mode): new minor mode to handle
non-ASCII paired delimiters.

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-test-fontify-builtin-constants): new test.
(cperl-test-fontify-class): New test clauses for attributes.
(cperl-test-field-declaration-rx): new test.
(cperl-test-autogenerated-reader-rx): new unit test for the rx
expression.
(cperl-test-extra-delimiters): new test.
(cperl-test-imenu-index): new clauses for imenu capture of
autogenerated methods.

* test/lisp/progmodes/cperl-mode-resources/grammar.pl: Add
examples for Perl 5.40 syntax.

* test/lisp/progmodes/cperl-mode-resources/extra-delimiters.pl:
New resource for non-ASCII paired delimiters.
2024-06-10 12:22:13 +02:00
Basil L. Contovounesios
5416889873 ; Fix recent change to outline.el.
The library now makes use of hash-table-empty-p.
2024-06-10 09:43:28 +02:00
Po Lu
b7b43931ee Minor revisions to Android key bindings
* etc/PROBLEMS (Runtime problems specific to Android): Document
inappropriate generation of F3 on certain systems.

* lisp/bindings.el ([iconify-frame], [make-frame-visible]):
Update references to long-obsolete ignore-event command.

* lisp/term/android-win.el ([KEYCODE_NOTIFICATION], [\83]):
Ignore these two nuisance keys by default.
2024-06-10 15:39:57 +08:00
Basil L. Contovounesios
d6ecabe23b ; Tweak recent NEWS and window.el docs. 2024-06-10 09:32:55 +02:00
Juri Linkov
4d59608ec4 ; * lisp/outline.el: Remove unused variable. 2024-06-10 09:39:41 +03:00
Juri Linkov
1a5aa16066 * lisp/outline.el: Improve new feature of preserving outlines after revert.
(outline-minor-mode): Move adding hook 'outline-revert-buffer-rehighlight'
to the same code branch that calls 'outline-minor-mode-highlight-buffer'.
(outline-revert-buffer-rehighlight): Remove same conditions
already existing in 'outline-minor-mode'.
(outline-hidden-headings-regexp): Remove function.
(outline-hidden-headings-paths)
(outline-hidden-headings-restore-paths): New functions
that save and restore complete paths instead of flat regexps.
(outline-revert-buffer-restore-visibility): Use
'outline-hidden-headings-paths' and
'outline-hidden-headings-restore-paths'.
2024-06-10 09:34:15 +03:00
Po Lu
bd80717d8e Re-enable TTY glyph production for batch mode frames on Android
* lisp/org/ob-core.el (org-babel-execute-src-block): Revert
previous change.

* src/term.c (tty_append_glyph, produce_glyphs) [HAVE_ANDROID]:
Re-enable suppressed code.
2024-06-10 11:56:24 +08:00
Po Lu
8d1d9798f7 Fix bootstrap of org.texi
* lisp/org/ob-core.el (org-babel-execute-src-block): Ignore
errors around code block execution.
2024-06-10 08:37:51 +08:00
Stefan Kangas
77d0eed74e ; Fix typos 2024-06-10 00:40:26 +02:00
Jim Porter
32a75ecc73 Improve correctness of 'eshell-quote-argument'
* lisp/eshell/esh-arg.el (eshell-quote-argument): Mention that this
function is for use within Eshell buffers.
(eshell-quote-backslash): Properly quote newlines.

* lisp/eshell/em-unix.el (eshell/cat, eshell/du): Throw
'eshell-external' instead; that's what it's here for.

* test/lisp/eshell/esh-proc-tests.el (esh-proc-test-quote-argument):
Remove.
(esh-proc-test/emacs-command):
* test/lisp/eshell/esh-var-tests.el (esh-var-test/path-var/set)
(esh-var-test/path-var/set-locally): Use 'eshell-quote-argument'.

* test/lisp/eshell/em-unix-tests.el (em-unix-test/compile/interactive):
Use 'shell-quote-argument' (Note: *not* 'eshell-...').
2024-06-09 15:28:40 -07:00
Kyle Meyer
5a125fb5a9 Update to Org 9.7.3 2024-06-09 16:54:38 -04:00
Jim Porter
e1cc2d1f61 ; Use the current system's style of shell-quoting in Eshell debug logs
* lisp/eshell/esh-proc.el (eshell-gather-process-output): Don't force
POSIX syntax.  This is less confusing when running on MS-Windows.
2024-06-09 13:47:15 -07:00
Jim Porter
00649042f3 Remove empty Eshell commands when parsing
This improves the logic for copying/stealing handles when constructing
the command form: now, we should always steal the handles for the last
real command, even if there were some trailing semicolons.

* lisp/eshell/esh-arg.el (eshell-parse-delimiter): Be stricter about
parsing so that things like "& &" aren't parsed as a single "&&" token.

* lisp/eshell/esh-cmd.el (eshell-parse-command): Get the commands in
reverse, and remove any nil commands.
(eshell-split-commands): Always return the trailing terms (except when
there were no terms to begin with).

* test/lisp/eshell/esh-cmd-tests.el
(esh-cmd-test/empty-background-command): New test.
2024-06-09 13:31:08 -07:00
Jim Porter
b91b81957c ; Add another test for 'eshell-batch-script'
* lisp/eshell/em-script.el (eshell-close-target): New function.

* test/lisp/eshell/em-script-tests.el (em-script-test/batch-file): New
test; rename old one to...
(em-script-test/batch-file/shebang): ... this.
2024-06-09 11:53:29 -07:00
Juri Linkov
0aed6f5f0d * lisp/buff-menu.el: Support a function value of Buffer-menu-group-by.
(Buffer-menu-group-by): Add a choice for a function that
returns names of all levels.
(list-buffers--refresh): If Buffer-menu-group-by is a function,
then use it directly.
2024-06-09 21:18:28 +03:00
kobarity
25ab3e7be8 Fix hiding a Python block ending with a comment
* lisp/progmodes/python.el (python-hideshow-forward-sexp-function): Move
point to the end of the line.
* test/lisp/progmodes/python-tests.el (python-hideshow-hide-block-2):
New test.  (Bug#71170)
2024-06-09 16:49:05 +03:00
Po Lu
588a8439e0 Amend last change
* lisp/loadup.el: Load touch-screen.el on MS-Windows.

* src/w32fns.c (Emacs_GESTURECONFIG): New structure.
(SetGestureConfig_fn): New variable.
(w32_createwindow): Disable emulated mouse and gesture events
for the frame's window.
(w32_wnd_proc) <WM_LBUTTONDOWN, WM_RBUTTONDOWN, WM_LBUTTONUP>
<WM_RBUTTONUP>: Ignore mouse events which are marked as emulated
pointer events.
(globals_of_w32fns): Load SetGestureConfig from user32.dll.

* src/w32term.c (w32_read_socket): Correct utilization of
GetTouchInputInfo, coordinate spaces, &c.
2024-06-09 20:40:59 +08:00
Jared Finder
a5c0d682b1 Add documentation for window-tool-bar package
Also change window-tool-mode to not pay attention to if
tool-bar-map has a buffer local value or not as that made the
documentation complicated.  Documentation added in Emacs manual,
Elisp manual, package commentary, and docstrings.  Also extend
window-tool-bar support to Emacs 27 and newer.  (bug#68765)

* doc/emacs/emacs.texi (Top):
* doc/emacs/frames.texi (Menu Bars):
* doc/emacs/glossary.texi (Glossary):
* doc/emacs/modes.texi (Minor Modes):
* doc/emacs/windows.texi (Windows, Tab Line): Mention Window
Tool Bar.
(Window Tool Bar): New documentation.
* doc/lispref/elisp.texi (Top):
* doc/lispref/modes.texi (Mode Line Format, Mode Line Basics)
(Mode Line Data): Mention Tab Lines.
(Tab Lines): New documentation.
* etc/NEWS: Mention newly added variable and package.
* lisp/window-tool-bar.el (window-tool-bar-mode): Don't display
tool bar when tool-bar-map is nil.
* lisp/window-tool-bar.el (tool-bar-always-show-default): Define
variable for older Emacs versions.
2024-06-09 15:21:34 +03:00
Philip Kaludercic
1980624816 Add new command 'package-vc-log-incoming'
* lisp/emacs-lisp/package-vc.el (package-vc-log-incoming):
Implement it.
* etc/NEWS: Mention it.
2024-06-09 12:39:47 +02:00
Eli Zaretskii
f869f1ffc2 Fix Eshell tests on MS-Windows
* lisp/eshell/esh-util.el (eshell-get-path): Don't add "." if it
is already there.

* test/lisp/eshell/esh-var-tests.el
(esh-var-test/path-var/preserve-across-hosts): Skip on MS-Windows.
(esh-var-test/path-var/set, esh-var-test/path-var/set-locally):
Quote the PATH value, for MS-Windows.
* test/lisp/eshell/esh-util-tests.el (esh-util-test/path/get): No
need to add ".": it is already done by 'eshell-get-path'.
* test/lisp/eshell/esh-proc-tests.el
(esh-proc-test/kill-pipeline): Accept empty string as valid
output.
(esh-proc-test/sigpipe-exits-process): Skip on MS-Windows: no
SIGPIPE.
(esh-proc-test/emacs-command): Quote correctly for MS-Windows.
* test/lisp/eshell/em-unix-tests.el
(em-unix-test/compile/interactive): Fix test on MS-Windows.
* test/lisp/eshell/em-script-tests.el (em-script-test/batch-file):
Skip on MS-Windows.
* test/lisp/eshell/eshell-tests-helpers.el
(eshell-command-result--equal): Compare strings (file names)
case-insensitively on MS-Windows.
2024-06-09 10:56:39 +03:00
Stefan Monnier
8253228d55 (hack-dir-local-get-variables-functions): New hook
Make it possible to provide more dir-local variables, such as
done by the Editorconfig package.

* lisp/files.el (hack-dir-local--get-variables): Make arg optional.
(hack-dir-local-get-variables-functions): New hook.
(hack-dir-local-variables): Run it instead of calling
`hack-dir-local--get-variables`.

* doc/lispref/variables.texi (Directory Local Variables):
Document the new hook.
2024-06-09 00:20:50 -04:00
Stefan Monnier
3ecc6b4f3c (find-auto-coding): Provide filename to auto-coding-functions
Allow `auto-coding-functions` to know the file name.
Motivated by the needs of Editorconfig support.

* lisp/international/mule.el (auto-coding-file-name): New var.
(find-auto-coding): Let-bind it for `auto-coding-functions`.
Document the expectation that the arg be an absolute file name.

* doc/lispref/nonascii.texi (Default Coding Systems):
Mention `auto-coding-file-name`.

* test/lisp/international/mule-util-resources/test.utf-16le: New file.
* test/lisp/international/mule-tests.el (mule-tests--dir): New var.
(mule-tests--auto-coding): New fun.
(mule-tests--auto-coding-functions): New test.
2024-06-09 00:19:03 -04:00
Noah Peart
ce5d004b5b Add typescript-ts-mode indentation for multi-assignment decls
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--indent-rules): Add indentation rules for
lexical and variable declarations with multiple assignments.
* test/lisp/progmodes/typescript-ts-mode-resources/indent.erts:
Add indent test for variable declarations (bug#68054).
2024-06-09 05:47:50 +03:00