]> git.eshelyaron.com Git - emacs.git/log
emacs.git
22 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Fri, 17 Feb 2023 11:09:58 +0000 (19:09 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

22 months agoImprove logging of Java exceptions
Po Lu [Fri, 17 Feb 2023 11:08:55 +0000 (19:08 +0800)]
Improve logging of Java exceptions

* src/android.c (android_exception_check): Print more detailed
information.

22 months agoFix crash on old versions of Android
Po Lu [Fri, 17 Feb 2023 11:02:23 +0000 (19:02 +0800)]
Fix crash on old versions of Android

* java/org/gnu/emacs/EmacsService.java (nameKeysym): Implement
stub on Android 3.0 and earlier.

22 months agoDefine 'display-time-time-and-date-indicator' face
Protesilaos Stavrou [Thu, 16 Feb 2023 09:05:53 +0000 (11:05 +0200)]
Define 'display-time-time-and-date-indicator' face

* etc/NEWS: Announce the new face for the 'display-time-format'.
* lisp/time.el (display-time-time-and-date-indicator): Define new face.
(display-time-string-forms): Use the new face. (Bug#61567)

22 months agoAdd handling of the C11 _Generic construct to C Mode
Alan Mackenzie [Fri, 17 Feb 2023 09:14:10 +0000 (09:14 +0000)]
Add handling of the C11 _Generic construct to C Mode

This fixes bug #61481.

* lisp/progmodes/cc-engine.el (c-guess-basic-syntax): Add a new CASE 6 for
_Generic.

* lisp/progmodes/cc-fonts.el (c-fontify-types-and-refs): Use `let*' rather
than `let'.
(c-get-fontification-context): Add the new result `generic', and add handling
to determine it.
(c-font-lock-declarations): Call c-font-lock-c11-generic-clause when needed.
(c-font-lock-c11-generic-clause): New function.

* lisp/progmodes/cc-langs.el (c-generic-kwds, c-generic-key): New lang
constants/variable.

22 months agoFix build and running on Android 2.2
Po Lu [Fri, 17 Feb 2023 08:27:00 +0000 (16:27 +0800)]
Fix build and running on Android 2.2

* INSTALL.android: Document that Android 2.2 is now supported,
with caveats.
* configure.ac (ANDROID_MIN_SDK, ANDROID_SDK_18_OR_EARLIER)
(SYSTEM_TYPE, ANDROID_STUBIFY, SIZEOF_LONG): Correctly detect
things missing on Android 2.2.
* java/Makefile.in (ANDROID_JAR, JARSIGNER_FLAGS):
* java/debug.sh (jdb, gdbserver, line):
* java/org/gnu/emacs/EmacsApplication.java (findDumpFile):
* java/org/gnu/emacs/EmacsService.java (onCreate):
* java/org/gnu/emacs/EmacsThread.java (EmacsThread, run): Run
parameter initialization on main thread.
* src/android-asset.h (struct android_asset_manager)
(struct android_asset, AAssetManager_fromJava, AAssetManager_open)
(AAsset_close, android_asset_create_stream)
(android_asset_read_internal, AAsset_openFileDescriptor)
(AAsset_getLength, AAsset_getBuffer, AAsset_read): New file.
* src/android.c (android_user_full_name, android_hack_asset_fd)
(android_check_compressed_file): Implement for Android 2.2.
* src/process.c (Fprocess_send_eof): Don't call tcdrain if
unavailable.
* src/sfntfont-android.c (system_font_directories): Fix compiler
warning.
* src/sfntfont.c (sfntfont_read_cmap): Correctly test rc of
emacs_open.
* src/textconv.c (handle_pending_conversion_events_1): Mark
buffer UNINIT.

22 months agoMerge from origin/emacs-29
Stefan Kangas [Fri, 17 Feb 2023 05:30:17 +0000 (06:30 +0100)]
Merge from origin/emacs-29

f1f571e72ae Add electric indent for preproc directives
83af806ab7c Rename 'emacs-news-toggle-tag' to 'emacs-news-cycle-tag'
5bc88b3b175 Add menu to news-mode
40f4bc4e0aa ; Avoid installing VC package dependencies multiple times
1c9d81a2b42 Attempt to recognise if a VC package has no Elisp files

22 months agoAdd electric indent for preproc directives
Theodor Thornhill [Wed, 15 Feb 2023 20:05:37 +0000 (21:05 +0100)]
Add electric indent for preproc directives

It looks like there are few if no other cases where we get this
particular error in the AST than with insertion of '#'.

Consider:

```
int
main()
{
  |
}
```

If we only add '#' the AST yields (ERROR (ERROR)), which we can
exploit to hook onto electric indent.  The end result should be the
hashtag anchored to column 0.

* lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-styles): New rule.
(c-ts-base-mode): Add # to electric-indent-chars.

22 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Thu, 16 Feb 2023 15:57:21 +0000 (23:57 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

22 months agoUpdate Android port
Po Lu [Thu, 16 Feb 2023 15:57:01 +0000 (23:57 +0800)]
Update Android port

* doc/emacs/android.texi (Android Fonts):
* doc/emacs/input.texi (On-Screen Keyboards):
* doc/lispref/commands.texi (Misc Events): Update documentation.
* java/org/gnu/emacs/EmacsInputConnection.java (setSelection):
New function.
* java/org/gnu/emacs/EmacsSurfaceView.java (EmacsSurfaceView)
(reconfigureFrontBuffer): Make bitmap references weak
references.
* java/org/gnu/emacs/EmacsView.java (handleDirtyBitmap): Don't
clear surfaceView bitmap.
* lisp/comint.el (comint-mode):
* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Improve detection of CJK fonts.
* lisp/isearch.el (set-text-conversion-style): New variable.
(isearch-mode, isearch-done): Save and restore the text
conversion style.
* lisp/minibuffer.el (minibuffer-mode): Set an appropriate text
conversion style.
* lisp/simple.el (analyze-text-conversion): Run
post-self-insert-hook properly.
* lisp/subr.el (read-char-from-minibuffer): Disable text
conversion when reading character.
* src/androidterm.c (show_back_buffer): Don't check that F is
not garbaged.
(android_update_selection, android_reset_conversion): Use the
ephemeral last point and handle text conversion being disabled.
* src/buffer.c (syms_of_buffer): Convert old style DEFVAR.
* src/keyboard.c (kbd_buffer_get_event): Handle text conversion
first.
* src/lisp.h: Update prototypes.
* src/lread.c (read_filtered_event): Temporarily disable text
conversion.
* src/sfnt.c (sfnt_decompose_glyph_1, sfnt_decompose_glyph_2):
New functions.
(sfnt_decompose_glyph, sfnt_decompose_instructed_outline):
Refactor contour decomposition to those two functions.
(main): Update tests.
* src/sfntfont-android.c (system_font_directories): Add empty
field.
(Fandroid_enumerate_fonts, init_sfntfont_android): Enumerate
fonts in a user fonts directory.
* src/sfntfont.c (struct sfnt_font_desc): New field
`num_glyphs'.
(sfnt_enum_font_1): Set num_glyphs and avoid duplicate fonts.
(sfntfont_glyph_valid): New function.
(sfntfont_lookup_char, sfntfont_list_1): Make sure glyphs found
are valid.

* src/textconv.c (sync_overlay, really_commit_text)
(really_set_composing_text, really_set_composing_region)
(really_delete_surrounding_text, really_set_point_and_mark)
(handle_pending_conversion_events_1)
(handle_pending_conversion_events, conversion_disabled_p)
(disable_text_conversion, resume_text_conversion)
(Fset_text_conversion_style, syms_of_textconv): Update to
respect new options.
* src/textconv.h:
* src/window.h (GCALIGNED_STRUCT): New field
`ephemeral_last_point'.
* src/xdisp.c (mark_window_display_accurate_1): Set it.

22 months agoRename 'emacs-news-toggle-tag' to 'emacs-news-cycle-tag'
Robert Pluim [Thu, 16 Feb 2023 12:04:53 +0000 (13:04 +0100)]
Rename 'emacs-news-toggle-tag' to 'emacs-news-cycle-tag'

* lisp/textmodes/emacs-news-mode.el (emacs-news-cycle-tag): Renamed
from 'emacs-news-toggle-tag'.
(emacs-news-mode-map, emacs-news-mode-menu): Use new name.
* test/lisp/textmodes/emacs-news-mode-resources/cycle-tag.erts:
Renamed from "toggle-tag.erts".
* test/lisp/textmodes/emacs-news-mode-tests.el (emacs-news-cycle-tag):
Rename test from 'emacs-news-toggle-tag', and call
'emacs-news-cycle-tag' with new resource file name.

22 months agoAdd menu to news-mode
Robert Pluim [Thu, 16 Feb 2023 09:40:40 +0000 (10:40 +0100)]
Add menu to news-mode

* lisp/textmodes/emacs-news-mode.el (emacs-news-mode-map): Add binding
for 'emacs-news-delete-temporary-markers'.
(emacs-news-mode-menu): Add menu for common actions.

22 months ago; Avoid installing VC package dependencies multiple times
Philip Kaludercic [Thu, 16 Feb 2023 10:38:51 +0000 (11:38 +0100)]
; Avoid installing VC package dependencies multiple times

* lisp/emacs-lisp/package-vc.el (package-vc-install-dependencies):
Check if two package names are eq, instead checking the structural
equality of package-desc objects.

22 months agoAttempt to recognise if a VC package has no Elisp files
Philip Kaludercic [Thu, 16 Feb 2023 10:11:23 +0000 (11:11 +0100)]
Attempt to recognise if a VC package has no Elisp files

* lisp/emacs-lisp/package-vc.el (package-vc-non-code-file-names): Add
new variable used to avoid false-positives.
(package-vc--unpack): Recursively search for .el files excluding the
ones listed in 'package-vc-non-code-file-names', offering to abort the
installation if none are found.

22 months agoFix test errors when run with fancy charset (bug#61534)
Mattias Engdegård [Thu, 16 Feb 2023 09:03:30 +0000 (10:03 +0100)]
Fix test errors when run with fancy charset (bug#61534)

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--unescaped-char-literals, test-suppression):
Bind `text-quoting-style` to `grave` around tests to force
generation of ASCII quotes.
* test/src/lread-tests.el (lread-tests--unescaped-char-literals):
Subject the reference string to the same text styling as that
under scrutiny.

22 months agoMerge from origin/emacs-29
Stefan Kangas [Thu, 16 Feb 2023 05:30:22 +0000 (06:30 +0100)]
Merge from origin/emacs-29

2550e8bb0b0 Fix mule-tests under en_US.UTF-8 locale
32795309939 Move block closer above declaration_list rule (bug#61531)
b18754bb179 Minor improvements in c-ts-mode and docs
3c6b726a7b4 Add super node as a keyword
1917c51fe68 ; Prevent ERC-induced false positive in JUnit report
b16965ef7e6 Delete perplexing paragraph from Gnus manual
43c62a4732d ; Fix typo

23 months agoAllow unloading Eshell
Jim Porter [Mon, 13 Feb 2023 07:25:59 +0000 (23:25 -0800)]
Allow unloading Eshell

* lisp/eshell/em-extpipe.el (eshell-extpipe):
* lisp/eshell/esh-opt.el (eshell-opt): New groups.  Eshell uses these
to identify modules to unload.

* lisp/eshell/em-hist.el (eshell-hist-unload-hook):
* lisp/eshell/em-ls.el (eshell-ls-unload-hook):
* lisp/eshell/em-smart.el (eshell-smart-unload-hook):
* lisp/eshell/eshell.el (eshell-unload-hook): Make obsolete and move
to...

* lisp/eshell/em-smart.el (em-smart-unload-function):
* lisp/eshell/em-hist.el (em-hist-unload-function):
* lisp/eshell/em-ls.el (em-ls-unload-function):
* lisp/eshell/eshell.el (eshell-unload-function): ... these.

* lisp/eshell/esh-mode.el (eshell-mode-unload-hook):
* lisp/eshell/esh-module.el (eshell-module-unload-hook): Make
obsolete.

* lisp/eshell/em-ls (eshell-ls-enable-in-dired,
eshell-ls-disable-in-dired): New functions...
(eshell-ls-use-in-dired): ... use them.

* lisp/eshell/esh-module.el (eshell-module--feature-name,
eshell-unload-modules): New functions.
(eshell-unload-extension-modules): Use 'eshell-unload-modules'.

* lisp/eshell/eshell.el (eshell-unload-all-modules): Remove.

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

* doc/misc/eshell.texi (Bugs and ideas): Remove item about unloading
Eshell not working.

* etc/NEWS: Announce this change (bug#61501).

23 months ago; Don't require 'eshell' in other Eshell files
Jim Porter [Mon, 13 Feb 2023 07:25:40 +0000 (23:25 -0800)]
; Don't require 'eshell' in other Eshell files

This isn't necessary and just makes unloading Eshell harder.

* lisp/eshell/em-banner.el:
* lisp/eshell/em-basic.el:
* lisp/eshell/em-cmpl.el:
* lisp/eshell/em-glob.el:
* lisp/eshell/em-prompt.el:
* lisp/eshell/em-rebind.el:
* lisp/eshell/em-smart.el:
* lisp/eshell/em-term.el:
* lisp/eshell/em-tramp.el:
* lisp/eshell/em-xtra.el:
Stop requiring 'eshell', and instead require specific subcomponents.

* lisp/eshell/em-hist.el: Stop requiring 'eshell' and 'em-pred'
(extension modules shouldn't require each other so they can be
independent).
(eshell-hist-parse-modifier): Ensure this can only be called when
'em-pred' is in use, and declare the relevant function.

* lisp/eshell/eshell.el (eshell-non-interactive-p): Move from here...
* lisp/eshell/esh-mode.el (eshell-non-interactive-p): ... to here.

23 months agoFix mule-tests under en_US.UTF-8 locale
Eli Zaretskii [Wed, 15 Feb 2023 19:00:54 +0000 (21:00 +0200)]
Fix mule-tests under en_US.UTF-8 locale

* test/lisp/international/mule-tests.el (sgml-html-meta-utf-8):
Accept also utf-8-unix/dos/whatever.  (Bug#61534)

* lisp/international/mule.el
(sgml-html-meta-auto-coding-function): Fix comparison when
buffer-file-coding-system is of type 'charset'.

23 months agoMove block closer above declaration_list rule (bug#61531)
Theodor Thornhill [Wed, 15 Feb 2023 18:21:50 +0000 (19:21 +0100)]
Move block closer above declaration_list rule (bug#61531)

* lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-styles): Move rule
above the previous rule.

23 months agoMinor improvements in c-ts-mode and docs
Eli Zaretskii [Wed, 15 Feb 2023 18:01:40 +0000 (20:01 +0200)]
Minor improvements in c-ts-mode and docs

* lisp/progmodes/c-ts-mode.el (c-ts-base-mode-map): Add a binding
for comment-region.

* doc/emacs/programs.texi (C Indent): Mention "C-u TAB".

23 months agoAdd super node as a keyword
Theodor Thornhill [Wed, 15 Feb 2023 17:54:46 +0000 (18:54 +0100)]
Add super node as a keyword

* lisp/progmodes/java-ts-mode.el
(java-ts-mode--font-lock-settings): Add new node.

23 months ago; Prevent ERC-induced false positive in JUnit report
F. Jason Park [Tue, 14 Feb 2023 15:29:25 +0000 (07:29 -0800)]
; Prevent ERC-induced false positive in JUnit report

* test/lisp/erc/erc-scenarios-internal.el: Mimic other test files,
like perl-mode-tests.el, in setting `ert-load-file-name' globally.
This file formerly caused a false positive in the error detection
logic of `ert-write-junit-test-summary-report'.  It affected all
scheduled pipelines, including those for the release branch, Emacs 29.

23 months agoDelete perplexing paragraph from Gnus manual
Stefan Kangas [Wed, 15 Feb 2023 15:16:00 +0000 (16:16 +0100)]
Delete perplexing paragraph from Gnus manual

* doc/misc/gnus.texi (Exiting Gnus): Delete a confusing paragraph,
that may or may not have been intended as a joke.  (Bug#61325)

23 months agoDescribe the effect of 'guess' for 'ido-use-filename-at-point'
Robert Pluim [Wed, 15 Feb 2023 15:05:50 +0000 (16:05 +0100)]
Describe the effect of 'guess' for 'ido-use-filename-at-point'

* ido.el (ido-use-filename-at-point): Document 'guess' value better.

23 months agoUpdate Android port
Po Lu [Wed, 15 Feb 2023 14:51:44 +0000 (22:51 +0800)]
Update Android port

* doc/emacs/input.texi (On-Screen Keyboards):
* doc/lispref/commands.texi (Misc Events): Improve documentation
of text conversion stuff.
* java/org/gnu/emacs/EmacsInputConnection.java (beginBatchEdit)
(endBatchEdit, commitCompletion, commitText, deleteSurroundingText)
(finishComposingText, getSelectedText, getTextAfterCursor)
(EmacsInputConnection, setComposingRegion, performEditorAction)
(getExtractedText): Condition debug code on DEBUG_IC.
* java/org/gnu/emacs/EmacsService.java (EmacsService, updateIC):
Likewise.
* lisp/bindings.el (global-map):
* lisp/electric.el (global-map): Make `text-conversion'
`analyze-text-conversion'.
* lisp/progmodes/prog-mode.el (prog-mode): Enable text
conversion in input methods.
* lisp/simple.el (analyze-text-conversion): New function.
* lisp/textmodes/text-mode.el (text-conversion-style)
(text-mode): Likewise.
* src/androidterm.c (android_handle_ime_event): Handle
set_point_and_mark.
(android_sync_edit): Give Emacs 100 ms instead.
(android_perform_conversion_query): Skip the active region, not
the conversion region.
(getSelectedText): Implement properly.
(android_update_selection): Expose mark to input methods.
(android_reset_conversion): Handle `text-conversion-style'.
* src/buffer.c (init_buffer_once, syms_of_buffer): Add buffer
local variable `text-conversion-style'.
* src/buffer.h (struct buffer, bset_text_conversion_style): New
fields.
* src/emacs.c (android_emacs_init): Call syms_of_textconv.
* src/frame.h (enum text_conversion_operation): Rename
TEXTCONV_SET_POINT.
* src/lisp.h: Export syms_of_textconv.

* src/marker.c (set_marker_internal): Force redisplay when the
mark is set and the buffer is visible on builds that use text
conversion.  Explain why.

* src/textconv.c (copy_buffer): Fix copying past gap.
(get_mark): New function.
(textconv_query): Implement new flag.
(sync_overlay): New function.  Display conversion text in an
overlay.
(record_buffer_change, really_commit_text)
(really_set_composing_text, really_set_composing_region)
(really_delete_surrounding_text, really_set_point)
(handle_pending_conversion_events_1, decrement_inside)
(handle_pending_conversion_events, textconv_set_point)
(get_extracted_text, register_textconv_interface): Various fixes
and improvements.

* src/textconv.h (struct textconv_interface): Update
documentation.
* src/window.h (GCALIGNED_STRUCT): New field `prev_mark'.
* src/xdisp.c (mark_window_display_accurate_1): Handle
prev_mark.

23 months agoNew option 'diff-ignore-whitespace-switches'
Robert Pluim [Wed, 15 Feb 2023 13:31:43 +0000 (14:31 +0100)]
New option 'diff-ignore-whitespace-switches'

Allows specifying the switches to use when ignoring whitespace for
those of us who don't like "-b".

* lisp/vc/diff-mode.el (diff-ignore-whitespace-switches): New defcustom.
(diff-refresh-hunk): Use it when ignoring whitespace.
* doc/emacs/files.texi (Diff Mode): Describe the new option.
* etc/NEWS: Announce the new option.

23 months ago; Fix typo
Stefan Kangas [Wed, 15 Feb 2023 14:21:43 +0000 (15:21 +0100)]
; Fix typo

23 months ago; Simplify eclipse calculation in calendar/lunar.el
Ulrich Müller [Tue, 14 Feb 2023 18:51:37 +0000 (19:51 +0100)]
; Simplify eclipse calculation in calendar/lunar.el

* lisp/calendar/lunar.el (eclipse-check): Do the calculation in
degrees, and simplify.

23 months ago; Merge from origin/emacs-29
Stefan Kangas [Wed, 15 Feb 2023 13:41:04 +0000 (14:41 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

fdac69b45e6 ; Auto-commit of loaddefs files.

23 months agoMerge from origin/emacs-29
Stefan Kangas [Wed, 15 Feb 2023 13:41:04 +0000 (14:41 +0100)]
Merge from origin/emacs-29

7678b7e46f2 Eglot: check server capability before sending didSave (bu...
a3a1ef7bd5e Fix rust-ts-mode type and module highlighting (Bug#61302)
477aa047ee7 rust-ts-mode: Highlight variable reassignments
5206a551c16 Improve backward compatibility of save-restriction
accd88d5545 Don't indent template_string contents (bug#61503)
d97a3839967 csharp-ts-mode: fontify compiler directives (bug#61512)
420d2cae846 Update to Transient v0.3.7-209-gdab1dfa
a3751b5d0c1 ; Raise an error if a VC package checkout is empty
6a32ba8b69c ; Fix the installation of dependencies for VC packages
4eac80fcc39 ; Prepare to update ERC version to 5.5
4f099a72173 ; Remove failing erc-reuse-buffers test
4bb27a5ca93 ; Minor docs copyedits
13bcff3da5c Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
3d572ae0d50 Rename with/without-narrowing to with/without-restriction
d806b0e33cf * lisp/repeat.el: Rename internal function and variable (...
dd8b720ee74 ; * etc/NEWS: Fix typos.
909bd04cf5f ; * lisp/calendar/lunar.el: Add comments. (bug#61460)
10f2aedea9a ; * lisp/progmodes/c-ts-mode.el (c-ts-base-mode): delete ...
865758130a1 ; * admin/git-bisect-start: Update failing commits
b948d0d7efe Merge branch 'scratch/fix-locked-narrowing'
dcb2379a463 Minor improvements to labeled narrowing
cc30422825a Fix spurious display of eclipses in Calendar
f2114e8d89f Fix indentation for closing bracket in c-ts-mode (bug#61398)
f49caaa8925 ; * src/pdumper.c (dump_buffer): Update hash.
fe2ea5ddd8d Update to Org 9.6.1-31-gaf1bb1
8280d721d7c * src/.gdbinit (nextcons): Amend $.u.cdr to $.u.s.u.cdr (...
eb2b0931cf1 Add lambda_expression to c-ts-common-indent-type-regexp-a...
2da05876edb ; Use the right name when specifying VC packages
d4fc7012978 Tolerate missing elpa-packages.eld files
8bc1b7d0b27 Avoid warning about 'load-path' in non-interactive sessions
3d17aee13d9 ; Fix installation of dependencies for VC packages
86ca7df6a34 ; Mention Hunspell private-dictionary misfeature in doc s...
7287b7b53a1 Support webkit2gtk-4.1
048a2dabfc4 ; Fix typo
8f3091defb3 ; Fix typo in buffer.h
4da398d8b57 ; Fix typos
074008ee2d2 ; Fix doc strings in lisp/image/ directory
2d1e43436da ; Improve documentation of hash functions.
900f7e07275 ; Remove extraneous local variables from image-dired-*.el...
4297039bd13 Save and restore the absence of narrowing locks
4f053afe8e7 bug-reference: prevent match-data clobbering (bug#61395)
10af9fbcad1 ; * admin/notes/tree-sitter/starter-guide: Typos.
9ac242ce93d ; Fix recent changes in treesit docs
f5789aefc2e Rename LIMIT to DEPTH in tree-sitter functions (bug#61231)
b39821fdcef ; Fix incorrect function name in treesit manual
51901736965 Add 'live' property to treesit-node-check (bug#61235)
56960a6558b Update to Transient v0.3.7-205-gb8ad0da
68a6b364d1c Fix 'rmail-summary-output'
67c6ec25590 lisp-mode: add docstring recognition for more common lisp...
417a8ed8b05 ; Improve discoverability of empty file names handling
e47cf6ca15a Update to Transient v0.3.7-204-gecff8c2
b04cce02ff4 Fix Scala entry in Eglot's DB of LSP servers
973c1d24c6a ruby-ts-mode: Also don't reindent 'identifier' when insid...
a5651c0c403 ruby-ts-mode: Fix indentation inside empty if/unless/case...
2956e54b1dd Add an extensive test for labeled (locked) narrowing
79ce185ad13 Update the documentation about labeled (locked) narrowing
a6cd4553d48 Rename two long line optimizations variables
0d73e4aa261 Add specific symbols for narrowings
d8438e2bb44 Add 'without-narrowing' macro
97314447e60 Make 'narrowing-lock' and 'narrowing-unlock' internal
a4aa32bdfff Fix 'save-restriction' for narrowing locks

# Conflicts:
# etc/NEWS

23 months agoTeach 'diff-ignore-whitespace-hunk' how to regenerate all hunks
Robert Pluim [Tue, 10 Jan 2023 18:55:50 +0000 (19:55 +0100)]
Teach 'diff-ignore-whitespace-hunk' how to regenerate all hunks

This implements the request from Bug#58516.

* lisp/vc/diff-mode.el (diff--ignore-whitespace-all-hunks): New
function.  Iterate over all hunks, regenerate ignoring whitespace
changes.
(diff-ignore-whitespace-hunk): Call `diff--ignore-whitespace-all-hunks'
when called with a prefix arg.

* doc/emacs/files.texi (Diff Mode): Describe new functionality.
* etc/NEWS: Announce the change.

23 months ago; * lisp/international/emoji.el (emoji--narrow): move, avoid warning
Mattias Engdegård [Wed, 15 Feb 2023 11:21:44 +0000 (12:21 +0100)]
; * lisp/international/emoji.el (emoji--narrow): move, avoid warning

23 months agoAdd some `pure` and `side-effect-free` declarations
Mattias Engdegård [Wed, 15 Feb 2023 11:01:25 +0000 (12:01 +0100)]
Add some `pure` and `side-effect-free` declarations

* lisp/subr.el (string-to-list, string-to-vector, string-or-null-p)
(booleanp, special-form-p, plistp, macrop, compiled-function-p)
(flatten-tree):
* lisp/emacs-lisp/subr-x.el (string-join, string-truncate-left)
(string-blank-p, string-remove-prefix, string-remove-suffix)
(string-pad, string-chop-newline):
Declare functions pure, side-effect-free, and/or error-free.

23 months agoMake debug.sh detect adb running as root
Po Lu [Wed, 15 Feb 2023 05:39:47 +0000 (13:39 +0800)]
Make debug.sh detect adb running as root

* java/debug.sh: Run gdbserver directly if possible.

23 months agoFix small bugs
Po Lu [Wed, 15 Feb 2023 05:38:53 +0000 (13:38 +0800)]
Fix small bugs

* src/androidterm.c (android_handle_ime_event): Pacify compiler
warnings.
* src/textconv.c (really_set_composing_text)
(handle_pending_conversion_events, get_extracted_text): Fix
reentrancy problems and uses of uninitialized values.

23 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Wed, 15 Feb 2023 04:24:22 +0000 (12:24 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

23 months agoUpdate Android port
Po Lu [Wed, 15 Feb 2023 04:23:03 +0000 (12:23 +0800)]
Update Android port

* configure.ac (HAVE_TEXT_CONVERSION): Define on Android.
* doc/emacs/input.texi (On-Screen Keyboards): Document ``text
conversion'' slightly.
* doc/lispref/commands.texi (Misc Events): Document new
`text-conversion' event.
* java/org/gnu/emacs/EmacsContextMenu.java (display): Use
`syncRunnable'.
* java/org/gnu/emacs/EmacsDialog.java (display): Likewise.
* java/org/gnu/emacs/EmacsEditable.java: Delete file.
* java/org/gnu/emacs/EmacsInputConnection.java
(EmacsInputConnection): Reimplement from scratch.
* java/org/gnu/emacs/EmacsNative.java (EmacsNative): Add new
functions.
* java/org/gnu/emacs/EmacsService.java (EmacsService, getEmacsView)
(getLocationOnScreen, sync, getClipboardManager, restartEmacs):
Use syncRunnable.
(syncRunnable): New function.
(updateIC, resetIC): New functions.

* java/org/gnu/emacs/EmacsView.java (EmacsView): New field
`inputConnection' and `icMode'.
(onCreateInputConnection): Update accordingly.
(setICMode, getICMode): New functions.

* lisp/bindings.el (global-map): Ignore text conversion events.
* src/alloc.c (mark_frame): Mark text conversion data.
* src/android.c (struct android_emacs_service): New fields
`update_ic' and `reset_ic'.
(event_serial): Export.
(android_query_sem): New function.
(android_init_events): Initialize new semaphore.
(android_write_event): Export.
(android_select): Check for UI thread code.
(setEmacsParams, android_init_emacs_service): Initialize new
methods.
(android_check_query, android_begin_query, android_end_query)
(android_run_in_emacs_thread):
(android_update_ic, android_reset_ic): New functions for
managing synchronous queries from one thread to another.

* src/android.h: Export new functions.
* src/androidgui.h (enum android_event_type): Add input method
events.
(enum android_ime_operation, struct android_ime_event)
(union android_event, enum android_ic_mode): New structs and
enums.

* src/androidterm.c (android_window_to_frame): Allow DPYINFO to
be NULL.
(android_decode_utf16, android_handle_ime_event)
(handle_one_android_event, android_sync_edit)
(android_copy_java_string, beginBatchEdit, endBatchEdit)
(commitCompletion, deleteSurroundingText, finishComposingText)
(getSelectedtext, getTextAfterCursor, getTextBeforeCursor)
(setComposingText, setComposingRegion, setSelection, getSelection)
(performEditorAction, getExtractedText): New functions.
(struct android_conversion_query_context):
(android_perform_conversion_query):
(android_text_to_string):
(struct android_get_selection_context):
(android_get_selection):
(struct android_get_extracted_text_context):
(android_get_extracted_text):
(struct android_extracted_text_request_class):
(struct android_extracted_text_class):
(android_update_selection):
(android_reset_conversion):
(android_set_point):
(android_compose_region_changed):
(android_notify_conversion):
(text_conversion_interface): New functions and structures.
(android_term_init): Initialize text conversion.

* src/coding.c (syms_of_coding): Define Qutf_16le on Android.
* src/frame.c (make_frame): Clear conversion data.
(delete_frame): Reset conversion state.

* src/frame.h (enum text_conversion_operation)
(struct text_conversion_action, struct text_conversion_state)
(GCALIGNED_STRUCT): Update structures.
* src/keyboard.c (read_char, readable_events, kbd_buffer_get_event)
(syms_of_keyboard): Handle text conversion events.
* src/lisp.h:
* src/process.c: Fix includes.

* src/textconv.c (enum textconv_batch_edit_flags, textconv_query)
(reset_frame_state, detect_conversion_events)
(restore_selected_window, really_commit_text)
(really_finish_composing_text, really_set_composing_text)
(really_set_composing_region, really_delete_surrounding_text)
(really_set_point, complete_edit)
(handle_pending_conversion_events_1)
(handle_pending_conversion_events, start_batch_edit)
(end_batch_edit, commit_text, finish_composing_text)
(set_composing_text, set_composing_region, textconv_set_point)
(delete_surrounding_text, get_extracted_text)
(report_selected_window_change, report_point_change)
(register_texconv_interface): New functions.

* src/textconv.h (struct textconv_interface)
(TEXTCONV_SKIP_CONVERSION_REGION): Update prototype.
* src/xdisp.c (mark_window_display_accurate_1):
* src/xfns.c (xic_string_conversion_callback):
* src/xterm.c (init_xterm): Adjust accordingly.

23 months ago; Auto-commit of loaddefs files.
Stefan Kangas [Wed, 15 Feb 2023 04:08:07 +0000 (05:08 +0100)]
; Auto-commit of loaddefs files.

23 months ago; Auto-commit of loaddefs files.
Stefan Kangas [Wed, 15 Feb 2023 04:08:01 +0000 (05:08 +0100)]
; Auto-commit of loaddefs files.

23 months agoEglot: check server capability before sending didSave (bug#61478)
~kby [Tue, 14 Feb 2023 23:25:05 +0000 (23:25 +0000)]
Eglot: check server capability before sending didSave (bug#61478)

* lisp/progmodes/eglot.el (eglot--signal-textDocument/didSave): check
server capability.

Copyright-paperwork-exempt: Yes

23 months agoFix rust-ts-mode type and module highlighting (Bug#61302)
Randy Taylor [Thu, 9 Feb 2023 02:43:04 +0000 (21:43 -0500)]
Fix rust-ts-mode type and module highlighting (Bug#61302)

* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--font-lock-settings):
Specify import queries to avoid clashing with scoped identifiers in
the code.  Highlight attributes with font-lock-preprocessor-face.

23 months agorust-ts-mode: Highlight variable reassignments
Dmitry Gutov [Tue, 14 Feb 2023 17:29:30 +0000 (19:29 +0200)]
rust-ts-mode: Highlight variable reassignments

* lisp/progmodes/rust-ts-mode.el (rust-ts-mode):
New treesit font-lock feature: 'assignment' (bug#61302).
(rust-ts-mode--fontify-pattern): Remove the node lookup step.
(rust-ts-mode--font-lock-settings): Update variable declaration
queries to match the 'pattern' child node right away.  Add
highlights for 'assignment.

23 months agoImprove backward compatibility of save-restriction
Gregory Heytings [Tue, 14 Feb 2023 20:22:50 +0000 (20:22 +0000)]
Improve backward compatibility of save-restriction

* src/editfns.c (save_restriction_save_1): Renamed from
'save_restrictions_save'.  Make it static.
(save_restriction_restore_1): Renamed from
'save_restriction_restore'.  Make it static.
(save_restriction_restore): New function, combining
'save_restriction_save_1' and 'narrowing_locks_save'.
(save_restriction_save): New function, combining
'save_restriction_restore_1' and 'narrowing_locks_restore'.
(Fsave_restriction): Restore the previous code.
(narrowing_locks_save, narrowing_locks_restore): Make them static.

* src/lisp.h: Remove two functions that are not externally visible
anymore.

* src/comp.c (helper_save_restriction): Restore the previous code.

* src/bytecode.c (exec_byte_code): Restore the previous code.

* lisp/emacs-lisp/bytecomp.el (byte-compile-save-restriction):
Decrement unbinding count.

23 months agoDon't indent template_string contents (bug#61503)
Theodor Thornhill [Tue, 14 Feb 2023 19:53:55 +0000 (20:53 +0100)]
Don't indent template_string contents (bug#61503)

* lisp/progmodes/js.el (js--treesit-indent-rules): Add new rule.
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--indent-rules): Add new rule.

23 months agocsharp-ts-mode: fontify compiler directives (bug#61512)
Jostein Kjønigsen [Tue, 14 Feb 2023 19:04:19 +0000 (20:04 +0100)]
csharp-ts-mode: fontify compiler directives (bug#61512)

lisp/progmodes/csharp-mode.el: Add tree-sitter-queries for known C#
compiler-directives.

23 months agoRewrite emoji's usage of transient
Jonas Bernoulli [Wed, 1 Feb 2023 19:25:16 +0000 (20:25 +0100)]
Rewrite emoji's usage of transient

* lisp/international/emoji.el:
(emoji--done-derived): Remove variable.
(emoji-insert, emoji-recent, emoji-search, emoji-list-select):
Define using 'transient-define-prefix'.  Use a base suffix group
whose value is calculated dynamically.
(emoji--setup-prefix, emoji--setup-suffixes, emoji-group-description):
New functions used to dynamically calculate suffixes.
(emoji--narrow): New suffix class, used to pass state to recursive,
narrowed invocations of the prefix command the user initially invoked.
(emoji-insert-glyph): New suffix command that is used for all glyphs
that have no derivations.  Previously a separate command was define
for each glyph.
(emoji--fontify-glyph): Replace 'inhibit-derived' argument with
'done-derived' argument.
(emoji--define-transient): Remove function.
(emoji--layout): New function, replacing 'emoji--define-transient'.
Return the suffixes in 'define-transient-prefix' format.  Unlike
the replaced function, do not define any new commands, instead use
either the current prefix command or 'emoji-insert-glyph'.
(emoji--recent-transient): Remove function.
(emoji--char-sequence): New function.
(emoji--add-recent): Remove all text properties from glyph.
(emoji--choose-emoji): Remove function.

23 months agoUpdate to Transient v0.3.7-209-gdab1dfa
Jonas Bernoulli [Tue, 14 Feb 2023 19:40:55 +0000 (20:40 +0100)]
Update to Transient v0.3.7-209-gdab1dfa

23 months ago; Raise an error if a VC package checkout is empty
Philip Kaludercic [Tue, 14 Feb 2023 18:49:51 +0000 (19:49 +0100)]
; Raise an error if a VC package checkout is empty

* lisp/emacs-lisp/package-vc.el (package-vc--unpack): Check if PKG-DIR
is empty before proceeding with the installation.

23 months ago; Fix the installation of dependencies for VC packages
Philip Kaludercic [Tue, 14 Feb 2023 18:48:01 +0000 (19:48 +0100)]
; Fix the installation of dependencies for VC packages

* lisp/emacs-lisp/package-vc.el (package-vc-install-dependencies):
Work with package-desc objects instead of (PACKAGE-NAME VERSION)
pairs.

23 months agoTramp cleanup
Michael Albinus [Tue, 14 Feb 2023 17:51:44 +0000 (18:51 +0100)]
Tramp cleanup

* lisp/net/tramp.el:
* lisp/net/tramp-integration.el:
* lisp/net/tramp-sh.el: Use `string-join'.

* test/lisp/net/tramp-tests.el: Use `string-join'.

23 months ago; Prepare to update ERC version to 5.5
F. Jason Park [Wed, 30 Nov 2022 06:53:44 +0000 (22:53 -0800)]
; Prepare to update ERC version to 5.5

* doc/misc/erc.texi: Mention in various places that ERC is also
available from GNU ELPA.
* etc/ERC-NEWS: Mention Compat dependency and shorten title for
auth-source section.
* lisp/erc/erc-backend.el: (erc-server-reconnect-function,
erc-tags-format): Update package version to 5.5.
(erc--parse-message-tags): Downcase warning "type" to remain
consistent with all other ERC warnings.
* lisp/erc/erc-button.el: (erc-button-alist): Change package-version
to 5.5.
* lisp/erc/erc-match.el (erc-match-quote-when-adding): Update package
version to 5.5.
* lisp/erc/erc-sasl.el: Mention actual info node in Commentary.
(erc-sasl): Update package version to 5.5.
(erc-sasl-password): Reword doc string.
(erc-sasl-auth-source-function): Capitalize "info" in doc string.
* lisp/erc/erc-services.el (erc-auth-source-services-function): Update
package version to 5.5.  Capitalize "info" in doc string.  Change
choice type from const to function-item.
* lisp/erc/erc.el (erc-password): Capitalize "info" in doc string.
(erc-inhibit-multiline-input, erc-ask-about-multiline-input,
erc-prompt-hidden, erc-hide-prompt, erc-unhide-query-prompt,
erc-join-buffer, erc-reconnect-display, erc-kill-server-hook,
erc-kill-channel-hook, erc-kill-buffer-hook,
erc-url-connect-function): Update package version to 5.5.
(erc-auth-source-server-function, erc-auth-source-join-function):
Update package version to 5.5.  Change choice type from const to
function-item.  Capitalize "info" in doc string.
(erc-tls): Capitalize "info" in doc string.

23 months ago; Remove failing erc-reuse-buffers test
F. Jason Park [Tue, 14 Feb 2023 15:47:06 +0000 (07:47 -0800)]
; Remove failing erc-reuse-buffers test

* test/lisp/erc/erc-scenarios-base-reuse-buffers.el
(erc-scenarios-base-reuse-buffers-server-buffers--enabled): Delete
test.

23 months agoFix recent LAP optimiser error
Mattias Engdegård [Tue, 14 Feb 2023 16:06:49 +0000 (17:06 +0100)]
Fix recent LAP optimiser error

* lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode):
Fix a flaw in the

  dup (varset|varbind|stack-set) discard -> (varset|varbind|stack-set)

rule: don't match stack-set(1) which is dealt with elsewhere, and
generalise to discard(N).

23 months ago; Fix typo in comment in mule-conf change
Robert Pluim [Tue, 14 Feb 2023 13:18:38 +0000 (14:18 +0100)]
; Fix typo in comment in mule-conf change

23 months ago* src/comp.c (Fcomp__compile_ctxt_to_file): Don't create output file twice
Andrea Corallo [Tue, 14 Feb 2023 11:34:48 +0000 (12:34 +0100)]
* src/comp.c (Fcomp__compile_ctxt_to_file): Don't create output file twice

23 months agoFix insert-file-contents on /proc files
Paul Eggert [Mon, 13 Feb 2023 20:32:11 +0000 (12:32 -0800)]
Fix insert-file-contents on /proc files

This should fix Bug#9800 (2011-10-19).
* src/fileio.c (Finsert_file_contents):
Do not trust st_size even on regular files, as the file might
be a Linux /proc file, or it might be growing.
Instead, always read to EOF when END is nil.

23 months agoFix src/fileio.c comment
Paul Eggert [Mon, 13 Feb 2023 16:53:52 +0000 (08:53 -0800)]
Fix src/fileio.c comment

* src/fileio.c (Finsert_file_contents): Fix comment.
Since the code relies on st_size, it’s limited to
regular files, not to seekable files.

23 months agoDon’t scan text twice to guess coding system
Paul Eggert [Mon, 13 Feb 2023 16:51:45 +0000 (08:51 -0800)]
Don’t scan text twice to guess coding system

* src/fileio.c (Finsert_file_contents): If the file shrank
below 4 KiB, don’t read duplicate text into READ_BUF.
This also removes a use of SEEK_END, which Linux /proc
file systems do not support (not that we should get here
with /proc).

23 months agoImprove insert-file-contents on non-regular files
Paul Eggert [Mon, 13 Feb 2023 01:52:46 +0000 (17:52 -0800)]
Improve insert-file-contents on non-regular files

* src/fileio.c (Finsert_file_contents):
If the file is not a regular file, check REPLACE and VISIT
before doing further syscalls that won’t matter in this case.

23 months agoImprove insert-file-contents checking
Paul Eggert [Mon, 13 Feb 2023 01:30:46 +0000 (17:30 -0800)]
Improve insert-file-contents checking

* src/fileio.c (Finsert_file_contents): Check BEG, END,
REPLACE for validity before launching into opening files etc.

23 months ago; Minor docs copyedits
Eli Zaretskii [Mon, 13 Feb 2023 18:37:15 +0000 (20:37 +0200)]
; Minor docs copyedits

* etc/NEWS: Add text about adapting to long-line optimizations.

* doc/lispref/positions.texi (Narrowing): Improve documentation of
labeled narrowing.

23 months agoMerge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29
Eli Zaretskii [Mon, 13 Feb 2023 18:12:32 +0000 (20:12 +0200)]
Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29

23 months agoRename with/without-narrowing to with/without-restriction
Eli Zaretskii [Mon, 13 Feb 2023 18:11:28 +0000 (20:11 +0200)]
Rename with/without-narrowing to with/without-restriction

* doc/lispref/commands.texi:
* doc/lispref/display.texi:
* doc/lispref/positions.texi:
* etc/NEWS:
* lisp/subr.el:
* src/buffer.c:
* src/editfns.c:
* src/keyboard.c:
* src/xdisp.c:
* test/src/buffer-tests.el: Rename with-narrowing and
without-narrowing to with-restriction and without-restriction.
Likewise with internal--with-narrowing and
internal--without-narrowing.  All callers and documentation
changed.

23 months ago; * etc/NEWS: Move treesit-related functions and variables to Lisp Changes.
Juri Linkov [Mon, 13 Feb 2023 17:53:05 +0000 (19:53 +0200)]
; * etc/NEWS: Move treesit-related functions and variables to Lisp Changes.

23 months ago* lisp/repeat.el: Rename internal function and variable (bug#60980)
Juri Linkov [Mon, 13 Feb 2023 17:46:22 +0000 (19:46 +0200)]
* lisp/repeat.el: Rename internal function and variable (bug#60980)

(repeat--transient-exitfun): Rename internal variable from
'repeat-exit-function'.
(repeat--clear-prev): Rename internal function from
'repeat--exit'.

23 months ago; Fix previous mule-conf change
Robert Pluim [Mon, 13 Feb 2023 17:40:55 +0000 (18:40 +0100)]
; Fix previous mule-conf change

23 months agoLAP optimiser: more stack reduction hoisting
Mattias Engdegård [Sun, 12 Feb 2023 11:33:27 +0000 (12:33 +0100)]
LAP optimiser: more stack reduction hoisting

Hoisting stack reduction ops allows them to coalesce and/or cancel out
pushing ops, and for useful operations to sink and combine, such as
not + goto-if-[not-]nil.

* lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode):
Add the rule

  UNARY discardN-preserve-tos --> discardN-preserve-tos UNARY

where UNARY pops and pushes one value.

Generalise the rule

  const discardN-preserve-tos --> discardN const

to any 0-ary op, not just const: varref, point, etc.

23 months ago; * etc/NEWS: Fix typos.
Michael Albinus [Mon, 13 Feb 2023 15:44:57 +0000 (16:44 +0100)]
; * etc/NEWS: Fix typos.

23 months agoAdd new user option password-colon-equivalents
Michael Albinus [Mon, 13 Feb 2023 14:51:48 +0000 (15:51 +0100)]
Add new user option password-colon-equivalents

* lisp/international/mule-conf.el (password-colon-equivalents):
New defcustom.

* lisp/comint.el (comint-password-prompt-regexp):
* lisp/eshell/esh-mode.el (eshell-password-prompt-regexp): Use it.

* lisp/net/tramp-compat.el (tramp-compat-password-colon-equivalents):
New variable.

* lisp/net/tramp.el (tramp-password-prompt-regexp): Use it.

23 months ago; * lisp/calendar/lunar.el: Add comments. (bug#61460)
Ulrich Müller [Mon, 13 Feb 2023 14:50:47 +0000 (15:50 +0100)]
; * lisp/calendar/lunar.el: Add comments. (bug#61460)

23 months ago; * lisp/progmodes/c-ts-mode.el (c-ts-base-mode): delete duplicate
Mattias Engdegård [Mon, 13 Feb 2023 13:53:48 +0000 (14:53 +0100)]
; * lisp/progmodes/c-ts-mode.el (c-ts-base-mode): delete duplicate

23 months ago; * admin/git-bisect-start: Update failing commits
Gregory Heytings [Mon, 13 Feb 2023 10:50:28 +0000 (11:50 +0100)]
; * admin/git-bisect-start: Update failing commits

23 months agoMerge branch 'scratch/fix-locked-narrowing'
Gregory Heytings [Mon, 13 Feb 2023 10:44:37 +0000 (11:44 +0100)]
Merge branch 'scratch/fix-locked-narrowing'

23 months agoMinor improvements to labeled narrowing
Gregory Heytings [Mon, 13 Feb 2023 10:23:39 +0000 (10:23 +0000)]
Minor improvements to labeled narrowing

* lisp/subr.el (internal--with-narrowing):
(internal--without-narrowing): Remove unnecessary 'progn'.

* etc/NEWS: Mention 'with-narrowing' in the entry about long
lines.

* doc/lispref/positions.texi (Narrowing): Fix typo.

* doc/lispref/display.texi (Auto Faces): Use @pxref.

* doc/lispref/commands.texi (Command Overview): Use @pxref.

23 months agoFix spurious display of eclipses in Calendar
Ulrich Müller [Sun, 12 Feb 2023 19:57:49 +0000 (20:57 +0100)]
Fix spurious display of eclipses in Calendar

* lisp/calendar/lunar.el (eclipse-check): Don't show an eclipse
unless the phase is new moon or full moon. (bug#61460)
* test/lisp/calendar/lunar-tests.el (lunar-test-eclipse-check)
(lunar-test-phase-list): Update tests.

23 months agoMerge from origin/emacs-29
Stefan Kangas [Mon, 13 Feb 2023 05:30:12 +0000 (06:30 +0100)]
Merge from origin/emacs-29

f2114e8d89f Fix indentation for closing bracket in c-ts-mode (bug#61398)
f49caaa8925 ; * src/pdumper.c (dump_buffer): Update hash.
fe2ea5ddd8d Update to Org 9.6.1-31-gaf1bb1

23 months ago; Merge from origin/emacs-29
Stefan Kangas [Mon, 13 Feb 2023 05:30:12 +0000 (06:30 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

8280d721d7c * src/.gdbinit (nextcons): Amend $.u.cdr to $.u.s.u.cdr (...

23 months agoMerge from origin/emacs-29
Stefan Kangas [Mon, 13 Feb 2023 05:30:12 +0000 (06:30 +0100)]
Merge from origin/emacs-29

eb2b0931cf1 Add lambda_expression to c-ts-common-indent-type-regexp-a...
2da05876edb ; Use the right name when specifying VC packages
d4fc7012978 Tolerate missing elpa-packages.eld files
8bc1b7d0b27 Avoid warning about 'load-path' in non-interactive sessions
3d17aee13d9 ; Fix installation of dependencies for VC packages
86ca7df6a34 ; Mention Hunspell private-dictionary misfeature in doc s...
7287b7b53a1 Support webkit2gtk-4.1
048a2dabfc4 ; Fix typo

23 months agoFix indentation for closing bracket in c-ts-mode (bug#61398)
Yuan Fu [Mon, 13 Feb 2023 03:49:47 +0000 (19:49 -0800)]
Fix indentation for closing bracket in c-ts-mode (bug#61398)

* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--indent-styles): Move the rule earlier.
(c-ts-base-mode): Add move block type.
* test/lisp/progmodes/c-ts-mode-resources/indent.erts: New tests.

23 months ago; * src/pdumper.c (dump_buffer): Update hash.
Basil L. Contovounesios [Sun, 12 Feb 2023 21:07:45 +0000 (21:07 +0000)]
; * src/pdumper.c (dump_buffer): Update hash.

This follows commit 8f3091defb3 of 2023-02-12
"; Fix typo in buffer.h".

23 months agoUpdate to Org 9.6.1-31-gaf1bb1
Kyle Meyer [Sun, 12 Feb 2023 20:43:07 +0000 (15:43 -0500)]
Update to Org 9.6.1-31-gaf1bb1

23 months ago* src/.gdbinit (nextcons): Amend $.u.cdr to $.u.s.u.cdr (bug#61453).
Alan Mackenzie [Sun, 12 Feb 2023 19:06:50 +0000 (19:06 +0000)]
* src/.gdbinit (nextcons): Amend $.u.cdr to $.u.s.u.cdr (bug#61453).

(cherry picked from commit dde023b63ab82c38d33815409de5552f5bf349d1)

23 months agoSupport Tramp multi-hop completion
Michael Albinus [Sun, 12 Feb 2023 19:22:10 +0000 (20:22 +0100)]
Support Tramp multi-hop completion

* lisp/net/tramp.el (tramp-completion-handle-expand-file-name)
(tramp-completion-handle-file-exists-p)
(tramp-completion-handle-file-name-directory): Support multi-hop
completion.

* test/lisp/net/tramp-tests.el
(tramp-test26-interactive-file-name-completion): Fix test.

23 months ago* src/.gdbinit (nextcons): Amend $.u.cdr to $.u.s.u.cdr
Alan Mackenzie [Sun, 12 Feb 2023 19:06:50 +0000 (19:06 +0000)]
* src/.gdbinit (nextcons): Amend $.u.cdr to $.u.s.u.cdr

23 months agoAdd lambda_expression to c-ts-common-indent-type-regexp-alist
Theodor Thornhill [Sun, 12 Feb 2023 17:57:40 +0000 (18:57 +0100)]
Add lambda_expression to c-ts-common-indent-type-regexp-alist

* lisp/progmodes/java-ts-mode.el (java-ts-mode): Tweak regexp.

23 months ago; Use the right name when specifying VC packages
Philip Kaludercic [Sun, 12 Feb 2023 13:29:26 +0000 (14:29 +0100)]
; Use the right name when specifying VC packages

* lisp/emacs-lisp/package-vc.el
(package-vc-install-selected-packages): Generate dummy package
descriptors in here, if necessary.
(package-vc--unpack): Remove dummy-descriptor generation.

23 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Sun, 12 Feb 2023 12:40:29 +0000 (20:40 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

23 months ago; * src/textconv.c (textconv_query): Fix build on non-GCC compilers.
Po Lu [Sun, 12 Feb 2023 12:39:23 +0000 (20:39 +0800)]
; * src/textconv.c (textconv_query): Fix build on non-GCC compilers.

23 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Sun, 12 Feb 2023 12:32:31 +0000 (20:32 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

23 months agoUpdate Android port
Po Lu [Sun, 12 Feb 2023 12:32:25 +0000 (20:32 +0800)]
Update Android port

* doc/emacs/android.texi (Android Environment): Document
notifications permission.
* java/org/gnu/emacs/EmacsEditable.java (EmacsEditable):
* java/org/gnu/emacs/EmacsInputConnection.java
(EmacsInputConnection): New files.
* java/org/gnu/emacs/EmacsNative.java (EmacsNative): Load
library dependencies in a less verbose fashion.
* java/org/gnu/emacs/EmacsView.java (EmacsView): Make imManager
public.
(onCreateInputConnection): Set InputType to TYPE_NULL for now.
* java/org/gnu/emacs/EmacsWindow.java (EmacsWindow, onKeyDown)
(onKeyUp, getEventUnicodeChar): Correctly handle key events with
strings.
* lisp/term/android-win.el (android-clear-preedit-text)
(android-preedit-text): New special event handlers.
* src/android.c (struct android_emacs_window): Add function
lookup_string.
(android_init_emacs_window): Adjust accordingly.
(android_wc_lookup_string): New function.
* src/androidgui.h (struct android_key_event): Improve
commentary.
(enum android_lookup_status): New enum.
* src/androidterm.c (handle_one_android_event): Synchronize IM
lookup code with X.
* src/coding.c (from_unicode_buffer): Implement on Android.
* src/coding.h:
* src/sfnt.c: Fix commentary.

23 months agoTolerate missing elpa-packages.eld files
Philip Kaludercic [Sun, 12 Feb 2023 12:25:54 +0000 (13:25 +0100)]
Tolerate missing elpa-packages.eld files

* lisp/emacs-lisp/package-vc.el
(package-vc--download-and-read-archives): Replace
'condition-case-unless-debug' with a regular 'condition-case'.

It appears a few people using third-party archives that don't serve
package specifications have been having issues with package-vc, when
toggle-on-error is enabled.  In their case, package-vc would raise an
error in its first invocation, but it would go on working normally
afterwards.  As this behaviour is confusing and the user can't do much
about a missing elpa-packages.eld to begin with, we satisfy ourselves
with printing out a message and continuing on.

23 months agoAvoid warning about 'load-path' in non-interactive sessions
Eli Zaretskii [Sun, 12 Feb 2023 12:20:48 +0000 (14:20 +0200)]
Avoid warning about 'load-path' in non-interactive sessions

* lisp/startup.el (command-line): Emit the warning about
'user-emacs-directory' in 'load-path' only in interactive
sessions.  (Bug#61014)

23 months ago; Fix installation of dependencies for VC packages
Philip Kaludercic [Sun, 12 Feb 2023 12:10:04 +0000 (13:10 +0100)]
; Fix installation of dependencies for VC packages

* lisp/emacs-lisp/package-vc.el (package-vc-install-dependencies):
Maintain a list of package-desc objects instead of package names to
install.

23 months ago; Mention Hunspell private-dictionary misfeature in doc strings
Eli Zaretskii [Sun, 12 Feb 2023 12:05:44 +0000 (14:05 +0200)]
; Mention Hunspell private-dictionary misfeature in doc strings

* lisp/textmodes/ispell.el (ispell-personal-dictionary)
(ispell-local-pdict): Mention Hunspell misfeatures in doc
strings.  (Bug#61190)

23 months agoCheck in new files
Po Lu [Sun, 12 Feb 2023 11:56:11 +0000 (19:56 +0800)]
Check in new files

* src/textconv.c (copy_buffer):
(textconv_query):
(report_selected_window_change):
(register_texconv_interface):
* src/textconv.h (struct textconv_interface):
(enum textconv_caret_direction):
(enum textconv_operation):
(struct textconv_conversion_text):
(struct textconv_callback_struct): New files.

23 months agoSupport input method ``text conversion'' on X Windows
Po Lu [Sun, 12 Feb 2023 11:55:28 +0000 (19:55 +0800)]
Support input method ``text conversion'' on X Windows

* configure.ac (HAVE_TEXT_CONVERSION): Define on X.
* etc/NEWS: Announce new change.
* src/emacs.c (main): Always call init_xterm.
* src/frame.c (do_switch_frame): Use `fset_selected_window'.
* src/insdel.c (struct safe_del_range_context): New structure.
(safe_del_range_1, safe_del_range_2, safe_del_range): New
functions.
* src/lisp.h: Export new functions.
* src/window.c (run_window_change_functions): Report selected
window and buffer changes so that the input method can be reset.
* src/xfns.c (XICCallback, Xxic_preedit_caret_callback)
(Xxic_preedit_done_callback, Xxic_preedit_start_callback)
(Xxic_preedit_draw_callback): Fix coding style.
(Xxic_string_conversion_callback): New callback.
(create_frame_xic): Register string conversion callback.
(struct x_xim_text_conversion_data): New field `size'.
(x_encode_xim_text_1, x_encode_xim_text): New functions.
(xic_string_conversion_callback): New function.
* src/xterm.c (x_reset_conversion): New function.
(text_conversion_interface): New variable.
(init_xterm): Initialize text conversion interface.

23 months agoSupport webkit2gtk-4.1
Ulrich Müller [Thu, 9 Feb 2023 09:58:48 +0000 (10:58 +0100)]
Support webkit2gtk-4.1

* configure.ac: Check for webkit2gtk API version 4.1 first, then
fall back to 4.0.

23 months ago; Fix typo
Stefan Kangas [Sun, 12 Feb 2023 06:47:09 +0000 (07:47 +0100)]
; Fix typo

23 months agoMerge from origin/emacs-29
Stefan Kangas [Sun, 12 Feb 2023 05:30:10 +0000 (06:30 +0100)]
Merge from origin/emacs-29

8f3091defb3 ; Fix typo in buffer.h