1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-05 07:01:11 -08:00
Commit graph

155589 commits

Author SHA1 Message Date
Lars Ingebrigtsen
c9524819ea Partially revert a fill-region-as-paragraph regression
* lisp/textmodes/fill.el (fill-region-as-paragraph): Revert
e186af261 (bug#53537), because it leads to regressions.  (But
leave tests in place.)
2022-01-26 16:20:05 +01:00
Eli Zaretskii
6075ea0b79 Fix 'make_lispy_position' when there's an image at EOB
* src/xdisp.c (move_it_to): Don't compare IT_CHARPOS with an
invalid TO_CHARPOS.  (Bug#53546)
2022-01-26 16:44:14 +02:00
Lars Ingebrigtsen
c5b0019e10 Fix copyright-find-copyright when searching from the end
* lisp/emacs-lisp/copyright.el (copyright-find-copyright): Make
the double check also work when searching from the end (bug#7179).

Do not merge to master.
2022-01-26 15:03:56 +01:00
Lars Ingebrigtsen
ed18d08f6f Fix copyright.el comment and add a test
* lisp/emacs-lisp/copyright.el (copyright-find-copyright): Fix
comment (bug#7179).

Do not merge to master.
2022-01-26 15:03:33 +01:00
Lars Ingebrigtsen
826959ccb4 Fix copyright-find-copyright when searching from the end
* lisp/emacs-lisp/copyright.el (copyright-find-copyright): Make
the double check also work when searching from the end (bug#7179).
2022-01-26 15:02:00 +01:00
Lars Ingebrigtsen
8a343ecee5 Fix copyright.el comment and add a test
* lisp/emacs-lisp/copyright.el (copyright-find-copyright): Fix
comment (bug#7179).
2022-01-26 14:53:07 +01:00
Sean Whitton
afd1fdf6bb Fix input of sharp-quoted symbols in Eshell with em-extpipe
* lisp/eshell/em-extpipe.el (eshell-parse-external-pipeline): Fix
misinterpreting sharp-quoted symbols as the beginning of single-quoted
strings (Bug#53518).  Add protection against a possible infinite loop.
* test/lisp/eshell/em-extpipe-tests.el (em-extpipe-test-17): New
test (bug#53518).
2022-01-26 14:16:40 +01:00
Michael Albinus
fc8875be07 Adapt tramp-tests
* test/lisp/net/tramp-tests.el (tramp--test-special-characters):
Adapt test candidates.
2022-01-26 14:05:30 +01:00
Michael Albinus
b085ca237d Fix insert-file-contents for tramp-crypt
* lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
Use `tramp-handle-insert-file-contents'.
2022-01-26 14:05:11 +01:00
Po Lu
9421678987 Add workaround for super modifier misconfiguration to non-XKB code
* src/xterm.c (x_find_modifier_meanings): Don't let a modifier
be both Hyper and Super.
2022-01-26 20:36:35 +08:00
Andrea Corallo
1200e55b6f Make use of NILP where possible
* src/w32menu.c (menubar_selection_callback, w32_menu_show): Use NILP
where possible.
* src/w32fns.c (w32_set_mouse_color): Likewise.
* src/w16select.c (Fw16_selection_exists_p): Likewise.
* src/process.c (Fnetwork_lookup_address_info): Likewise.
* src/cygw32.c (Fcygwin_convert_file_name_to_windows)
(Fcygwin_convert_file_name_from_windows): Likewise.
2022-01-26 12:59:10 +01:00
Po Lu
a2eb83d037 Simplify Haiku scrolling code
* src/haikuterm.c (haiku_scroll_run): Remove code that can never
be reached since Cairo frames are always double buffered.
2022-01-26 06:05:35 +00:00
Po Lu
401ccb0b9c Fix GTK menu bar height reporting when scaled
* src/gtkutil.c (xg_update_frame_menubar): Multiply requisition
height by GDK scale.
2022-01-26 13:53:20 +08:00
Po Lu
3e00ab5efb ; * src/xterm.c (handle_one_xevent): Fix formatting of XI2 switch. 2022-01-26 13:51:06 +08:00
Stefan Kangas
f97c3f9ced Merge from origin/emacs-28
7eca80b204 ; * src/composite.c (syms_of_composite) <auto-composition-...
2022-01-26 06:30:26 +01:00
Po Lu
db7de56eef Simplify Haiku underline code
* src/haikuterm.c (haiku_draw_text_decoration): Remove code left
over from when mouse face had to be set manually.
2022-01-26 05:09:09 +00:00
Po Lu
bca6855084 Make `haiku-menu-bar-open' faster
* src/haikumenu.c (Fhaiku_menu_bar_open): Get draw lock before
updating the menu bar.
* src/haikuterm.c (haiku_read_socket): Don't update menu bar if
b->no_lock.
2022-01-26 01:20:48 +00:00
Stefan Kangas
19c6fb1674 ; * test/lisp/emacs-lisp/derived-tests.el: Silence byte-compiler. 2022-01-26 00:44:00 +01:00
Stefan Kangas
51fdcca000 * src/image.c (parse_image_spec): Use NILP. 2022-01-26 00:42:10 +01:00
Lars Ingebrigtsen
fb16a6c124 Improve how change-log-mode fills all-file-name lines
* lisp/vc/add-log.el (change-log-fill-file-list): New function to
improve how we fill all-file-name ChangeLog lines (bug#19341).
(change-log-indent): Use it.
2022-01-25 23:41:07 +01:00
Lars Ingebrigtsen
2362eb0980 Fix up Gnus FAQ entry
* doc/misc/gnus-faq.texi (FAQ 3-9): Remove mention of
nnimap-list-pattern, which was removed some years ago (bug#53522).
2022-01-25 23:41:07 +01:00
Andrea Corallo
50fea24b8b * src/comp.c (emit_lisp_obj_rval): Make use of NILP. 2022-01-25 22:15:51 +01:00
Andrea Corallo
2d4d6f1a3f ;* src/fns.c (concat_strings): Add missing space. 2022-01-25 22:05:05 +01:00
Stefan Monnier
f4ed3f39c9 * src/comp.c (emit_limple_insn): Fix another int/Lisp_Object mixup 2022-01-25 14:36:48 -05:00
Glenn Morris
84276bf775 Tag an mml-sec test
* test/lisp/gnus/mml-sec-tests.el (mml-secure-en-decrypt-3):
Tag unstable on hydra.nixos.org due to repeated intermittent failures.
2022-01-25 09:38:50 -08:00
Eli Zaretskii
d25cb37694 ; * src/fns.c (concat_strings): Fix comment style. 2022-01-25 19:12:50 +02:00
Andrea Corallo
65172e61cc * src/fns.c (concat_strings): Clean-up unused variable. 2022-01-25 17:52:43 +01:00
Andrea Corallo
dfaf8bec4e * `batch-byte+native-compile' produce .eln younger than .elc (bug#52912)
* lisp/emacs-lisp/comp.el (batch-native-compile): Add return
value.
(batch-byte+native-compile): Touch the produced .eln after the
corresponding .elc is produced.
2022-01-25 17:47:34 +01:00
Andrea Corallo
72a4cdaadc * lisp/emacs-lisp/comp.el (batch-byte+native-compile): Fix unwind form 2022-01-25 17:47:34 +01:00
Stefan Monnier
e8c66036d1 * src/lisp.h (lisp_h_EQ, lisp_h_NILP): Fix length and indent 2022-01-25 10:03:01 -05:00
Mattias Engdegård
697723b63d Faster concat, append, vconcat, copy-sequence, etc
Split the C auxiliary function `concat` into separate functions for
string and list/vector as target types, respectively.  This makes them
simpler and faster.

Implement `Fcopy_sequence` more efficiently for strings, lists and
vectors instead of using `concat`.

The result is a significant performance increase for the Lisp
built-ins concat, append, vconcat, copy-sequence and anything using
them such as mapconcat, copy-alist and propertize.

* src/fns.c (concat2, concat3, Fconcat): Use concat_strings.
(Fappend, Fvconcat): Adapt to changed signature of concat.
(Fcopy_sequence): Faster implementation for lists, strings, and vectors.
(concat_strings): New.
(concat): Strip code for string target, simplify, optimise.
(Fcopy_alist): Use Fcopy_sequence.
2022-01-25 15:51:25 +01:00
Lars Ingebrigtsen
f16039b161 Don't mutate literals in tabulated-list-widen-current-column
* lisp/emacs-lisp/tabulated-list.el
(tabulated-list-widen-current-column): Avoid mutating constants
(bug#53501).
2022-01-25 14:21:22 +01:00
Lars Ingebrigtsen
c40398e008 Fix widening some columns in tabulated-list-widen-current-column
* lisp/emacs-lisp/tabulated-list.el
(tabulated-list-widen-current-column): Don't bug out on list-based
columns (bug#53498).
2022-01-25 13:58:30 +01:00
Jim Porter
44ffd6a825 Treat "-" as a positional arg in 'eshell-eval-using-options'
* lisp/eshell/esh-opt.el (eshell--process-args): Treat "-" as a
positional arg.

* lisp/eshell/em-tramp.el (eshell/su): Simplify checking for "-".

* test/lisp/eshell/esh-opt-tests.el
(esh-opt-test/eval-using-options-stdin): New test.
2022-01-25 13:28:48 +01:00
Jim Porter
dea24a0f7d Don't manipulate args in-place for 'eshell-eval-using-options'
This is necessary for preserve the original arguments to forward on to
:external commands.  Previously, when :preserve-args was also set, the
original argument list could be altered, changing the meaning of the
command.

* lisp/eshell/esh-opt.el (eshell-eval-using-options): Copy MACRO-ARGS
when :preserve-args is set, and pass the original value to
'eshell--do-opts'.
(eshell--do-opts): Use the original arguments when calling an external
command.

* lisp/eshell/em-tramp.el (eshell/su, eshell/sudo): Don't copy the
original arguments, since 'eshell-eval-using-options' does this for
us.

* test/lisp/eshell/esh-opt-tests.el (esh-opt-process-args-test):
Split this test into...
(esh-opt-test/process-args)
(esh-opt-test/process-args-parse-leading-options-only)
(esh-opt-test/process-args-external): ... these.
(test-eshell-eval-using-options): Split this test into...
(esh-opt-test/eval-using-options-short)
(esh-opt-test/eval-using-options-long)
(esh-opt-test/eval-using-options-constant)
(esh-opt-test/eval-using-options-user-specified)
(esh-opt-test/eval-using-options-short-single-token)
(esh-opt-test/eval-using-options-terminate-options)
(esh-opt-test/eval-using-options-parse-leading-options-only)
(esh-opt-test/eval-using-options-unrecognized): ... these.
(esh-opt-test/eval-using-options-external): New test.

* test/lisp/eshell/em-tramp-tests.el: New tests.
2022-01-25 13:28:45 +01:00
Eli Zaretskii
7eca80b204 ; * src/composite.c (syms_of_composite) <auto-composition-mode>: Doc fix. 2022-01-25 14:15:36 +02:00
Lars Ingebrigtsen
115f3f5934 Improve the term-clear-full-screen-programs doc string
* lisp/term.el (term-clear-full-screen-programs): Improve the doc
string.
2022-01-25 12:51:30 +01:00
Po Lu
4d342f36a6 Improve reliability of menu bar updates on Haiku
* src/haiku_support.cc (class EmacsWindow): New fields
`menu_update_cv', `menu_update_mutex' and `menu_updated_p'.
(~EmacsWindow): Destroy cv and mutex.
(MenusBeginning): Release lock and wait for condition to be
become true.
(EmacsWindow_signal_menu_update_complete): New function.
* src/haiku_support.h (struct haiku_menu_bar_state_event): New
field `no_lock'.
* src/haikumenu.c (Fhaiku_menu_bar_open): Always update menu
bar.
* src/haikuterm.c (haiku_read_socket): Always update menu bar
and signal the window thread after update completion.
2022-01-25 11:19:20 +00:00
Po Lu
03c9257b11 * src/haiku_support.cc (Highlight): Send events if !highlight_p. 2022-01-25 10:18:35 +00:00
Po Lu
0a70f748e7 Don't send menu help events on Haiku if the pointer isn't in the menu
* src/haiku_support.cc (Highlight): Only send help events
if the mouse cursor is actually in the menu.
2022-01-25 10:02:16 +00:00
Po Lu
b373c8ad71 Fix tool bar size reporting on GTK when the display is scaled
* src/gtkutil.c (xg_update_tool_bar_sizes): Multiply sizes to
turn them into device pixels.
2022-01-25 14:43:12 +08:00
Stefan Kangas
ff63787ea1 Merge from origin/emacs-28
c34d06e3d7 * configure.ac (LIBSECCOMP): Bump minimum version for facc...
335a5a9e0f Make the `f' command work in image-mode again
2022-01-25 06:31:03 +01:00
Po Lu
ec403abc60 Improve portability of X11 IM code
* configure.ac: Test for XICCallback.callback if X11R6 or later.
* src/xfns.c (Xxic_preedit_start_callback): Use XICCallback if
present.
2022-01-25 11:49:39 +08:00
Stefan Monnier
96929e5d01 Remove some dubious uses of interactive-form
* lisp/emacs-lisp/cl-generic.el (cl--generic-lambda): `commandp` and
`interactive-form` are for function values, not for source code.
* lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
Prefer `commandp` over `interactive-form`.
2022-01-24 21:31:53 -05:00
Po Lu
ea953db0a0 Fix invalid picture after toggling the tool bar or menu bar on GTK
* src/xterm.c (x_drop_xrender_surfaces): New function.
(handle_one_xevent): Call x_drop_xrender_surfaces instead of
just font_drop_xrender_surfaces.
2022-01-25 10:15:16 +08:00
Po Lu
eb4edfa0c8 Fix GTK native input on scaled displays
* src/xfns.c (xic_set_preeditarea): Scale preedit spot rectangle
before giving it to GTK.
2022-01-25 08:22:30 +08:00
Sean Whitton
667e212048 Add Eshell syntax to more easily bypass Eshell's own pipelining
* etc/NEWS:
* doc/misc/eshell.texi (Input/Output): Document the new syntax.
* lisp/eshell/em-extpipe.el: New module (Bug#46351).
* test/lisp/eshell/em-extpipe-tests.el: New tests.
* lisp/eshell/esh-module.el (eshell-modules-list): Add `eshell-extpipe'.
2022-01-24 21:46:31 +01:00
Sean Whitton
42aef82a2b Rework eshell-match-result for testing asynchronous commands
When using eshell-match-result via eshell-command-result-p to examine
the output of asynchronous Eshell commands, a newly emitted prompt is
included in the text against which the regexp is matched.  This makes
it awkward to match against the whole output; for example, to check
whether it is empty.  Rework the function to exclude the prompt.

* test/lisp/eshell/eshell-tests-helpers.el (eshell-match-result):
Exclude any newly emitted prompt from the text against which the
regexp is matched.  Additionally, the function no longer moves point.
* test/lisp/eshell/eshell-tests.el (eshell-test/flush-output): Update
and simplify test given how eshell-match-result no longer moves point.
2022-01-24 21:45:00 +01:00
Sean Whitton
1693423fd7 Move Eshell test helpers to their own file
* test/lisp/eshell/eshell-tests.el:
* test/lisp/eshell/eshell-tests-helpers.el: Move helpers to own file.
2022-01-24 21:44:57 +01:00
Lars Ingebrigtsen
422b0f2a50 Make hi-lock-face-defaults into a defcustom
* lisp/hi-lock.el (hi-lock-face-defaults): Make into defcustom.
2022-01-24 20:18:22 +01:00