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

169829 commits

Author SHA1 Message Date
F. Jason Park
d2ce30afdd ; Mark test for erc--update-channel-modes as :unstable
* test/lisp/erc/erc-scenarios-auth-source.el
(erc-scenarios-common--auth-source): Extend timeout.
* test/lisp/erc/erc-scenarios-base-buffer-display.el
(erc-scenarios-base-buffer-display--count-reset-timeout): Await
initial condition.
* test/lisp/erc/erc-scenarios-base-renick.el
(erc-scenarios-base-renick-queries-solo): Extend timeout.
* test/lisp/erc/erc-scenarios-misc.el (erc-scenarios-base-flood):
Extend timeout.
* test/lisp/erc/erc-tests.el (erc--channel-modes): Mark test as
:unstable pending further investigation.  This test has been shown to
be unreliable, possibly because it expects Emacs to report characters
being a certain width in all environments.  Thanks to Mattias
Engdegård for reporting this failure.
* test/lisp/erc/resources/base/reuse-buffers/server/barnet.eld:
Extend timeouts.
* test/lisp/erc/resources/base/reuse-buffers/server/foonet.eld:
Extend timeouts.
2023-11-25 15:59:58 -08:00
F. Jason Park
0a6d0a4959 Simplify option erc-fill-wrap-merge-indicator
* lisp/erc/erc-fill.el (erc-fill-function): Add hyperlink to
`erc-fill-wrap-mode' in doc string.
(erc-fill-wrap-merge-indicator-face): New face.  The rationale for
adding this is that hard-coding `erc-fill-wrap-merge-indicator' to use
specific non-ERC faces forces folks to customize the option by
specifying a value manually, which may not be easy for new users,
seeing as its :type is relatively complex.
(erc-fill-wrap-merge-indicator): Add new preset without leading
space, for narrow windows, and replace `shadow' with
`erc-fill-wrap-merge-indicator-face' everywhere.
(erc-fill-wrap-mode): Add configuration hint to doc string for related
options when facing narrow windows.
(erc-fill--wrap-insert-merged-post, erc-fill--wrap-insert-merged-pre):
Fix sloppy thinko in which "-pre" and "-post" stash variables for
precomputed values were swapped.  Also accommodate :type string
variant for option `erc-fill-wrap-merge-indicator'.
(erc-fill--wrap-rejigger-region): Clear pre-computed merge-indicator
value.  (Bug#60936)
2023-11-25 15:59:58 -08:00
Mattias Engdegård
278a6e1916 Refactor pseudovector printing
* src/print.c (print_vectorlike): Split into...
(print_bignum, print_bool_vector, print_vectorlike_unreadable):
...these functions.  Exhaustive switch on pseudovector type.
Remove unused return value.
(print_object): Use new functions and simplify.
2023-11-25 18:57:57 +01:00
Mattias Engdegård
f8fe0cf1bb ; * src/pdumper.c (dump_vectorlike): Populate switch fully. 2023-11-25 17:41:16 +01:00
Stefan Monnier
82bba6713f regex-emacs.c (forall_firstchar): Fix regression bug#67226
All zero-width operations need to be taken into account when reaching
`succeed` in `mutually_exclusive_one`!

* src/regex-emacs.c (forall_firstchar_1): Call `f` for all zero-width
matching operators.
(analyze_first_fastmap, analyze_first_null, mutually_exclusive_one):
Adjust accordingly.
2023-11-25 11:03:08 -05:00
Aymeric Agon-Rambosson
c20226a1ef Repair tab-first-completion (bug#67158)
Copyright-paperwork-exempt: yes

* lisp/indent.el (indent-for-tab-command): Use `syntax-class` to fix
longstanding thinko introduced back in 2020 in commit 64c8511664.
Rework the check for `syn` because TAB always completed when
`tab-first-completion` had value `word-or-paren` or `word-or-paren-or-punct`.
2023-11-25 10:24:39 -05:00
Dmitry Gutov
efae0e68ef (project-prompt-project-name): Simplify a bit
* lisp/progmodes/project.el (project-prompt-project-name):
Fold the inner 'let' into 'when-let'.
2023-11-25 17:04:32 +02:00
Dmitry Gutov
ab37e0b56a ; project-prompt-project-name: Reword a comment 2023-11-25 16:07:28 +02:00
Eli Zaretskii
9cd72fbfa6 ; * configure.ac: Fix the unexec build. 2023-11-25 07:05:57 -05:00
Eli Zaretskii
d8726dd382 Merge from origin/emacs-29
77ab00207d ; * admin/authors.el (authors-aliases): Add Noah Peart.
6f843f03dc typescript-ts-mode: Add missing 'operator' to treesit-fon...
0676a02931 Extend D-Bus doc and test
df094dd4bc Do not unregister a D-Bus service which is a unique name
e6ad97a333 Fix byte-compilation warnings about 'sqlite-rollback'
2023-11-25 06:42:53 -05:00
Eli Zaretskii
8157d49060 Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs 2023-11-25 12:58:21 +02:00
Rahguzar
0de7efe897 Don't insert subscript on a newline
* lisp/net/shr.el (shr-tag-sub): Don't insert subscript on a
newline.  (Bug#66676)
2023-11-25 12:56:48 +02:00
Rahguzar
d0d9d7f5fa Optionally turn on visual-line-mode + outline support
* lisp/net/eww.el (eww-render): Turn on 'visual-line-mode'
in absence of filling.
(eww-mode): Set 'outline-regexp' and 'outline-level'.
(Bug#66676)
2023-11-25 12:56:16 +02:00
Rahguzar
d41a5e4b1b Outline support for shr rendered documents
* lisp/net/shr.el
(shr-heading): Propertize heading with level.
(shr-outline-search):  An 'outline-search-function' that finds
headings using text property search.
(shr-outline-level): Outline level for 'shr-outline-search'.
(Bug#66676)
2023-11-25 12:55:37 +02:00
Rahguzar
4254544405 Allow displaying images inline
* lisp/net/shr.el
(shr-max-inline-image-size): New custom variable.
(shr--inline-image-p): New helper function to decide if an
image should be inserted inline.
(shr-insert, shr-put-image, shr-tag-img): Use
'shr-max-inline-image-size' to insert some images inline.
(Bug#66676)
2023-11-25 12:55:02 +02:00
Rahguzar
88bd83d178 Make some aspects of shr rendering customizable
* lisp/net/shr.el (shr-fill-text, shr-sup-raise-factor)
(shr-sub-raise-factor, shr-image-ascent): New custom variables.
(shr-fill-lines): Only fill if 'shr-fill-text' is non-nil.
(shr-put-image): Use 'shr-image-ascent' as value of :ascent.
(shr-rescale-image, shr-make-placeholder-image): Use
'shr-image-ascent'.
(shr-tag-sup, shr-tag-sub): Use 'shr-sup/sub-raise-factor'.
(Bug#66676)
2023-11-25 12:54:13 +02:00
Ulrich Müller
e736a1b5a2 Don't enable pinentry loopback mode for gpgsm
* lisp/epg.el (epg--start): Passphrase entry through the
minibuffer is currently not supported with gpgsm, therefore don't
pass "--pinentry-mode loopback" as an argument when the protocol
is CMS.  (Bug#67012)
* doc/misc/epa.texi (GnuPG Pinentry): Document it.
2023-11-25 11:53:25 +01:00
Liu Hui
9656fe0358 Add option `dired-filename-display-length'
* lisp/dired.el (dired-filename-display-length): New option.
(dired-insert-set-properties): Set invisible property for long
filenames.
(dired--get-ellipsis-length, dired--get-filename-display-length)
(dired-filename-update-invisibility-spec): New functions.
(dired-mode): Add filename invisibility spec.
(dired-make-directory-clickable)
(dired-kill-when-opening-new-dired-buffer)
(dired-hide-details-preserved-columns): Add missing :group.
* lisp/wdired.el (wdired-change-to-wdired-mode)
(wdired-change-to-dired-mode): Update filename invisibility spec.
* etc/NEWS: Announce the change.  (Bug#67161)
2023-11-25 12:50:35 +02:00
Eli Zaretskii
38e2291cce Fix merging italic and underline faces with other fonts
* lisp/faces.el (italic, underline): Leave the 'slant'
resp. 'underline' attributes even when they are not supported by
the default font.  (Bug#67269)
2023-11-25 12:30:03 +02:00
Eshel Yaron
dd1c5cca70 ; Avoid 'completion-at-point' in 'completion-preview-insert'
Insert the completion suggestion directly in
'completion-preview-insert' instead of using 'completion-at-point' to
do that.  This fixes an issue where 'completion-preview-insert' would
not work correctly when the user uses 'add-hook' with a DEPTH argument
below a certain value to add functions to
'completion-at-point-functions', and obviates the need to manipulate
'completion-at-point-functions' when showing the preview all together.

* lisp/completion-preview.el (completion-preview--make-overlay)
(completion-preview-prev-candidate)
(completion-preview-next-candidate)
(completion-preview-mode): Improve docstring.
(completion-preview--exit-function)
(completion-preview--insert)
(completion-preview-insert-on-completion): Remove, no longer used.
(completion-preview--get): Turn into a 'defsubst'.
(completion-preview-active-mode)
(completion-preview--capf-wrapper): Simplify.
(completion-preview--try-table)
(completion-preview--update): Keep the completion "base" as a property
of the preview overlay, for use in completion exit functions.
(completion-preview-insert): Insert completion and call exit function
directly instead of manipulating 'completion-at-point' to do so.
(Bug#67275)
2023-11-25 12:09:48 +02:00
Eshel Yaron
3c3c46f429 ; Improve and add tests for Completion Preview mode
Fix handling of capfs that return a function or signal an error,
respect the ':exclusive' completion property, fix lingering "exact"
face after deletion that makes the matches non-exact, and add tests.

* lisp/completion-preview.el (completion-preview--make-overlay): Only
reuse the previous 'after-string' if it has the right face.
(completion-preview--try-table)
(completion-preview--capf-wrapper): New functions.
(completion-preview--update): Use them.
* test/lisp/completion-preview-tests.el: New file.  (Bug#67275)
2023-11-25 12:06:03 +02:00
Eli Zaretskii
77ab00207d ; * admin/authors.el (authors-aliases): Add Noah Peart. 2023-11-25 11:48:38 +02:00
nverno
d5e6b3ff5a Fix test name with erts-run-test with Point-Char
* lisp/progmodes/erts-mode.el (erts-run-test): Fix finding
the test name when Point-Char is defined,  (Bug#67235)
2023-11-25 11:42:05 +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
207ee7f988 Dismiss Android Back key events that are canceled
* java/org/gnu/emacs/EmacsWindow.java (onKeyDown): Disregard
KEYCODE_BACK events.
(onKeyUp): If the event is KEYCODE_BACK, deliver the disregarded
key press event, unless FLAG_CANCELED is set.
2023-11-25 10:41:09 +08:00
Spencer Baugh
505edceaf4 Use the project--list as history when prompting for a project
The project--list is already ordered such that the most recently used
projects are at the front.  Now we use it as the minibuffer history
when prompting for a project.

To avoid savehist from picking up project--list as a minibuffer
history variable and overriding our own persistence mechanism, we
don't pass project--list directly as a history variable, but instead
pass project--dir-history or project--name-history, dynamically-bound
to an appropriate value.  project--dir-history and
project--name-history won't be persisted since they're always unbound
at the top level; but if they are persisted anyway somehow, it won't
affect us.

If we later find a way to rely on savehist for persistence instead of
having our own mechanism, we can change the in-memory format of
project--list to be just a list of directories, and our explicit calls
to project--add-dir can be replaced by let-binding
history-delete-duplicates=t, history-length=t.

* lisp/progmodes/project.el (project--remember-dir): Add.
(project-remember-project): Use project--remember-dir.
(project--name-history, project-prompt-project-name)
(project--dir-history, project-prompt-project-dir): Pass a
preprocessed project--list as HIST to completing-read.  (bug#67310)
(project-switch-project): Call project--remember-dir.
2023-11-25 03:59:21 +02:00
F. Jason Park
2ed9c9f1b3 Optionally allow substitution patterns in erc-prompt
* etc/ERC-NEWS: Add entry for `erc-prompt-format'.
* lisp/erc/erc-compat.el (erc-compat--defer-format-spec-in-buffer):
New macro to wrap `format-spec' specification values in functions that
run in the current buffer and fall back to the empty string.
* lisp/erc/erc.el (erc-prompt): Add predefined Custom choice for
function type in `erc-prompt-format'.
(erc--prompt-format-face-example): New "pre-propertized" value for
option `erc-prompt-format'.
(erc-prompt-format): New companion option for `erc-prompt' choice
`erc-prompt-format'.  New function of the same name to perform format
substitutions and serve as a Custom choice value for `erc-prompt'.
Based on work and ideas originally proposed by Stefan Kangas.
(erc--away-indicator, erc-away-status-indicator,
erc--format-away-indicator): New formatting function and helper
variables for displaying short away status.
(erc--user-modes-indicator): New variable.
(erc--format-user-modes): New function.
(erc--format-channel-status-prefix): New function.
(erc--format-modes): New function.
* test/lisp/erc/erc-scenarios-prompt-format.el: New file.  (Bug#51082)

Co-authored-by: Stefan Kangas <stefankangas@gmail.com>
2023-11-24 13:38:52 -08:00
F. Jason Park
7cbe6ae712 Add merged-message indicator option for erc-fill-wrap
* lisp/erc/erc-fill.el (erc-fill): Use `when-let' instead of
`when-let*'.
(erc-fill-wrap-merge): Mention companion options in doc string.
(erc-fill-wrap-merge-indicator): New option to display a
distinguishing "indicator" in the form of a one-character string
between messages from the same speaker.
(erc-fill-wrap-mode, erc-fill-wrap-disable): Mention
`erc-fill-wrap-merge-indicator' in doc string and kill related local
variables.
(erc-fill--wrap-merge-indicator-pre,
erc-fill--wrap-merge-indicator-post): New internal variables for
caching merge indicator.
(erc-fill--wrap-insert-merged-post, erc-fill--wrap-insert-merged-pre):
New functions for adding merge indicators either before or after a
message.
(erc-fill-wrap): Add logic for deferring to merge-indicator helpers
when needed.
* test/lisp/erc/erc-fill-tests.el (erc-fill-wrap-tests--merge-action,
erc-fill-wrap--merge-action): Move body of latter test into former, a
new fixture function.
(erc-fill-wrap--merge-action/indicator-pre,
erc-fill-wrap--merge-action/indicator-post): New tests.
* test/lisp/erc/resources/fill/snapshots/merge-wrap-indicator-post-01.eld:
New test data file.
* test/lisp/erc/resources/fill/snapshots/merge-wrap-indicator-pre-01.eld:
New test data file.  (Bug#60936)
2023-11-24 13:38:52 -08:00
F. Jason Park
8bb68a522f Optionally align prompt to prefix in erc-fill-wrap
* lisp/erc/erc-fill.el (erc-fill-wrap-align-prompt): New option for
aligning prompt with leading portion of messages at the common "static
center" pivot-column barrier, so it appears "dedented" along with all
speaker name tags.  Tests for this functionality appear in the
subsequent patch of this same change set.
(erc-fill-wrap-use-pixels): Demote from user option to normal variable
because it has no practical use other than for testing.  Don't rename
as internal variable to spare the improbable user of ERC on HEAD who's
already customized this.
(erc-fill-wrap-mode, erc-fill-wrap-enable, erc-fill-wrap-disable):
Take care to disable prompt-in-left-margin behavior when option
`erc-fill-wrap-align-prompt' is non-nil.
(erc-fill--wrap-measure): Improve doc string and always attempt to
leverage `buffer-text-pixel-size', even when the variable
`erc-fill-wrap-use-pixels' is nil.
(erc-fill--wrap-indent-prompt): New function to massage prompt
`line-prefix' after updates, such as changes to away status.
(Bug#51082)
2023-11-24 13:38:52 -08:00
F. Jason Park
0d6c8d41ab Use overlay instead of text prop to hide ERC's prompt
* lisp/erc/erc-backend.el (erc--hidden-prompt-overlay):
New variable, a buffer-local handle for the prompt overlay.
(erc--reveal-prompt): Delete overlay instead of text prop.
(erc--conceal-prompt): Add overlay instead of text prop.
(erc--unhide-prompt): Run `erc--refresh-prompt-hook' after revealing.
(erc--hide-prompt): Run `erc--refresh-prompt-hook' after hiding.
* lisp/erc/erc-stamp.el (erc-stamp--adjust-margin): Attempt a more
accurate estimate of the prompt's width in columns when initially
setting left-margin.
(erc-stamp--skip-left-margin-prompt-p): New variable to inhibit normal
behavior of displaying prompt in left margin.
(erc-stamp--display-margin-mode): Allow opting out of
prompt-in-left-margin behavior.
(erc--reveal-prompt): Delete unneeded method implementation.
(erc--conceal-prompt): Put overlay in margin.
* test/lisp/erc/erc-tests.el (erc-hide-prompt): Use
`get-char-property' instead of `get-text-property' in order to
accommodate overlay-based prompt hiding.  (Bug#51082)
2023-11-24 13:38:52 -08:00
F. Jason Park
3c9cba9df3 Don't inherit properties when refreshing ERC's prompt
* lisp/erc/erc.el (erc--merge-prop-behind-p): New variable to be
dynamically bound around rare calls to `erc--merge-props' when the
latter should append to the end of existing list-valued text
properties.
(erc--inhibit-prompt-display-property-p): New variable to be non-nil
in buffers where an active module needs to reserve all uses of the
`display' text property in the prompt region for itself.
(erc--prompt-properties): Collect all common prompt properties in one
place for code reuse and maintenance purposes.
(erc--refresh-prompt-continue, erc--refresh-prompt-continue-request):
New function and state variable for custom `erc-prompt' functions to
indicate to ERC that they need the prompt to be refreshed in all
buffers and not just the current one.
(erc--refresh-prompt): Merge `erc-prompt-face' behind any applied by a
customized `erc-prompt' function value.  Crucially, don't inherit
properties at the beginning of the prompt because doing so may clobber
any added by a custom `erc-prompt' function.  Instead, apply known
properties from `erc-display-prompt' manually.  Integrate
`erc--refresh-prompt-continue' logic.
(erc--merge-prop): Recognize flag to activate `append' behavior in
which new prop values are appended to the tail of existing ones rather
than consed in front.  This functionality could be extended to
arbitrary splices as well.
(erc-display-prompt): Use common text properties defined elsewhere.
* test/lisp/erc/erc-tests.el (erc--merge-prop): Add assertion for
`erc--merge-prop-behind-p' non-nil behavior.  (Bug#51082)
2023-11-24 13:38:52 -08:00
F. Jason Park
4064985b80 Fix speedbar help-echo in erc-nickbar-mode
* lisp/erc/erc-speedbar.el (erc-speedbar-buttons): "Spoof"
`dframe-help-echo-function' in channel buffers to get around the fact
that we're not using the real speedbar frame.
(erc-speedbar--fmt-sentinel): New variable.
(erc-speedbar-expand-channel): Use cached channel-mode string for mode
item.  Use button chars to mark mode and topic items and move verbose
labels into mouse-hover text.  Also set face for mode and topic.
(erc-speedbar-item-info): Look for `speedbar-token' as a fallback even
when the primary pattern doesn't match.  If the value's contents are
structured like a `format' function call, use them.
(erc-speedbar--emulate-sidebar): Add comment about speedbar setting
everything globally in older Emacsen.  (Bug#63595)
2023-11-24 13:38:52 -08:00
F. Jason Park
5bc84a0c9e Cache UI string for channel modes in ERC
* etc/ERC-NEWS: Add entry for more expansive "%m" in header line.
* lisp/erc/erc-common.el (erc--channel-mode-types): New slot
`shortargs' for caching truncated mode args.
* lisp/erc/erc.el (erc--mode-line-chanmodes-arg-len): New internal
variable for adjusting the truncation length of channel-mode arguments
as they appear in the header line.
(erc--mode-line-mode-string): New variable for caching the relevant
"modestring", if any, in ERC buffers.
(erc--process-channel-modes): Don't associate args with group 4/D,
which are all nullary modes.  This fixes a bug in which arguments were
associated with the wrong letters.  Also, set cached mode string for
channel.
(erc--user-modes): Simplify slightly by removing likely useless
variant for overloaded arg AS-TYPE.  This function is new in ERC 5.6.
(erc--channel-modes):  New function.  A higher-level getter for
current channel mode representation to complement `erc--user-modes'.
(erc--parse-user-modes): Set `erc--mode-line-mode-string in server
buffers.
(erc--handle-channel-mode): Change model to associate modes of type A
with a running plus/minus tally of state changes since joining the
channel.
(erc-update-mode-line-buffer): Use cached verbose representation of
channel or user modes instead of calling `erc-format-channel-modes'.
* test/lisp/erc/erc-tests.el (erc--update-channel-modes): Update to
reflect new running tally associations for type A modes.
(erc--channel-modes): New test.
(erc--user-modes): Update to reflect parameter simplification.
(Bug#67220)
2023-11-24 13:38:52 -08:00
nverno
6f843f03dc typescript-ts-mode: Add missing 'operator' to treesit-font-lock-features
* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode):
Add operator to treesit-font-lock-feature-list (bug#67433).
2023-11-24 20:40:34 +02:00
Michael Albinus
0676a02931 Extend D-Bus doc and test
* doc/misc/dbus.texi (Register Objects): Adapt doc of
dbus-unregister-service.

* test/lisp/net/dbus-tests.el (dbus--test-register-service):
Extend test.
2023-11-24 16:34:26 +01:00
Alan Mackenzie
2fca889cfb CC Mode: Fontify int unsigned Foo;
This fixes bug#59953.  Foo now gets fontified when unsigned
comes after int.

* lisp/progmodes/cc-engine.el (c-forward-type): Refactor nested
`if' forms into a cond form.  Loop around matches for
c-opt-type-component-key, advancing over them.
2023-11-24 12:22:08 +00:00
Michael Albinus
df094dd4bc Do not unregister a D-Bus service which is a unique name
* lisp/net/dbus.el (dbus-unregister-service): Check, whether
SERVICE is a known name.  (Bug#67386)
2023-11-24 11:09:15 +01:00
Alan Mackenzie
36d9b8ce84 CC Mode: Add second anchor point to class-open and class-close
This fixes the second (last) part of bug#66911.  The new second
anchor points allow the indentation of braces in template
classes to be anchored on the keyword 'class' rather than the
`template' at the beginning of the statement.

* lisp/progmodes/cc-engine.el (c-add-class-syntax): Add &rest
args parameter for additional anchor points.  Pass these to
c-add-syntax.
(c-guess-continued-construct): CASE B.1: Note return value from
c-looking-at-decl-block and pass this to c-add-syntax for a
class-open construct.
(c-guess-basic-syntax): CASE 4: Duplicate anchor position for
class-open.
(c-guess-basic-syntax): CASE 5A.2: Note return value of
c-looking-at-decl-block and pass it as extra argument to
c-add-syntax for a class-open construct.
(c-guess-basic-syntax): CASE 5G: Call c-looking-at-decl-block
to determine the second anchor point for a class-close, and
pass it to c-add-class-syntax.

* doc/misc/cc-mode.texi (Class Symbols): Document the anchor
points for class-open and class-close.
2023-11-24 10:03:33 +00:00
Eli Zaretskii
e6ad97a333 Fix byte-compilation warnings about 'sqlite-rollback'
* lisp/sqlite.el (sqlite-transaction, sqlite-commit)
(sqlite-rollback): Declare.
* lisp/emacs-lisp/multisession.el (sqlite-commit)
(sqlite-transaction): Remove declaration.
2023-11-24 09:30:53 +02:00
Po Lu
0858d10aeb Prevent touch screen translation from entering invalid state
* lisp/subr.el (touch-screen-events-received): New variable.
(read--potential-mouse-event): If a touch screen event's been
registered thus far, continue as though xterm-mouse-mode is
enabled.

* lisp/touch-screen.el (touch-screen-handle-touch): Set that
variable.  If t-s-c-t already exists but the new touch point was
assigned the same number by the system, replace the current tool
with it rather than installing it as the anciliary tool.
2023-11-24 10:39:49 +08:00
Po Lu
354a2958f9 ; Complete merge of emoji.el
* lisp/international/emoji.el (emoji-list): Import changes
from emacs-29.
2023-11-24 08:45:18 +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
cd26304353 ; Merge from savannah/emacs-29
The following commits were skipped:

8256bf4cdf Fix CRLF handling in Tramp (don't merge)
81b63ec032 Annotate java-ts-mode-test-movement with expected result
054202d48c Backport: Add more java indentation tests
d2776d8254 Backport: Add test for java indentation (bug#61115)
2023-11-24 08:38:06 +08:00
Po Lu
ad26461b48 Merge from savannah/emacs-29
9af03e0e18 typescript-ts-mode: Support indentation for conditionals ...
2023-11-24 08:38:06 +08:00
Po Lu
37b18d88bb ; Merge from savannah/emacs-29
The following commit was skipped:

61cdf42a48 Backport: Add some basic tests for java-ts-mode and types...
2023-11-24 08:38:05 +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
Dmitry Gutov
1978b603bc Make python-ts-mode's syntax-highlighting more standardized
This was brought up in a Reddit discussion.

* lisp/progmodes/python.el (python--treesit-fontify-variable):
Use font-lock-variable-use-face (since it applies to references).
(python-ts-mode): Move 'property' from 3rd to 4th
treesit-font-lock-level.
2023-11-24 00:00:32 +02:00
Juri Linkov
29d42d9158 Support dired-movement-style in dired-next-dirline and dired-prev-dirline
* lisp/dired.el (dired-movement-style): Mention dired-next-dirline
and dired-prev-dirline in the docstring (bug#67303).
(dired-next-line): Refactor most code to dired--move-to-next-line.
(dired--move-to-next-line): New function with code from dired-next-line.
(dired--trivial-next-dirline): Rename from dired-next-dirline.
(dired-next-dirline): New function body that uses dired-movement-style,
dired--move-to-next-line and dired--trivial-next-dirline.
(dired-prev-dirline): Mention dired-movement-style in the docstring.
2023-11-23 20:12:40 +02:00
Manuel Giraud
51222153df Remove spurious "nil" from Gnus mode line
Bug#67322

* lisp/gnus/gnus.el (gnus-mode-line-buffer-identification): Handle a
nil return value from `gnus-emacs-version'.
2023-11-23 09:15:34 -08:00
Stefan Monnier
7705bdfa5b Adjust affected callers of derived-mode-p` to use the new convention
* lisp/align.el (align-rules-list): Prefer `derived-mode-p` over
`provided-mode-derived-p`.
(align--rule-should-run):
* lisp/window.el (display-buffer-reuse-mode-window):
* lisp/whitespace.el (whitespace-enable-predicate):
* lisp/transient.el (transient--do-suffix-p):
* lisp/so-long.el (so-long--set-auto-mode):
* lisp/simple.el (command-completion-with-modes-p):
* lisp/progmodes/tcl.el (tcl-current-word):
* lisp/progmodes/idlwave.el (idlwave-fix-keywords):
* lisp/progmodes/gdb-mi.el (gdb, gdb-locals-mode-map)
(gdb-registers-mode-map, gdb-function-buffer-p):
* lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-style-setter)
(c-ts-mode-set-style):
* lisp/progmodes/bug-reference.el (bug-reference--try-setup-gnus-article):
* lisp/help-fns.el (help-fns--list-local-commands):
* lisp/emulation/viper.el (viper-mode)
(viper-this-major-mode-requires-vi-state):
* lisp/emacs-lisp/easy-mmode.el (easy-mmode--globalized-predicate-p):
* lisp/dired.el (dired-hide-details-mode, dired-click-to-select-mode):
* lisp/calendar/todo-mode.el (todo-reset-nondiary-marker)
(todo-reset-done-string, todo-reset-comment-string):
* lisp/vc/vc.el (vc-deduce-backend): Use new calling convention for
`derived-mode-p` and `provided-mode-derived-p`.
2023-11-23 11:59:49 -05:00