]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoSimplify Minibuffer Edit example
Lars Ingebrigtsen [Sun, 20 Feb 2022 15:57:21 +0000 (16:57 +0100)]
Simplify Minibuffer Edit example

* doc/emacs/mini.texi (Minibuffer Edit): Say how to disable SPC
and ? completion (bug#36745).

3 years agoAdd instructions on disabling SPC completion to Minibuffer Edit
Lars Ingebrigtsen [Sun, 20 Feb 2022 15:23:01 +0000 (16:23 +0100)]
Add instructions on disabling SPC completion to Minibuffer Edit

* doc/emacs/mini.texi (Minibuffer Edit): Say how to disable SPC
and ? completion (bug#36745).

3 years agoFix compilation warning introduced by previous shr.el change
Lars Ingebrigtsen [Sun, 20 Feb 2022 15:14:49 +0000 (16:14 +0100)]
Fix compilation warning introduced by previous shr.el change

* lisp/net/shr.el (url-file): Fix compilation warning.

3 years agoMake eww work better on Tramp HTML
Lars Ingebrigtsen [Sun, 20 Feb 2022 15:08:45 +0000 (16:08 +0100)]
Make eww work better on Tramp HTML

* lisp/net/eww.el (eww-open-file): Use it.
(eww-browse-url): Ditto.

* lisp/net/shr.el (shr-expand-url): Allow loading relative Tramp
files if we're reading from a file:// document.

* lisp/url/url-file.el (url-allow-non-local-files): New user option
(bug#40425).

3 years agoMake `g' work in eww buffers displaying Tramp files
Lars Ingebrigtsen [Sun, 20 Feb 2022 14:52:10 +0000 (15:52 +0100)]
Make `g' work in eww buffers displaying Tramp files

* lisp/net/eww.el (eww--file-buffer): Refactored out.
(eww-open-file): From here.
(eww-reload): Make reloading work in Tramp files.

3 years agoMake string-pixel-width about 40% faster
Lars Ingebrigtsen [Sun, 20 Feb 2022 14:24:47 +0000 (15:24 +0100)]
Make string-pixel-width about 40% faster

* lisp/emacs-lisp/subr-x.el (string-pixel-width): Speed up.

3 years ago* doc/misc/tramp.texi (Customizing Methods): Add tramp-nspawn.
Michael Albinus [Sun, 20 Feb 2022 14:24:31 +0000 (15:24 +0100)]
* doc/misc/tramp.texi (Customizing Methods): Add tramp-nspawn.

3 years agoQuote files that start with - in dired
Lars Ingebrigtsen [Sun, 20 Feb 2022 13:49:41 +0000 (14:49 +0100)]
Quote files that start with - in dired

* lisp/dired-aux.el (dired-shell-stuff-it): Add ./ to file names
that start with - (bug#10458).

3 years ago* lisp/net/tramp.el (tramp-read-passwd): Adapt for empty user names.
Michael Albinus [Sun, 20 Feb 2022 13:04:24 +0000 (14:04 +0100)]
* lisp/net/tramp.el (tramp-read-passwd): Adapt for empty user names.

3 years agoFix compilation warning in previous sendmail.el change
Lars Ingebrigtsen [Sun, 20 Feb 2022 12:45:56 +0000 (13:45 +0100)]
Fix compilation warning in previous sendmail.el change

* lisp/mail/sendmail.el (mm-long-lines-p): Fix compilation warning.

3 years agoEnsure that `mail-send' breaks too-long lines
Lars Ingebrigtsen [Sun, 20 Feb 2022 12:41:57 +0000 (13:41 +0100)]
Ensure that `mail-send' breaks too-long lines

* lisp/mail/sendmail.el (mail-send): Ensure that we fold too-long
lines when using `sendmail-user-agent' (bug#53412).

3 years agoAdd more bookmark types
Matthias Meulien [Sun, 20 Feb 2022 12:23:03 +0000 (13:23 +0100)]
Add more bookmark types

* lisp/gnus/gnus-sum.el (gnus-summary-bookmark-jump):
* lisp/man.el (Man-bookmark-jump): Mark the bookmark type
(bug#54030).

3 years agoFix font panel on NS
Po Lu [Sun, 20 Feb 2022 12:00:28 +0000 (20:00 +0800)]
Fix font panel on NS

* src/nsterm.m ([EmacsView changeFont:]): Don't use emacs_event,
instead placing events directly into the keyboard buffer.

3 years ago* src/haikumenu.c (haiku_dialog_show): Set `popup_activated_p'.
Po Lu [Sun, 20 Feb 2022 10:42:41 +0000 (10:42 +0000)]
* src/haikumenu.c (haiku_dialog_show): Set `popup_activated_p'.

Author:

3 years agoHandle GUI input while inside popup dialog on Haiku
Po Lu [Sun, 20 Feb 2022 10:38:38 +0000 (10:38 +0000)]
Handle GUI input while inside popup dialog on Haiku

* src/haiku_support.cc (alert_popup_value): New variable.
(be_alert_thread_entry): New function.
(BAlert_go): Complete rewrite that allows async input to be
handled while the popup is active.
* src/haiku_support.h: Update prototypes.
* src/haikumenu.c (haiku_dialog_show, haiku_popup_dialog): Stop
blocking input and pass required callbacks to `BAlert_go'.
* src/haikuterm.c (haiku_term_init): Set interrupt input mode to
t.

3 years agoFix typo in last change
Po Lu [Sun, 20 Feb 2022 02:05:46 +0000 (10:05 +0800)]
Fix typo in last change

* src/xterm.c (handle_one_xevent): Use `xi_done_keysym' label
when ignoring modifier keys from XI2 input.

3 years agoIgnore modifier keys early when handling X key press events
Po Lu [Sun, 20 Feb 2022 02:03:28 +0000 (10:03 +0800)]
Ignore modifier keys early when handling X key press events

* src/xterm.c (handle_one_xevent): Ignore modifier keys earlier
without going through the usual key lookup.
(x_delete_terminal): Free recorded modifier map.
(x_find_modifier_meanings): Record modifier map.

* src/xterm.h (struct x_display_info): New field `modmap'.

3 years agoFree XI2 devices in x_delete_display instead
Po Lu [Sun, 20 Feb 2022 01:14:00 +0000 (09:14 +0800)]
Free XI2 devices in x_delete_display instead

* src/xterm.c (x_delete_display): Free XI2 device data here
instead, since it doesn't involve contacting the X server any
more.
(x_delete_terminal): Stop freeing XI2 device data.

3 years agoRevert "; * rcirc.el (rcirc-print): Prefer sleep-for over sit-for"
Philip Kaludercic [Sat, 19 Feb 2022 21:04:44 +0000 (22:04 +0100)]
Revert "; * rcirc.el (rcirc-print): Prefer sleep-for over sit-for"

3 years ago(specpdl_unrewind): Fix corner case
Stefan Monnier [Sat, 19 Feb 2022 19:55:39 +0000 (14:55 -0500)]
(specpdl_unrewind): Fix corner case

* src/lisp.h (enum specbind_tag): New elem SPECPDL_NOP.

* src/eval.c (specpdl_unrewind): Zap entries that can't be applied any more,
and simplify.
(default_toplevel_binding, lexbound_p, Fbacktrace__locals): Simplify.
(do_one_unbind, mark_specpdl): Handle SPECPDL_NOP.

3 years ago; * rcirc.el (rcirc-print): Prefer sleep-for over sit-for
Philip Kaludercic [Sat, 19 Feb 2022 19:29:29 +0000 (20:29 +0100)]
; * rcirc.el (rcirc-print): Prefer sleep-for over sit-for

Compare

(benchmark-run 100000 (sit-for 0))
;; => (2.600030102 12 1.523461324000003)

with

(benchmark-run 100000 (sleep-for 0))
;; (0.015882939 0 0.0)

3 years ago(macroexp-warn-and-return): Fix bug#53618
Stefan Monnier [Sat, 19 Feb 2022 19:20:02 +0000 (14:20 -0500)]
(macroexp-warn-and-return): Fix bug#53618

* lisp/emacs-lisp/macroexp.el (macroexp-warn-and-return):
Reorder arguments to preserve compatibility with that of Emacs-28.
(macroexp--unfold-lambda, macroexp--expand-all):
* lisp/emacs-lisp/pcase.el (pcase-compile-patterns, pcase--u1):
* lisp/emacs-lisp/gv.el (gv-ref):
* lisp/emacs-lisp/eieio.el (defclass):
* lisp/emacs-lisp/eieio-core.el (eieio-oref, eieio-oref-default)
(eieio-oset-default):
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
* lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet, cl-defstruct):
* lisp/emacs-lisp/cl-generic.el (cl-defmethod):
* lisp/emacs-lisp/byte-run.el (defmacro, defun):
* lisp/emacs-lisp/bindat.el (bindat--type): Adjust accordingly.

3 years ago(loadhist_initialize): Minor refactoring
Stefan Monnier [Sat, 19 Feb 2022 19:12:14 +0000 (14:12 -0500)]
(loadhist_initialize): Minor refactoring

Consolidate a bit of code.

* src/lread.c (loadhist_initialize): New function.
(Fload, readevalloop): Use it.

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.