]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years ago* lisp/vc/diff-mode.el (diff--font-lock-prettify): Fix mishaps
Stefan Monnier [Sat, 19 Feb 2022 18:45:04 +0000 (13:45 -0500)]
* lisp/vc/diff-mode.el (diff--font-lock-prettify): Fix mishaps

This reverts the last change so it also applies to non-git diffs again.
Instead, we're now more careful not to mis-recognize file headers as
addition/removal lines.
In addition to that, mark the file header such that it's
re-font-locked all at once, and to still recognize it after
`diff-reverse-direction`.

3 years agoAdapt Tramp password prompts for sudo-like methods
Michael Albinus [Sat, 19 Feb 2022 17:38:12 +0000 (18:38 +0100)]
Adapt Tramp password prompts for sudo-like methods

* doc/misc/tramp.texi (Password handling): Explain entries for
doas, sudo and sudoedit.

* etc/NEWS (Tramp): Document changed password prompts.

* lisp/net/tramp-sh.el (tramp-methods) <sudo, doas>:
Add `tramp-password-previous-hop'.
(tramp-maybe-open-connection): Modify `previous-hop' if needed.

* lisp/net/tramp-sudoedit.el (tramp-methods) <sudoedit>:
Add `tramp-password-previous-hop'.
(tramp-sudoedit-null-hop): New defconst.
(tramp-sudoedit-send-command): Use it.

* lisp/net/tramp.el (tramp-methods): Adapt docstring.
(tramp-null-hop): New defconst.
(tramp-get-remote-null-device): Use it.

3 years agoSome vtable.texi copy edits
Lars Ingebrigtsen [Sat, 19 Feb 2022 15:58:52 +0000 (16:58 +0100)]
Some vtable.texi copy edits

* doc/misc/vtable.texi (Making A Table): Mention the accessors.

3 years agoMention vtable accessor functions
Lars Ingebrigtsen [Sat, 19 Feb 2022 15:25:13 +0000 (16:25 +0100)]
Mention vtable accessor functions

* doc/misc/vtable.texi (Making A Table): Mention the accessors.

3 years agoImprove the vtable documentation on argument types
Lars Ingebrigtsen [Sat, 19 Feb 2022 15:13:39 +0000 (16:13 +0100)]
Improve the vtable documentation on argument types

* doc/misc/vtable.texi (Making A Table): Say what the argument
types are.

3 years agoFix a vtable example
Lars Ingebrigtsen [Sat, 19 Feb 2022 13:48:39 +0000 (14:48 +0100)]
Fix a vtable example

* doc/misc/vtable.texi (Introduction): Fix example.

3 years agoImprove vtable documentation
Eli Zaretskii [Sat, 19 Feb 2022 13:34:01 +0000 (15:34 +0200)]
Improve vtable documentation

* doc/misc/vtable.texi (top-level): Add @syncodeindex directives.
(Introduction): Fix wording and markup.  Add indexing.
(Making A Table, Commands, Interface Functions): Fix typos and
markup.  Add indexing.

* etc/NEWS: Improve wording of the vtable's NEWS entry.

* doc/misc/Makefile.in (INFO_COMMON): Add 'vtable'.

3 years agoAdd column sorting order indicators to vtable
Lars Ingebrigtsen [Sat, 19 Feb 2022 13:21:10 +0000 (14:21 +0100)]
Add column sorting order indicators to vtable

* lisp/emacs-lisp/vtable.el (vtable--indicator): New function.
(vtable--insert-header-line): Use it to display sorting order
indicators.

3 years agoMake string-pixel-width slightly speedier
Lars Ingebrigtsen [Sat, 19 Feb 2022 13:20:30 +0000 (14:20 +0100)]
Make string-pixel-width slightly speedier

* lisp/emacs-lisp/subr-x.el (string-pixel-width): Speed up
string-pixel-width in the zero-length string case.

3 years agoAvoid consing extra string when processing GTK native input
Po Lu [Sat, 19 Feb 2022 12:59:12 +0000 (20:59 +0800)]
Avoid consing extra string when processing GTK native input

* src/gtkutil.c (xg_im_context_commit): Use
`decode_string_utf8' to decode input text.

* src/keyboard.c (kbd_buffer_get_event_1): If coding system is
Qt, simply return the string without decoding it.

* src/termhooks.h (enum event_kind): Document meaning of Qt as
coding system in a multibyte keystroke event's string argument.

3 years agoFix types of some align.el defcustoms
Mauro Aranda [Sat, 19 Feb 2022 12:34:11 +0000 (13:34 +0100)]
Fix types of some align.el defcustoms

* lisp/align.el (align-region-heuristic)
(align-large-region): Both options can be nil, but the defcustom type
didn't allow nil values.
(align-rules-list-type): The "Run If" and "Valid" attributes
should be functions, but the default value was t.  Change it to
#'always (bug#54048).

3 years agoFix :match function for the key widget
Mauro Aranda [Sat, 19 Feb 2022 12:33:05 +0000 (13:33 +0100)]
Fix :match function for the key widget

* lisp/wid-edit.el (key): Calling key-valid-p directly doesn't work,
because the :match function is called with the widget and the value as
arguments (bug#54049).

3 years agoFix some more hangs when parenting child frames around on Haiku
Po Lu [Sat, 19 Feb 2022 12:30:26 +0000 (12:30 +0000)]
Fix some more hangs when parenting child frames around on Haiku

* src/haiku_support.cc (ParentTo):
(FrameMoved): Don't sync when a recursive lock might be able to
be held.

3 years agoAdd a new library to format variable-pitch tables
Lars Ingebrigtsen [Sat, 19 Feb 2022 12:16:19 +0000 (13:16 +0100)]
Add a new library to format variable-pitch tables

* doc/misc/vtable.texi (Index): New manual.

* lisp/emacs-lisp/vtable.el: New library.

3 years agoImprove portability of alpha channel visual detection
Po Lu [Sat, 19 Feb 2022 12:05:18 +0000 (20:05 +0800)]
Improve portability of alpha channel visual detection

* src/xfns.c (select_visual): Look for PictVisuals with an alpha
channel instead of blindly assuming that 32 bit visuals have an
alpha channel.
(Fx_show_tip): Fix crash on some displays where child is None.

* src/xterm.c (x_term_init): Initialize Xrender before
calling select_visual.

3 years agoFix symbols with position appearing in the output of `compile-defun'
Alan Mackenzie [Sat, 19 Feb 2022 10:38:19 +0000 (10:38 +0000)]
Fix symbols with position appearing in the output of `compile-defun'

This happened with the tags of a condition-case.  Also fix the detection of
circular lists while stripping the positions from symbols with position.

* lisp/emacs-lisp/byte-run.el (byte-run--circular-list-p): Remove.
(byte-run--strip-s-p-1): Write a value of t into a hash table for each cons or
vector/record encountered.  (This is to prevent loops with circular
structures.)  This is now done for all arguments, not just those detected as
circular lists.

* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defvar)
(byte-compile-form, byte-compile-dynamic-variable-op)
(byte-compile-constant, byte-compile-push-constant): Remove redundant calls to
`bare-symbol'.
(byte-compile-lambda): call `byte-run-strip-symbol-positions' on the arglist.
(byte-compile-out): call `byte-run-strip-symbol-positions' on the operand.
This is the main call to this function in bytecomp.el.

* src/fns.c (hashfn_eq): Strip the position from an argument which is a symbol
with position.
(hash_lookup): No longer strip a position from a symbol with position.
(sxhash_obj): Add handling for symbols with position, substituting their bare
symbols when symbols with position are enabled.

3 years agoFix character compositions on the mode line
Eli Zaretskii [Sat, 19 Feb 2022 09:19:48 +0000 (11:19 +0200)]
Fix character compositions on the mode line

* src/composite.c (composition_compute_stop_pos)
(Ffind_composition_internal): When characters come from a string,
determine whether to compose them from that string's multibyteness,
not from that of the current buffer.  (Bug#53729)

3 years agoDon't ignore events from XI2 slave devices anymore
Po Lu [Sat, 19 Feb 2022 08:21:51 +0000 (16:21 +0800)]
Don't ignore events from XI2 slave devices anymore

All the machinery needed to keep track of events from those
devices is already in place, so that's no longer required.

* src/xterm.c (x_get_scroll_valuator_delta):
(xi_reset_scroll_valuators_for_device_id):
(handle_one_xevent): Don't ignore XI devices that are not master
pointers or keyboards.

3 years agoMerge from origin/emacs-28
Stefan Kangas [Sat, 19 Feb 2022 05:30:51 +0000 (06:30 +0100)]
Merge from origin/emacs-28

57c112cfe5 ; * doc/emacs/files.texi (Comparing Files): Fix a reference.
bdeac2d5af ; Fix a typo in filesets.el's doc string

3 years agoAlways decode GTK input method text as utf-8-unix
Po Lu [Sat, 19 Feb 2022 05:27:03 +0000 (13:27 +0800)]
Always decode GTK input method text as utf-8-unix

* src/gtkutil.c (xg_im_context_commit): Use `utf-8-unix' as
coding system for text.

3 years agoBe less strict about which emulated motion events to ignore
Po Lu [Sat, 19 Feb 2022 03:51:05 +0000 (11:51 +0800)]
Be less strict about which emulated motion events to ignore

* src/xterm.c (handle_one_xevent): Don't test XI2 version before
dropping PointerEmulated motion events.

3 years ago* src/haikufns.c (haiku_create_frame): Error if font wasn't found.
Po Lu [Sat, 19 Feb 2022 02:19:29 +0000 (02:19 +0000)]
* src/haikufns.c (haiku_create_frame): Error if font wasn't found.

3 years agoUtilize new string decoding feature in GTK native input
Po Lu [Sat, 19 Feb 2022 01:18:27 +0000 (09:18 +0800)]
Utilize new string decoding feature in GTK native input

* src/gtkutil.c (xg_im_context_commit): Don't decode strings
manually using g_utf8_to_ucs4 but pass unibyte string as the
keystroke event arg instead.

3 years ago; * doc/emacs/files.texi (Comparing Files): Fix a reference.
Philipp Stephani [Fri, 18 Feb 2022 17:53:49 +0000 (18:53 +0100)]
; * doc/emacs/files.texi (Comparing Files): Fix a reference.

3 years agoHandle multiple directory separators in gnus-search results
Eric Abrahamsen [Fri, 18 Feb 2022 16:37:33 +0000 (08:37 -0800)]
Handle multiple directory separators in gnus-search results

Try to treat the file names more like file names, less like strings
to massage.

* lisp/gnus/gnus-search.el (gnus-search-indexed-parse-output): Use
`expand-file-name' to collapse separators and generally canonicalize
the name. Use `file-name-split' and joining instead of regexp
munging.

3 years ago; Fix a typo in filesets.el's doc string
Eli Zaretskii [Fri, 18 Feb 2022 13:46:57 +0000 (15:46 +0200)]
; Fix a typo in filesets.el's doc string

* lisp/filesets.el (filesets-remove-buffer, filesets-add-buffer):
Doc fixes.  Reported by Иванов Дмитрий <d.ivanov@1001tur.ru>.

3 years agoFix background stipple with `alpha_background'
Po Lu [Fri, 18 Feb 2022 13:24:42 +0000 (21:24 +0800)]
Fix background stipple with `alpha_background'

* src/xterm.c (x_fill_rectangle): Fix treatment of foreground
and background colors when there is a stipple.

3 years agoFix a crash on some versions of GTK
Po Lu [Fri, 18 Feb 2022 10:01:58 +0000 (18:01 +0800)]
Fix a crash on some versions of GTK

* src/emacsgtkfixed.c (XSetWMNormalHints): Fix potential
arithmetic fault.

3 years agoMerge from origin/emacs-28
Eli Zaretskii [Fri, 18 Feb 2022 08:38:52 +0000 (10:38 +0200)]
Merge from origin/emacs-28

1e4b04c Improve documentation of filling and justification commands
9fd396e * lisp/progmodes/subword.el (superword-mode): Doc fix.  (Bug#...
e303cb1 Fix indexing of module functions that return complex types.

3 years ago; Merge from origin/emacs-28
Eli Zaretskii [Fri, 18 Feb 2022 08:38:50 +0000 (10:38 +0200)]
; Merge from origin/emacs-28

The following commit was skipped:

b30ef09 Prevent crashes caused by invalid locale coding systems

3 years agoMerge from origin/emacs-28
Eli Zaretskii [Fri, 18 Feb 2022 08:38:47 +0000 (10:38 +0200)]
Merge from origin/emacs-28

c8442df ; Separate command and concept index in Transient manual
8aa052c ; Fix Transient manual
5b7752a Fix problem with popd for in remote shell buffers
38f6ea1 Import texi source file for transient manual
df34929 Update to Org 9.5.2-15-gc5ceb6

3 years ago; Merge from origin/emacs-28
Eli Zaretskii [Fri, 18 Feb 2022 08:38:45 +0000 (10:38 +0200)]
; Merge from origin/emacs-28

The following commits were skipped:

fe27479 Fix 'exchange-point-and-mark' in 'transient-mark-mode'
2289a7a2 Fix "C-SPC C-SPC" after "C-x C-x"

3 years agoMerge from origin/emacs-28
Eli Zaretskii [Fri, 18 Feb 2022 08:38:42 +0000 (10:38 +0200)]
Merge from origin/emacs-28

# Conflicts:
# lisp/startup.el

3 years agoFix blurry text on multiple scale monitor setups
Po Lu [Fri, 18 Feb 2022 07:48:50 +0000 (15:48 +0800)]
Fix blurry text on multiple scale monitor setups

* src/pgtkterm.c (pgtk_copy_bits): Preserve window scale factor
on temporary surface.  (bug#54040)

3 years agoImprove documentation of filling and justification commands
Eli Zaretskii [Fri, 18 Feb 2022 07:47:44 +0000 (09:47 +0200)]
Improve documentation of filling and justification commands

* doc/lispref/text.texi (Filling):
* lisp/textmodes/fill.el (fill-region-as-paragraph)
(default-justification, set-justification, justify-current-line):
Clarify "canonicalization" of spaces and the meaning of
justification styles.  (Bug#54047)
(set-justification-left, set-justification-right)
(set-justification-full): Improve wording of doc strings.

3 years ago* lisp/progmodes/subword.el (superword-mode): Doc fix. (Bug#54045)
Eli Zaretskii [Fri, 18 Feb 2022 07:01:06 +0000 (09:01 +0200)]
* lisp/progmodes/subword.el (superword-mode): Doc fix.  (Bug#54045)

3 years agoMake sure nnselect search query is properly parsed
Andrew G Cohen [Fri, 18 Feb 2022 06:01:55 +0000 (14:01 +0800)]
Make sure nnselect search query is properly parsed

* lisp/gnus/gnus-search.el (gnus-search-make-spec): The search query
should not be interpreted as raw, but whatever the underlying search
engine expects.

3 years agoFix gnus searching of native servers
Andrew G Cohen [Fri, 18 Feb 2022 05:56:19 +0000 (13:56 +0800)]
Fix gnus searching of native servers

* lisp/gnus/gnus-group.el (gnus-group-make-search-group):
(gnus-group-read-ephemeral-search-group):  Find the real server even
when the group is native.

3 years agoMake treatment of `alpha-background' more consistent
Po Lu [Fri, 18 Feb 2022 05:47:56 +0000 (13:47 +0800)]
Make treatment of `alpha-background' more consistent

* src/xterm.c (x_clear_glyph_string_rect):
(x_draw_glyph_string_background): Ignore alpha_background on all
cursors.

3 years agoFix gnus-search-run-search methods
Eric Abrahamsen [Fri, 18 Feb 2022 05:28:40 +0000 (21:28 -0800)]
Fix gnus-search-run-search methods

* lisp/gnus/gnus-search.el (gnus-search-run-search): Both these
implementations were setting the current buffer and then not setting
it back.

3 years agoMake stipple backgrounds respect `alpha-background'
Po Lu [Fri, 18 Feb 2022 02:34:20 +0000 (10:34 +0800)]
Make stipple backgrounds respect `alpha-background'

* src/xterm.c (x_fill_rectangle): Respect `alpha-background'
when drawing stipple.

3 years agoFix mis-parsing of certain malformed XBM files
Po Lu [Fri, 18 Feb 2022 01:37:36 +0000 (09:37 +0800)]
Fix mis-parsing of certain malformed XBM files

* src/image.c (xbm_scan): Return error on a character literal
that doesn't start with "\x".

3 years agoParse XBM images which use character escapes for hex literals
Po Lu [Fri, 18 Feb 2022 01:12:48 +0000 (09:12 +0800)]
Parse XBM images which use character escapes for hex literals

* src/image.c (xbm_scan): Implement parsing of hex escapes in
character literals.

3 years agoFix gnus-search notmuch thread searches
Eric Abrahamsen [Thu, 17 Feb 2022 21:09:49 +0000 (13:09 -0800)]
Fix gnus-search notmuch thread searches

* lisp/gnus/gnus-search.el (gnus-search-run-search): Multiple things
wrong with collecting thread ids from the search results, and
constructing a new search query.
(gnus-search-indexed-search-command): Use list appending rather than
backtick construction, that was more confusing than it was helpful.

3 years ago* lisp/mouse.el (context-menu-entry): Don't create menu for Help commands.
Juri Linkov [Thu, 17 Feb 2022 18:28:43 +0000 (20:28 +0200)]
* lisp/mouse.el (context-menu-entry): Don't create menu for Help commands.

Help commands that describe keybindings call context-menu-entry bound to
a key.  This causes too much trouble when trying to build the context menu
in a temporary Help buffer that is not displayed in a window.
OTOH, there is no information in context menus useful for Help commands.
So `help-buffer-under-preparation' is added to filter out such calls.
(bug#53910)

3 years ago; * lisp/international/fontset.el (otf-script-alist): Update.
Eli Zaretskii [Thu, 17 Feb 2022 17:23:46 +0000 (19:23 +0200)]
; * lisp/international/fontset.el (otf-script-alist): Update.

3 years agoResurrect innocent joke in byte-opt.el
Eli Zaretskii [Thu, 17 Feb 2022 14:35:03 +0000 (16:35 +0200)]
Resurrect innocent joke in byte-opt.el

* lisp/emacs-lisp/byte-opt.el: Resurrect innocent joke in a
comment.

3 years agoFix files-tests on MS-Windows
Eli Zaretskii [Thu, 17 Feb 2022 14:30:42 +0000 (16:30 +0200)]
Fix files-tests on MS-Windows

* test/lisp/files-tests.el
(files-tests-zzdont-rewrite-precious-files): Renamed from
'files-tests-dont-rewrite-precious-files', to fix a subtle problem
that breaks 2 tests on MS-Windows.
(files-tests-revert-buffer)
(files-tests-revert-buffer-with-fine-grain): No need to disable
file locking anymore.

3 years agoFix or remove outdated comments
Mattias Engdegård [Thu, 17 Feb 2022 13:39:42 +0000 (14:39 +0100)]
Fix or remove outdated comments

* src/eval.c (funcall_lambda): Rewrite obsolete comment.
* src/bytecode.c (exec_byte_code): Remove lying comment and
unneeded #define.
* lisp/emacs-lisp/byte-opt.el: Remove car.  Keep pig.
(byte-compile-log-lap-1): Remove obsolete and irrelevant comment.

3 years ago* lisp/face-remap.el: Fix bug#53294
Stefan Monnier [Thu, 17 Feb 2022 13:37:24 +0000 (08:37 -0500)]
* lisp/face-remap.el: Fix bug#53294

* lisp/face-remap.el (face-remap--copy-face): New function.
(face-attrs--make-indirect-safe): Use it.

3 years agoSpeed up exiting "emacs -Q"
Eli Zaretskii [Thu, 17 Feb 2022 13:26:37 +0000 (15:26 +0200)]
Speed up exiting "emacs -Q"

* lisp/files.el (files--buffers-needing-to-be-saved): Don't call
functions from seq.el.  Using seq.el has an annoying side-effect
of slowing down "C-x C-c" from "emacs -Q" due to the need to load
seq.el.

3 years agoFix indexing of module functions that return complex types.
Philipp Stephani [Thu, 17 Feb 2022 13:02:28 +0000 (14:02 +0100)]
Fix indexing of module functions that return complex types.

Return types that consist of more than one word need to be enclosed in
braces, see Info node `(texinfo) Typed Functions'.  Otherwise they are
indexed incorrectly.

* doc/lispref/internals.texi (Module Values): Enclose multi-word
return types in braces.

3 years agoFix crash when displaying XBM images on a 32-bit visual
Po Lu [Thu, 17 Feb 2022 12:44:53 +0000 (20:44 +0800)]
Fix crash when displaying XBM images on a 32-bit visual

* src/image.c (Create_Pixmap_From_Bitmap_Data): Fix use of wrong
(default) depth.

3 years agoImplement XBM images on Haiku
Po Lu [Thu, 17 Feb 2022 12:35:39 +0000 (12:35 +0000)]
Implement XBM images on Haiku

* src/image.c (image_create_bitmap_from_data): Handle allocation
failures on Haiku.
(Create_Pixmap_From_Bitmap_Data): Implement for Haiku.

3 years agoAdd a NEWS entry for the bookmark changes (bug#54030)
Lars Ingebrigtsen [Thu, 17 Feb 2022 11:57:15 +0000 (12:57 +0100)]
Add a NEWS entry for the bookmark changes (bug#54030)

* lisp/bookmark.el (bookmark-bmenu-mode): Make the type shorter.

3 years agoDon't prefix bookmark name with VC backend name
Matthias Meulien [Wed, 16 Feb 2022 07:49:07 +0000 (08:49 +0100)]
Don't prefix bookmark name with VC backend name

* lisp/vc/vc-dir.el (vc-dir-bookmark-make-record): Remove prefix from
bookmark name.

3 years agoExtend bookmark menu with with handler type column
Matthias Meulien [Tue, 15 Feb 2022 22:39:02 +0000 (23:39 +0100)]
Extend bookmark menu with with handler type column

* lisp/bookmark.el (bookmark-bmenu--revert): Extend table entries with
handler type.
(bookmark-bmenu-mode): Add handler type column.
* lisp/doc-view.el (doc-view-bookmark-jump): Set bookmark handler type.
* lisp/help-mode.el (help-bookmark-jump): Set bookmark handler type.
* lisp/image-dired.el (image-dired-bookmark-jump): Set bookmark handler type.
* lisp/info.el (Info-bookmark-jump): Set bookmark handler type.
* lisp/net/eww.el (eww-bookmark-jump): Set bookmark handler type.
* lisp/vc/vc-dir.el (vc-dir-bookmark-jump): Set bookmark handler type.
* lisp/woman.el (woman-bookmark-jump): Set bookmark handler type.

3 years agoUpdate modus-themes to version 2.1.0
Protesilaos Stavrou [Thu, 17 Feb 2022 11:15:39 +0000 (13:15 +0200)]
Update modus-themes to version 2.1.0

* doc/misc/modus-themes.org (Customization Options): Document new user
options and relevant changes.
(Option for links, Option for box buttons)
(Option for completion framework aesthetics, Option for mail citations)
(Option for intense markup in Org and others)
(Option for diff buffer looks, Option for org-mode block styles)
(Option for Org agenda constructs)
(Option for the headings' overall style): Update user options.
(More accurate colors in terminal emulators): Add section on how to
improve the accuracy of color reproduction in terminal emulators.
(Case-by-case face specs using the themes' palette)
(Face specs at scale using the themes' palette, Override colors)
(Override colors through blending, Custom Org user faces): Improve
wording.
(Custom Org emphasis faces): Add section about bespoke faces for Org
emphasis markers.
(Backdrop for pdf-tools): Improve sample code.
(Ediff without diff color-coding): Add section about user-level
changes to the style of Ediff buffers.
(Full support for packages or face groups): Update lists of supported
packages.
(Indirectly covered packages): Update list of indirectly supported
packages.
(Note on underlines in compilation buffers): Clarify wording.
(Note on EWW and Elfeed fonts): Be more specific about 'shr' faces.
(Are these color schemes?): Answer frequently asked question.
(Acknowledgements): Update acknowledgements' section.

* etc/themes/modus-themes.el (modus-themes-operandi-colors)
(modus-themes-vivendi-colors): Update color palettes.
(modus-themes-subtle-red, modus-themes-subtle-green)
(modus-themes-subtle-yellow, modus-themes-subtle-blue)
(modus-themes-subtle-magenta, modus-themes-subtle-cyan)
(modus-themes-subtle-neutral, modus-themes-intense-red)
(modus-themes-intense-green, modus-themes-intense-yellow)
(modus-themes-intense-blue, modus-themes-intense-magenta)
(modus-themes-intense-cyan, modus-themes-intense-neutral)
(modus-themes-refine-red, modus-themes-refine-green)
(modus-themes-refine-yellow, modus-themes-refine-blue)
(modus-themes-refine-magenta, modus-themes-refine-cyan)
(modus-themes-nuanced-red, modus-themes-nuanced-green)
(modus-themes-nuanced-yellow, modus-themes-nuanced-blue)
(modus-themes-nuanced-magenta, modus-themes-nuanced-cyan)
(modus-themes-special-cold, modus-themes-special-mild)
(modus-themes-special-warm, modus-themes-special-calm)
(modus-themes-diff-added, modus-themes-diff-changed)
(modus-themes-diff-removed, modus-themes-diff-refine-added)
(modus-themes-diff-refine-changed, modus-themes-diff-refine-removed)
(modus-themes-diff-focus-added, modus-themes-diff-focus-changed)
(modus-themes-diff-focus-removed, modus-themes-diff-heading)
(modus-themes-heading-1, modus-themes-heading-2, modus-themes-heading-3)
(modus-themes-heading-4, modus-themes-heading-5, modus-themes-heading-6)
(modus-themes-heading-7, modus-themes-heading-8, modus-themes-hl-line)
(modus-themes-variable-pitch, modus-themes-lang-note)
(modus-themes-lang-warning, modus-themes-lang-error)
(modus-themes-reset-soft, modus-themes-reset-hard): Fix typo in
':group'.
(modus-themes-markup-code): Add face.
(modus-themes--headings-choice, modus-themes-headings)
(modus-themes-org-agenda): Update documentation about typographic
weights.
(modus-themes-org-blocks, modus-themes-completions): Update doc string
and add new stylistic variant.
(modus-themes-intense-markup): Deprecate old user option.  Replace it
with 'modus-themes-markup'.
(modus-themes-mail-citations): Update doc string and add another
stylistic variant.
(modus-themes-box-buttons): Add new user option.
(modus-themes--slant): Tweak how slant is applied.
(modus-themes--markup, modus-themes--prompt, modus-themes--paren)
(modus-themes--syntax-foreground, modus-themes--syntax-extra)
(modus-themes--syntax-string, modus-themes--syntax-comment)
(modus-themes--heading, modus-themes--agenda-structure)
(modus-themes--agenda-habit, modus-themes--org-block-delim)
(modus-themes--mode-line-attrs, modus-themes--standard-completions)
(modus-themes--link, modus-themes--link-color, modus-themes--region)
(modus-themes--hl-line, modus-themes--mail-cite): Tweak private
functions.
(modus-themes--button): Adjust private function.
(modus-themes--heading-weights): Deprecate it.  Replace by
'modus-themes-weights'.
(modus-themes-faces): Update faces.

* etc/themes/modus-vivendi-theme.el
* etc/themes/modus-operandi-theme.el: Bump version number.

For a detailed change log, read:
<https://protesilaos.com/codelog/2022-02-17-modus-themes-2-1-0/>.

3 years agoHave setopt check types
Lars Ingebrigtsen [Thu, 17 Feb 2022 11:31:12 +0000 (12:31 +0100)]
Have setopt check types

* doc/lispref/variables.texi (Setting Variables): Note type checking.
* lisp/cus-edit.el (setopt--set): New function to avoid having
Customize saving values, too.
(setopt): Use it.

3 years agoFix warning during dumping on MS-DOS
Po Lu [Thu, 17 Feb 2022 11:10:24 +0000 (19:10 +0800)]
Fix warning during dumping on MS-DOS

* lisp/cus-start.el (standard): Filter out
`process-error-pause-time' on MS-DOS.

3 years agoPrevent menu items leak if x-pre-popup-menu-hook signals
Po Lu [Thu, 17 Feb 2022 10:01:30 +0000 (18:01 +0800)]
Prevent menu items leak if x-pre-popup-menu-hook signals

* src/menu.c (x_popup_menu_1): Make sure menu items are
discarded if the pre popup menu hook signals.

3 years agoFix problem with "~" in Tramp
Michael Albinus [Thu, 17 Feb 2022 09:40:52 +0000 (10:40 +0100)]
Fix problem with "~" in Tramp

* lisp/net/tramp.el (tramp-handle-substitute-in-file-name):
Remove special handling of "~" in localname.  (Bug#53053)

3 years agoPrevent crashes caused by invalid locale coding systems
Po Lu [Thu, 17 Feb 2022 07:35:41 +0000 (15:35 +0800)]
Prevent crashes caused by invalid locale coding systems

* src/xterm.c (handle_one_xevent): Prevent a signal inside
`setup_coding_system' which crashes recent versions of GLib if
the locale coding system is invalid.

Do not merge to master.

3 years ago* src/xterm.c (x_init_master_valuators): Clear `pending_enter_reset'.
Po Lu [Thu, 17 Feb 2022 05:34:01 +0000 (13:34 +0800)]
* src/xterm.c (x_init_master_valuators): Clear `pending_enter_reset'.

3 years agoImprove handling of XI2 wheel movement
Po Lu [Thu, 17 Feb 2022 05:25:01 +0000 (13:25 +0800)]
Improve handling of XI2 wheel movement

* src/xterm.c (handle_one_xevent): Process movement in all
directions and send it as a single event.

3 years agoFix SIGFPE on some fonts when calculating their average width on Haiku
Po Lu [Thu, 17 Feb 2022 02:32:55 +0000 (02:32 +0000)]
Fix SIGFPE on some fonts when calculating their average width on Haiku

* src/haiku_font_support.cc (estimate_font_ascii): Avoid divison
by zero.

3 years ago* src/emacsgtkfixed.c (XSetWMSizeHints): Improve fix for bug#8919.
Po Lu [Thu, 17 Feb 2022 02:28:02 +0000 (10:28 +0800)]
* src/emacsgtkfixed.c (XSetWMSizeHints): Improve fix for bug#8919.

3 years agoDon't auto-lower when moving onto a menu bar on Haiku
Po Lu [Thu, 17 Feb 2022 01:26:14 +0000 (01:26 +0000)]
Don't auto-lower when moving onto a menu bar on Haiku

* src/haiku_io.c (haiku_len): Handle `MENU_BAR_LEFT'.
* src/haiku_support.cc (EmacsMenuBar::MouseMoved): New function.
* src/haiku_support.h (enum haiku_event_type): New event
`MENU_BAR_LEFT'.
(struct haiku_menu_bar_left_event): New structure.
* src/haikuterm.c (haiku_read_socket): Don't auto-lower when the
mouse exits the frame view onto the menu bar and handle
MENU_BAR_LEFT events.

3 years agoHandle `unspecified' values of symbolic font values on Haiku
Po Lu [Thu, 17 Feb 2022 01:25:24 +0000 (01:25 +0000)]
Handle `unspecified' values of symbolic font values on Haiku

* src/haikufont.c (haikufont_spec_or_entity_to_pattern): Handle
`unspecified' values of symbolic values.

3 years agoFix problem with file-modification-time in tramp-sshfs.el
Michael Albinus [Wed, 16 Feb 2022 19:22:45 +0000 (20:22 +0100)]
Fix problem with file-modification-time in tramp-sshfs.el

* lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
* lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist):
* lisp/net/tramp-sshfs.el (tramp-sshfs-file-name-handler-alist):
Use `tramp-handle-file-notify-add-watch',
`tramp-handle-file-notify-rm-watch' and
`tramp-handle-file-notify-valid-p'.
(tramp-sshfs-handle-write-region): Set file modification time.
(Bug#54016)

* test/lisp/net/tramp-tests.el (tramp--test-asynchronous-processes-p):
Filter out tramp-adb on multi-byte `default-directory'.
(tramp--test-hpux-p, tramp--test-macos-p): Protect against errors.
(tramp--test-check-files): Discriminate also tramp-sshfs.el.

3 years agoFix computation of outline heading level for non-git diff
Matthias Meulien [Mon, 14 Feb 2022 21:29:49 +0000 (22:29 +0100)]
Fix computation of outline heading level for non-git diff

* lisp/vc/diff-mode.el (diff-setup-buffer-type): Compute outline heading level
using diff-hunk-header-re (bug#51809).
(diff--font-lock-prettify): Disable prettify in non-git diff.

3 years agoAdd support for Tai Tham script
Eli Zaretskii [Wed, 16 Feb 2022 15:07:58 +0000 (17:07 +0200)]
Add support for Tai Tham script

* lisp/international/fontset.el (setup-default-fontset)
(script-representative-chars): Add tai-tham.
* lisp/language/thai.el ("Northern Thai"): New language
environment.  Patch by Richard Wordingham
<richard.wordingham@ntlworld.com>.  Set
'composition-function-table' for the Tai Tham block.  Original
code by Richard Wordingham <richard.wordingham@ntlworld.com>.

* etc/HELLO: Add Northern Thai greeting.
* etc/NEWS: Announce addition of Northern Thai language environment.

3 years ago; * etc/NEWS: Fix wording of a recently added text.
Eli Zaretskii [Wed, 16 Feb 2022 13:37:57 +0000 (15:37 +0200)]
; * etc/NEWS: Fix wording of a recently added text.

3 years ago; Separate command and concept index in Transient manual
Jonas Bernoulli [Wed, 16 Feb 2022 12:06:17 +0000 (13:06 +0100)]
; Separate command and concept index in Transient manual

* doc/misc/transient.texi (cp): Use cp index for Concept index.
* doc/misc/transient.texi (fn): Use fn index for Commands as well.

3 years agoFix recent change in xwidget.c
Po Lu [Wed, 16 Feb 2022 11:54:40 +0000 (19:54 +0800)]
Fix recent change in xwidget.c

* src/xwidget.c (xwidget_init_view): Don't assume ttip_widget
is NULL if tooltips have not been initialized.

3 years agoSpeed up count_size_as_multibyte
Mattias Engdegård [Wed, 16 Feb 2022 11:27:59 +0000 (12:27 +0100)]
Speed up count_size_as_multibyte

This function is used in many places to calculate the length of
a unibyte string converted to multibyte.

* src/character.c (count_size_as_multibyte): Move the overflow test
outside the loop, which makes it much faster.  Standard compilers
will even vectorise it if asked to (-O2 in Clang, -O3 in GCC).

3 years agoAvoid emacs-module-tests failure on macOS
Mattias Engdegård [Wed, 16 Feb 2022 11:26:30 +0000 (12:26 +0100)]
Avoid emacs-module-tests failure on macOS

* test/src/emacs-module-tests.el (module/describe-function-1):
Prevent string mismatch caused by line breaks after filling;
the macOS dynamic library suffix (.dylib) is longer than on other
platforms.

3 years agoFix frame focus handling with native input
Po Lu [Wed, 16 Feb 2022 07:40:39 +0000 (15:40 +0800)]
Fix frame focus handling with native input

* lisp/term/x-win.el (x-gtk-use-native-input-watcher): Stop
passing frame parameter  to `x-internal-focus-input-context'.
* src/xfns.c (Fx_internal_focus_input_context): Focus all focus
frames from all displays.

3 years agoResolve xwidget scrolling mysteries
Po Lu [Wed, 16 Feb 2022 06:38:06 +0000 (14:38 +0800)]
Resolve xwidget scrolling mysteries

* src/xterm.c (x_any_window_to_frame): Handle xwidget views.
(handle_one_xevent): Always increment values array when handling
motion events.

3 years ago* etc/NEWS: Improve the PGTK entry.
Po Lu [Wed, 16 Feb 2022 03:28:08 +0000 (11:28 +0800)]
* etc/NEWS: Improve the PGTK entry.

3 years agoDecode keyboard input as latin-1 whenever appropriate
Po Lu [Wed, 16 Feb 2022 02:53:00 +0000 (10:53 +0800)]
Decode keyboard input as latin-1 whenever appropriate

* src/keyboard.c (kbd_buffer_get_event_1): Use `coding'
property if present.

* src/termhooks.h (enum event_kind): Document meaning of
`coding' property on text strings.

* src/xterm.c (handle_one_xevent): Set coding property on text
to latin-1 if it was obtained with XLookupString.

3 years agoDon't decode text within XIM callbacks or handle_one_xevent
Po Lu [Wed, 16 Feb 2022 02:10:13 +0000 (10:10 +0800)]
Don't decode text within XIM callbacks or handle_one_xevent

* src/keyboard.c (kbd_buffer_get_event_1):
(kbd_buffer_get_event_2): New functions.
(kbd_buffer_get_event): Accept a new meaning of
MULTIBYTE_CHAR_KEYSTROKE_EVENT where .arg can be a unibyte
string to be decoded in the locale coding system.

* src/termhooks.h (enum event_kind): Document new meaning of
.arg in a multibyte keystroke event.

* src/xfns.c (struct x_xim_text_conversion_data): New struct.
(x_xim_text_to_utf8_unix_1):
(x_xim_text_to_utf8_unix_2): New functions.
(x_xim_text_to_utf8_unix): Handle decode failure correctly.
(xic_preedit_draw_callback): Abort IM context if text could not
be decoded correctly.

* src/xterm.c (handle_one_xevent): Utilize new meaning of
MULTIBYTE_CHAR_KEYSTROKE_EVENT.

3 years ago; Fix Transient manual
Eli Zaretskii [Tue, 15 Feb 2022 19:06:21 +0000 (21:06 +0200)]
; Fix Transient manual

* doc/misc/transient.texi (all nodes): Replace ".." with Texinfo
style ``..'' quoting or by @dfn{..} or by other appropriate
markup, like @samp{..}.  Add indexing.  Fix punctuation.  Fix
markup of keyboard commands.

3 years agoFix problem with popd for in remote shell buffers
Michael Albinus [Tue, 15 Feb 2022 17:13:04 +0000 (18:13 +0100)]
Fix problem with popd for in remote shell buffers

* lisp/shell.el (shell-prefixed-directory-name):
Use `file-local-name' for DIR.  (Bug#53927)

3 years agoImport texi source file for transient manual
Jonas Bernoulli [Tue, 15 Feb 2022 16:49:04 +0000 (17:49 +0100)]
Import texi source file for transient manual

* doc/misc/Makefile.in: Add transient to INFO_COMMON.
* doc/misc/transient.texi: New file.

3 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Tue, 15 Feb 2022 15:16:50 +0000 (16:16 +0100)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

3 years agoSome Tramp cleanup
Michael Albinus [Tue, 15 Feb 2022 15:15:55 +0000 (16:15 +0100)]
Some Tramp cleanup

* doc/misc/tramp.texi (Remote processes): Add also tramp-sshfs.el.

* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
Error-out for multi-byte `default-directory'.

* lisp/net/tramp.el (tramp-tolerate-tilde): Move it up.
(tramp-handle-abbreviate-file-name): Use it.
(tramp-read-passwd): Show literal passphrase prompt.

3 years ago; * etc/NEWS: Improve wording of savehist.el's entry.
Eli Zaretskii [Tue, 15 Feb 2022 14:33:42 +0000 (16:33 +0200)]
; * etc/NEWS: Improve wording of savehist.el's entry.

3 years agoDon't attempt to connect to a remote server during 'abbreviate-file-name'
Jim Porter [Mon, 14 Feb 2022 21:16:05 +0000 (13:16 -0800)]
Don't attempt to connect to a remote server during 'abbreviate-file-name'

* lisp/net/tramp.el (tramp-handle-abbreviate-file-name): Only use the
"home-directory" when a connection has been established.

3 years agoAllow savehist-additional-variables to truncate lists
Lars Ingebrigtsen [Tue, 15 Feb 2022 10:29:43 +0000 (11:29 +0100)]
Allow savehist-additional-variables to truncate lists

* lisp/savehist.el (savehist-save): Allow truncating values (bug#30943).

3 years agoAdjust files-test-file-size-human-readable test
Lars Ingebrigtsen [Tue, 15 Feb 2022 09:59:56 +0000 (10:59 +0100)]
Adjust files-test-file-size-human-readable test

* test/lisp/files-tests.el (files-test-file-size-human-readable):
Fix test after recent change.

3 years agoMake autoarg obsolete
Lars Ingebrigtsen [Tue, 15 Feb 2022 09:54:30 +0000 (10:54 +0100)]
Make autoarg obsolete

* lisp/obsolete/autoarg.el: Make obsolete.

3 years ago; Fix commit d6fba624e6
Arash Esbati [Tue, 15 Feb 2022 09:00:57 +0000 (10:00 +0100)]
; Fix commit d6fba624e6

* doc/misc/gnus.texi (Gravatars): Adjust vindex entries.

3 years agoFix parsing of some semibold font styles on Haiku
Po Lu [Tue, 15 Feb 2022 07:27:31 +0000 (07:27 +0000)]
Fix parsing of some semibold font styles on Haiku

* src/haiku_font_support.cc (font_style_to_flags): Accept
"Semibold" to mean SemiBold as well.  Reported by
augiedoggie <augiedoggie@users.noreply.github.com>.

3 years agoDisable auto-lowering and raising on Haiku when a popup is active
Po Lu [Tue, 15 Feb 2022 07:21:18 +0000 (07:21 +0000)]
Disable auto-lowering and raising on Haiku when a popup is active

* src/haikuterm.c (haiku_new_focus_frame):
(haiku_read_socket): Don't raise or lower if popup is activated.

3 years agoReplace use of `DefaultRootWindow' with our recorded root window
Po Lu [Tue, 15 Feb 2022 05:41:52 +0000 (13:41 +0800)]
Replace use of `DefaultRootWindow' with our recorded root window

* src/xfns.c (x_relative_mouse_position):
(x_set_parent_frame):
(Fx_mouse_absolute_pixel_position):
(Fx_set_mouse_absolute_pixel_position):
* src/xterm.c (x_iconify_frame): Use dpyinfo->root_window
instead of DefaultRootWindow.

3 years agoImprove the help message for the pgtk configure option
Po Lu [Tue, 15 Feb 2022 04:52:30 +0000 (12:52 +0800)]
Improve the help message for the pgtk configure option

* configure.ac: Describe the purpose of PGTK better.

3 years ago; * doc/lispref/variables.texi (Setting Variables): Fix a typo.
Aleksandr Vityazev [Mon, 14 Feb 2022 20:30:58 +0000 (20:30 +0000)]
; * doc/lispref/variables.texi (Setting Variables): Fix a typo.

3 years ago* src/xterm.c (init_xterm): Use more reliable method to disable XI2.
Po Lu [Tue, 15 Feb 2022 02:23:49 +0000 (10:23 +0800)]
* src/xterm.c (init_xterm): Use more reliable method to disable XI2.

3 years agoBetter handle devices being enabled on XI2
Po Lu [Tue, 15 Feb 2022 01:19:12 +0000 (09:19 +0800)]
Better handle devices being enabled on XI2

* src/xterm.c (handle_one_xevent): Don't abort on DeviceChanged
if the device couldn't be found, instead regenerating the device
hierarchy to see if it was enabled.