1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-15 11:21:19 -07:00
Commit graph

48012 commits

Author SHA1 Message Date
Stefan Monnier
616b22b5b9 Merge from origin/emacs-29
8f42db010d Improve indenting "case" in Python
c4d490490d ; * test/src/fns-tests.el: Fix last change
875e77a66a * test/infra/Dockerfile.emba (emacs-native-comp): Add zli...
64a2b0d36f Fix failure of fns-tests-collate-strings on Cygwin
90fc6b987a * lisp/savehist.el (savehist-save): Preserve shared struc...
08fbc13375 Adapt Tramp manual
accb387166 Fix system time sampling on MS-Windows
33d436eefa Fix treesit_ensure_parsed (bug#62333)
d93a439846 * lisp/help-fns.el (find-lisp-object-file-name): Fix bug#...
be8147c53f Improve "Bugs" in the Emacs manual
2023-03-27 17:16:58 -04:00
Stefan Monnier
624416a2ae Merge commit '1bc9dfc5be' 2023-03-27 17:14:27 -04:00
Phil Sainty
28db56d5f0 * src/buffer.c (mode-line-format): Reorder and reformat %-construct docs
The original formatting dates back to the earliest commits.  It saved
a few lines but was harder to follow.  As windows are typically taller
now than the terminals of the time, this reformatting now makes better
sense for readabiity.  See bug#57080.

* doc/lispref/modes.texi: Order change for consistency.  Add index.
2023-03-27 00:36:47 +13:00
Phil Sainty
7466909df4 Improve docs for global-mode-string / %M construct
* src/xdisp.c (global-mode-string): Update docstring.
* doc/lispref/modes.texi: Update manual.
2023-03-27 00:33:01 +13:00
Phil Sainty
73f186b0c9 * src/buffer.c (mode-line-format): Document %o and %q constructs
Missed from commit b0b02ca7f3.
2023-03-27 00:32:57 +13:00
Phil Sainty
3e70b2213a * src/buffer.c (mode-line-format): Remove docs for obsolete %t construct
This documentation had been previously removed in 1999 in [1]
but was subsequently restored again in a different form in 2006
in [2] as the construct was still supported on some systems.
However it looks like it hasn't done what that documentation
indicated since [3] in 2011, and the final remnant of this
functionality was removed in [4] in 2013; so it seems clear that
it's no longer supported and shouldn't be documented now.

[1] commit 08de620019
[2] commit dafbe726b8
[3] commit 05c6525173
[4] commit 8549f9e89b
2023-03-27 00:32:52 +13:00
Yuan Fu
db7e95531a
Switch buffer in Ftreesit_query_capture
This way both #pred and #match predicates runs in the node's buffer by
default.

* src/treesit.c:
(treesit_predicate_match): No need to switch buffer anymore.
(Ftreesit_query_capture): Switch buffer.

* doc/lispref/parsing.texi (Pattern Matching): Update manual.
2023-03-24 12:29:34 -07:00
Yuan Fu
a37f19b14a
Handle signals gracefully in tree-sitter query predicates
Before this change, predicate functions can signal, which will cause
Ftreesit_query_capture to skip freeing the query and cursor object.
We make predicate functions return the signal data rather than
directly signal.

* src/treesit.c (treesit_predicate_capture_name_to_node)
(treesit_predicate_capture_name_to_text)
(treesit_predicate_equal)
(treesit_predicate_match)
(treesit_predicate_pred)
(treesit_eval_predicates): Return signal rather than signaling
directly.
(Ftreesit_query_capture): Check for returned signal data.
2023-03-24 12:29:33 -07:00
Yuan Fu
455412dd89
; Minor refactor of Ftreesit_query_capture
* src/treesit.c (Ftreesit_query_capture): Move around some variable
initialization.
2023-03-24 12:29:33 -07:00
Yuan Fu
c3a25bfb75
Refactor Ftreesit_query_capture
Refactor some part of Ftreesit_query_capture out into separate
functions, to pave the way for other query-based functions.

* src/treesit.c (treesit_resolve_node): New function.
(treesit_initialize_query): New function.
(Ftreesit_query_capture): Refactor some part into new functions.
2023-03-24 12:29:33 -07:00
Eli Zaretskii
accb387166 Fix system time sampling on MS-Windows
* src/timefns.c (emacs_localtime_rz) [WINDOWSNT]: Unconditionally
call tzset to make sure we pick up all the changes of time zone,
working around the MS CRT caching.
2023-03-24 14:10:30 +03:00
Yuan Fu
33d436eefa
Fix treesit_ensure_parsed (bug#62333)
* src/treesit.c (treesit_ensure_parsed): Check for need_reparse after
treesit_sync_visible_region runs, because as the comment says,
treesit_sync_visible_region might modify need_reparse.
2023-03-24 00:18:19 -07:00
Daniel Martín
f0a2f37dee Fix toolbar item validation in the NS port
* src/nsterm.m ([EmacsView validateToolbarItem:]): Implement this
NSToolbarItemValidation method, which is called by AppKit when it
needs to validate an image item in a toolbar.  This solves, in
particular, the problem with having the "Save" icon on the tool
bar enabled at Emacs startup.  (Bug#62234)
2023-03-23 10:07:51 +02:00
Stefan Kangas
42fba8f36b Merge from origin/emacs-29
b7f0333355 Improve warning about changing the string returned by sym...
e62f8b0239 Fix visiting XBM/XPM files when 'c-ts-mode' is active
94d1c81cf0 * lisp/mpc.el (mpc-format): Fix oversight in commit 48b6c...
a4d97811ed Bail early from eglot--apply-text-edits if nothing to do
61d571760b ; Clarify in-code commentary of eglot--after-change
5bbbd70f56 Improve ergonomics of Eglot's inlay hints
c3a543123a Protect against too large size of 'recent-keys' vector
231190b37f * lisp/net/tramp.el (tramp-yn-prompt-regexp): Fix regexp.
0bebd0e5f0 ; Remove 'build-module' and 'html-manual' directories fro...
6674c362ad Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
829e5dfabe Update to Org 9.6.1-48-g92471e
e84f878e19 ; * admin/notes/tree-sitter/starter-guide: Update starter...
ea0949853f Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
11592bcfda ; * lisp/nxml/xmltok.el (xmltok-scan-attributes): Fix las...
e388a77cf0 ; Minor copyedits of recent changes in ELisp reference ma...
33a2670368 ; Minor fixes in recent Eglot changes
d2cf1386fa ; * doc/misc/eglot.texi (Eglot Commands): Improve indexing.
b75e489362 ; Again correct node reference casing in doc/misc/eglot.texi
a55d2edc5a ; Remove overly verbose commentary
22a70451f3 Merge confusing duplicate sections on commands in Eglot m...
3293f93988 Don't take over mouse-1 binding on Eglot diagnostics (bug...
013057e351 ; Prefer "language server" to "LSP server" in Eglot manual
94a21c8864 * lisp/progmodes/eglot.el (eglot--connect): Improve Tramp...
0eddfa28eb Avoid slowdowns in xmltok-scan-attributes
647c6bf2a6 ; * test/lisp/abbrev-tests.el (abbrev--possibly-save-test...
531f8f7103 ; * admin/git-bisect-start: Update failing commits

# Conflicts:
#	admin/notes/tree-sitter/build-module/batch.sh
#	admin/notes/tree-sitter/build-module/build.sh
2023-03-20 06:30:40 +01:00
Stefan Kangas
20d8a1cf4b Merge from origin/emacs-29
ea87c54f35 ; * lisp/subr.el (setq-local): Add missing period (bug#62...
90362f87d5 ; Correct last commit, downcase node reference
38067f05b9 Enhance section about troubleshooting in Eglot manual.
6f82596b49 Fix Eglot's snippet insertion to follow the manual
c54bda15e3 Reset abbrevs-changed after saving abbrevs (bug#62208)
e8cee15f78 ; Fix markup in previous change
e4a7d0cd6e Document `keymap-unset' in lispref
bb3e0ded9e Don't add a key binding when REMOVE is non-nil
a4a9ffdd80 Fix the documentation of various aspects of adding Xref h...
a2222b9a9b ; Minor wording fix in ELisp reference manual
5cf1de683b Fix python-fill-paragraph problems on filling strings (bu...
7385c991df Also exempt eglot-inlay-hints-mode from desktop.el's fumb...
1961bdb52e ; Add WebDAV entry to index in Tramp manual
dfb36d3623 Refer to EWW instead of w3 and w3m
9d3fdf7e0d Fix Eglot's command generation for code actions

# Conflicts:
#	etc/NEWS
2023-03-20 06:30:32 +01:00
Gregory Heytings
b7f0333355 Improve warning about changing the string returned by symbol-name
* src/data.c (Fsymbol_name): Add warning.  See bug#62009.

* doc/lispref/symbols.texi (Creating Symbols): Improve warning.
2023-03-19 22:17:40 +01:00
Eli Zaretskii
c3a543123a Protect against too large size of 'recent-keys' vector
* src/keyboard.c (MAX_NUM_RECENT_KEYS): New macro.
(Flossage_size): Don't allow specifying too large lossage-size.
Fix data types.  (Bug#62277)
2023-03-19 20:44:51 +02:00
Robert Pluim
bb3e0ded9e Don't add a key binding when REMOVE is non-nil
* src/keymap.c (store_in_keymap): Don't add a nil keybinding if we've
been asked to remove a non-existent binding.  (Bug#62207)
2023-03-17 14:18:02 +01:00
João Távora
a55aaf9eaf Merge from origin/emacs-29
4b6f2a7028 * lisp/progmodes/xref.el: Bump the version.
24c8b146bb * lisp/progmodes/xref.el (xref--xref-buffer-mode): Split ...
46f9e53c3d Fix import of keys in buffer created by epa-search-keys
36ade0704e Fix connection-local variables settings
e759905d2e ; Minor copyedits in EGLOT-NEWS
ba22a2c346 Bump Eglot version to 1.12
54e123a505 Update Eglot's manual about eglot-workspace-configuration
812597f864 ; * lisp/novice.el (disabled-command-function): Add note ...
4a603c9849 Amend last Eglot commit (bug#62065)
b916ec88b2 Make eglot-ensure's post-command-hook run a bit later (bu...
1c05175c21 Fix display of disabled-command help text
3ce37db988 Remove mention of old dotted-list reader quirk from manual
42335c2c1f Fix value history shown for 'gc-cons-percentage'
fffbce2934 TRework fix for bug#62106
8bc12a2736 ; * etc/NEWS: Fix last change.
2ac068d294 ; Remove 'ns-popup-font-panel' from documentation
5bc32d008f Add missing indentation rule for rust-ts-mode (Bug#62109)
0404924930 ; One more improvement to ELisp "internals" appendix.
c857775ca6 Fix bug#62106
0fedbfa6a9 ; Minor improvement of documentation of GC thresholds
b0b24ad2fc Add missing rust-ts-mode highlight query for scoped_type_...
c0cf69f7a1 Make "case" keyword a dedenter in Python
db178517ce ; * lisp/arc-mode.el (w32-get-console-codepage): Declare.
157a91b54b Fix decoding non-ASCII file names in zip archives on MS-W...
4803f97204 Fix copying binary files from zip archives
679f528b95 Skip ruby-ts-syntax-propertize-symbol unless treesitter i...
081cc7aa8e ; * doc/misc/eglot.texi (Project-specific configuration):...
1de513a29f Fix enums and unions appearing as structs in c-ts-base-mo...
ecdfd584a5 ruby-ts-mode: Fine-tune s-p-f on symbols (bug#62086)
29228e24f2 python-info-dedenter-opening-block-positions: Fix to supp...
01b65d442a Autoload Eglot helper funtion eglot--debbugs-or-github-bu...
50a3559c5a Add chapter on advanced server configuration to Eglot manual
2e7460c231 ; * lisp/progmodes/java-ts-mode.el (treesit-query-capture...
255eeee0e0 java-ts-mode: detect if text_block is supported.
6fe9075ff3 Revert workaround introduced in Bug#56271
f175141aea Fix searching for end of string in python-nav-end-of-stat...

# Conflicts:
#	etc/NEWS
2023-03-14 18:14:48 +00:00
Eli Zaretskii
42335c2c1f Fix value history shown for 'gc-cons-percentage'
When Emacs is built, temacs is run in batch mode, so if we enlarge
'gc-cons-percentage' in that case, the enlarged value will be
"remembered" by the dumped Emacs, and will show confusing
information in "C-h v", claiming that the original value was 1.0.
Keeping the value at 0.1 during dumping avoids that.

* src/emacs.c (main): Increase 'gc-cons-percentage' in batch mode
only if we are not initializing (a.k.a. "dumping") Emacs.
2023-03-12 16:19:49 +02:00
Mattias Engdegård
b8e7061232 Remove recursion from character escape handling in reader
This cures a C stack overflow when reading certain long (crafted)
strings (bug#62039) and improves performance of reading escaped
characters in character and string literals.
Reported by Bruno Haible.

* src/lread.c (invalid_escape_syntax_error): New.
(read_escape): Rename to...
(read_char_escape): ...this.  Remove recursion.  Pass read-ahead char
as argument.  Improve code performance and clarity.
(read_char_literal, read_string_literal): Update calls.
* test/src/lread-tests.el (lread-char-modifiers)
(lread-many-modifiers): Add test cases.
2023-03-11 10:21:23 +01:00
Stefan Monnier
d236ab0930 src/profiler.c: Keep track of the discarded counts
When the table overflows and wh evict entries, keep track of those
counts in a global counter so we can see the proportion of
samples this represents.

* src/profiler.c (struct profiler_log): Add `discarded` field.
(evict_lower_half): Change arg to be `struct profiler_log`.
Transfer counts to the new `discarded` field.
(record_backtrace): Change arg to be `struct profiler_log`.
(add_sample): Adjust call accordingly.
(export_log): Add `discarded` counts to the result.
Onle add the GC and `discarded` counts if they're non-zero.
(syms_of_profiler): Define new symbol `Discarded Samples`.
2023-03-10 15:54:10 -05:00
Stefan Monnier
83be04c66f src/profiler.c: Share more code between CPU and Memory profilers
* src/profiler.c (struct profiler_log): New type.
(make_log): Use it.
(cpu, memory): New vars to replace cpu_log, memory_log, cpu_gc_count,
and mem_gc_count.
(add_sample): New function, extracted from `handle_profiler_signal`.
(handle_profiler_signal, malloc_probe): Use it.
(Fprofiler_cpu_start, Fprofiler_memory_start): Adjust call to `make_log`.
(export_log): New function, extracted from `Fprofiler_cpu_log`.
(Fprofiler_cpu_log, Fprofiler_memory_log): Use it.
(syms_of_profiler, syms_of_profiler_for_pdumper): Adjust to new `cpu`
and `memory` vars.
2023-03-10 15:30:20 -05:00
Stefan Monnier
f97d4b9e54 src/profiler.c: Try and fix occasional assertion failures
Apparently the (>= match imatch) test fails sometimes in `profiler.el`.
Not sure where this comes from, but this patch should remove one
possible source.

* src/profiler.c (Fprofiler_cpu_log, Fprofiler_memory_log):
Change the special Automatic_GC backtrace to make it clear that it's
a *sibling* of the call tree (i.e. it's at the (its own) root).
(malloc_probe): Obey `size` when incrementing the gc_counter.
2023-03-10 15:05:55 -05:00
Eli Zaretskii
9a5f2ac97e src/profiler.c: Keep track of allocations during GC
Cargo-cult the `cpu_gc_count` code to `memory_gc_count`.

* src/profiler.c (mem_gc_count): New var.
(Fprofiler_memory_start): Initialize it.
(Fprofiler_memory_log): Increment it.
(Fprofiler_memory_log): Use it.
2023-03-10 14:54:52 -05:00
Stefan Kangas
6fb8a4dff7 Merge from origin/emacs-29
836044f329 Fix c-ts-mode preproc directive indentation
64980a59b6 ; * lisp/files.el (hack-local-variables): Fix typo in the...
a7cd125d49 More robustly unspoof HOME in Eglot tests (bug#61637)
6c66dbd02c Turn on Eglot inlay hints by default
246f5b541c Update ts modes missed in 4c16fd3a51 to use column-0
0bfba49ca7 Robustify Eglot for "transient" projects
ea5fd375bb Fix documentation of 'normal-mode' in buffers that don't ...
4c16fd3a51 Change tree-sitter indent anchor 'point-min' to 'column-0'
f47b393015 Fix go-ts-mode multi-line string indentation (bug#61923)
e0bf2da3db ; More accurate doc strings for 'window-at' and 'window-a...
2023-03-05 06:30:15 +01:00
Eli Zaretskii
4b3ccf3092 Unbreak the unexec build
* src/alloc.c (BLOCK_ALIGN) [HAVE_UNEXEC]: Reset back to 1024.
(Bug#61960)
2023-03-04 17:01:16 +02:00
Konstantin Kharlamov
396f46d904 bug#61489: Increase BLOCK_ALIGN from 1024 to 32768
Originally discovered by Tyler Dodge in his article "Significant Garbage
Collection Improvement For Emacs".

While testing this change on Archlinux system with Intel i5-7200U CPU,
average time of garbage collection gets reduced by ≈25%. Other users
report improvements up to 50%. While monitoring PSS of emacs with and
without customizations loaded before and after the patch, no
statistically significant differences were discovered. So overall, this
change is a win.
* src/alloc.c (BLOCK_ALIGN): increase from 1024 to 32768.
2023-03-04 13:25:34 +02:00
Eli Zaretskii
e0bf2da3db ; More accurate doc strings for 'window-at' and 'window-at-x-y'.
* lisp/window.el (window-at-x-y):
* src/window.c (Fwindow_at): Doc fix.  (Bug#61948)
2023-03-04 10:43:25 +02:00
Stefan Kangas
49e021e5be Merge from origin/emacs-29
bd5115e134 Remove Eglot activation check from find-file-hook
adc04ad524 * src/intervals.c (set_intervals_multibyte_1): Fix bug#61887
b3e930d328 Revert inadvertent change to lisp/icomplete.el in previou...
da8e4b6fe4 Revert previous change in go-ts-mode.el
7548446194 Release ERC 5.5
585faf4c17 ; More doc improvements for OClosures
2840895c1a Don't create GUI frames in batch sessions
452b5ed103 ; Fix wrong error name in erc-server-908 doc string.
1e9484f2fd ; * etc/ERC-NEWS: Mention more deprecations.
119b3a4dba Minor copyedits of documentation of OClosures
3a651773d2 Eglot: pay better attention to hints' paddingLeft/Right (...

# Conflicts:
#	etc/NEWS
2023-03-04 06:30:12 +01:00
Stefan Monnier
adc04ad524 * src/intervals.c (set_intervals_multibyte_1): Fix bug#61887
When `total_length` is 0 there should be no subtree at all, but
`delete_interval` only deletes one interval, so make sure we don't end
up with some stale child of `i`.
2023-03-03 19:13:03 -05:00
Stefan Kangas
841614c722 Merge from origin/emacs-29
9e105d483f Fix c-ts-mode indentation for statement after preproc (bu...
a72a55e3e4 Fix c/c++-ts-mode's mode lighter
67befc1f5a Eglot: use shell-file-name in eglot--cmd (bug#61748)
1c7b2673bd Avoid signaling errors in url-basic-auth when password is...
756225e377 Fix wdired-tests on MS-Windows
a137f71c67 Improvements to xwidget on macOS (bug#60703)
3f43a16bc6 ; Avoid byte-compilation warning in c-ts-mode.el
2023-03-03 06:30:12 +01:00
Andrew De Angelis
a137f71c67 Improvements to xwidget on macOS (bug#60703)
* src/nsxwidget.m ()
([XwWebView initWithFrame:configuration:xwidget:])
(nsxwidget_init):  Fixed memory leaks: when sending an alloc
message to an object, send an autorelease message to any objects
we won't explictly release.
([XwWebView webView:didFinishNavigation:]): Second string to
store in 'store_xwidget_event_string' is "load finished" rather
than empty string.
([XwWebView webView:didStartProvisionalNavigation:])
([XwWebView webView:didReceiveServerRedirectForProvisionalNavigation:])
([XwWebView webView:didCommitNavigation:]): New functions.
(nsxwidget_webkit_estimated_load_progress): New function.
(nsxwidget_webkit_stop_loading): New function.
* src/xwidget.c (Fxwidget_webkit_estimated_load_progress): Call
'nsxwidget_webkit_estimated_load_progress' if we're on MacOS.
(Fxwidget_webkit_stop_loading): Call 'nsxwidget_webkit_stop_loading'
if we're on MacOS.
(syms_of_xwidget): Define symbol for function.
'xwidget_webkit_estimated_load_progress' if we're on MacOS.
* src/nsxwidget.h: Signature for functions
'nsxwidget_webkit_estimated_load_progress' and
'nsxwidget_webkit_stop_loading'.
* lisp/xwidget.el (xwidget-webkit-current-url): Message URL rather
than return value of 'kill-new' (which is always nil).
2023-03-02 12:53:35 +02:00
Stefan Kangas
c9b0f1df0d Merge from origin/emacs-29
07f3236133 * src/profiler.c (malloc_probe): Make it safe for GC (bug...
1f1d36fa80 * lisp/emacs-lisp/debug-early.el (debug-early-backtrace):...
99df815c15 Revert "Don't disable eldoc when doing edebug"
0a4b1c0102 ; Eglot: improve bug-reference-url-format/bug-reference-u...
40c9fc8e3b Eglot: work around Tramp instability bug#61350
4a6db125b9 Fix treesit-indent-region
7ef9a8210c Replace C++ comments with C style equivalents
2023-03-02 06:30:15 +01:00
Po Lu
a1cb77771a ; * src/haikufont.c (haikufont_open): Remove unused variable. 2023-03-02 03:07:37 +00:00
Stefan Monnier
07f3236133 * src/profiler.c (malloc_probe): Make it safe for GC (bug#60237) 2023-03-01 12:36:58 -05:00
Po Lu
7ef9a8210c Replace C++ comments with C style equivalents
* src/alloc.c (Fmake_byte_code, purecopy):
* src/bytecode.c (exec_byte_code):
* src/xdisp.c (face_at_pos): Do not use C++-style comments!
2023-03-01 14:29:24 +08:00
Stefan Kangas
c640dc9ef5 Merge from origin/emacs-29
267fc6d00c ruby-smie-rules: Fix misindentation of a method call afte...
0fde314f6f * lib-src/etags.c (process_file_name): Free malloc'ed var...
dde9d149af ; Improve documentation of loading *.eln files
7c552be89d ; Another doc fix in eglot.el
75c65fcc98 ; Fix last change
a3d15c1f74 ; Fix last change
ca79b138d4 Eglot: rename and redocument encoding-related functions (...
3e3e6d71be Eglot: support positionEncoding LSP capability (bug#61726)
b0e87e930e Eglot: use faster strategy for moving to LSP positions (b...
5b174b9683 Fix mule-tests in UTF-8 locales
5256392a7e Fix 'vertical-motion' when display strings are around
0db88d625a ; * src/treesit.c (treesit_predicate_match): Fix typo.
2023-02-27 06:30:20 +01:00
Eli Zaretskii
5256392a7e Fix 'vertical-motion' when display strings are around
* src/indent.c (Fvertical_motion): Correct bidi-related condition
for character position, when we didn't move vertically.  (Bug#61636)
2023-02-26 11:34:14 +02:00
Yuan Fu
0db88d625a
; * src/treesit.c (treesit_predicate_match): Fix typo. 2023-02-26 01:12:33 -08:00
Stefan Kangas
580bb8f46c Merge from origin/emacs-29
3cae0e3d96 python-ts-mode: Fix single-quote string fontification
68d753e371 ; * etc/NEWS: Fix typos.
ab0cc4e781 Fix infloop in bidi.c
3b8b23f66d ; Fix doc string of 'emacs-lisp-byte-compile'

# Conflicts:
#	etc/NEWS
2023-02-26 06:30:12 +01:00
Eli Zaretskii
ab0cc4e781 Fix infloop in bidi.c
* src/bidi.c (bidi_set_paragraph_end): Reset the isolate_level to
zero.  Whenever stack_idx is reset to zero, the isolate_level must
also be reset, since there cannot be any isolate status outside of
embeddings.  Failure to reset isolate_level will cause us infloop
when we see a PDI.  Reported by Matt Beshara <m@mfa.pw>.
2023-02-25 17:19:15 +02:00
Stefan Kangas
50b55656b9 Merge from origin/emacs-29
5cf50d6004 Check the anchor along with the offset in treesit-indent-...
497018dd5c ; Fix typos in docstrings in c-ts-common.el
03072bbdd3 ; Set indent-tabs-mode to nil in c-ts-mode indent preproc...
4a25fa4586 Align to prev sibling for c-ts-mode indentation
d25f24fe57 Fix c-ts-common-statement-offset and c-ts-common--node-is
c92360c7a3 typescript-ts-mode: Highlight non-shorthand destructuring...
a795c51f60 Add more/finer faces for tree-sitter
146bce4932 Avoid crashes in batch mode due to lack of frame face cache
244a73cd72 Add Tramp version integrated in Emacs 28.3

# Conflicts:
#	etc/NEWS
2023-02-25 06:30:14 +01:00
Eli Zaretskii
146bce4932 Avoid crashes in batch mode due to lack of frame face cache
* src/xfaces.c (Finternal_merge_in_global_face): Handle frames
with no face cache.
2023-02-24 22:46:05 +02:00
Stefan Monnier
a129f25772 kmacro: Simplify register code and recent change
While reviewing uses of `last-kbd-macro` for more problems like
those of bug#61700 I noticed that we don't need the `kmacro-register`
type any more (we can directly use the new `kmacro` type instead).
Also `macros.el` requires `kmacro` so rather than autoload
`macro--string-to-vector` it's simpler to move the function to
`kmacro.el`.  And while at it fold into it the `stringp` test that's used
before every call to that function.

* lisp/kmacro.el (kmacro--to-vector): Rename from
`macro--string-to-vector`, move from `mcros.el`, and make it work for
vectors.
(kmacro-ring-head, kmacro-lambda-form): Simplify accordingly.
(cl-print-object): Remove unused declaration.
(kmacro-register): Delete type.  Use `kmacro` objects instead.
(register-val-jump-to, register-val-describe, register-val-insert):
Rewrite accordingly.
(kmacro-to-register): Put the `kmacro` object.

* lisp/macros.el (macro--string-to-vector): Move to `kmacro.el`.
(insert-kbd-macro): Use `kmacro--to-vector`.

* src/macros.c (end_kbd_macro): Always generate a vector.
2023-02-24 14:18:24 -05:00
Stefan Kangas
fad3665069 Merge from origin/emacs-29
94e70ed426 ; * lisp/emacs-lisp/eldoc.el (eldoc-display-in-echo-area)...
1841299a11 Eglot: implement inlay hints (bug#61412, bug#61066)
28ed0d1840 Eglot: run eglot-managed-mode-hook after LSP didOpen
7ad5d9babe Eglot: restore eldoc-documentation-functions on shutdown
711a775ba7 Eglot: simplify capability-checking code
ea7251ad6d Eglot: go back to setting eldoc-documentation-strategy again
6016f1982d ; * etc/NEWS: Fix typo again
d411b4d1fd ; * etc/NEWS (C-x v !): Additional text.
a0b6725234 ; * doc/emacs/vc1-xtra.texi (Preparing Patches): Wording ...
43c4dd6f96 ; * doc/emacs/anti.texi (Antinews): Adjust to latest chan...
20c654b6f8 Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs ...
177d0cf2a9 ; * etc/NEWS: Fix typos.
db7096a532 Yield to erc-move-to-prompt before unhiding prompt
db21c84bc9 ; Improve doc string of 'C-q'
a6be0be1db ; Clarify "kill files" in Gnus manual
d816429e2f * lisp/progmodes/python.el (python--import-sources): Fix ...
1f4886fdb0 Do not error out on non image file (bug#61639)
003759a6dc Explain effect of variable-pitch fonts on fill-column
ba91a76659 Avoid division by zero in get_narrowed_* functions
fb5dbf6de7 ; Fix documentation of 'icon-title-format'.
48c9a50771 * etc/NEWS: Mention new buffer display action alist entries
4dc1f2b9a0 ; * src/xterm.c (x_update_end): Condition on HAVE_XDBE
f1c8389806 Fix build --without-xdbe
ef38774c02 Improve dnd-direct-save-remote-files docstring
cf53e62a79 Add 'process-status' to process shortdoc
68df9e5953 * lisp/emacs-lisp/comp.el (comp--trampoline-abs-filename)...
06ba948416 Improve text about deleting windows
1976ca1634 Make 'emacs-news-cycle-tag' work at all levels

# Conflicts:
#	etc/NEWS
2023-02-23 06:30:16 +01:00
Eli Zaretskii
ba91a76659 Avoid division by zero in get_narrowed_* functions
* src/xdisp.c (get_narrowed_width, get_narrowed_len): Return at
least 1 as the value.  (Bug#61704)
2023-02-22 14:55:05 +02:00
Robert Pluim
4dc1f2b9a0 ; * src/xterm.c (x_update_end): Condition on HAVE_XDBE 2023-02-21 18:05:32 +01:00
Eli Zaretskii
f1c8389806 Fix build --without-xdbe
* src/xterm.c (x_end_cr_clip, handle_one_xevent): Condition
double-buffering code on HAVE_XDBE.  (Bug#61667)
2023-02-21 18:15:35 +02:00
Stefan Kangas
839a86b02b Merge from origin/emacs-29
5a864f23eb regex-emacs.c: Reduce the use of backtracking a bit further
e83c78b8c7 Eglot: respect user's Eldoc configuration by default
5d0b45cd67 Make the native compiler always use `make-temp-file' for ...
88ee92e61d ; * lisp/progmodes/rust-ts-mode.el (treesit-node-end): De...
02aba20d52 Update to Transient v0.3.7-216-gfe40342
d7010d64b2 Add declaration_list to c-ts-common-indent-type-regexp-alist
19480aa30e Typescript-ts-mode: Add switch case handling
dfc850ca02 Fix object initializer for csharp-mode (bug#61541)
fc4bfa76db Update to Org 9.6.1-34-geea8da
afbce8bb46 Improve tree-sitter indent anchor prev-adaptive-prefix (b...
2e6093b425 Adjust jsx indentation
c544df4fa3 Cleanup preproc indent for c-ts-mode (bug#61558)
d397f3d508 Add comment style toggle for c-ts-mode (bug#61550)
683961cd73 * lisp/simple.el (choose-completion): Check for completio...
1ac05eac74 rust-ts-mode--font-lock-settings: Avoid the explicit 'def...
b5bea14ca1 * lisp/progmodes/xref.el: Bump the version.

# Conflicts:
#	src/comp.c
2023-02-21 10:58:00 +01:00