Po Lu [Sat, 11 Jun 2022 01:19:05 +0000 (09:19 +0800)]
Prevent crash handling keyboard input from non-frame windows
* src/xterm.c (handle_one_xevent): Use `dpyinfo' to access xkb
desc. (bug#55890)
Po Lu [Sat, 11 Jun 2022 01:12:44 +0000 (09:12 +0800)]
Fix cancelling DND upon a regular X error
* src/xterm.c (x_connection_closed): The display isn't dead upon
a non-IO error, so don't avoid sending messages to clean stuff
up.
Dmitry Gutov [Sat, 11 Jun 2022 00:45:46 +0000 (03:45 +0300)]
elisp-completion-at-point: Replace last usage of 'read'
* lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
Replace the last remaining usage of 'read' (bug#55491).
Juri Linkov [Fri, 10 Jun 2022 16:43:31 +0000 (19:43 +0300)]
New function isearch-search-fun-in-text-property (bug#14013).
* lisp/dired-aux.el (dired-isearch-search-filenames): Move most of the body
to the new function isearch-search-fun-in-text-property.
* lisp/isearch.el (isearch-search-fun-in-text-property):
New function refactored from dired-isearch-search-filenames.
Jim Porter [Thu, 9 Jun 2022 16:50:20 +0000 (09:50 -0700)]
Don't use 'list' command in Eshell command forms
When executed like a command, 'list' looks for external programs named
'list' first before falling back to the Lisp function of the same
name. This causes unexpected behavior, since the Lisp function is
what we want in these tests.
* test/lisp/eshell/esh-var-tests.el (esh-var-test/interp-cmd-indices)
(esh-var-test/quoted-interp-cmd-indices): Use 'listify' instead of
'list'.
Eli Zaretskii [Fri, 10 Jun 2022 13:13:56 +0000 (16:13 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Fri, 10 Jun 2022 13:13:16 +0000 (16:13 +0300)]
; * etc/NEWS: Fix last change.
Eli Zaretskii [Fri, 10 Jun 2022 13:12:00 +0000 (16:12 +0300)]
; Minor copyedits of --with-small-ja-dic option
* etc/NEWS: Document the new configuration option.
* lisp/international/ja-dic-cnv.el (skkdic-convert-okuri-nasi):
Fix whitespace.
(skkdic-convert): Doc fix.
(batch-skkdic-convert): Fix Help message.
* configure.ac: Tweak the description of --with-small-ja-dic.
Po Lu [Fri, 10 Jun 2022 12:51:45 +0000 (20:51 +0800)]
Remove extra call to XTranslateCoordinates when performing "xterm" drop
* src/xterm.c (x_dnd_do_unsupported_drop): Signal error when
XdndSelection is lost, set subwindow, and simplify
XTranslateCoordinates loop.
Taiju HIGASHI [Tue, 7 Jun 2022 12:46:14 +0000 (21:46 +0900)]
Don't reduce vocabulary in ja-dic.el by default
* configure.ac: Add the "--with-small-ja-dic" configure option.
* leim/Makefile.in (${leimdir}/ja-dic/ja-dic.el): Change the build
method depending on whether or not the --with-small-ja-dic option
is specified.
* lisp/international/ja-dic-cnv.el (skkdic-convert-okuri-nasi): Add
the "no-reduction" optional argument. When it is specified, then
generate a Japanese dictionary without reduced vocabulary.
(skkdic-convert): Add the "no-reduction" optional argument.
(batch-skkdic-convert): Add the "--no-reduction" command line argument.
Eli Zaretskii [Fri, 10 Jun 2022 11:22:18 +0000 (14:22 +0300)]
; Fix documentation of 'completing-read' and friends
* src/minibuf.c (Fcompleting_read):
* lisp/minibuffer.el (read-file-name):
* doc/lispref/minibuf.texi (Minibuffer Completion):
* etc/NEWS: Fix typos and wording of the description of the
REQUIRE-MATCH argument to 'completing-read'.
Richard Hansen [Thu, 2 Jun 2022 20:33:16 +0000 (16:33 -0400)]
; bindat (bindat--length-group): Fix indentation
Richard Hansen [Sun, 29 May 2022 03:53:51 +0000 (23:53 -0400)]
; bindat (strz): Consistent length type check, take two
Commit
30ec4a7347b2944818c6fc469ae871374ce7caa4 is incorrect -- the
length computation logic uses a simple nilness test, not `numberp'.
The `numberp' case is just an optimization if `len' is a literal
number; it does not affect the behavior.
Revert that commit, add some comments to help future readers avoid the
same mistake, and update the pack logic to use the same optimization
as the length computation for consistency.
Richard Hansen [Sun, 29 May 2022 21:15:04 +0000 (17:15 -0400)]
; bindat-tests (str, strz): Refine tests
str and strz:
* Add tests for packing into a pre-allocated string.
strz:
* Add test cases to probe more boundary conditions.
* Delete comments that no longer apply.
* Add tests to ensure that truncated packed strings are rejected.
* Keep the legacy spec tests in sync with the modern spec tests.
Richard Hansen [Thu, 9 Jun 2022 23:58:56 +0000 (19:58 -0400)]
bindat (strz): Fix documentation for strz with pre-allocated string
* doc/lispref/processes.texi (Bindat Types): Document that a null
terminator is not written if `bindat-pack' is given a pre-allocated
string.
Lars Ingebrigtsen [Fri, 10 Jun 2022 09:48:57 +0000 (11:48 +0200)]
Link find-sibling-file to ff-find-related-file in manual
* doc/emacs/files.texi (Visiting): Link to ff-find-related-file
documentation.
Lars Ingebrigtsen [Fri, 10 Jun 2022 09:45:28 +0000 (11:45 +0200)]
Fix find-sibling-file doc string
* lisp/files.el (find-sibling-file): Remove incorrect statement
from doc string (bug#55879).
Lars Ingebrigtsen [Fri, 10 Jun 2022 09:39:51 +0000 (11:39 +0200)]
Make describe-prefix-bindings say when there are no matches
* lisp/help.el (describe-prefix-bindings): Say when there are no
bindings under a prefix (bug#55875), for instance in `C-c C-h' in
a buffer with no `C-c' commands.
Ignacio Casso [Fri, 10 Jun 2022 09:13:20 +0000 (11:13 +0200)]
Fix issues with loading autoloaded defcustoms while bound
* doc/lispref/customize.texi (Variable Definitions)
(Variable Definitions): Update documentation.
* lisp/custom.el (custom-initialize-set)
(custom-initialize-reset): Update doc string.
(custom-initialize-changed): Use set-default-toplevel-value. This
fixes issues with (let ((custom-variable ...)) (autoload-function ...)).
(custom-set-default): Ditto.
* src/data.c (Fdefault_boundp): Update doc string.
Lars Ingebrigtsen [Fri, 10 Jun 2022 08:51:34 +0000 (10:51 +0200)]
Don't put trailing optional nil values into `command-history'
* src/callint.c (fix_command): Don't put trailing optional nil
values into `command-history' (bug#45333).
Mattias Engdegård [Fri, 10 Jun 2022 08:22:24 +0000 (10:22 +0200)]
Fix macOS parallel bootstrap error (bug#55846)
* nextstep/Makefile.in (${ns_appdir}):
Change to a single-target rule to avoid the same actions being
executed in parallel.
Lars Ingebrigtsen [Fri, 10 Jun 2022 08:21:30 +0000 (10:21 +0200)]
Mention the REQUIRE-MATCH extension in NEWS
Lars Ingebrigtsen [Fri, 10 Jun 2022 08:19:15 +0000 (10:19 +0200)]
Allow specifying a wildcard argument to list-directory again
* lisp/files.el (list-directory): Allow specifying a wildcard
argument interactively again (bug#55877).
Lars Ingebrigtsen [Fri, 10 Jun 2022 08:16:57 +0000 (10:16 +0200)]
Allow REQUIRE-MATCH to be a function
* doc/lispref/minibuf.texi (Minibuffer Completion): Document it.
* lisp/minibuffer.el (completion--complete-and-exit): Allow
REQUIRE-MATCH to be a function.
(read-file-name): Mention it.
* src/minibuf.c (Fcompleting_read): Mention it.
Po Lu [Fri, 10 Jun 2022 07:27:07 +0000 (15:27 +0800)]
Fix receiving drops from drop-only Motif programs
* lisp/x-dnd.el (x-dnd-xm-read-targets-table): Fix doc string.
(x-dnd-handle-motif): Recompute types and state on XmDROP_START
if no state already exists.
Po Lu [Fri, 10 Jun 2022 06:47:40 +0000 (14:47 +0800)]
Eliminate extra call to XTranslateCoordinates looking for drop target
* src/xterm.c (x_dnd_get_target_window): Translate coordinates
starting from the root window and avoid extra sync.
Stefan Kangas [Fri, 10 Jun 2022 06:17:35 +0000 (08:17 +0200)]
Merge from origin/emacs-28
22a832ad82 Mention the #f syntax from cl-prin1
Stefan Kangas [Fri, 10 Jun 2022 06:17:35 +0000 (08:17 +0200)]
; Merge from origin/emacs-28
The following commit was skipped:
3fd0854378 Fix file name quoting in tramp-smb.el (do not merge)
Stefan Kangas [Fri, 10 Jun 2022 06:17:35 +0000 (08:17 +0200)]
Merge from origin/emacs-28
d02c94090c Fix error reporting in process-async-https-with-delay
9a4862a973 * doc/misc/org.org: Remove spurious markup.
768ed1476a Make Tramp version check more robust
7f778c6943 Fix debugging with GDB when a breakpoint has multiple loca...
25e53e9391 ; * lisp/files.el (file-expand-wildcards): Doc fix.
3ea9357d10 Update documentation of 'aset' and 'store-substring'
# Conflicts:
# lisp/files.el
Po Lu [Fri, 10 Jun 2022 05:11:20 +0000 (13:11 +0800)]
Add tests for x-dnd Motif value parsing logic
* test/lisp/x-dnd-tests.el: New file.
Po Lu [Fri, 10 Jun 2022 03:45:27 +0000 (11:45 +0800)]
Don't rely on TARGETS to read selection targets for Motif DND
* lisp/x-dnd.el (x-dnd-types-alist):
(x-dnd-known-types): Fix formatting.
(x-dnd-xm-unpack-targets-table-header):
(x-dnd-xm-read-single-rec):
(x-dnd-xm-read-targets-table):
(x-dnd-xm-read-targets): New functions.
(x-dnd-handle-motif): Read targets from the targets table
of the drag window instead of the selection's TARGET target.
Po Lu [Fri, 10 Jun 2022 01:28:45 +0000 (09:28 +0800)]
Fix crashes in x_tooltip_window_to_frame on GTK
* src/xterm.c (x_tooltip_window_to_frame): Ignore all non-X
frames instead of trying to get their tooltip window.
Po Lu [Fri, 10 Jun 2022 01:15:25 +0000 (01:15 +0000)]
* src/haikuselect.c (haiku_note_drag_motion): Only handle visible tip_f.
Po Lu [Fri, 10 Jun 2022 00:58:51 +0000 (08:58 +0800)]
Fix DND tooltip handling with tooltip-reuse-hidden-frame
* src/xterm.c (x_dnd_update_tooltip_position): Don't move window
if tip_f is not visible.
Eli Zaretskii [Thu, 9 Jun 2022 17:33:43 +0000 (20:33 +0300)]
Update the 'etags' test suite
* ETAGS.good_1:
* ETAGS_good_2:
* ETAGS_good_3:
* ETAGS_good_4:
* ETAGS_good_5:
* ETAGS_good_6: Adapt to recent changes in test sources.
* lib-src/etags.c (C_entries): Add commentary for resetting
bracelev. (Bug#45246)
Eli Zaretskii [Thu, 9 Jun 2022 16:40:25 +0000 (19:40 +0300)]
; * src/window.c (window_body_unit_from_symbol): Fix Lisp EQ.
Lars Ingebrigtsen [Thu, 9 Jun 2022 15:13:58 +0000 (17:13 +0200)]
Adjust browse-url test after previous browse-url change
Lars Ingebrigtsen [Thu, 9 Jun 2022 15:11:54 +0000 (17:11 +0200)]
Make browse-url-encode-url encode even less
* lisp/net/browse-url.el (browse-url-encode-url): Don't encode
dollar signs, because that's out of spec (bug#55873).
Lars Ingebrigtsen [Thu, 9 Jun 2022 14:41:03 +0000 (16:41 +0200)]
Improve `C-h b' output for remapped commands.
* lisp/help.el (describe-map): Include the bindings of the
remapped commands (bug#14084).
This will result in output like this, instead of just listing the
remapped commands:
<remap> <display-buffer> ido-display-buffer
C-x 4 C-o display-buffer
<remap> <display-buffer-other-frame> ido-display-buffer-other-frame
C-x 5 C-o display-buffer-other-frame
<remap> <insert-buffer> ido-insert-buffer
C-x x i insert-buffer
<remap> <kill-buffer> ido-kill-buffer
C-x k kill-buffer
<remap> <switch-to-buffer> ido-switch-buffer
C-x b switch-to-buffer
<remap> <switch-to-buffer-other-frame> ido-switch-buffer-other-frame
C-x 5 b switch-to-buffer-other-frame
<remap> <switch-to-buffer-other-window> ido-switch-buffer-other-window
C-x 4 b switch-to-buffer-other-window
Lars Ingebrigtsen [Thu, 9 Jun 2022 13:57:04 +0000 (15:57 +0200)]
New setting for mouse-drag-copy-region to not put "" onto kill ring
* doc/emacs/frames.texi (Mouse Commands): Document it.
* lisp/mouse.el (mouse-drag-copy-region): Add value (bug#17211)
for not putting "" strings onto the kill ring.
(mouse-set-region, mouse-save-then-kill): Use the new value.
Po Lu [Thu, 9 Jun 2022 13:48:19 +0000 (21:48 +0800)]
Fix recalculation of `icon-title-format' after a frame is iconified
Previously it would only happen upon the next mode line
redisplay, meaning that just pressing C-z would not update the
implicit title, since C-z doesn't cause a redisplay.
* src/dispextern.h: Update prototypes.
* src/frame.h (SET_FRAME_ICONIFIED): De-slugify. Call
`gui_consider_frame_title', since `icon-title-format' might be
different from the current frame title.
* src/xdisp.c (gui_consider_frame_title): Export (also in
dispextern.h). (bug#55850)
Lars Ingebrigtsen [Thu, 9 Jun 2022 13:22:11 +0000 (15:22 +0200)]
Mention the #f syntax from cl-prin1
* doc/lispref/objects.texi (Special Read Syntax): Mention #f,
which is in cl-prin1 output (bug#55853).
Michael Albinus [Thu, 9 Jun 2022 12:44:00 +0000 (14:44 +0200)]
Fix file name quoting in tramp-smb.el (do not merge)
* lisp/net/tramp-smb.el (tramp-smb-handle-write-region): Quote tmpfile.
(tramp-smb-get-localname): Remove superfluous test. (Bug#55855)
* test/lisp/net/tramp-tests.el (tramp-test03-file-name-method-rules):
Remove superfluous checks.
Lars Ingebrigtsen [Thu, 9 Jun 2022 12:42:31 +0000 (14:42 +0200)]
Make `line-number-at-pos' work more like in earlier Emacs versions
* src/fns.c (Fline_number_at_pos): Allow calling with position
outside the region if called with ABSOLUTE non-nil (bug#55847).
This isn't announced in the doc string, but makes function
compatible with the version in earlier Emacs versions.
Po Lu [Thu, 9 Jun 2022 11:44:31 +0000 (19:44 +0800)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Po Lu [Thu, 9 Jun 2022 11:42:56 +0000 (19:42 +0800)]
Never return tooltip frames from ns-begin-drag
* src/nsterm.m ([EmacsWindow draggedImage:movedTo:]):
([EmacsWindow beginDrag:forPasteboard...]): Don't return frame
if tooltip.
Eli Zaretskii [Thu, 9 Jun 2022 10:27:34 +0000 (13:27 +0300)]
; Fix typos in Kharoshthi script support
* etc/HELLO:
* lisp/leim/quail/misc-lang.el ("kharoshthi"):
* lisp/language/misc-lang.el ("Kharoshthi"): Fix typos.
Po Lu [Thu, 9 Jun 2022 10:20:59 +0000 (18:20 +0800)]
Handle monitor attribute updates during drag-and-drop
* src/xterm.c (x_monitors_changed_cb):
(handle_one_xevent): Set x_dnd_monitors during monitor changes.
Stefan Baums [Sun, 5 Jun 2022 17:18:23 +0000 (19:18 +0200)]
Add support for the Kharoshthi script
* etc/NEWS: Announce the new language environment and script.
* etc/HELLO: Add Kharoshthi greeting.
* lisp/leim/quail/misc-lang.el ("kharoshthi"): New input method.
* lisp/language/misc-lang.el ("Kharoshthi"): New language
environment. Set up composition rules for Kharoshthi.
(Bug#55539)
Po Lu [Thu, 9 Jun 2022 08:48:17 +0000 (16:48 +0800)]
Satisfy GCC warnings on the GNUstep build
* src/nsfns.m (ns_move_tooltip_to_mouse_location):
* src/nsterm.m ([EmacsWindow draggedImage:movedTo:]): Pacify GCC.
Po Lu [Thu, 9 Jun 2022 08:43:29 +0000 (16:43 +0800)]
Disable tooltip timeouts for drag-and-drop tooltips
* lisp/mouse.el (mouse-drag-and-drop-region-display-tooltip):
Don't time out the created tooltip.
Eli Zaretskii [Thu, 9 Jun 2022 08:38:08 +0000 (11:38 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Po Lu [Thu, 9 Jun 2022 08:34:18 +0000 (16:34 +0800)]
Implement `follow-tooltip' on NS as well
* lisp/term/ns-win.el (x-begin-drag): Pass `follow-tooltip'.
* src/nsfns.m (Fx_show_tip): Record last dx and dy.
(syms_of_nsfns): New staticpros.
* src/nsmenu.m ([EmacsTooltip moveTo:]): New method.
* src/nsselect.m (Fns_begin_drag): New parameter
`follow-tooltip'.
* src/nsterm.h (@interface EmacsWindow):
(EmacsTooltip): Update prototypes.
* src/nsterm.m ([EmacsWindow draggedImage:movedTo:]): Move any
tooltip to the right location.
([EmacsWindow beginDrag:forPasteboard...]): New parameter
`followTooltip'.
Po Lu [Thu, 9 Jun 2022 07:44:51 +0000 (15:44 +0800)]
Note caveats of `follow-tooltip' with system tooltips
* lisp/mouse.el (mouse-drag-and-drop-region): Turn off system
tooltips inside.
* src/xfns.c (Fx_begin_drag): Say that follow-tooltip doesn't
work with system tooltips.
Eli Zaretskii [Thu, 9 Jun 2022 07:28:25 +0000 (10:28 +0300)]
; * doc/lispref/processes.texi (Bindat Types): Fix wording. (Bug#55815)
Richard Hansen [Fri, 3 Jun 2022 01:05:40 +0000 (21:05 -0400)]
bindat: Improve str, strz documentation
* doc/lispref/processes.texi (Bindat Types): Expand the documentation
for the `str' and `strz' types to clarify expectations and explain
edge case behavior.
Po Lu [Thu, 9 Jun 2022 07:20:22 +0000 (07:20 +0000)]
Implement `follow-tooltip' for DND on Haiku
* lisp/term/haiku-win.el (x-begin-drag): Implement
`follow-tooltip'.
* src/haikufns.c (Fx_show_tip): Record last dx and dy.
(syms_of_haikufns): New staticpros.
* src/haikuselect.c (haiku_unwind_drag_message): Clear new flag.
(Fhaiku_drag_message): New argument `follow-tooltip'. Set new
flag.
(haiku_dnd_compute_tip_xy): New function.
(haiku_note_drag_motion): Move tooltip if flag is true.
* src/haikuterm.c (haiku_read_socket): Don't generate help event
if mouse moves onto a tooltip during DND.
* src/haikuterm.h: Update prototypes.
Jim Porter [Fri, 3 Jun 2022 04:12:04 +0000 (21:12 -0700)]
Account for remapped faces in $COLUMNS and $LINES in Eshell
* src/window.h (window_body_unit): New enum...
(window_body_width): ... use it.
* src/window.c (window_body_unit_from_symbol): New function.
(window_body_height, window_body_width): Make PIXELWISE a
'window_body_unit'.
(window-body-height, window-body-width): Accept 'remap' for PIXELWISE.
(window-lines-pixel-dimensions, window_change_record_windows)
(run_window_change_functions, resize_frame_windows, grow_mini_window)
(shrink_mini_window, scroll-left, scroll-right): Update calls to
'window_body_height' and 'window_body_width'.
* src/indent.c (compute_motion): Update calls to 'window_body_width'.
* lisp/eshell/em-ls.el (eshell-ls-find-column-widths)
(eshell-ls-find-column-lengths): Use 'window-body-width'.
* lisp/eshell/esh-var.el (eshell-variable-aliases-list): Use
'window-body-width' and 'window-body-height'.
* test/lisp/eshell/esh-var-tests.el (esh-var-test/window-height)
(esh-var-test/window-width): Rename to...
(esh-var-test/lines-var, esh-var-test/columns-var): ... and update
expected value.
* doc/lispref/windows.texi (Window Sizes): Document new behavior of
PIXELWISE argument for 'window-body-width' and 'window-body-height'.
* etc/NEWS: Announce this change (bug#55696).
Eli Zaretskii [Thu, 9 Jun 2022 06:56:59 +0000 (09:56 +0300)]
Revert "* src/comp.c (Fcomp_el_to_eln_filename): Update error message."
This reverts commit
ec987e3e1786d06ffd306e5717b4d7fd118f05ac.
This change was installed on the emacs-28 branch instead.
Juri Linkov [Thu, 9 Jun 2022 06:40:52 +0000 (09:40 +0300)]
Allow C-x 4 4, C-x 5 5, C-x t t to handle commands that use switch-to-buffer
* lisp/window.el (display-buffer-override-next-command):
Temporarily set switch-to-buffer-obey-display-actions to t,
and revert back to the original value afterwards.
This allows other-window-prefix, other-frame-prefix, other-tab-prefix,
windmove-display-in-direction to override the default behavior of
commands that use switch-to-buffer.
https://lists.gnu.org/archive/html/emacs-devel/2022-06/msg00483.html
Jeff Walsh [Thu, 9 Jun 2022 00:02:01 +0000 (10:02 +1000)]
* src/comp.c (Fcomp_el_to_eln_filename): Update error message.
Po Lu [Thu, 9 Jun 2022 05:11:08 +0000 (13:11 +0800)]
Also show mouse DND tooltip contents during interprogram drag-and-drop
* doc/lispref/frames.texi (Drag and Drop): Document new
parameter to `x-begin-drag'.
* lisp/mouse.el (mouse-drag-and-drop-region): Don't hide tooltip
when initiating interprogram drag-and-drop.
* lisp/term/haiku-win.el (x-begin-drag):
* lisp/term/ns-win.el (x-begin-drag): Add stubs for new
parameter.
* src/xfns.c (Fx_begin_drag): New parameter `follow-tooltip'.
(Fx_show_tip, syms_of_xfns): Add records of the last dx and dy
given to `x-show-tip'.
* src/xterm.c (x_clear_dnd_monitors): New function.
(x_dnd_begin_drag_and_drop): Save monitor attributes list if
appropriate.
(x_dnd_compute_tip_xy, x_dnd_update_tooltip_position): New
function.
(x_dnd_update_state, handle_one_xevent): Update tooltip position
during DND mouse movement.
(syms_of_xterm): Update staticpros.
* src/xterm.h: Update prototypes.
Po Lu [Thu, 9 Jun 2022 02:22:14 +0000 (10:22 +0800)]
Fix dnd-tests on builds without X
* test/lisp/dnd-tests.el (x-get-selection-internal): New
function declaration.
Po Lu [Thu, 9 Jun 2022 02:05:54 +0000 (10:05 +0800)]
Ignore tooltip frames when looking for DND target
* src/xterm.c (x_dnd_get_target_window): When not using client
lists, look beneath any tooltip frame.
Po Lu [Thu, 9 Jun 2022 01:52:21 +0000 (09:52 +0800)]
Make use of faster atom intern functions in xselect.c
* src/xselect.c (symbol_to_x_atom):
(x_atom_to_symbol): Use x_get_atom_name and
x_intern_cached_atom.
Ken Brown [Wed, 8 Jun 2022 17:09:21 +0000 (13:09 -0400)]
Fix error reporting in process-async-https-with-delay
* test/src/process-tests.el (process-async-https-with-delay): Use
'plist-get' instead of 'assq' in testing for a connection error.
The 'status' variable is a plist, not an alist. (Bug#55849)
Juri Linkov [Wed, 8 Jun 2022 17:10:12 +0000 (20:10 +0300)]
* lisp/rect.el: Return correct positions of region-beginning/end (bug#55234)
(rectangle-mark-mode): Add advices for region-beginning and region-end.
(rectangle--region-beginning, rectangle--region-end): New advices.
(rectangle--extract-region): Let-bind rectangle-mark-mode around
region-beginning and region-end to use the original functions.
Robert Pluim [Wed, 8 Jun 2022 12:48:27 +0000 (14:48 +0200)]
Add more super and subscript characters to latin input methods
* lisp/leim/quail/latin-post.el ("latin-postfix", "latin-prefix"): Add
mssing super and subscript characters. (Bug#55722)
Robert Pluim [Wed, 8 Jun 2022 12:40:03 +0000 (14:40 +0200)]
Add fractions to latin-post input method
* lisp/leim/quail/latin-post.el ("latin-postfix"): Add fractions.
Robert Pluim [Mon, 6 Jun 2022 16:30:01 +0000 (18:30 +0200)]
Add more ways to enter trade mark and registered sign
* lisp/international/iso-transl.el (iso-transl-char-map): Add sequence
for TRADE MARK.
* lisp/leim/quail/latin-post.el ("latin-postfix"): Add REGISTERED SIGN
and TRADE MARK.
* lisp/leim/quail/latin-pre.el ("latin-prefix"): Add TRADE MARK.
Po Lu [Wed, 8 Jun 2022 12:33:42 +0000 (20:33 +0800)]
Allow running some DND tests interactively
* src/xselect.c (x_get_local_selection): Respect new variable.
(syms_of_xselect): New variable
`x-treat-local-requests-remotely'.
* test/lisp/dnd-tests.el (x-begin-drag, gui-set-selection):
Don't redefine these functions under X.
(dnd-tests-verify-selection-data): Use
`x-get-selection-internal' under X.
(dnd-tests-extract-selection-data): New function.
(dnd-tests-begin-text-drag): Update accordingly.
(dnd-tests-begin-file-drag, dnd-tests-begin-drag-files):
Temporarily skip these tests under X.
Lars Ingebrigtsen [Wed, 8 Jun 2022 12:27:14 +0000 (14:27 +0200)]
Revert "Give ,@ a prefix syntax in elisp-mode"
This reverts commit
d003848b5e3ad2dfbe84cc62b99776fdc6734325.
This leads to hangs in edebug-tests.
Jim Porter [Tue, 7 Jun 2022 02:53:39 +0000 (19:53 -0700)]
Don't split Eshell expansions by line when using split-subscript operator
* lisp/eshell/esh-var.el (eshell-apply-indices): Use
'eshell-convert-to-number' instead of 'eshell-convert'.
* test/lisp/eshell/esh-var-tests.el
(esh-var-test/interp-convert-var-split-indices): Expand test
(bug#55838).
Nicholas Vollmer [Wed, 8 Jun 2022 12:10:04 +0000 (14:10 +0200)]
* doc/man/emacs.1.in: Add --init-directory.
* doc/man/emacs.1.in: Document --init-directory (bug#55839).
Po Lu [Wed, 8 Jun 2022 12:04:26 +0000 (20:04 +0800)]
Simplify XDND toplevel freeing code
* src/xterm.c (x_free_dnd_toplevels): New function.
(x_dnd_cleanup_drag_and_drop, x_dnd_begin_drag_and_drop): Record
an unwind function to free DND toplevels instead of doing that
manually everywhere.
Manuel Giraud [Wed, 8 Jun 2022 11:51:41 +0000 (13:51 +0200)]
Fix last-modified meaning in bookmark.el
* lisp/bookmark.el (bookmark-update-last-modified): New function
to update the last-modified field.
(bookmark-send-edited-annotation, bookmark-relocate)
(bookmark-rename): Use `bookmark-update-last-modified' in
annotations editing, relocation and renaming.
Lars Ingebrigtsen [Wed, 8 Jun 2022 11:48:48 +0000 (13:48 +0200)]
icomplete-in-buffer doc fix
* lisp/icomplete.el (icomplete-in-buffer): dabbrev now uses
icomplete-in-buffer (bug#45764).
Stefan Kangas [Wed, 8 Jun 2022 11:16:32 +0000 (13:16 +0200)]
* doc/misc/org.org: Remove spurious markup.
Michael Albinus [Wed, 8 Jun 2022 10:42:10 +0000 (12:42 +0200)]
Make Tramp version check more robust
* lisp/net/trampver.el (tramp-repository-branch)
(tramp-repository-version): Check for "git" executable.
Michael Albinus [Wed, 8 Jun 2022 10:06:56 +0000 (12:06 +0200)]
Factor out test configuration for remote files
* lisp/emacs-lisp/ert-x.el (tramp-methods)
(tramp-default-host-alist): Declare.
(ert-remote-temporary-file-directory): New defconst.
* test/README: Mention dnd-tests.el.
* test/lisp/autorevert-tests.el
(auto-revert-test-remote-temporary-file-directory): Remove.
Replace all uses by `ert-remote-temporary-file-directory'.
* test/lisp/dnd-tests.el (ert-x): Require.
(dnd-tests-temporary-file-directory): Remove. Replace all uses by
`ert-remote-temporary-file-directory'.
* test/lisp/filenotify-tests.el
(file-notify-test-remote-temporary-file-directory): Remove.
Replace all uses by `ert-remote-temporary-file-directory'.
* test/lisp/shadowfile-tests.el (ert-x): Require.
(shadow-test-remote-temporary-file-directory): Remove. Replace
all uses by `ert-remote-temporary-file-directory'.
* test/lisp/net/tramp-tests.el: Don't require ert.
(ert-remote-temporary-file-directory): Define if it doesn't exist.
(tramp-test-temporary-file-directory): Remove. Replace all uses
by `ert-remote-temporary-file-directory'.
Mattias Engdegård [Wed, 8 Jun 2022 08:03:55 +0000 (10:03 +0200)]
Preserve doc string in `byte-compile` (bug#55830)
* lisp/emacs-lisp/bytecomp.el (byte-compile--reify-function):
Don't transpose doc string and interactive spec, which must come
in this order.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-function-attributes): New test.
Po Lu [Wed, 8 Jun 2022 07:08:09 +0000 (15:08 +0800)]
Make responding to selection requests work inside popups
* src/xfns.c (Fx_file_dialog):
* src/xmenu.c (x_menu_wait_for_event, create_and_show_popup_menu)
(create_and_show_dialog, x_menu_show): Defer selection requests.
* src/xselect.c (x_get_foreign_selection)
(x_handle_selection_notify): Add some more info to selection
trace.
* src/xterm.c (x_defer_selection_requests): Make non-static.
(x_release_selection_requests_and_flush): New function.
(x_dnd_begin_drag_and_drop): Use DEFER_SELECTIONS instead.
(x_wait_for_cell_change): Fix initial value of rc for pushed
back events.
(handle_one_xevent): Allow GTK to respond to selections in its
windows too.
* src/xterm.h (DEFER_SELECTIONS): New slug of code.
Po Lu [Wed, 8 Jun 2022 05:03:57 +0000 (13:03 +0800)]
Fix quitting in one go out of `mouse-drag-and-drop-region'
* src/xterm.c (x_dnd_begin_drag_and_drop): Make sure
handle_interrupt is called inside the nested event loop upon a
quit event.
Po Lu [Wed, 8 Jun 2022 02:54:07 +0000 (10:54 +0800)]
Fix crash with outdated selection requests
* src/xselect.c (x_handle_selection_request): Don't store into
stack if it wasn't previously pushed.
Po Lu [Wed, 8 Jun 2022 02:40:20 +0000 (10:40 +0800)]
Improve drag-and-drop tests
* lisp/dnd.el (dnd-begin-file-drag, dnd-begin-drag-files): Fix
type of `x-xdnd-username'.
* lisp/select.el (selection-converter-alist): Fix declaration of
_DT_NETFILE converter.
* test/lisp/dnd-tests.el (dnd-tests-verify-selection-data):
Handle "compound" selection converters.
(dnd-tests-parse-tt-netfile): New function.
(dnd-tests-begin-file-drag, dnd-tests-begin-drag-files): Verify
validity of file selection data.
Po Lu [Wed, 8 Jun 2022 00:49:51 +0000 (08:49 +0800)]
More fixes to mouse event reporting during drag-and-drop
* src/xterm.c (x_dnd_begin_drag_and_drop): Don't reset
dpyinfo->grabbed when quitting.
(handle_one_xevent): Keep track of dpyinfo->grabbed as well
inside the drag-and-drop event loop.
Dmitry Gutov [Tue, 7 Jun 2022 22:08:22 +0000 (01:08 +0300)]
pcomplete-parse-arguments: Fix last change
* lisp/pcomplete.el (pcomplete-parse-arguments):
Throw the previous value of 'pcomplete-stub' (a list) rather than
the newly constructed one (bug#50470).
Juri Linkov [Tue, 7 Jun 2022 18:47:51 +0000 (21:47 +0300)]
* doc/emacs/vc1-xtra.texi (Customizing VC): Remove deprecated Mtn.
Lars Ingebrigtsen [Tue, 7 Jun 2022 18:28:05 +0000 (20:28 +0200)]
Give ,@ a prefix syntax in elisp-mode
* lisp/progmodes/elisp-mode.el (elisp-mode-syntax-propertize):
Give ,@ a prefix syntax so that we can properly identify symbols
that follow it, i.e., ,@foo (bug#44418).
Lars Ingebrigtsen [Tue, 7 Jun 2022 18:03:41 +0000 (20:03 +0200)]
Demote extended attribute errors in basic-save-buffer-2
* lisp/files.el (basic-save-buffer-2): Give demoted errors when
reading extended attributes that fail (bug#43723).
Lars Ingebrigtsen [Tue, 7 Jun 2022 16:59:44 +0000 (18:59 +0200)]
Regenerated ldefs-boot.el
This is the first check-in after the loaddefs-gen.el rewrite.
Lars Ingebrigtsen [Tue, 7 Jun 2022 16:59:04 +0000 (18:59 +0200)]
Remove Mtn from vc-handled-backends
* lisp/vc/vc-hooks.el (vc-handled-backends): Remove the deprecate
vc-mtn backend.
Lars Ingebrigtsen [Tue, 7 Jun 2022 16:51:15 +0000 (18:51 +0200)]
Fix loaddefs-generate--rubric recorded name
* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--rubric): Fix
the name that's recorded in the file -- this is only used by
loaddefs-gen now, I think.
Lars Ingebrigtsen [Tue, 7 Jun 2022 16:35:00 +0000 (18:35 +0200)]
Make artist-mode work in zoomed buffers
* lisp/textmodes/artist.el (artist-mouse-draw-continously):
(artist-mouse-draw-continously):
(artist-mouse-draw-poly):
(artist-mouse-draw-1point):
(artist-mouse-draw-2points):
(artist-mouse-draw-2points): Work better when the window is zoomed
(bug#46035).
Lars Ingebrigtsen [Tue, 7 Jun 2022 16:34:20 +0000 (18:34 +0200)]
Allow posn-col-row to return data on a per-window basis
* doc/lispref/commands.texi (Accessing Mouse): Document it.
* lisp/subr.el (posn-col-row): Extend to use window data.
Lars Ingebrigtsen [Tue, 7 Jun 2022 14:38:55 +0000 (16:38 +0200)]
Allow hooks to alter the process in prolog-ensure-process
* lisp/progmodes/prolog.el (prolog-ensure-process): Start the mode
after starting the process, so that the mode hook can talk to the
process (bug#46003).
Stefan Monnier [Tue, 7 Jun 2022 14:30:47 +0000 (10:30 -0400)]
find-func.el: Fix bug#41104
* lisp/emacs-lisp/find-func.el (find-function-advised-original): Look
at the actual function definition rather than
`advice--symbol-function` which sometimes returns only the advice.
* test/lisp/emacs-lisp/find-func-tests.el
(find-func-tests--find-library-verbose): Add test.
Po Lu [Tue, 7 Jun 2022 13:45:17 +0000 (21:45 +0800)]
Add selection stuff to DND tests
* test/lisp/dnd-tests.el (dnd-tests-selection-table): New
defvar.
(gui-set-selection): Actually implement in a way that validates
the local value and stores it for future use.
(dnd-tests-verify-selection-data): New function.
(dnd-tests-begin-text-drag): Add tests for the contents of
various selections.
Eli Zaretskii [Tue, 7 Jun 2022 13:01:04 +0000 (16:01 +0300)]
Fix debugging with GDB when a breakpoint has multiple locations
* lisp/progmodes/gdb-mi.el (gdb-breakpoints--add-breakpoint-row):
New function, extracted from 'gdb-breakpoints-list-handler-custom'.
Don't print "in <unknown>" for header-rows of breakpoints with
multiple locations that don't have a function name attached.
(gdb-breakpoints-list-handler-custom): Add to the breakpoint table
also any locations in multiple-location breakpoints, which are
supported since GDB 6.8.
Po Lu [Tue, 7 Jun 2022 12:13:10 +0000 (12:13 +0000)]
Fix coding style of some Haiku files
* src/haiku_support.cc: (FrameResized):
(class EmacsView, AfterResize): Fix coding and initializer
style.
* src/haiku_support.h (struct haiku_resize_event): Rename
confusingly named fields.
* src/haikuterm.c (haiku_read_socket): Update accordingly.