1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-30 20:32:00 -08:00
Commit graph

7819 commits

Author SHA1 Message Date
Protesilaos Stavrou
367c3f25a1 Add 'appt-notification' face (Bug#61661)
* lisp/calendar/appt.el (appt-notification): Declare the new face.
(appt-check): Implement the new face.
* etc/NEWS: Announce the new face.
2023-09-04 22:50:15 +02:00
Stefan Kangas
62f7760e61 Add skip-when macro to ert-deftest
This can help avoid some awkward test skip conditions.

For example, this triple negation:
    (skip-unless (not noninteractive))

Can be written as the simpler:
    (skip-when noninteractive)

* lisp/emacs-lisp/ert.el (ert-deftest): Add new 'skip-when' macro.
(ert--skip-when): New internal function.
* doc/misc/ert.texi (Tests and Their Environment): Document above
new macro.
* test/lisp/emacs-lisp/ert-tests.el (ert-test-skip-when): New test.
2023-09-04 18:25:18 +02:00
Alan Mackenzie
f9b43107ce * etc/NEWS (static-if): Clarify the entry. 2023-09-04 13:06:44 +00:00
Gene Goykhman
55a0f0e047 Announce user option tramp-completion-multi-hop-methods
* doc/misc/tramp.texi (Ad-hoc multi-hops):
Add tramp-completion-multi-hop-methods.

* etc/NEWS: New user option tramp-completion-multi-hop-methods.
2023-09-04 11:43:18 +02:00
Alan Mackenzie
97652d0e7a New conditional compilation macro static-if.
* etc/NEWS: Record the new macro.

* lisp/subr.el (static-if): New macro.
2023-09-03 12:54:47 +00:00
Jim Porter
5c181efcf2 ; * etc/NEWS: Tell users they don't need to change 'eshell-prompt-regexp'. 2023-09-02 15:47:36 -07:00
Davide Masserut
3d08d0dd80 Display the exit code if the last command failed in Eshell
* lisp/eshell/esh-io.el (eshell-last-command-status): Make
buffer-local.

* lisp/eshell/em-prompt.el (eshell-prompt-function): Insert the exit
code if last command failed.

* test/lisp/eshell/em-prompt-tests.el (em-prompt-test/after-failure):
New test.
(em-prompt-test/next-previous-prompt-1)
(em-prompt-test/forward-backward-matching-input-1): Add a failing
command to tests.

* doc/misc/eshell.texi (Invocation): Document change.

* etc/NEWS: Announce change (bug#65604).
2023-09-02 15:40:04 -07:00
Yuan Fu
2547fbe9c4
Obsolete treesit-block/sexp/sentence/text-type-regexp
And replace them with treesit-thing-settings.

* doc/lispref/positions.texi (List Motion): Remove mention of
treesit-sexp/sentence-type-regexp.

* lisp/progmodes/c-ts-mode.el (c-ts-base-mode)
* lisp/progmodes/dockerfile-ts-mode.el (dockerfile-ts-mode)
* lisp/progmodes/java-ts-mode.el (java-ts-mode)
* lisp/progmodes/js.el (js-ts-mode)
* lisp/progmodes/json-ts-mode.el (json-ts-mode)
* lisp/progmodes/ruby-ts-mode.el (ruby-ts-mode)
* lisp/progmodes/typescript-ts-mode.el (typescript-ts-base-mode)
(tsx-ts-mode)
* lisp/progmodes/heex-ts-mode.el (heex-ts-mode)
* lisp/progmodes/sh-script.el (bash-ts-mode)
* lisp/progmodes/prog-mode.el (prog-fill-reindent-defun)
* lisp/textmodes/html-ts-mode.el (html-ts-mode): Replace
treesit-sexp/sentence/text-type-regexp with treesit-thing-settings.

* lisp/treesit.el (treesit-sexp-type-regexp)
(treesit-sentence-type-regexp): Mark obsolete.
(treesit-block-type-regexp): Remove.

* lisp/treesit.el (treesit-forward-sexp)
(treesit-transpose-sexps)
(treesit-beginning-of-defun)
(treesit-end-of-defun)
(treesit-forward-sentence)
(treesit-defun-at-point): Make use of treesit-thing-settings.

(treesit-thing-definition)
(treesit-thing-defined-p): New functions.

(treesit-major-mode-setup): Replace
treesit-sexp/sentence-type-regexp with treesit-thing-settings.
2023-09-01 20:38:25 -07:00
Stefan Kangas
65dca8db3c Make url-gateway-broken-resolution obsolete
* lisp/url/url-gw.el (url-gateway-broken-resolution)
(url-gateway-nslookup-program, url-gateway-nslookup-host): Make obsolete.
* doc/misc/url.texi (Broken hostname resolution): Delete commented
out section.
2023-09-02 02:37:03 +02:00
Stefan Kangas
7d60d1652f Make checkdoc warn if not using lexical-binding
* lisp/emacs-lisp/checkdoc.el (checkdoc-file-comments-engine):
Warn if there is no lexical-binding cookie.  (Bug#59920)
(checkdoc-lexical-binding-flag): New user option.
2023-09-01 22:05:35 +02:00
Stefan Kangas
f7712bc82a Make Makefile browser obsolete
* lisp/progmodes/make-mode.el:
(makefile-mode): Don't document Makefile browser mode.
(makefile-browser-toggle-state-for-line):
(makefile-browser-buffer-name, makefile-browser-leftmost-column)
(makefile-browser-cursor-column, makefile-browser-selected-mark)
(makefile-browser-unselected-mark)
(makefile-browser-auto-advance-after-selection-p)
(makefile-browser-hook, makefile-browser-map)
(makefile-browser-client, makefile-browser-selection-vector)
(makefile-browser-format-target-line)
(makefile-browser-format-macro-line, makefile-browser-fill)
(makefile-browser-next-line, makefile-browser-previous-line)
(makefile-browser-quit, makefile-browser-toggle)
(makefile-browser-insert-continuation)
(makefile-browser-insert-selection)
(makefile-browser-insert-selection-and-quit)
(makefile-browser-send-this-line-item)
(makefile-browser-start-interaction, makefile-browse)
(makefile-switch-to-browser, makefile-browser-on-macro-line-p)
(makefile-browser-this-line-target-name)
(makefile-browser-this-line-macro-name)
(makefile-browser-get-state-for-line)
(makefile-browser-set-state-for-line)
(makefile-browser-toggle-state-for-line): Make obsolete.  (Bug#58848)
(makefile-mode-menu): Remove Makefile browser from menu.
* etc/NEWS: Announce its obsoletion.
2023-08-29 18:28:57 +02:00
Eshel Yaron
b2ba4cb870 Rename 'package-vc-allow-side-effects' to better fit its use
* lisp/emacs-lisp/package-vc.el (package-vc-allow-side-effects):
Rename to 'package-vc-allow-build-commands'.
(package-vc--unpack-1): Use new name.
* doc/emacs/package.texi (Fetching Package Sources): Use new name.
* etc/NEWS: Adapt accordingly.  (Bug#65386)
2023-08-29 10:41:53 +02:00
Juri Linkov
76938e1789 * lisp/tab-bar.el: Add tab-bar-tab-name-format-functions (bug#65554)
(tab-bar-tab-name-format-truncated)
(tab-bar-tab-name-format-hints)
(tab-bar-tab-name-format-close-button)
(tab-bar-tab-name-format-face): New functions.
(tab-bar-tab-name-format-functions): New defcustom.
(tab-bar-tab-name-format-default): Rewrite to use
'tab-bar-tab-name-format-functions'.
2023-08-28 19:57:16 +03:00
Po Lu
32fe187bdf Install rcs2log within Emacs packages for Android
* doc/emacs/android.texi (Android Environment): Mention the
`rcs2log' program name variable.  Also refine the wording of the
paragraph describing bundled programs a bit.

* doc/lispref/processes.texi (Subprocess Creation): Mention
`rcs2log' and `rcs2log-program-name'.  Correct typos and
spelling mistakes within the variable index.

* etc/NEWS: Amend the announcement of *-program-name to also
cite rcs2log.

* java/Makefile.in (install_temp): Copy rcs2log to
lib/*/librcs2log.so after minor revisions to change the
interpreter name.

* lisp/vc/vc-rcs.el (vc-rcs-rcs2log-program): Ground the program
name upon `rcs2log-program-name'.

* src/callproc.c (syms_of_callproc) <Vrcs2log_program_name>: New
defvar.  Define to `librcs2log.so' under Android, `rcs2log'
elsewhere.
2023-08-24 12:41:54 +08:00
Dmitry Gutov
1992ad96d5 ; Fix typo (bug#63829) 2023-08-23 21:23:41 +03:00
Dmitry Gutov
bfafc405fe project-key-prompt-style: New option.
* lisp/progmodes/project.el (project-file-history-behavior):
Add :group and :version tags.
(project-key-prompt-style): New option (bug#64799).

* etc/NEWS: Mention it.
2023-08-23 19:36:56 +03:00
Spencer Baugh
e3209923c3 Support adjusting file-name-history to the current project
This adds project-file-history-behavior which has the effect described in
its docstring.  Implementing a sort of sharing of file-name-history
between projects.

* lisp/progmodes/project.el (project-file-history-behavior):
New option.  (bug#63829)
(project--transplant-file-name): Add.
(project--read-file-cpd-relative): Move history manipulations to
project--read-file-name.
(project--read-file-name): New function.  Refer to
project-file-history-behavior.
(project-find-file-in, project-find-dir): Use it.
(project-or-external-find-file): Bind the new option to t, to avoid
touching the external file names.

* etc/NEWS: Announce the new option.

Co-authored-by: Dmitry Gutov <dmitry@gutov.dev>
2023-08-23 05:28:20 +03:00
Jim Porter
cf52cdb121 Allow splicing Eshell globs in-place
This means that Eshell globs can now expand the same way as if the
user had typed each matching file individually.

* lisp/eshell/em-glob.el (eshell-glob-splice-results): New option.
(eshell-no-command-globbing, eshell-add-glob-modifier): Handle spliced
globs.
(eshell-extended-glob): Always return a list when splicing.

* lisp/eshell/em-pred.el (eshell-parse-arg-modifier): Ensure
'eshell-splice-args' is always at the end of the list of modifiers if
present.

* test/lisp/eshell/em-glob-tests.el
(em-glob-test/expand/splice-results)
(em-glob-test/expand/no-splice-results)
(em-glob-test/expand/explicitly-splice-results)
(em-glob-test/expand/explicitly-listify-results): New tests.
(em-glob-test/no-matches): Check result when
'eshell-glob-splice-results' is nil/non-nil.

* doc/misc/eshell.texi (Arguments): Expand explanation about argument
flattening.
(Globbing): Document splicing behavior of globs.

* etc/NEWS: Announce this change.
2023-08-21 11:42:46 -07:00
Eli Zaretskii
321f6bd572 ; Fix documentation of last change
* lisp/net/eww.el (eww--open-url-in-new-buffer)
(eww-open-in-new-buffer):
* etc/NEWS:
* doc/misc/eww.texi (Basics): Improve the documentation of this
new feature.  (Bug#65346)
2023-08-20 11:48:03 +03:00
Lin Sun
bef68b7bbe Allow fetching URL at point without switching to it
* lisp/net/eww.el (eww-open-in-new-buffer):  Stay on current
buffer when invoked with prefix argument.  (Bug#65346)
2023-08-20 11:46:36 +03:00
Michael Albinus
efb276fef1 New user option pcomplete-remote-file-ignore
* etc/NEWS: Mention pcomplete-remote-file-ignore.

* lisp/pcomplete.el (pcomplete-remote-file-ignore):
New user option.
(pcomplete--entries): Use it.

* lisp/shell.el (shell-completion-vars):
Set 'pcomplete-remote-file-ignore'.
2023-08-20 09:41:07 +02:00
Philip Kaludercic
41ff369917 Add command to start Emacs with specific packages
* lisp/emacs-lisp/package.el (package--dependencies): Extend function
to handle and return package descriptors.
(package-isolate): Add new command.
* etc/NEWS: Announce new command.
2023-08-19 12:08:10 +02:00
Po Lu
5856ea5e4e Introduce support for Desktop Notifications on Haiku
* doc/lispref/os.texi (Desktop Notifications): Document Haiku
desktop notifications.

* etc/NEWS: Announce this change.

* lisp/org/org-clock.el (haiku-notifications-notify): New
declaration.
(org-show-notification): Employ that function.

* src/haiku_io.c (haiku_len) <NOTIFICATION_CLICK_EVENT>: Return
the length for this type of event.

* src/haiku_select.cc (my_team_id, be_display_notification): New
functions.

* src/haiku_support.cc (my_team_id, ArgvReceived): New
functions.

* src/haiku_support.h (enum haiku_event_type): New event type
NOTIFICATION_CLICK_EVENT.
(struct haiku_notification_click_event): New structure.

* src/haikuselect.c (haiku_notifications_notify_1)
(Fhaiku_notifications_notify): New functions.
(syms_of_haikuselect): Register new defsubr.

* src/haikuterm.c (haiku_read_socket):
* src/haikuselect.h:
* src/termhooks.h: Add new events for notification clicks on
Haiku.
2023-08-17 08:34:32 +00:00
Michael Albinus
ebe8871794 ; * etc/NEWS: Fix typos. 2023-08-16 20:12:42 +02:00
Jim Porter
c4915678f3 Add 'compile' builtin command for Eshell
* lisp/eshell/em-unix.el (eshell-compile, eshell/compile): New
functions.
(eshell/make, eshell-grep): Use 'eshell-compile'.
(eshell/glimpse): It's no longer necessary to let-bind 'null-device';
'eshell-grep' no longer calls 'grep' (the Lisp function), which needed
'null-device' to be nil for this case.

* test/lisp/eshell/em-unix-tests.el: New file.

* doc/misc/eshell.texi (Built-ins): Document the 'compile' builtin.

* etc/NEWS: Announce this change (bug#65273).
2023-08-16 10:01:49 -07:00
Stefan Monnier
4ff5bb3415 * etc/NEWS (cl-print-ellipsis): Mention backtrace-ellipsis 2023-08-13 15:23:26 -04:00
Po Lu
3dbf2edb3c Improve kill-ring-deindent-mode
* etc/NEWS:
* lisp/simple.el (kill-ring-deindent-buffer-substring-function):
(kill-ring-deindent-mode): Deindent by the column number at BEG
in lieu of the indentation at BEG.
2023-08-11 16:08:16 +08:00
Po Lu
dcd551d6c8 New global minor mode `kill-ring-deindent-mode'
* etc/NEWS: Announce the new minor mode.

* lisp/simple.el (kill-ring-deindent-buffer-substring-function):
New function.
(kill-ring-deindent-mode): New minor mode, for trimming excess
indentation from saved text.
2023-08-11 15:58:57 +08:00
Po Lu
8cd1681c32 Merge remote-tracking branch 'savannah/master' into master-android-1 2023-08-08 13:39:45 +08:00
Po Lu
3fb2c174d3 Enable visiting FIFOs as files
* doc/lispref/files.texi (Reading from Files): Document new
`if-regular' value of REPLACE.

* etc/NEWS: Announce the new value.

* lisp/files.el (basic-save-buffer-2): Demote errors saving
backup files, since FIFOs cannot be copied.
(revert-buffer-insert-file-contents--default-function): Supply
`if-regular' instead of t as REPLACE.

* src/fileio.c (selinux_enabled_p): New function.
(Fcopy_file, Ffile_selinux_context, Fset_file_selinux_context):
Call that function to ascertain if SELinux applies to a file.
(read_non_regular): Don't assume `emacs_fd_read' always returns
int.
(Finsert_file_contents): If REPLACE is if-regular and FILENAME
is a special non-seekable file, fall back to erasing the buffer
before inserting the contents of that file.
(syms_of_fileio) <Qif_regular>: New symbol.
2023-08-08 13:37:00 +08:00
Stefan Kangas
b48793253b Make Emacs 21 compat aliases easy-mmode-* obsolete
* lisp/emacs-lisp/easy-mmode.el (easy-mmode-define-minor-mode)
(easy-mmode-define-global-mode): Make Emacs 21 compatibility aliases
obsolete.
* doc/lispref/loading.texi (Autoload):
* doc/lispref/modes.texi (Defining Minor Modes): Don't document
above obsolete aliases.
2023-08-08 04:03:17 +02:00
Po Lu
7ffc5f86e4 Merge remote-tracking branch 'origin/master' into feature/android 2023-08-06 21:45:44 +08:00
Stefan Kangas
3135007bf1 Mark Emacs 20 color support compat aliases obsolete
* lisp/faces.el (x-defined-colors, x-color-defined-p)
(x-color-values, x-display-color-p): Make Emacs 20 compat aliases
obsolete.  Update one caller to use the new names.
* doc/lispref/frames.texi (Color Names): Do not document above
obsolete aliases.
2023-08-06 11:40:15 +02:00
Po Lu
2867f62484 Merge remote-tracking branch 'origin/master' into feature/android 2023-08-06 07:38:10 +08:00
Eli Zaretskii
5683c4bad3 ; * etc/NEWS: Announce 'cjk-ambiguous-chars-are-wide' (bug#64420). 2023-08-05 18:15:47 +03:00
Po Lu
a5bbc51f47 Merge remote-tracking branch 'origin/master' into feature/android 2023-08-05 09:06:04 +08:00
Stefan Monnier
27ed565ec6 * lisp/emacs-lisp/advice.el (defadvice): Mark as obsolete 2023-08-03 23:41:11 -04:00
Po Lu
deb8b933bc Merge remote-tracking branch 'origin/master' into feature/android 2023-08-01 08:31:14 +08:00
Ulrich Müller
077c34edfe Drop duplicate vietnamese-tcvn coding system
* lisp/language/vietnamese.el (vietnamese-vscii): Update docstring.
(vietnamese-tcvn, tcvn, tcvn-5712): Make them aliases of
vietnamese-vscii.
("Vietnamese"): Drop vietnamese-tcvn from coding-system values.
Update docstring.

* etc/NEWS: Announce this change.
2023-07-31 17:58:34 +02:00
Po Lu
7c08995864 Merge remote-tracking branch 'origin/master' into feature/android 2023-07-28 08:22:01 +08:00
Michael Albinus
e055c635b0 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2023-07-27 16:52:38 +02:00
Andrew Tropin
42a911c61e notifications: Allow to use Icon Naming Specification for app-icon
* doc/lispref/os.texi (Desktop Notifications): Extend meaning of
:app-icon.

* etc/NEWS: Allow to use Icon Naming Specification for app-icon in
notifications-notify.

* lisp/notifications.el (notifications-notify): Allow to use Icon
Naming Specification for app-icon.
2023-07-27 16:43:17 +02:00
Manuel Giraud
83b6a8a514 New option 'image-dired-thumb-naming' (bug#61394)
* lisp/image/image-dired.el (image-dired-thumb-naming): New user
option to control thumbnail name.

* lisp/image/image-dired-util.el (image-dired-thumb-name): Update
to use new user option and compute contents SHA-1 if needed.
(image-dired-contents-sha1): New function to compute the SHA-1 of the
first 4KiB of a file.
2023-07-27 17:00:59 +03:00
Po Lu
24711be050 Merge remote-tracking branch 'origin/master' into feature/android 2023-07-27 17:14:58 +08:00
Eli Zaretskii
6572dcc7f5 ; Documentation followup to last change
* lisp/progmodes/project.el (project-uniquify-dirname-transform):
* lisp/uniquify.el (uniquify-dirname-transform): Doc fixes.

* etc/NEWS: Announce the change.
2023-07-26 18:11:49 +03:00
Valtteri Vuorikoski
3449ff5b65 Fix build --with-sound on NetBSD and OpenBSD
* configure.ac: Use ossaudio by default on *BSD systems.
(Bug#64698)

* etc/NEWS: Announce the change.
2023-07-26 17:03:58 +03:00
Po Lu
be70caa68f Merge remote-tracking branch 'origin/master' into feature/android 2023-07-23 08:53:22 +08:00
Moritz Maxeiner
7a0c0b2ad8 * etc/NEWS: Announce the new option 'mouse-prefer-closest-glyph'. 2023-07-22 18:40:55 +03:00
Michael Albinus
9069699795 Add inhibit-remote-files and without-remote-files
* doc/emacs/files.texi (Remote Files): Do not document tramp-mode
any longer.  Describe inhibit-remote-files instead.

* doc/lispref/files.texi (Magic File Names): Add without-remote-files.

* doc/misc/tramp.texi (Frequently Asked Questions): Do not
document tramp-mode any longer.  Describe inhibit-remote-files and
without-remote-files instead.

* etc/NEWS: Add inhibit-remote-files and without-remote-files.
Fix typos.

* lisp/net/tramp.el (inhibit-remote-files): New defun.
(without-remote-files): New defmacro.

* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test49-without-remote-files):
* test/lisp/net/tramp-tests.el (tramp-test49-without-remote-files):
New tests.
(tramp-test50-unload): Rename.
2023-07-22 10:16:04 +02:00
Po Lu
3a9fca84f2 ; * etc/NEWS: Announce `current-key-remap-sequence'. 2023-07-22 10:44:34 +08:00