1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-07 20:30:32 -08:00
Commit graph

153418 commits

Author SHA1 Message Date
Po Lu
62f3942b89 Add documentation for the `none' input style
* doc/emacs/xresources.texi (Table of Resources): Document
missing value of `inputStyle'.
2022-01-07 19:08:56 +08:00
Po Lu
4c6d9b921c ; * doc/lispref/commands.texi (Misc Events): Fix typo. 2022-01-07 19:07:37 +08:00
Protesilaos Stavrou
11626f0c0c
* admin/MAINTAINERS: Describe Modus themes as externally maintained package 2022-01-07 11:40:54 +02:00
Po Lu
f501b572ed * doc/lispref/display.texi (Face Attributes): Update doc for new values. 2022-01-07 17:26:15 +08:00
Po Lu
f041d61008 Improve documentation of the preedit-text event
* doc/lispref/commands.texi (Misc Events): Document how
`preedit-text' events are used.
2022-01-07 17:26:13 +08:00
Po Lu
259229bf37 Disable new input method behaviour by default on X
* src/xfns.c (supported_xim_styles): Default to STYLE_NONE.
2022-01-07 17:25:32 +08:00
Eli Zaretskii
1fae01dacf ; * doc/lispref/commands.texi (Misc Events): Fix wording. 2022-01-07 10:11:33 +02:00
Eli Zaretskii
d99e32436d ; * doc/emacs/xresources.texi (Table of Resources): Use @table. 2022-01-07 09:57:43 +02:00
Po Lu
1229bd8118 Allow controlling the X input method style
* doc/emacs/xresources.texi (Table of Resources): Document new
resource `inputStyle'.
* etc/NEWS: Announce new resource.

* src/xfns.c (create_frame_xic): Give the display info to
`best_xim_style'.
(best_xim_style): Take the display's preferred style into
account.

* src/xterm.c (x_term_init): Parse the preferred style if
inputStyle is set.

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

(STYLE_OFFTHESPOT, STYLE_OVERTHESPOT, STYLE_ROOT):
(STYLE_CALLBACK, STYLE_NONE): New macros.
2022-01-07 15:38:12 +08:00
Po Lu
808f69bf7a * src/haikuselect.c: Fix implicit declaration of free. 2022-01-07 06:52:52 +00:00
Po Lu
751789471c Display pre-edit information from X input methods
This also repurposes the `pgtk-preedit-text' event to be
meaningful on X, renames it `preedit-text', and documents it.

* doc/lispref/commands.texi (Misc Events): Document
`preedit-text'.
* lisp/term/pgtk-win.el (pgtk-preedit-text): Bind to
`preedit-text' instead.
* lisp/term/x-win.el (x-preedit-overlay): New variable.
(x-preedit-text): New command, bound as a special event to
`preedit-text'.

* src/keyboard.c (kbd_buffer_get_event):
(make_lispy_event): Rename PGTK_PREEDIT_TEXT_EVENT
PREEDIT_TEXT_EVENT.
(syms_of_keyboard): New defsym `preedit-text'.
* src/pgtkterm.c (pgtk_enqueue_preedit): Use PREEDIT_TEXT_EVENT
instead.
* src/termhooks.h (enum event_kind): Rename
`PGTK_PREEDIT_TEXT_EVENT' `PREEDIT_TEXT_EVENT'.

* src/xfns.c (Xxic_preedit_draw_callback):
(Xxic_preedit_caret_callback):
(Xxic_preedit_done_callback):
(Xxic_preedit_start_callback): New callback variables.

(STYLE_OFFTHESPOT, STYLE_OVERTHESPOT):
(STYLE_ROOT, STYLE_CALLBACK, STYLE_NONE): New macros.
(supported_xim_styles): Use reasonable values.  This also serves
as a better fix for bug#10867.
(best_xim_style): Restore code deleted as part of the original
fix for bug#10867.
(create_frame_xic): Add preedit callbacks.
(xic_set_preeditarea): Add preedit callbacks.
(x_xic_to_frame):
(xic_preedit_start_callback):
(xic_preedit_caret_callback):
(xic_preedit_done_callback):
(x_xim_text_to_utf8_unix):
(xic_preedit_draw_callback): New functions.

* src/xterm.c (x_detect_focus_change): Fix type of XI event.
(x_free_frame_resources): Free preedit text buffer if still
present.
* src/xterm.h (struct x_output): New fields `preedit_size',
`preedit_chars' and `preedit_active'.
2022-01-07 14:42:08 +08:00
Po Lu
48038cb2b2 * admin/MAINTAINERS: Add myself for some things. 2022-01-07 09:00:59 +08:00
Eli Zaretskii
7945d86829 ; Fix recent changes in rcirc documentation
* doc/misc/rcirc.texi (Changing the time stamp format):
* lisp/net/rcirc.el (rcirc-when): Fix documentation wording.
2022-01-06 18:53:45 +02:00
Philip Kaludercic
0ae38ec94a ; * NEWS: Revert typo from last commit 2022-01-06 14:59:41 +01:00
Philip Kaludercic
0d46683202 Add rcirc-when command
* doc/misc/rcirc.texi: Document rcirc-when.
* etc/NEWS: Document rcirc-when.
* lisp/net/rcirc.el (rcirc-when): Add command.
2022-01-06 14:56:23 +01:00
Eli Zaretskii
daedbb2f5b Improve documentation of font-related face attributes
* lisp/faces.el (set-face-attribute): Mention aliases of face
attributes.  (Bug#53050)
2022-01-06 15:47:21 +02:00
Eli Zaretskii
66e50562e8 Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs 2022-01-06 15:47:17 +02:00
Michael Albinus
b4e709c41f * admin/MAINTAINERS: Describe Tramp as externally maintained package 2022-01-06 13:38:50 +01:00
Eli Zaretskii
ca25fde951 Revert "Fix selection of fonts that don't have regular weight"
This reverts commit 1b2511fa2a.
That commit caused unintended regressions which are worse
than the problem it attempted to fix.  See the discussion at

  https://lists.gnu.org/archive/html/emacs-devel/2021-12/msg01643.html

for the details.
2022-01-06 14:16:53 +02:00
Po Lu
cbe10f3753 Remove some more useless clipping stack calls on Haiku
* src/haikuterm.c (haiku_draw_box_rect):
(haiku_draw_relief_rect):
(haiku_draw_text_decoration): Get rid of calls to
BView_StartClip and BView_EndClip.
2022-01-06 12:05:47 +00:00
Po Lu
b3ceeb3f2a Generate TOUCH_END_EVENTs on NS when mwheel momentum is disabled
* src/nsterm.m ([EmacsView mouseDown:]): Generate
TOUCH_END_EVENTs on the first event whose momentum phase is not
NSEventPhaseNone.
2022-01-06 19:35:18 +08:00
Po Lu
9fc20ad35c Make sure touch end events aren't sent too many times
* src/xterm.c (handle_one_xevent): Don't send touch end events
twice if two valuators have their masks set without a change in
value.
2022-01-06 19:11:56 +08:00
Po Lu
2ab73286b7 Add group to xkey state before filtering it on XI_KeyRelease
* src/xterm.c (handle_one_xevent): Add group to xkey.state
before filtering an XI2 key release event.  This fixes fcitx on
some systems.
2022-01-06 15:50:52 +08:00
Po Lu
3b1164de0e Fix GNUstep compilation warnings
* src/Makefile.in (NON_OBJC_CFLAGS): Add `-Wnested-externs'.
* src/emacs.c (load_pdump): Only define exec_bufsize if
!NS_SELF_CONTAINED.
* src/image.c (ARGB_TO_ULONG): Don't define if HAVE_NS.
* src/nsterm.m (ns_destroy_window): Pacify incorrect GCC
warning.
(ns_query_color): Make static.
(ns_run_loop_break): Fix old-style definition.
([EmacsView toggleFullScreen:]): Remove unused variable.
2022-01-06 14:10:52 +08:00
Po Lu
e882dd48e3 Fix duplicate overhang display on GNUstep
* src/nsfont.m (nsfont_draw): Stop saving DPS clip and remove
workaround for bad clipping.
* src/nsterm.m (ns_draw_glyph_string): Clip to glyph string rect
when displaying overhangs.
2022-01-06 14:02:43 +08:00
Po Lu
5749c57e47 * src/xterm.c (handle_one_xevent): Check for errors when kbd map. 2022-01-06 09:45:20 +08:00
Stefan Monnier
61f8f7f68f cl-generic.el: Fix bug#46722
Fix longstanding bug due to unexpected interference via side-effect.

* lisp/emacs-lisp/cl-generic.el (cl--generic-get-dispatcher):
Copy the `dispatch` arg before storing it into the hash-table.
2022-01-05 14:28:37 -05:00
Juri Linkov
2b59a42583 * lisp/textmodes/paragraphs.el (repunctuate-sentences): Use filter variable.
(repunctuate-sentences-filter)<defun>:
Reimplement without using match data.
(repunctuate-sentences-filter)<defvar>: New variable.
(repunctuate-sentences): Use new variable.
Remove regexp group from spaces as was before.
https://lists.gnu.org/archive/html/emacs-devel/2022-01/msg00395.html
2022-01-05 20:47:20 +02:00
Lars Ingebrigtsen
0a51652f6d Fix typo in cvs-status-mode-map keymap
* lisp/vc/cvs-status.el (cvs-status-mode-map): Fix typo in keymap
definition.
2022-01-05 17:07:07 +01:00
Stefan Kangas
fab840e381 ; * lisp/buff-menu.el (Buffer-menu-mode-map): Fix warning. 2022-01-05 14:56:00 +01:00
Eli Zaretskii
bb0c197b77 ; Fix typo in last change. 2022-01-05 15:14:54 +02:00
Eli Zaretskii
82959661e5 Fix info-lookup docs and "C-h S" in major-modes with no manuals
* lisp/info-look.el (info-lookup-alist, info-lookup-add-help)
(info-lookup-symbol, info-lookup-file, info-lookup)
(info-lookup-interactive-arguments): Clarify and expand the doc
strings.
(info-lookup-change-mode): Topic values can have their `:mode' as
a cons cell, not just a mode's symbol; support that.
2022-01-05 15:11:24 +02:00
Po Lu
ed7c6d6873 Enable subpixel antialiasing on the Cairo font driver on Haiku
* src/ftcrfont.c (ftcrfont_open): Manually enable subpixel
antialiasing on Haiku.

* src/haiku_support.cc
(get_subpixel_antialiasing): New function declaration.
(be_use_subpixel_antialising):
* src/haiku_support.h (be_use_subpixel_antialising): New
functions.
2022-01-05 12:05:14 +00:00
Stefan Kangas
83e346b70a * lisp/buff-menu.el (Buffer-menu-mode-map): Use defvar-keymap. 2022-01-05 12:07:10 +01:00
Po Lu
ed62de0d39 Resolve clipping related mysteries on Haiku
* src/ftcrfont.c (ftcrfont_draw):
* src/haikufont.c (haikufont_draw): Remove workarounds for
previously broken clipping code.
* src/haikuterm.c (haiku_clip_to_string): Handle empty clipping
rectangles correctly.
(haiku_clip_to_string_exactly): Stop setting num_clips.
(haiku_draw_glyph_string): Stop saving face when drawing
overhangs.
2022-01-05 10:34:43 +00:00
Po Lu
e1626257ab Make sure mouse face doesn't stay on the cursor after it is cleared
cursor_in_mouse_face_p will still return true when the phys
cursor is drawn inside show_mouse_face when called by
clear_mouse_face, since that drawing happens before
hlinfo->mouse_face_window can be set to nil.

However, the row's mouse_face_p will be adjusted before the
cursor is drawn in show_mouse_face, so it can be used to
determine if the cursor is actually under mouse face.

* src/xdisp.c (fill_composite_glyph_string):
(fill_gstring_glyph_string):
(fill_glyphless_glyph_string):
(fill_glyph_string):
(fill_xwidget_glyph_string):
(fill_stretch_glyph_string): Only apply mouse face when
DRAW_CURSOR if the row is also mouse_face_p.

(set_glyph_string_background_width): Only adjust width if the
row holding the cursor is also mouse_face_p.
2022-01-05 14:53:57 +08:00
Po Lu
8875ae70a4 Simply conditions for mouse face display when drawing cursor on Haiku
* src/haikuterm.c (haiku_draw_stretch_glyph_string): Simplify
conditions for mouse face display.
2022-01-05 06:26:31 +00:00
Po Lu
f090c25113 Remove some unnecessary graphics state saves on Haiku
* src/haikufont.c (haikufont_draw):
* src/haikuterm.c (haiku_draw_box_rect):
(haiku_draw_relief_rect):
(haiku_draw_underwave):
(haiku_draw_text_decoration):
(haiku_draw_plain_background):
(haiku_draw_glyph_string_foreground):
(haiku_draw_glyphless_glyph_string_foreground):
(haiku_draw_stretch_glyph_string):
(haiku_draw_composite_glyph_string_foreground):
(haiku_draw_image_glyph_string): Remove unnecessary calls to
BView_StartClip and BView_EndClip.
2022-01-05 06:07:32 +00:00
Stefan Kangas
d763c12796 Merge from origin/emacs-28
e7aa3ece52 Fix vc-git with old Git over Tramp and cygwin-mount.el
c0cfbca311 * lisp/emacs-lisp/checkdoc.el (bytecomp): Add missing require

# Conflicts:
#	etc/NEWS
2022-01-05 06:30:39 +01:00
Po Lu
ad63bdf05a Fix xwidgets setting their own signal handlers
* src/xgselect.c (release_select_lock):
(acquire_select_lock): Fix coding style.
(xg_select): Call `catch_child_signal' if xwidgets are enabled.

* src/xwidget.c (kill_xwidget):
(kill_buffer_xwidgets): Call `catch_child_signal'.  (bug#53013)
2022-01-05 10:36:40 +08:00
Po Lu
a7dbbcac57 Fix display of internal border in child frames on pgtk
* src/pgtkfns.c (Fx_create_frame): Fix child frame border
resource names.
* src/pgtkterm.c (pgtk_clear_under_internal_border): Fix test
for child frames.  (bug#53018)
2022-01-05 10:16:56 +08:00
Dmitry Gutov
e7aa3ece52 Fix vc-git with old Git over Tramp and cygwin-mount.el
* lisp/vc/vc-git.el (vc-git-use-literal-pathspecs): New variable.
(vc-git-command, vc-git--call): Use it to determine whether to set
GIT_LITERAL_PATHSPECS=1 (bug#51497).
(vc-git--literal-pathspec, vc-git--literal-pathspecs): Remove.
Update all callers.  This reverts the previous solution for bug#39452.

* lisp/progmodes/project.el (project--vc-list-files):
Use the new variable.
2022-01-05 04:08:10 +02:00
Po Lu
6719a3ccab Correctly set up XI key input mask on X Toolkit builds
* src/xfns.c (setup_xi_event_mask): Also set the key event mask
on the outer window, which might also have the input focus.
(x_window) [USE_X_TOOLKIT]: Set up XI event mask a bit later.
2022-01-05 09:39:57 +08:00
Philipp Stephani
c0cfbca311 * lisp/emacs-lisp/checkdoc.el (bytecomp): Add missing require 2022-01-05 01:41:46 +01:00
Daniel Mendler
30d4cfc080 completion--nth-completion: Throw meaningful error
If a configured completion style does not exist, throw a meaningful
error. Also make completion-styles-alist a defvar, since completion
styles like orderless extend it.

* lisp/minibuffer.el (completion-styles-alist): Make it a defvar.
(completion--nth-completion): Give a more meaningful error.
2022-01-04 19:16:37 -05:00
Paul Eggert
c899d9742a Update from gnulib 2022-01-04 13:17:25 -08:00
Robert Pluim
a0263cfee3 Remove ambiguity from key-valid-p docstring
* lisp/keymap.el (key-valid-p): Be explicit about the separator
being one and only one space.
2022-01-04 16:43:03 +01:00
Lars Ingebrigtsen
0d315102fe Improve pp-emacs-lisp-code for #'
* lisp/emacs-lisp/pp.el (pp--insert-lisp): Format (function ...)
as #'.
2022-01-04 15:51:04 +01:00
Eli Zaretskii
38b4bbb7e1 A cleaner fix for display bug#52947
* src/xdisp.c (tab_bar_height, redisplay_tab_bar): Don't call
set_iterator_to_next here...
(display_tab_bar_line): ...call it here, even if we exit the loop
because we encounter a newline.
2022-01-04 15:37:16 +02:00
Jimmy Aguilar Mena
aa7d0e9a92 Autoload decorator for windmove-mode 2022-01-04 14:15:10 +01:00