Commit graph

5460 commits

Author SHA1 Message Date
Stefan Monnier
a1ac7d0720 Merge branch 'same-frame' 2023-12-16 13:13:23 -05:00
Stefan Monnier
3eb421bda3 (display-buffer): New pop-up-frames action alist entry
Allow overriding the `pop-up-frames` variable from `display-buffer-alist`
so as to provide a worthy replacement for the old `same-frame`
parameter of `special-display-*` (bug#67249).

* lisp/window.el (special-display-popup-frame): Declare obsolete;
that was apparently forgotten back when `special-display-*` variables
were declared obsolete.
Use the new `pop-up-frames` action alist entry instead of the variable.
(display-buffer): Document new alist entry.
(window--pop-up-frames): New function.
(display-buffer--maybe-pop-up-frame, display-buffer-in-previous-window)
(display-buffer-reuse-window, display-buffer-reuse-mode-window): Use it.

* doc/lispref/windows.texi (Choosing Window Options): Mention that
`pop-up-frames` is also an action alist entry.
(Buffer Display Action Alists): Add `pop-up-frames` entry.
2023-12-16 13:13:15 -05:00
Eli Zaretskii
a1d3862c62 Merge from origin/emacs-29
bf4ccb0be0 ; * lisp/term.el (term--xterm-paste): Fix last change.
0d9e2e448d ; * doc/lispref/functions.texi (Function Documentation): ...
791cc5065d Fix shaping of Sinhala text
efcbf0b5ab Add use cases of (fn) documentation facility.
c3331cb365 Fix pasting into terminal-mode on term.el
5be94e2bce Fix opening directory trees from Filesets menu
6b6e770a1f Eglot: Add ruff-lsp as an alternative Python server
ed8a8a5ba1 Fix symbol name in Multisession Variables examples
400ef15bdc js-ts-mode: Fix font-lock rules conflict
c165247c30 Add indentation rules for bracketless statements in js-ts...
7f1bd69cd1 Fix c-ts-mode bracketless indentation for BSD style (bug#...
e23068cb9a Add missing indent rules in c-ts-mode (bug#66152)
d2c4b926ac Fix treesit-default-defun-skipper (bug#66711)
9874561f39 Fix treesit-node-field-name and friends (bug#66674)
eace9e1122 python-ts-mode: Highlight default parameters
23c06c7c30 Update to Org 9.6.13
2023-12-16 09:17:51 -05:00
Eli Zaretskii
0d9e2e448d ; * doc/lispref/functions.texi (Function Documentation): Fix @itemize. 2023-12-16 16:06:29 +02:00
Jeremy Bryant
efcbf0b5ab Add use cases of (fn) documentation facility.
* doc/lispref/functions.texi (Function Documentation):  Add examples.
(Bug#67499)

Co-authored-by: Eli Zaretskii <eliz@gnu.org>
2023-12-16 14:57:06 +02:00
Adam Porter
ed8a8a5ba1 Fix symbol name in Multisession Variables examples
* doc/lispref/variables.texi (Multisession Variables): Fix symbol
name.  (Bug#67823)
2023-12-15 01:54:35 +01:00
João Távora
ea29a48da1 Jsonrpc: support some JSONesque non-JSONRPC protocols, like DAP
* lisp/jsonrpc.el (jsonrpc-convert-to-endpoint)
(jsonrpc-convert-from-endpoint): New generics.
(jsonrpc-connection-send): Call jsonrpc-convert-to-endpoint.
Rework logging.
(jsonrpc-connection-receive): Call jsonrpc-convert-from-endpoint.
Rework logging. jsonrpc--reply with METHOD.
(jsonrpc--log-event): Take subtype.
(Version): Bump to 1.0.19

* test/lisp/progmodes/eglot-tests.el (eglot--sniffing): Adapt
to new protocol of jsonrpc--log-event.

* doc/lispref/text.texi (JSONRPC Overview): Rework.
2023-12-14 00:55:52 +00:00
Michael Albinus
67654fe965 New macro connection-local-p
* doc/lispref/variables.texi (Applying Connection Local Variables):
Add macro 'connection-local-p'.

* etc/NEWS: Add macro `connection-local-p'.

* lisp/files-x.el (connection-local-p): New macro.
(connection-local-value): Add debug declaration.

* lisp/net/tramp-compat.el (tramp-compat-connection-local-p): New macro.

* lisp/net/tramp-crypt.el (tramp-crypt-cleanup-connection):
Bind `tramp-crypt-enabled'.

* test/lisp/files-x-tests.el (files-x-test-connection-local-value):
* test/lisp/net/tramp-tests.el (tramp-test18-file-attributes)
(tramp-test35-remote-path): Adapt tests.
2023-12-12 17:39:51 +01:00
Yuan Fu
9874561f39
Fix treesit-node-field-name and friends (bug#66674)
So turns out ts_node_field_name_for_child takes a named node index,
but we were passing it normal index that counts both named and
anonymous nodes.  That's what makes the field name all wrong in
treesit explorer.

* doc/lispref/parsing.texi:
(Accessing Node Information): Update docstring.
* lisp/treesit.el (treesit-node-index): Add some unrelated comment.
(treesit-node-field-name): Get named node index rather than all node
index.
* src/treesit.c (Ftreesit_node_field_name_for_child): Update
docstring, use ts_node_named_child_count.
2023-12-10 16:28:21 -08:00
Stefan Kangas
7d283ca1a3 ; Fix a few more typos 2023-12-10 14:06:45 +01:00
Stefan Kangas
06a12b0ccc ; Fix typos 2023-12-10 13:22:04 +01:00
Michael Albinus
1d5028ad04 dired-listing-switches handles connection-local values if exist
* doc/emacs/dired.texi (Dired Enter):
* doc/misc/tramp.texi (Frequently Asked Questions):
* etc/NEWS: 'dired-listing-switches' handles connection-local
values if exist.

* doc/lispref/variables.texi (Applying Connection Local Variables):
Fix decription of connection-local-default-application.

* lisp/dired.el (dired-listing-switches): Adapt docstring.
(dired-internal-noselect, dired-mode):
* lisp/dired-x.el (dired-virtual):
* lisp/files.el (recover-file, recover-session):
* lisp/net/ange-ftp.el (ange-ftp-get-files): Use connection-local
value of `dired-listing-switches'.

* lisp/files-x.el (connection-local-value): Adapt docstring.

* lisp/man.el (Man-shell-file-name): Use `connection-local-value'.
2023-12-10 12:26:38 +01:00
Eli Zaretskii
486094126b Merge from origin/emacs-29
0f361cc985 ; Minor copyedits in description of ':box' face property
46fe7a17f5 Fix dragging mode line on text terminals with a mouse (bu...
12daf386f3 ; * doc/lispref/processes.texi (Network): Fix wording and...
037d858dc1 (rust-ts-mode): Set electric-indent-chars
dc9b733ab8 js-ts-mode: Highlight function parameters inside destruct...
4a72f13bdf js-ts-mode: Highlight property shorthands in assignments
83ed9018ed (js--treesit-font-lock-settings): Highlight parameters in...
ad0f87bb4c (js--treesit-font-lock-settings): Remove some duplicates
71c5f3694f ; Another fix of doc string of 'message-mail-user-agent' ...
04a39353ba ; * lisp/gnus/message.el (message-mail-user-agent): Doc f...
82ddcf37ec ; * doc/lispref/files.texi (Changing Files): Fix last cha...
89068516b3 Don't claim to signal an error when deleting a nonexistin...
4fd254e183 * lisp/indent.el (indent-rigidly): Improve prompt (bug#67...
5f923ff1a6 ; Fix typos
a1f88963f5 rust-ts-mode--comment-docstring: Handle block doc comments
a547b0e2e8 rust-ts-mode--comment-docstring: Fix/improve the previous...
2023-12-09 07:25:21 -05:00
Eli Zaretskii
0f361cc985 ; Minor copyedits in description of ':box' face property
* doc/lispref/display.texi (Face Attributes): Rearrange
description of ':box' attributes.  Suggested by Arash Esbati
<arash@gnu.org>.  (Bug#67713)
2023-12-09 13:05:07 +02:00
Michael Albinus
1908d2aefb New macro connection-local-value
* doc/lispref/variables.texi (Applying Connection Local Variables):
Add macro 'connection-local-value'.

* etc/NEWS: Add macro 'connection-local-value'.

* lisp/files-x.el (connection-local-value): New macro.
(path-separator, null-device): Use it.

* test/lisp/files-x-tests.el
(files-x-test-connection-local-value): New test.
2023-12-09 10:13:14 +01:00
Eli Zaretskii
12daf386f3 ; * doc/lispref/processes.texi (Network): Fix wording and punctuation. 2023-12-09 09:48:40 +02:00
Eli Zaretskii
82ddcf37ec ; * doc/lispref/files.texi (Changing Files): Fix last change. 2023-12-04 19:13:50 +02:00
Philipp Stephani
89068516b3 Don't claim to signal an error when deleting a nonexisting file.
The behavior has changed in commit
1a65afb7ec to no longer signal an error
on ENOENT.

* doc/lispref/files.texi (Changing Files): Fix documentation about
error reporting.
2023-12-04 14:17:31 +01:00
Stefan Kangas
5f923ff1a6 ; Fix typos 2023-12-03 23:31:30 +01:00
Eli Zaretskii
59af2c6b15 Merge from origin/emacs-29
5f882f4ee9 ; Fix doc string punctuation in ruby-ts-mode.el.
546a68925c Fix 'Info-goto-node-web' when NODE is given in various forms
7ff943044e Fix setting cursor when the window's op line has 'line-pr...
7f0bef47dd Drop extra parenthesis in example code in Emacs Lisp Intr...
fbaf113bf3 rust-ts-mode: appropriately fontify doc strings
bd62bdbc68 Fix example code in Emacs Lisp Introduction manual
c7e459132a Fix example in Emacs Lisp Intro manual
a6e9c26c8f ; * doc/emacs/files.texi (Save Commands): Fix last change.
f6a06ed6c5 Elisp manual: Mention 'write-region' for saving the buffer
4774a3abb4 Document, that PROCESS of signal-process can be a string
ab12628408 Fix typescript-ts-mode indentation for switch statements
2023-12-02 10:05:51 -05:00
Michael Albinus
4774a3abb4 Document, that PROCESS of signal-process can be a string
* doc/lispref/processes.texi (Signals to Processes) [signal-process]:
* src/process.c (Fsignal_process): Document, that PROCESS can be a
string.
2023-11-30 14:37:40 +01:00
Eshel Yaron
47e313e980 Unbind 'C-M-i' in Text mode
Remove the binding of 'C-M-i' to 'ispell-complete-word' in Text mode.
Define a new 'ispell-completion-at-point' function and add that to
'completion-at-point-functions' in Text mode, such that
'completion-at-point' provides the same word completions as
'ispell-complete-word' does OOTB.

* lisp/textmodes/ispell.el (ispell-completion-at-point): New function.
* lisp/textmodes/text-mode.el (text-mode): Add it to 'c-a-p-functions'.
(text-mode-map): Remove 'C-M-i' binding.
(text-mode-meta-tab-ispell-complete-word): New user option.
* etc/NEWS: Announce it.
* doc/emacs/fixit.texi (Spelling)
* doc/emacs/text.texi (Text Mode)
* doc/lispref/modes.texi (Basic Major Modes)
(Example Major Modes): Update.
* lisp/mail/sendmail.el (mail-abbrevs-loaded)
* lisp/nxml/nxml-mode.el (nxml-mode-map): Remove superfluous binding.
2023-11-26 12:30:12 +02:00
Po Lu
b4be1027a7 ; Correct typos
* doc/lispref/frames.texi (Window System Selections): Correct
documentation typos.
2023-11-25 12:52:09 +08:00
Po Lu
1737ffd3a8 Merge from savannah/emacs-29
1978b603bc Make python-ts-mode's syntax-highlighting more standardized
99658346d1 ; Improve documentation of desktop.el in user manual
f7dc020212 Fix "Text is read-only" on backspacing initial Calc input
662d54775d Add a doc string to simple.el (bug#67355)
5a5e36d2aa ; Improve function documentation tips
86016d8ecd Mention "visual line" in user manual
4bb65ed77a ; * doc/lispref/minibuf.texi (Programmed Completion): Imp...
dfb3dcb404 Allow listing Emoji from a read-only buffer

# Conflicts:
#	lisp/calc/calc.el
#	lisp/international/emoji.el
2023-11-24 08:44:34 +08:00
Po Lu
9db8c349f0 Merge from savannah/emacs-29
d72a4ed65c Fix 'with-sqlite-transaction' when BODY fails
a7b3c92373 ; * doc/emacs/cmdargs.texi (Initial Options): Fix last ch...
fd76a80864 ; Mention that -x and --script ignore file-locals
e0469ddb9d ; * doc/emacs/search.texi (Special Isearch): More accurat...
e521669fb3 Fix wording in ELisp Intro manual
da946ca692 Add missing python-ts-mode keyword (bug#67015)
0128495afd Fix string-pixel-width with global setting of display-lin...

# Conflicts:
#	etc/NEWS
2023-11-24 08:38:03 +08:00
Stefan Monnier
e6556db420 (derived-mode-p): Take MODES as a single argument
Looking at uses of `derived-mode-p` and `provide-mode-derived-p`,
I can't find a single use case where it wouldn't be preferable for
it to take a single argument instead of `&rest`: all the calls are
either passing a single argument anyway, or passing a fixed list of modes.
The use of `&rest` just makes the code less efficient and sometimes
more clunky (because of the need for `apply`).
So let's change that (while preserving backward compatibility, of course).

* doc/lispref/modes.texi (Derived Modes): Adjust accordingly.

* lisp/subr.el (provided-mode-derived-p, derived-mode-p): Take the
`modes` as a single argument.
2023-11-23 11:59:38 -05:00
Eli Zaretskii
5a5e36d2aa ; Improve function documentation tips
* doc/lispref/tips.texi (Documentation Tips): Clarify the good
style of descriptions in doc strings.
2023-11-23 17:26:09 +02:00
Eli Zaretskii
4bb65ed77a ; * doc/lispref/minibuf.texi (Programmed Completion): Improve indexing. 2023-11-23 16:43:17 +02:00
Eli Zaretskii
d72a4ed65c Fix 'with-sqlite-transaction' when BODY fails
* lisp/sqlite.el (with-sqlite-transaction): Don't commit changes
if BODY errors out.  Roll back the transaction if committing
fails.  (Bug#67142)

* etc/NEWS:
* doc/lispref/text.texi (Database): Document the error handling in
'with-sqlite-transaction'.
2023-11-21 15:36:22 +02:00
Eli Zaretskii
6c367f0ad4 Merge from origin/emacs-29
232a57a3e3 ; * doc/lispref/debugging.texi (Debugging): Add cross-ref...
c65ddf26a3 ; doc/lispref/debugging.texi: Add reference to Profiler d...
6f884d3aed Add 5 docstrings to abbrev.el (bug#67153)
b4d990bd63 ; Clarify wording about arguments in doc strings
c20ae7a30f ; Improve cross-references in description of 'pcase'
42181b65df ; * src/editfns.c (Fline_beginning_position): Doc fix.
5f3309f6b0 ; Improve indexing in ELisp manual
4e406bb420 Fix CBZ file detection in doc-view-mode
2023-11-18 06:07:47 -05:00
Eli Zaretskii
f99de40efc Merge from origin/emacs-29
32a32853ce Typofix in the doc/lispref/modes.texi
f98637b51b ; Fix 'add-face-text-property' shortdoc
3fff22eb20 Fix spell-checking email message with citations
2023-11-18 06:07:47 -05:00
Eli Zaretskii
232a57a3e3 ; * doc/lispref/debugging.texi (Debugging): Add cross-references. 2023-11-17 14:28:13 +02:00
Ihor Radchenko
c65ddf26a3 ; doc/lispref/debugging.texi: Add reference to Profiler docs (bug#67236). 2023-11-17 14:25:01 +02:00
Eli Zaretskii
b4d990bd63 ; Clarify wording about arguments in doc strings
* doc/lispref/tips.texi (Documentation Tips): Clarify "important
arguments".  (Bug#67217)
2023-11-17 09:04:20 +02:00
Eli Zaretskii
c20ae7a30f ; Improve cross-references in description of 'pcase'
* doc/lispref/control.texi (pcase Macro, Backquote Patterns):
Improve cross-references.
2023-11-16 21:55:10 +02:00
Stefan Monnier
4194f9bd87 Merge branch 'derived-mode-add-parents' 2023-11-16 09:57:38 -05:00
Eli Zaretskii
5f3309f6b0 ; Improve indexing in ELisp manual
* doc/lispref/tips.texi (Documentation Tips, Coding Conventions)
(Key Binding Conventions, Programming Tips, Compilation Tips)
(Warning Tips, Comment Tips, Library Headers): Improve indexing.
2023-11-16 08:24:13 +02:00
Po Lu
d03677343e Pan during touch screen pinch gestures
* doc/lispref/commands.texi (Touchscreen Events): Document new
ratio-diff parameter to touchscreen-pinch events.

* lisp/completion-preview.el (completion-preview-commands):
Account text-conversion events preview commands as well.

* lisp/touch-screen.el (touch-screen-aux-tool): Introduce two
new elements.
(touch-screen-pinch): Scroll window in accord with event deltas.
(touch-screen-handle-aux-point-update): Supply the ratio
difference in generated events.
(touch-screen-handle-touch): Create a vector with those two new
elements.
2023-11-16 11:29:58 +08:00
Po Lu
4913dc7557 ; * doc/lispref/commands.texi (Touchscreen Events): Correct typo. 2023-11-15 21:07:14 +08:00
Po Lu
a9a8d5e959 Register ``pinch to zoom'' touch screen gestures
* doc/emacs/input.texi (Touchscreens): Address pinch gestures.

* doc/lispref/commands.texi (Touchscreen Events): Address touch
screen pinch events and the process by which they are produced.

* java/org/gnu/emacs/EmacsWindow.java (figureChange)
<ACTION_POINTER_DOWN>: Supply pointer index to getX and getY,
correcting a mistake where the first touch point's coordinate
was saved here in lieu of the pointer that was pressed's.

* lisp/touch-screen.el (touch-screen-current-tool): Revise doc
string.
(touch-screen-aux-tool): New variable.
(touch-screen-scroll-point-to-y, touch-screen-pinch): New
functions.
(global-map): Bind [touchscreen-pinch] to touch-screen-pinch.
(touch-screen-handle-point-update): Revise doc string; set new
tenth field of t-s-c-t to POINT relative to its window, without
regard to whether an event has been sent.
(touch-screen-distance, touch-screen-centrum): New functions.
(touch-screen-handle-aux-point-update): New function; generate
and send touchscreen-pinch if need be.
(touch-screen-handle-point-up): If an ancillary tool exists,
transfer the information there into touch-screen-current-tool
and clear t-s-a-t.
(touch-screen-handle-touch): Call t-s-a-p-u as is proper; set
t-s-a-t if a touchscreen-down event arrives and t-s-c-t is set.

* src/androidterm.c (handle_one_android_event): Properly save
the event's X and Y when a new touch point is registered.
2023-11-15 21:07:14 +08:00
Zajcev Evgeny
32a32853ce Typofix in the doc/lispref/modes.texi 2023-11-14 16:23:15 +02:00
Stefan Monnier
cf00f1526d Subject: (derived-mode-add-parents): Add documentation and one more test
* doc/lispref/modes.texi (Derived Modes): Document new derived-modes API.
* test/lisp/subr-tests.el (subt-tests--merge-ordered-lists): New test.
2023-11-12 17:08:46 -05:00
Eli Zaretskii
c9d7740574 Merge from origin/emacs-29
ce0ebb91f2 Improve documentation of read syntax and printed represen...
81f84b00a5 ; * doc/lispref/modes.texi (Other Font Lock Variables): A...
434592b074 ; * lisp/dired.el (dired-use-ls-dired): Doc fix (bug#67053).
fe000236cf Improve documentation of signaling errors in batch mode
103ca678ac Fix treesit-simple-indent-presets docstring (bug#67007)
b7871cefe7 Prevent an infinite loop in todo-mode (bug#66994)
fa8cc4c9ee Fix cmake-ts-mode indentation (Bug#66845)
5bdc61bc0e Update to Org 9.6.11
18e2de1bec ; * lisp/bindings.el (right-word, left-word): Doc fix.
4f0fc3bfda ; Document core input events problems with XInput2
2023-11-11 05:31:52 -05:00
Po Lu
68b8df57c7 Enable canceling tap gestures
* doc/lispref/commands.texi (Touchscreen Events): Relate new
THRESHOLD argument to touch-screen-track-tap.

* lisp/button.el (push-button):

* lisp/wid-edit.el (widget-button--check-and-call-button):
Provide a threshold to enable canceling button presses.

* lisp/touch-screen.el (touch-screen-track-tap): Enable
canceling tap gestures and resuming touch sequence translation
if the touch point exceeds a set threshold.
2023-11-11 18:04:00 +08:00
Eli Zaretskii
ce0ebb91f2 Improve documentation of read syntax and printed representation
* doc/lispref/objects.texi (Syntax for Strings): Describe in more
detail how to specify special characters in string literals.
(Printed Representation, Character Type, Nonprinting Characters):
Improve information and add cross-references about printed
representation and read syntax.  (Bug#67033)
2023-11-11 12:02:24 +02:00
Eli Zaretskii
81f84b00a5 ; * doc/lispref/modes.texi (Other Font Lock Variables): Add link. 2023-11-11 11:05:58 +02:00
Yuan Fu
0db75b80e1
Add treesit-node-enclosed-p
* doc/lispref/parsing.texi (Accessing Node Information):
Add manual entry.
* lisp/treesit.el (treesit-node-enclosed-p): New function.
(treesit): Add shortdoc entry.
* test/src/treesit-tests.el (treesit-node-api): Add tests.
2023-11-09 20:49:30 -08:00
Eli Zaretskii
fe000236cf Improve documentation of signaling errors in batch mode
* doc/lispref/control.texi (Signaling Errors)
(Processing of Errors):
* doc/lispref/os.texi (Batch Mode):
* doc/lispref/debugging.texi (Invoking the Debugger):
* lisp/emacs-lisp/debug.el (debug):
* src/eval.c (Fsignal):
* lisp/subr.el (error): Document more prominently that signaling
an unhandled error in batch mode kills Emacs.  Better
documentation of backtrace in batch mode.
2023-11-09 10:33:28 +02:00
Yuan Fu
103ca678ac
Fix treesit-simple-indent-presets docstring (bug#67007)
* lisp/treesit.el (treesit-simple-indent-presets): Fix docstring.
* doc/lispref/modes.texi (Parser-based Indentation): Fix example.
2023-11-08 23:49:15 -08:00
Po Lu
de380adb64 Emulate secondary selections on Android
* doc/lispref/frames.texi (Other Selections): Revise
documentation to match.

* lisp/term/android-win.el (android-secondary-selection): New
variable.
(android-primary-selection, android-get-clipboard-1)
(android-get-primary, gui-backend-get-selection)
(gui-backend-selection-exists-p, gui-backend-selection-owner-p)
(gui-backend-set-selection): Update doc strings and code as is
proper.
2023-11-06 10:14:09 +08:00