]> git.eshelyaron.com Git - emacs.git/log
emacs.git
2 years agoFix scroll optimizations being enabled for some rows with stipples
Po Lu [Mon, 9 May 2022 12:15:41 +0000 (20:15 +0800)]
Fix scroll optimizations being enabled for some rows with stipples

* src/dispnew.c (update_text_area): New parameter `partial_p'.
Set it if not enough glyphs were drawn to determine if a row
doesn't have a stipple.
(update_window_line): Preserve current_row->stipple_p in that
case, after making the desired row current.

* src/xterm.c (x_draw_fringe_bitmap): Set row->stipple.

2 years agoMake ediff-show-diff-output work better on unsaved buffers
Lars Ingebrigtsen [Mon, 9 May 2022 12:06:24 +0000 (14:06 +0200)]
Make ediff-show-diff-output work better on unsaved buffers

* lisp/vc/ediff-util.el (ediff-show-diff-output): Make the `D'
command work on unsaved buffers without a prefix (bug#45016).

2 years agoAllow non-interactive use of eldoc-doc-buffer
João Távora [Mon, 9 May 2022 11:29:59 +0000 (12:29 +0100)]
Allow non-interactive use of eldoc-doc-buffer

* lisp/emacs-lisp/eldoc.el (eldoc-doc-buffer): Allow
non-interactive use.
(Version): Bump minor.

2 years agoCopy edits for the regexp sections in the manuals
Lars Ingebrigtsen [Mon, 9 May 2022 11:38:40 +0000 (13:38 +0200)]
Copy edits for the regexp sections in the manuals

* doc/lispref/searching.texi (Regexp Backslash):
* doc/emacs/search.texi (Regexps, Regexp Backslash): Copy edits
from Jay Bingham (bug#41970).

2 years ago; * src/haikuterm.c (haiku_draw_underwave): Fix default scale.
Po Lu [Mon, 9 May 2022 11:21:15 +0000 (11:21 +0000)]
; * src/haikuterm.c (haiku_draw_underwave): Fix default scale.

2 years agoRespect display scale factor drawing underwaves on Haiku
Po Lu [Mon, 9 May 2022 11:10:13 +0000 (11:10 +0000)]
Respect display scale factor drawing underwaves on Haiku

* src/haikuterm.c (haiku_get_scale_factor): New function.
(haiku_draw_underwave): Apply said factor.

2 years agoAdd meta navigation keys to outline-minor-mode-cycle-map
Lars Ingebrigtsen [Mon, 9 May 2022 10:37:11 +0000 (12:37 +0200)]
Add meta navigation keys to outline-minor-mode-cycle-map

* lisp/outline.el (outline-minor-mode-cycle-map): Add meta
navigate keys (bug#41129).

2 years agoAdd new user option table-latex-environment
Vladimir Nikishkin [Mon, 9 May 2022 10:03:33 +0000 (12:03 +0200)]
Add new user option table-latex-environment

* lisp/textmodes/table.el (table-latex-environment): New user
option (bug#55333).
(table--generate-source-prologue): Use it.

2 years agoFix file-based launching on Haiku
Po Lu [Mon, 9 May 2022 08:22:03 +0000 (08:22 +0000)]
Fix file-based launching on Haiku

* src/haikuselect.c (Fhaiku_roster_launch): Canonicalize file
names before using them.

2 years agoUse default external browser by default on Haiku
Po Lu [Mon, 9 May 2022 07:54:54 +0000 (07:54 +0000)]
Use default external browser by default on Haiku

* lisp/net/browse-url.el (browse-url-default-browser): Use that
by default on Haiku.
(browse-url-default-haiku-browser): New function.
* src/haiku_support.cc (be_roster_launch):
* src/haiku_support.h: New function.  Update prototypes.
* src/haikuselect.c (haiku_message_to_lisp): Encode and decode
files correctly.
(haiku_lisp_to_message): Encode and decode files correctly.
(Fhaiku_roster_launch): New function.
(syms_of_haikuselect): Update defsubrs.

2 years ago; Merge from origin/emacs-28
Stefan Kangas [Mon, 9 May 2022 04:30:29 +0000 (06:30 +0200)]
; Merge from origin/emacs-28

The following commit was skipped:

d24ea263e2 dired-do-query-replace-regexp doc string fix

2 years agoMerge from origin/emacs-28
Stefan Kangas [Mon, 9 May 2022 04:30:28 +0000 (06:30 +0200)]
Merge from origin/emacs-28

1d012e0a62 Linux console: don't translate ESC TAB to `backtab' in inp...

2 years ago; Merge from origin/emacs-28
Stefan Kangas [Mon, 9 May 2022 04:30:28 +0000 (06:30 +0200)]
; Merge from origin/emacs-28

The following commit was skipped:

e683b08b3f Handle changed scp protocol in Tramp, don't merge

2 years agoFix stipple bitmap caching on Haiku
Po Lu [Mon, 9 May 2022 02:52:16 +0000 (02:52 +0000)]
Fix stipple bitmap caching on Haiku

* src/image.c (image_create_bitmap_from_file): Set file name on
the bitmap rec on Haiku.

2 years agoAllow disabling Motif drag protocol
Po Lu [Mon, 9 May 2022 02:13:43 +0000 (10:13 +0800)]
Allow disabling Motif drag protocol

* lisp/cus-start.el (standard): Add new variable.
* src/xterm.c (x_dnd_update_state, handle_one_xevent): Respect
new variable.
(syms_of_xterm): New variable `x-dnd-disable-motif-drag'.

2 years agoAllow precision-scrolling nonselected windows when the minibuffer is resized
Po Lu [Mon, 9 May 2022 01:37:58 +0000 (09:37 +0800)]
Allow precision-scrolling nonselected windows when the minibuffer is resized

* doc/lispref/windows.texi (Vertical Scrolling): Document new
`preserve-vscroll-p' parameter of `set-window-vscroll'.
* etc/NEWS: Announce new parameter.

* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-down-page)
(pixel-scroll-precision-scroll-up-page): Use that parameter when
setting the vscroll.

* src/window.c (window_scroll_pixel_based, Fset_window_vscroll):
Adjust for new parameter.
* src/window.h (struct window): New flag `preserve_vscroll_p'.

* src/xdisp.c (redisplay_window): Preserve the vscroll inside
force_start on frozen windows with that flag set.  (bug#55312)

2 years agoFix race conditions in handling of unsupported drops on X
Po Lu [Mon, 9 May 2022 01:17:28 +0000 (09:17 +0800)]
Fix race conditions in handling of unsupported drops on X

* lisp/x-dnd.el (x-dnd-handle-unsupported-drop): Adjust for new
parameters.

* src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr):
Export variables.
(kbd_buffer_get_event): Ignore already handled unsupported
drops.
* src/keyboard.h: Update prototypes.

* src/termhooks.h (enum event_kind): Document meaning of
`modifiers' in UNSUPPORTED_DROP_EVENTs.

* src/xterm.c (x_dnd_send_unsupported_drop): Set event modifiers
to current level.
(x_toggle_visible_pointer): Fix fixes fallback.
(x_dnd_begin_drag_and_drop): Handle UNSUPPORTED_DROP_EVENTs
already in the keyboard buffer before starting DND.
(syms_of_xterm): Give timestamp to unsupported drop function.

* src/xterm.h: Update prototypes.

2 years agoremember-notes: Use pop-to-buffer-same-window not switch-to-buffer
Sean Whitton [Sun, 8 May 2022 20:45:35 +0000 (13:45 -0700)]
remember-notes: Use pop-to-buffer-same-window not switch-to-buffer

* lisp/textmodes/remember.el (remember-notes): Use
pop-to-buffer-same-window rather than switch-to-buffer, to allow
customization via display-buffer-alist.

2 years agoMinor documentation improvements for completions commands and options
Juri Linkov [Sun, 8 May 2022 18:01:34 +0000 (21:01 +0300)]
Minor documentation improvements for completions commands and options

* doc/emacs/mini.texi (Completion Commands): Mention prefix argument
of choose-completion.
(Completion Options): Improve documentation of completions-format
and completions-sort.

2 years ago; Fix typos and wording in a doc string
Eli Zaretskii [Sun, 8 May 2022 16:08:34 +0000 (19:08 +0300)]
; Fix typos and wording in a doc string

* lisp/textmodes/pixel-fill.el (pixel-fill-width): Fix doc
string.  (Bug#55318)

2 years agoAdd Greek translation of the tutorial
Protesilaos Stavrou [Sun, 8 May 2022 14:27:48 +0000 (17:27 +0300)]
Add Greek translation of the tutorial

* etc/tutorials/TUTORIAL.el_GR: Add tutorial in Greek.  It is a
faithful translation of the TUTORIAL.
* etc/tutorials/TUTORIAL.translators (Author): Mention myself as
the author and the maintainer.
* etc/NEWS: Announce it.  (Bug#55314)

* lisp/language/greek.el (set-language-info-alist): Link to the
tutorial and include sample text.

2 years ago; * etc/HELLO: Remove empty line.
Eli Zaretskii [Sun, 8 May 2022 14:37:32 +0000 (17:37 +0300)]
; * etc/HELLO: Remove empty line.

2 years agoAdd support for the Tirhuta script
समीर सिंह Sameer Singh [Sun, 8 May 2022 12:12:35 +0000 (17:42 +0530)]
Add support for the Tirhuta script

* lisp/language/indian.el ("Tirhuta"): New language environment.
Add composition rules for Tirhuta.  Add sample text and input
method.
* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Support Tirhuta.
* lisp/leim/quail/indian.el ("tirhuta"): New input method.

* etc/HELLO: Add a Tirhuta greeting.
* etc/NEWS: Announce the new language environment and its
input method.

2 years ago* lisp/emacs-lisp/oclosure.el (oclosure-define): Fix empty case
Stefan Monnier [Sun, 8 May 2022 14:33:49 +0000 (10:33 -0400)]
* lisp/emacs-lisp/oclosure.el (oclosure-define): Fix empty case

2 years agoDon't hang on trying to rename FIFOs between file systems
Lars Ingebrigtsen [Sun, 8 May 2022 13:41:46 +0000 (15:41 +0200)]
Don't hang on trying to rename FIFOs between file systems

* src/fileio.c (Frename_file): Don't hang on trying to move FIFOs
(bug#34069).

2 years agodired-do-query-replace-regexp doc string fix
Visuwesh [Sun, 8 May 2022 11:17:34 +0000 (13:17 +0200)]
dired-do-query-replace-regexp doc string fix

* lisp/dired-aux.el (dired-do-query-replace-regexp): Refer
'fileloop-continue' instead of the obsolete command
'tags-loop-continue'.  (Bug#55311)

(cherry picked from commit 4c505203f9171886f47638779326e257a95a1d79)

2 years agoFix display of fringes with stipples on X
Po Lu [Sun, 8 May 2022 13:28:28 +0000 (21:28 +0800)]
Fix display of fringes with stipples on X

* src/xterm.c (x_draw_fringe_bitmap): Set fill style and use
fill function correctly.

2 years agoFix display of fringes with stipples on Haiku
Po Lu [Sun, 8 May 2022 13:20:43 +0000 (13:20 +0000)]
Fix display of fringes with stipples on Haiku

* haikuterm.c (haiku_after_update_window_line): Fix coding
style.
(haiku_draw_fringe_bitmap): Handle display of stipples if
present.

2 years agoCC Mode: Fix bug in c-parse-state. Fixes bug #55181.
Alan Mackenzie [Sun, 8 May 2022 13:14:14 +0000 (13:14 +0000)]
CC Mode: Fix bug in c-parse-state.  Fixes bug #55181.

* lisp/progmodes/cc-engine.el (c-state-cache-lower-good-pos): When in a
literal, return the start of that literal as a "good pos", not the parameter
POS.

2 years agoSet stipple flag on PGTK as well
Po Lu [Sun, 8 May 2022 13:07:44 +0000 (21:07 +0800)]
Set stipple flag on PGTK as well

* pgtkterm.c (pgtk_draw_glyph_string_background):
(pgtk_draw_glyph_string): Set stipple flag on string row.
(pgtk_draw_fringe_bitmap):
(pgtk_defined_color): Fix coding style.

2 years agoAllow term-mode to send function keys to the underlying shell
Lars Ingebrigtsen [Sun, 8 May 2022 13:03:59 +0000 (15:03 +0200)]
Allow term-mode to send function keys to the underlying shell

* lisp/term.el (term-bind-function-keys): New user option.
(term-raw-map): Bind f keys.
(term-send-function-key): Send the function key to the underlying
shell (bug#29920).

2 years agoSet stipple flags on Haiku as well
Po Lu [Sun, 8 May 2022 13:02:00 +0000 (13:02 +0000)]
Set stipple flags on Haiku as well

* src/haikuterm.c (haiku_draw_glyph_string): Set stipple flag
where stipples are actually drawn.  (This is different from X.)

2 years agoDisable scrolling optimizations when a stipple is present
Po Lu [Sun, 8 May 2022 12:48:42 +0000 (20:48 +0800)]
Disable scrolling optimizations when a stipple is present

* src/dispextern.h (struct glyph_row): New field `stippled_p'.
We cannot just use the contents of the glyph row, since it has
to be set in `gui_clear_end_of_line' and is more convenient to
set inside the various draw_glyph_string functions.

* src/dispnew.c (scrolling_window): Disable if a row in the
current matrix has the stipple_p flag set.

* src/xdisp.c (gui_clear_end_of_line):
* src/xterm.c (x_draw_image_glyph_string)
(x_draw_stretch_glyph_string, x_draw_glyph_string): Set
`stipple_p' if a stipple pattern was drawn.

2 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Po Lu [Sun, 8 May 2022 11:43:13 +0000 (19:43 +0800)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

2 years agoLinux console: don't translate ESC TAB to `backtab' in input-decode-map.
Alan Mackenzie [Sun, 8 May 2022 11:39:45 +0000 (11:39 +0000)]
Linux console: don't translate ESC TAB to `backtab' in input-decode-map.

This translation happened after the terminfo entry for <shift>TAB in the linux
section was changed to kcbt=\E^I in ncurses version 6.3.

* lisp/term/linux.el (terminal-init-linux): Add a define-key form to remove
the entry for "\e\t" from input-decode-map.

* etc/PROBLEMS: Add a new section under "character terminals" about S-TAB
wrongly doing the same thing as M-TAB, giving tips about amending the Linux
keyboard layout.

2 years agodired-do-query-replace-regexp doc string fix
Visuwesh [Sun, 8 May 2022 11:17:34 +0000 (13:17 +0200)]
dired-do-query-replace-regexp doc string fix

* lisp/dired-aux.el (dired-do-query-replace-regexp): Refer
'fileloop-continue' instead of the obsolete command
'tags-loop-continue'.

2 years agoFix crashes on ordinary menus on macOS
Po Lu [Sun, 8 May 2022 11:14:57 +0000 (19:14 +0800)]
Fix crashes on ordinary menus on macOS

* src/nsmenu.m ([EmacsMenu runMenuAt:forFrame:keymaps:]): Fix
coding style.
([EmacsMenu menu:willHighlightItem:]): Ignore if this is a
context menu.

2 years agoFix bug in `pixel-scroll-precision-mode' on nonselected windows
Po Lu [Sun, 8 May 2022 11:02:06 +0000 (19:02 +0800)]
Fix bug in `pixel-scroll-precision-mode' on nonselected windows

* src/window.c (Fset_window_vscroll): Mark window for redisplay.
(bug#55299)

2 years agoHandle changed scp protocol in Tramp
Michael Albinus [Sun, 8 May 2022 09:51:59 +0000 (11:51 +0200)]
Handle changed scp protocol in Tramp

* lisp/net/tramp-sh.el (tramp-scp-force-scp-protocol): New defvar.
(tramp-scp-force-scp-protocol): New defun.
(tramp-do-copy-or-rename-file-out-of-band): Use it.
(tramp-scp-direct-remote-copying, tramp-methods) <scp, scpx>: Use "%z".

* lisp/net/tramp.el (tramp-methods): Adapt docstring.

2 years agoHandle changed scp protocol in Tramp, don't merge
Michael Albinus [Sun, 8 May 2022 09:43:19 +0000 (11:43 +0200)]
Handle changed scp protocol in Tramp, don't merge

* lisp/net/tramp-sh.el (tramp-scp-force-scp-protocol): New defvar.
(tramp-scp-force-scp-protocol): New defun.
(tramp-do-copy-or-rename-file-out-of-band): Use it.
(tramp-methods) <scp, scpx>: Use "%y".

* lisp/net/tramp.el (tramp-methods): Adapt docstring.

2 years agoImprove handling of invisible cursor alloc failures
Po Lu [Sun, 8 May 2022 06:33:34 +0000 (14:33 +0800)]
Improve handling of invisible cursor alloc failures

* src/xterm.c (x_toggle_visible_pointer): Use Xfixes if cursor
allocation really fails.  This happens when the X server has a
limit on the number of cursors that can be created.

2 years agoFix file-based stipple on NS
Po Lu [Sun, 8 May 2022 06:27:13 +0000 (14:27 +0800)]
Fix file-based stipple on NS

* src/image.c (image_create_bitmap_from_file) [HAVE_NS]: Fix
loading XBM data from file.

2 years agoFix selection dialog display on MS-Windows
Eli Zaretskii [Sun, 8 May 2022 06:24:29 +0000 (09:24 +0300)]
Fix selection dialog display on MS-Windows

* src/w32fns.c (w32_wnd_proc) <WM_PAINT>: Update the frame from
the back buffer when double-buffering is in effect and a selection
dialog is open.
(w32_dialog_in_progress): Indicate to 'w32_wnd_proc' that a
selection dialog is open.  (Bug#55208)

2 years agoFix display of hollow box cursor on NS
Po Lu [Sun, 8 May 2022 05:44:28 +0000 (13:44 +0800)]
Fix display of hollow box cursor on NS

* src/nsterm.m (ns_draw_window_cursor): Fix verbatim
translations from X.

2 years agoFix setting stipple via `set-face-stipple'
Po Lu [Sun, 8 May 2022 05:28:11 +0000 (05:28 +0000)]
Fix setting stipple via `set-face-stipple'

* lisp/faces.el (face-valid-attribute-values): Return results
for `:stipple' in correct format.

2 years agoImplement stipples for stretch glyphs
Po Lu [Sun, 8 May 2022 05:09:24 +0000 (05:09 +0000)]
Implement stipples for stretch glyphs

* src/haikuterm.c (haiku_draw_stipple_background): Accept new
arguments for specifying the color explicitly.  All callers
changed.
(haiku_draw_stretch_glyph_string): Draw stipple correctly.
(haiku_draw_glyph_string): Handle stipple correctly when drawing
neighbors.

2 years agoFully implement stipples for text on Haiku
Po Lu [Sun, 8 May 2022 04:42:11 +0000 (04:42 +0000)]
Fully implement stipples for text on Haiku

* src/haikufont.c (haikufont_draw): Use
`haiku_draw_background_rect' instead.

* src/haikuterm.c (haiku_draw_plain_background): Change
arguments to accept rect manually.
(haiku_get_bitmap): Delete function.
(haiku_get_bitmap_rec): New function.
(haiku_draw_stipple_background): Accept rect instead of box
sizes.
(haiku_draw_background_rect): New function.
(haiku_maybe_draw_background): Use that instead.
(haiku_draw_image_glyph_string): Add notice.
(haiku_draw_glyph_string): Set `stippled_p' correctly.

* src/haikuterm.h (struct haiku_bitmap_record): New fields for
keeping track of stipple state.
* src/image.c (image_create_bitmap_from_data)
(image_create_bitmap_from_file, free_bitmap_record): Free and
set them accordingly.

2 years agoImplement bitmap loading for faces on Haiku
Po Lu [Sun, 8 May 2022 03:08:42 +0000 (03:08 +0000)]
Implement bitmap loading for faces on Haiku

Stipples don't completely work yet.

* lisp/faces.el (face-valid-attribute-values): Enable `:stipple'
on Haiku.
* src/haiku_draw_support.cc (BView_DrawBitmap)
(BView_DrawBitmapWithEraseOp, BView_DrawMask): Don't push and
pop states.
(BView_DrawBitmapTiled): New function.

* src/haiku_support.cc (BBitmap_import_mono_bits): Delete
function.
* src/haiku_support.h: Update prototypes.
* src/haikuterm.c (get_string_resource): Fix coding style.
(haiku_get_bitmap, haiku_draw_stipple_background): Implement
partially.
(haiku_set_scroll_bar_default_width)
(haiku_set_scroll_bar_default_height, haiku_scroll_bar_create)
(haiku_set_horizontal_scroll_bar, haiku_set_vertical_scroll_bar)
(haiku_create_terminal, haiku_scroll_bar_remove): Fix coding
style.

* src/image.c (image_create_bitmap_from_data)
(image_create_bitmap_from_file): Implement on Haiku.

2 years agoUse correct event structures to fetch time on XI2
Po Lu [Sun, 8 May 2022 01:06:40 +0000 (09:06 +0800)]
Use correct event structures to fetch time on XI2

* src/xterm.c (handle_one_xevent): Don't use generic `xi_event'
to access the event time.

2 years ago; Pacify some --without-x byte-compiler warnings.
Basil L. Contovounesios [Sat, 7 May 2022 17:17:23 +0000 (20:17 +0300)]
; Pacify some --without-x byte-compiler warnings.

2 years ago* src/fns.c: Fix IDs in comments to match code.
Paul Eggert [Sat, 7 May 2022 16:48:27 +0000 (09:48 -0700)]
* src/fns.c: Fix IDs in comments to match code.

2 years agoFix Bengali composition rules
Eli Zaretskii [Sat, 7 May 2022 16:34:53 +0000 (19:34 +0300)]
Fix Bengali composition rules

* lisp/language/indian.el (bengali-composable-pattern): Fix
composition rules for U+09F0 and U+09FE.  Patch from
समीर सिंह Sameer Singh <lumarzeli30@gmail.com>.  (Bug#55303)

2 years agoMake 'delete-process' into a command
Lars Ingebrigtsen [Sat, 7 May 2022 16:21:29 +0000 (18:21 +0200)]
Make 'delete-process' into a command

* doc/lispref/processes.texi (Deleting Processes): Document
missing PROCESS value.
* src/process.c (Fdelete_process): Allow calling interactively
(bug#10107).

2 years ago; Fix last change of Devanagari composition rules.
Eli Zaretskii [Sat, 7 May 2022 15:10:42 +0000 (18:10 +0300)]
; Fix last change of Devanagari composition rules.

2 years agoImprove Devanagari character composition rules
Eli Zaretskii [Sat, 7 May 2022 14:54:19 +0000 (17:54 +0300)]
Improve Devanagari character composition rules

* lisp/language/indian.el (devanagari-composable-pattern): Add
rules for Vedic accents.  Suggested by Madhu <enometh@meer.net>.

2 years ago(dabbrev-completion): Fix bug#45768
Stefan Monnier [Sat, 7 May 2022 14:21:26 +0000 (10:21 -0400)]
(dabbrev-completion): Fix bug#45768

Make `dabbrev-completion` go through `completion-at-point` so that
it interacts correctly with Icomplete.  Export a new
`completion-capf` function while we're at it, since it can be useful
elsewhere.

* lisp/dabbrev.el (dabbrev-capf): New function,
extracted from `dabbrev-completion`.
(dabbrev-completion): Use it.

2 years agoClean up some variables in the Haiku code
Po Lu [Sat, 7 May 2022 13:38:42 +0000 (13:38 +0000)]
Clean up some variables in the Haiku code

* src/haikuterm.c: Add comments to some variables and clean up
initializers.
* src/haikuterm.h (haiku_frame_param_handlers): Move here
instead.

2 years agoAdd support for the Kaithi script
समीर सिंह Sameer Singh [Sat, 7 May 2022 12:25:25 +0000 (17:55 +0530)]
Add support for the Kaithi script

* lisp/language/indian.el ("Kaithi"): New language environment.
Add composition rules for Kaithi.  Add sample text and input
method.
* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Support Kaithi.
* lisp/leim/quail/indian.el ("kaithi"): New input method.

* etc/HELLO: Add a Kaithi greeting.
* etc/NEWS: Announce the new language environment and its
input method.

2 years agoExplain better what the interactive prefix does in scroll-down/up
Lars Ingebrigtsen [Sat, 7 May 2022 13:05:45 +0000 (15:05 +0200)]
Explain better what the interactive prefix does in scroll-down/up

* lisp/window.el (scroll-up-command, scroll-down-command):
* lisp/image-mode.el (image-scroll-up, image-scroll-down):
Actually explain what the interactive prefix does (bug#44503).

2 years agoDocument the `x' DWIM action in the manual
Lars Ingebrigtsen [Sat, 7 May 2022 12:42:18 +0000 (14:42 +0200)]
Document the `x' DWIM action in the manual

* doc/emacs/package.texi (Package Menu): Mention the DWIM action
of the `x' command.

2 years agoRemove tar-mode dabbrev-ignored-buffer-modes
Lars Ingebrigtsen [Sat, 7 May 2022 12:35:15 +0000 (14:35 +0200)]
Remove tar-mode dabbrev-ignored-buffer-modes

* lisp/dabbrev.el (dabbrev-ignored-buffer-modes): Remove tar-mode
from the default, because it isn't really a binary mode.

2 years agoMake `x' in package-menu-mode more DWIM
Lars Ingebrigtsen [Sat, 7 May 2022 12:31:42 +0000 (14:31 +0200)]
Make `x' in package-menu-mode more DWIM

* lisp/emacs-lisp/package.el (package-menu-mode): Make the doc
string more helpful.
(package-menu-execute): Make `x' when no files are installed DWIM.

2 years agoImprove inferior-python-mode scroll behaviour
Lars Ingebrigtsen [Sat, 7 May 2022 11:56:19 +0000 (13:56 +0200)]
Improve inferior-python-mode scroll behaviour

* lisp/progmodes/python.el (inferior-python-mode): Use
scroll-convervatively instead of trying to do this with a comint
filter (which produces flickering) (bug#31115).

2 years agoFix compilation warnings in newer subr tests
Lars Ingebrigtsen [Sat, 7 May 2022 11:45:35 +0000 (13:45 +0200)]
Fix compilation warnings in newer subr tests

* test/lisp/subr-tests.el (test-local-set-state): Fix compilation
warnings.

2 years agoAllow dabbrev to ignore binary buffers
Lars Ingebrigtsen [Sat, 7 May 2022 11:19:49 +0000 (13:19 +0200)]
Allow dabbrev to ignore binary buffers

* doc/emacs/abbrevs.texi (Dynamic Abbrevs): Document it.
* lisp/dabbrev.el (dabbrev-ignored-buffer-names)
(dabbrev-ignored-buffer-regexps): Link to it.
(dabbrev-ignored-buffer-modes): New user option (bug#19392).
(dabbrev--filter-buffer-modes): New function.
(dabbrev--select-buffers, dabbrev--make-friend-buffer-list): Use it.

2 years agoFix mouse face dismissal in some widget popups
Po Lu [Sat, 7 May 2022 11:00:04 +0000 (19:00 +0800)]
Fix mouse face dismissal in some widget popups

* src/xterm.c (handle_one_xevent): Accept XINotifyUngrab as
well.

2 years agoAllow inhibiting linkification in *Help* buffers
Lars Ingebrigtsen [Sat, 7 May 2022 10:46:55 +0000 (12:46 +0200)]
Allow inhibiting linkification in *Help* buffers

* doc/lispref/help.texi (Keys in Documentation): Document it.
lisp/help-mode.el (help-make-xrefs): Implement a new \+ syntax to
inhibit buttonification.

2 years agoMake the icomplete-in-buffer doc string document more
Lars Ingebrigtsen [Sat, 7 May 2022 10:15:30 +0000 (12:15 +0200)]
Make the icomplete-in-buffer doc string document more

* lisp/icomplete.el (icomplete-in-buffer): Note what this variable
does and doesn't do (bug#45768).

2 years agoAvoid having font locking triggering unnecessary auto-saving
Lars Ingebrigtsen [Sat, 7 May 2022 10:05:48 +0000 (12:05 +0200)]
Avoid having font locking triggering unnecessary auto-saving

* lisp/subr.el (with-silent-modifications): Use it to restore the
ticks (bug#11303).

* src/buffer.c (Finternal__set_buffer_modified_tick): New function.

2 years agoCache color lookup failures as well
Po Lu [Sat, 7 May 2022 09:01:44 +0000 (17:01 +0800)]
Cache color lookup failures as well

* src/xterm.c (x_parse_color): Cache color lookup failures too.
* src/xterm.h (struct color_name_cache_entry): New field
`valid'.

2 years agoFix 32-bit Haiku build
Po Lu [Sat, 7 May 2022 06:19:53 +0000 (06:19 +0000)]
Fix 32-bit Haiku build

* src/haiku_support.cc (MessageReceived): Fix type of
`old_what'.

2 years agoImplement `sticky' frame parameter on Haiku
Po Lu [Sat, 7 May 2022 06:17:46 +0000 (06:17 +0000)]
Implement `sticky' frame parameter on Haiku

* src/haiku_support.cc (BWindow_set_sticky): New function.
* src/haiku_support.h: Update prototypes.
* src/haikufns.c (haiku_set_sticky, haiku_frame_parm_handlers):
New frame param handler.

2 years agoMerge from origin/emacs-28
Stefan Kangas [Sat, 7 May 2022 04:30:32 +0000 (06:30 +0200)]
Merge from origin/emacs-28

afdf72eeb2 Fix bug#55274
5bfac7c774 Provide reference for OTF tags in the ELisp manual

2 years ago; Merge from origin/emacs-28
Stefan Kangas [Sat, 7 May 2022 04:30:32 +0000 (06:30 +0200)]
; Merge from origin/emacs-28

The following commit was skipped:

936009cfe5 Be more resilient towards errors during error handling

2 years agoFix race conditions in the Haiku file dialog
Po Lu [Sat, 7 May 2022 03:20:35 +0000 (03:20 +0000)]
Fix race conditions in the Haiku file dialog

* src/haiku_support.cc (current_file_panel_port): Delete
variable.
(class EmacsWindow, MessageReceived): Stop handling file panel
events here.
(class EmacsFilePanelCallbackLooper): New class.
(be_popup_file_dialog): Use a separate looper to handle file
panel events.

2 years agoFix freezes with some oddball menus
Po Lu [Sat, 7 May 2022 01:34:35 +0000 (09:34 +0800)]
Fix freezes with some oddball menus

* src/xmenu.c (x_activate_menubar): Clear flag if dispatching
the event failed.
* src/xterm.c (handle_one_xevent): Check for sensitive
CascadeButton instead of row column type.

2 years ago(icomplete-exhibit): Fix use in-buffer
Stefan Monnier [Fri, 6 May 2022 20:44:54 +0000 (16:44 -0400)]
(icomplete-exhibit): Fix use in-buffer

Also prefer #' to quote function names and remove redundant :group args.

* lisp/icomplete.el (icomplete-exhibit): Don't presume the completion
field ends at `point-max`.

2 years agoMake elisp-mode-syntax-propertize tighter to reflect syntax
Lars Ingebrigtsen [Fri, 6 May 2022 20:13:41 +0000 (22:13 +0200)]
Make elisp-mode-syntax-propertize tighter to reflect syntax

* lisp/progmodes/elisp-mode.el (elisp-mode-syntax-propertize): ?\N
and #s are case sensitive, so don't case-fold.  (And adjust regexps.)

2 years agoMake down-list signal an error if called inside a string
Lars Ingebrigtsen [Fri, 6 May 2022 19:13:32 +0000 (21:13 +0200)]
Make down-list signal an error if called inside a string

* lisp/emacs-lisp/lisp.el (down-list): Signal an error inside a
string (bug#5588).

2 years agoAdd char-folding of double quotes in isearch-fold-quotes-mode (bug#24510)
Juri Linkov [Fri, 6 May 2022 18:06:47 +0000 (21:06 +0300)]
Add char-folding of double quotes in isearch-fold-quotes-mode (bug#24510)

* lisp/isearch.el (isearch-fold-quotes-mode): Add char-folding of
double quotation marks.

* test/lisp/subr-tests.el (test-local-set-state): Test values
after setting state.

2 years agoFix handling of IMAP search strings
Eric Abrahamsen [Fri, 6 May 2022 17:14:08 +0000 (10:14 -0700)]
Fix handling of IMAP search strings

* lisp/gnus/gnus-search.el (gnus-search-imap-handle-string): This was
a misunderstanding of what `multibyte-string-p' means.  The check was
actually supposed to be whether the string was non-ascii or not.

2 years agoFurther log-view-file-next fix-ups
Lars Ingebrigtsen [Fri, 6 May 2022 17:09:12 +0000 (19:09 +0200)]
Further log-view-file-next fix-ups

* doc/emacs/maintaining.texi (VC Change Log): Remove the entries
for commands now removed from most VCs.
* lisp/vc/log-view.el (log-view-mode-menu): Disable menu entries
(bug#14531).

2 years agoDon't force Gnus cache usage in nnvirtual
Eric Abrahamsen [Fri, 6 May 2022 16:37:07 +0000 (09:37 -0700)]
Don't force Gnus cache usage in nnvirtual

* lisp/gnus/nnvirtual.el (nnvirtual-retrieve-headers): We're not sure
why this was happening, but it shouldn't be necessary. Simply calling
`gnus-retrieve-headers' directly will use the cache if the user has
configured it.

2 years agoFix forward-sexp for Unicode names in Emacs Lisp mode
Lars Ingebrigtsen [Fri, 6 May 2022 16:38:09 +0000 (18:38 +0200)]
Fix forward-sexp for Unicode names in Emacs Lisp mode

* lisp/progmodes/elisp-mode.el (elisp-mode-syntax-propertize):
Make forward-sexp work for Unicode character names (bug#23354).

2 years agoHandle elisp #-syntax better in Emacs Lisp mode
Noam Postavsky [Fri, 6 May 2022 16:31:00 +0000 (18:31 +0200)]
Handle elisp #-syntax better in Emacs Lisp mode

* elisp-mode.el (elisp-mode-syntax-propertize): New function.
(emacs-lisp-mode): Set it as syntax-propertize-function (bug#15998).

2 years agoFix bug#55274
Michael Albinus [Fri, 6 May 2022 15:33:41 +0000 (17:33 +0200)]
Fix bug#55274

* lisp/dired-aux.el (dired-do-compress-to): Use `file-local-name'
for shell out-file.  (Bug#55274)

2 years ago* lisp/emacs-lisp/smie.el (smie-auto-fill): Fix bug#19342
Stefan Monnier [Fri, 6 May 2022 15:09:58 +0000 (11:09 -0400)]
* lisp/emacs-lisp/smie.el (smie-auto-fill): Fix bug#19342

2 years agoRespect help-window-keep-selected in shortdoc buttons
Lars Ingebrigtsen [Fri, 6 May 2022 14:21:07 +0000 (16:21 +0200)]
Respect help-window-keep-selected in shortdoc buttons

* lisp/help-fns.el (help-fns--mention-shortdoc-groups): Respect
help-window-keep-selected.

* lisp/emacs-lisp/shortdoc.el (shortdoc-display-group): Allow
reusing the window.

2 years agoMove buffer-local-set-state to subr because it's used at runtime
Lars Ingebrigtsen [Fri, 6 May 2022 14:09:38 +0000 (16:09 +0200)]
Move buffer-local-set-state to subr because it's used at runtime

* lisp/subr.el (buffer-local-set-state)
(buffer-local-set-state--get, buffer-local-restore-state): Moved
from easy-mmode.el because they have to be available run-time.

2 years ago; Improve documentation of 'buffer-local-set-state'
Eli Zaretskii [Fri, 6 May 2022 12:15:27 +0000 (15:15 +0300)]
; Improve documentation of 'buffer-local-set-state'

* lisp/emacs-lisp/easy-mmode.el (buffer-local-set-state)
(buffer-local-restore-state): Doc fixes.

* doc/lispref/modes.texi (Defining Minor Modes): Fix a typo and
improve wording and indexing.

2 years agoMake compilation-parse-errors more resilient
Lars Ingebrigtsen [Fri, 6 May 2022 12:14:31 +0000 (14:14 +0200)]
Make compilation-parse-errors more resilient

* lisp/progmodes/compile.el (compilation-parse-errors): Be more
resilient in the presence of regexp alist not being completely set
up (bug#55282).

2 years agoImprove font specs generated by the Haiku font dialog
Po Lu [Fri, 6 May 2022 12:06:16 +0000 (12:06 +0000)]
Improve font specs generated by the Haiku font dialog

* src/haikufont.c (Fx_select_font): Use `nil' instead of
`unspecified' to be consistent with other font dialogs.

2 years agoFix inhibiting reading the user init file with "emacs -x"
Lars Ingebrigtsen [Fri, 6 May 2022 12:04:55 +0000 (14:04 +0200)]
Fix inhibiting reading the user init file with "emacs -x"

* lisp/startup.el (command-line): Really inhibit loading the user
init file with "emacs -x".

2 years agoRemove the P/N/M-p/M-n bindings from the general log-view map
Lars Ingebrigtsen [Fri, 6 May 2022 11:45:11 +0000 (13:45 +0200)]
Remove the P/N/M-p/M-n bindings from the general log-view map

* lisp/vc/log-view.el (log-view-mode-map): Remove the P/N/M-p/M-n
bindings (that are only usable in some VCs).
* lisp/vc/vc-sccs.el (vc-sccs-log-view-mode):
* lisp/vc/vc-rcs.el (vc-rcs-log-view-mode):
* lisp/vc/vc-cvs.el (vc-cvs-log-view-mode): New modes that bind
the P/N/M-p/M-n commands (bug#14531).

2 years agoDon't override search-default-mode set by user in info/help
Lars Ingebrigtsen [Fri, 6 May 2022 11:30:12 +0000 (13:30 +0200)]
Don't override search-default-mode set by user in info/help

* lisp/info.el (Info-mode):
* lisp/help-mode.el (help-mode): Don't override isearch mode set
by the user.

2 years agoChar-fold quotation characters in *info* and *Help*
Lars Ingebrigtsen [Fri, 6 May 2022 11:28:20 +0000 (13:28 +0200)]
Char-fold quotation characters in *info* and *Help*

* lisp/info.el (Info-mode):
* lisp/help-mode.el (help-mode): Use it.
* lisp/isearch.el (isearch-fold-quotes-mode): New minor mode
(bug#24510).

2 years agoRegenerate ldefs-boot.el
Lars Ingebrigtsen [Fri, 6 May 2022 11:21:07 +0000 (13:21 +0200)]
Regenerate ldefs-boot.el

2 years agoAutoload the buffer-local-set* things
Lars Ingebrigtsen [Fri, 6 May 2022 11:20:47 +0000 (13:20 +0200)]
Autoload the buffer-local-set* things

* lisp/emacs-lisp/easy-mmode.el (buffer-local-set-state--get)
(buffer-local-restore-state): Autoload.  Perhaps it would be
better to move these functions to subr.el or something...

2 years agoAdd new helper macros for minor modes to restore variables
Lars Ingebrigtsen [Fri, 6 May 2022 11:10:45 +0000 (13:10 +0200)]
Add new helper macros for minor modes to restore variables

* doc/lispref/modes.texi (Defining Minor Modes): Document it.

* lisp/emacs-lisp/easy-mmode.el (buffer-local-set-state): New macro.
(buffer-local-set-state--get): Helper function.
(buffer-local-restore-state): New function.

* lisp/textmodes/word-wrap-mode.el (word-wrap-whitespace-mode):
Use it to simplify code.

2 years agoFix thinko in tramp-skeleton-write-region
Michael Albinus [Fri, 6 May 2022 08:37:57 +0000 (10:37 +0200)]
Fix thinko in tramp-skeleton-write-region

* lisp/net/tramp.el (tramp-skeleton-write-region): Fix typos.
Flush cache in time.  (Bug#55247)
(tramp-handle-lock-file): Suppress messages in `write-region'.