1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-26 18:01:13 -08:00
Commit graph

155589 commits

Author SHA1 Message Date
Eli Zaretskii
4bd7be2b8f Fix errors with hscrolling mini-windows under truncate-lines
* src/xdisp.c (hscroll_window_tree): Disallow hscroll in
mini-windows that display echo-area messages.  (Bug#50096)
2021-08-19 15:24:14 +03:00
Lars Ingebrigtsen
6276f73115 stterm doesn't understand all codes that xterm does
* lisp/term/st.el (xterm-st-extra-capabilities): New user option
(bug#50119).
(terminal-init-st): Use it to avoid a two-second timeout.
2021-08-19 14:18:32 +02:00
João Távora
37f0ea99f8 ; Correct :version tag of icomplete-selected-match face
* lisp/icomplete.el (icomplete-selected-match): Fix :version
2021-08-19 12:16:03 +01:00
João Távora
2be8e2ffc9 Section by 'group-function' in Icomplete and Fido's vertical modes
Fixes: bug#48545

* lisp/icomplete.el (icomplete--augment): Rewrite from icomplete--affixate.
(icomplete--render-vertical): Rework.
(icomplete--vertical-minibuffer-setup): Separator is hardcoded "\n", no
need to set.
2021-08-19 12:16:03 +01:00
João Távora
2c699b87c2 Improve fix of bug#49888 on no-pattern flex sorting
This version is functionally equivalent, but doesn't duplicate any
code.  When nothing "flexy" is happening, it works by simply not doing
any metadata adjustments, instead of attempting to synthesize a
function to mimic the non-flex case.

* lisp/minibuffer.el (completion--flex-adjust-metadata): Simplify.
2021-08-19 12:16:03 +01:00
Dmitry Gutov
fba64e1697 Fix vc-root-diff broken with Git as well
* lisp/vc/vc.el (vc-root-diff): Fix similar to 3502321403 by
avoiding the abbreviated directory name in argument (bug#39452).
2021-08-19 03:57:58 +03:00
Eli Zaretskii
78b427648b Improve documentation of 'assoc'
* doc/lispref/lists.texi (Association Lists):
* src/fns.c (Fassoc): Document how TESTFN is called.  (Bug#50110)
2021-08-18 22:07:30 +03:00
Glenn Morris
91f549becd ; Fix paren typo 2021-08-18 11:50:42 -07:00
Juri Linkov
ad9c57f54a Mouse wheel scrolling on the tab bar
* lisp/tab-bar.el (tab-bar-map): Bind mouse-4/wheel-up/wheel-left
to tab-previous and mouse-5/wheel-down/wheel-right to tab-next.
Bind S-mouse-4/wheel-up/wheel-left to tab-bar-move-tab-backward
and S-mouse-5/wheel-down/wheel-right to tab-bar-move-tab.
(tab-bar-move-tab-backward): New command.
(tab-bar-move-repeat-map): Use tab-bar-move-tab-backward
instead of lambda.

* src/xterm.c (handle_one_xevent): Remove restriction
to allow clicking mouse-4 and mouse-5.
2021-08-18 20:52:32 +03:00
Juri Linkov
56d567acb6 Bind [drag-mouse-1] to tab-bar-mouse-move-tab on tab-bar-map
* lisp/tab-bar.el (tab-bar-mouse-move-tab): New command.
(tab-bar-map): Bind [drag-mouse-1] to tab-bar-mouse-move-tab.
(tab-bar-select-tab): Zero or nil arg means the current tab.

* src/xdisp.c (handle_tab_bar_click): Remove restriction
to allow dragging the tab to another tab.
2021-08-18 20:44:14 +03:00
Juri Linkov
e6bea0cbc7 Redesign tab-bar event processing (bug#41342, bug#41343)
Instead of emitting menu-item keys like [tab-1],
emit normal mouse events like [mouse-1] and [down-mouse-3]
for all mouse clicks issued on the tab-bar.

* lisp/mouse.el (mouse-posn-property): Handle 'tab-bar' posn-area.

* lisp/tab-bar.el (tab--key-to-number): New internal function.
(tab-bar-handle-mouse): Use tab key to select/close tab.
(tab-bar-mouse-select-tab, tab-bar-mouse-close-tab)
(tab-bar-mouse-context-menu): New commands.
(tab-bar-map): Bind [down-mouse-1] to tab-bar-mouse-select-tab,
[down-mouse-2] to tab-bar-mouse-close-tab,
[down-mouse-3] to tab-bar-mouse-context-menu.
(tab-bar-keymap-cache): Remove.
(tab-bar-make-keymap): Don't use cache.
(tab-bar--format-tab): Remove default bindings from menu items.
(tab-bar-make-keymap-1): Prepend tab-bar-map.

* src/keyboard.c (make_lispy_event): Append event->arg to position
for Qtab_bar.

* src/term.c (handle_one_term_event): Simplify to set event arg.

* src/w32inevt.c (do_mouse_event): Set emacs_ev->arg to the value
returned from tty_handle_tab_bar_click.

* src/w32term.c (w32_handle_tab_bar_click): Return value from
handle_tab_bar_click.
(w32_read_socket): Set tab_bar_key to value returned from
w32_handle_tab_bar_click, and set event arg from it.

* src/xdisp.c (handle_tab_bar_click): Instead of emitting event,
return a list with Qtab_bar and tab caption with text properties
that contain Qmenu_item with key and binding.
(tty_handle_tab_bar_click): Simplify to return a list of Qtab_bar,
key and close_p, instead of emitting event.

* src/xterm.c (handle_one_xevent): Set tab_bar_key to value
returned from handle_tab_bar_click, and set event arg from it.
2021-08-18 20:32:32 +03:00
Juri Linkov
9b31ad3609 * lisp/progmodes/xref.el (xref--collect-matches): Widen temporarily. 2021-08-18 20:02:39 +03:00
Juri Linkov
1a4ed8ee78 * lisp/mouse.el: More fixes for context-menu.
(context-menu-map): Remove menu title "Context Menu" (bug#50067).
(context-menu-minor): Reverse sub-menus to display exactly in the same order
as on the menu bar.
2021-08-18 20:01:03 +03:00
Eli Zaretskii
0d5ff75e94 Improve documentation of last change.
* etc/NEWS: Mention the string value of 'auto-composition-mode'.

* src/composite.c (syms_of_composite) <auto-composition-mode>: Doc
fix.
2021-08-18 19:10:01 +03:00
Lars Ingebrigtsen
15a8026caf Disable auto compositions on the Linux console only
* lisp/term/linux.el (terminal-init-linux): Disable auto
compositions on "linux" consoles (bug#21363).

* src/composite.c (inhibit_auto_composition): New function to
implement this.
(composition_compute_stop_pos, composition_adjust_point)
(Ffind_composition_internal): Use it.
(syms_of_composite): Document it.

* src/lisp.h: Export tty_type_name.

* src/term.c (tty_type_name): Factored out.
(Ftty_type): Use it.
2021-08-18 16:24:40 +02:00
Lars Ingebrigtsen
3a1d713c19 Add undo-in-region test case for bug#21523 2021-08-18 15:32:23 +02:00
Eli Zaretskii
ee812f2a98 Yet another place inside redisplay_window to prevent quitting
* src/xdisp.c (handle_single_display_spec): Inhibit quitting
around the call to lookup_image.  (Bug#44448)
2021-08-18 16:14:29 +03:00
Eli Zaretskii
bf4f7388b6 Fix abort when turning on Hebrew or Arabic input methods
* src/xdisp.c (face_before_or_after_it_pos): Add the missing
initialization of the bidi scan direction.  (Bug#50107)
2021-08-18 16:01:57 +03:00
Peter Münster
fa4a63c689 Add menu bindings to new functions in image-dired.el
* lisp/image-dired.el (image-dired--with-marked): New macro for
cycling over marked thumbnails.
(image-dired-tag-thumbnail, image-dired-tag-thumbnail-remove): Can
handle now also all marked thumbnails.
(image-dired-tag-marked-thumbnails): Remove it, because it's
obsoleted by `image-dired-tag-thumbnail' now.
(image-dired-delete-marked): Use new macro
`image-dired--with-marked', and add command to menu (bug#50000).
2021-08-18 14:53:25 +02:00
João Távora
c17e03ace5 ; * etc/NEWS (Icomplete): Fix typo and remove redundant word 2021-08-18 11:38:11 +01:00
pillule
f26a027d6b Fix ediff3 layouts with window-combination-resize non-nil (Bug#49277)
* lisp/vc/ediff-wind.el (ediff-setup-windows-plain-compare)
(ediff-setup-windows-multiframe-compare): Fix three windows
layouts produced by ediff3 when 'window-combination-resize'
was customized to t and 'even-window-sizes' to nil.
2021-08-18 09:21:06 +02:00
pillule
eddb003f30 Fix behavior when switch-to-prev-buffer-skip is a function (Bug#49275)
* lisp/window.el (switch-to-prev-buffer)
(switch-to-next-buffer): More correctly handle cases where
'switch-to-prev-buffer-skip' is a function.
2021-08-18 09:16:06 +02:00
Basil L. Contovounesios
6d3455eb14 ; Fix quoting of braces in electric-tests.el. 2021-08-18 00:54:44 +01:00
Andrea Corallo
7fa5dec86e * Fix `native-compile-target-directory' effectiveness for async compilation.
* lisp/emacs-lisp/comp.el (comp-run-async-workers): Forward to async
workers `native-compile-target-directory'.
2021-08-17 23:47:05 +02:00
Glenn Morris
ca781e4430 * lisp/mouse.el (context-menu-filter-function): Fix type. 2021-08-17 11:31:24 -07:00
Eli Zaretskii
130d47bdcc Another fix for quitting while displaying non-selected windows
* src/xdisp.c (handle_face_prop, extend_face_to_end_of_line):
Inhibit quitting around the call to face_at_pos, to prevent
leaking wrong value of point when the user quits while we
redisplay a non-selected window.  (Bug#44448)
2021-08-17 21:29:58 +03:00
Glenn Morris
c609b4c728 * test/lisp/electric-tests.el: Skip most c-mode tests on hydra. 2021-08-17 08:53:00 -07:00
Eli Zaretskii
54039d721c ; * etc/NEWS: Fix wording of a recently added entry. 2021-08-17 15:47:10 +03:00
Eli Zaretskii
b960e1aea2 ; Fix a comment in a recent commit.
* lisp/help-mode.el (help-mode-syntax-table): Fix punctuation in a
comment.
2021-08-17 15:40:05 +03:00
Eli Zaretskii
5f47d17d33 Fix TTY display performance degradation due to many markers
* src/coding.c (encode_coding_object): Don't assume that
src_object == dst_object means src_object is the current buffer.
Add the missing commentary that explains the arguments.
(Bug#49127)
2021-08-17 15:31:53 +03:00
Michalis V
00fdf80e21 Improve `forward-sexp' in *Help* buffers
* lisp/help-mode.el (help-mode-syntax-table): New variable (bug#39134).
(help-make-xrefs): Use it to make picking out symbols in curved
quotes work reliably.
(help-xref-on-pp): Ditto.
2021-08-17 14:20:57 +02:00
João Távora
e6fb7e44cc Bind <up> and <down> in icomplete-vertical-mode
Suggested by Ergus <spacibba@aol.com>

* lisp/icomplete.el (icomplete-vertical-mode-minibuffer-map): Bind
<up> and <down>
2021-08-17 13:06:06 +01:00
João Távora
96bbd6f0a7 Jump to first,last completion with M-<, M-> in icomplete-vertical-mode
Fixes: bug#49005

Co-authored-by: Simon Lang <simon.lang@outlook.com>

* lisp/icomplete.el (icomplete-backward-completions): Return
non-nil iff something was stepped.  Ajust docstring.
(icomplete-forward-completions): Adjust docstring.
(icomplete-vertical-goto-first, icomplete-vertical-goto-last): New commands.
(icomplete-vertical-mode-minibuffer-map): Bind new commands to M-< and M->.
2021-08-17 12:56:38 +01:00
Juri Linkov
bf1ec4952e Merge branch 'feature/context-menu' 2021-08-17 11:11:35 +03:00
Dmitry Gutov
9e2cc406d3 ruby-mode imenu: Support methods with modifiers
* lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
Support methods with modifiers (visibility or otherwise)
(bug#50079).
2021-08-17 04:07:19 +03:00
Dmitry Gutov
fd7f2077bc vc-git-region-history: Fix to call 'diff' more correctly
* lisp/vc/vc-git.el (vc-git-region-history):
Fix to pass a list to the backend 'diff' command (bug#39452).
2021-08-17 03:32:12 +03:00
João Távora
a126c06b0a Make icomplete-vertical-mode take immediate effect (bug#49075)
* etc/NEWS: Mention change.

* lisp/icomplete.el (icomplete-vertical-mode):
(fido-vertical-mode): Tweak docstring.  Turn on
icomplete-mode. and fido-mdoe
2021-08-16 23:18:27 +01:00
Stephen Berman
ae751f2a09 ; Fix menu entry alignment of last change
* doc/lispref/elisp.texi (Top): Fix alignment.
2021-08-16 22:55:50 +02:00
Glenn Morris
bb6f1e2dd9 * test/Makefile.in: Verbose logging for electric-tests on hydra. 2021-08-16 12:35:17 -07:00
Eli Zaretskii
6898ae6f8c Plug another hole for longjmp-ing from 'redisplay_window'
* src/fringe.c (update_window_fringes): Inhibit quitting, so as
not to longjmp out of redisplay_window.  (Bug#44448)
2021-08-16 22:06:26 +03:00
Stephen Berman
b21c9b0816 Add Command Modes to Elisp manual menu and add index entries
* doc/lispref/commands.texi (Command Modes): Add index entries.

* doc/lispref/elisp.texi (Top): Add entry for the Command Modes
node to the detailed node listing.
2021-08-16 19:13:53 +02:00
Eli Zaretskii
f0ef1e971d Fix recent documentation additions
* doc/lispref/searching.texi (Search and Replace): Document the
new functions by @defun.
2021-08-16 20:11:33 +03:00
Glenn Morris
958f591567 Merge from origin/emacs-27
9664ee182c (origin/emacs-27) C++ Mode: Don't confuse the pointer oper...
b3aec9ee48 CC Mode: Fix unstable fontification of doc strings.

# Conflicts:
#	lisp/progmodes/cc-fonts.el
2021-08-16 08:01:03 -07:00
Yuuki Harano
4c49ec7f86 Make PGTK's additions conditioinal
* src/.gdbinit: Make them enclosed in condition.
* src/alloc.c: Define defined_HAVE_PGTK and make it externally visible.
2021-08-16 23:01:11 +09:00
Lars Ingebrigtsen
5d7b1d5fc7 Make overlays-in treat zero-length overlays at point-max consistently
* doc/lispref/display.texi (Finding Overlays): Adjust documentation.

* src/buffer.c (overlays_in): Treat the end of the buffer and the
end of the narrowed-to buffer the same (bug#19422).
(Foverlays_in): Adjust doc string.
2021-08-16 15:40:43 +02:00
Yuuki Harano
2e561ab227 * lisp/term/pgtk-win.el (pgtk-preedit-text): Write doc string 2021-08-16 21:50:32 +09:00
Lars Ingebrigtsen
a3b31302dd Fix cursor movement on the Linux console with certain characters
* lisp/term/linux.el (terminal-init-linux): Switch off
auto-compositions, because they confuse cursor movement on the
Linux console (bug#21363).
2021-08-16 14:49:19 +02:00
Yuuki Harano
a925e6b2b5 * lisp/term/pgtk-win.el (pgtk-face-at-pos): Remove unused function 2021-08-16 21:48:56 +09:00
Lars Ingebrigtsen
b9243b034b Minor clarification for define-minor-mode :variable
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
* doc/lispref/modes.texi (Defining Minor Modes): Clarify what the
setter function should do (bug#14875).
2021-08-16 14:24:53 +02:00
Clément Pit-Claudel
adb450719a Remove prettification for \par in tex-mode
* lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Remove
prettified version of `\par'.  Many fonts don't display anything for
the character it was mapped to (#x2029 PARAGRAPH SEPARATOR), so
enabling prettification makes every `\par' disappear (bug#50073).
2021-08-16 14:10:41 +02:00