1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-07 04:10:27 -08:00
Commit graph

148085 commits

Author SHA1 Message Date
Peter Oliver
a9fc30e6c2 Add tests
* test/lisp/progmodes/ruby-mode-tests.el (ruby-with-temp-file): New helper.
(ruby--set-encoding-when-ascii, ruby--set-encoding-when-utf8)
(ruby--set-encoding-when-latin-15): Tests for the previous commit (bug#48043).
2021-04-28 05:18:40 +03:00
Dmitry Gutov
6a078097c9 Don't add magic comment to Ruby files for utf-8 encoding
* lisp/progmodes/ruby-mode.el (ruby-encoding-map):
Add entry for utf-8 (bug#48043).
(ruby--detect-encoding): Don't convert to string too early, so
that returning nil is meaningful.
(ruby-mode-set-encoding): Convert to string here.
2021-04-28 05:11:36 +03:00
Andrea Corallo
c62262736c * Clean-up temporary eln test-suite directory when exiting (bug#48060)
* lisp/startup.el (normal-top-level): Remove eln test-suite temp
	dir when exiting.
2021-04-27 23:34:14 +02:00
Andrea Corallo
4e1e0b9dec Have `comp-cstr-intersection-no-mem' intersect pos neg value sets
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-intersection-no-mem):
	intersect pos and neg value sets
	* test/lisp/emacs-lisp/comp-cstr-tests.el
	(comp-cstr-typespec-tests-alist): Add two tests and fix some
	test number.
2021-04-27 22:58:41 +02:00
Stefan Kangas
2ab8d1ee3b Avoid missing whitespace in help-for-help
* lisp/help.el (help--for-help-make-commands): Avoid missing
whitespace before description of command.
Problem reported by Dmitry Gutov <dgutov@yandex.ru>.
2021-04-27 22:54:05 +02:00
Michael Albinus
1ee62ac5bd Fix loading problem in Tramp
* lisp/net/tramp.el (tramp-autoload-file-name-handler): Load also
tramp-compat.el.
2021-04-27 20:56:07 +02:00
Eli Zaretskii
7e25e0f96b ; * src/comp.c: Fix typos. 2021-04-27 21:51:57 +03:00
Stefan Kangas
233c0af31e ; Fix typos 2021-04-27 18:54:37 +02:00
Daniel Mendler
d8e037eeaa (affixation-function): Allow only three-element list elements
Restrict the definition of the `affixation-function`.  The function
must return a list of three element lists.  Since the
`affixation-function` is part of the widely used `completing-read` API
a simplification is helpful for both authors of completion UIs and
authors of completion tables.

* doc/lispref/minibuf.texi: Update documentation.
* lisp/minibuffer.el: Update documentation.
* lisp/simple.el (read-extended-command--affixation):
Return three-element lists.

https://lists.gnu.org/archive/html/emacs-devel/2021-04/msg01193.html
2021-04-27 19:44:41 +03:00
Mattias Engdegård
7133a67dcd Calc: control digits after decimal point (bug#47302)
Calc normally displays a trailing decimal point for floats with no
fractional part, like '12.'. Some uses require at least one digit
after the point; add the governing variable calc-digit-after-point.

* lisp/calc/calc.el (calc-digit-after-point): New variable.
(math-format-number): Use it.
* test/lisp/calc/calc-tests.el (calc-display-digit-after-point):
New test.
2021-04-27 18:10:01 +02:00
Stefan Kangas
d55d5358b2 ; * lisp/emacs-lisp/comp.el: Fix typos. Add LocalWords. 2021-04-27 14:17:44 +02:00
Michael Albinus
6fb80c9ad8 ; * test/infra/gitlab-ci.yml: Add local variable. 2021-04-27 12:28:02 +02:00
Martin Rudalics
a190b4cfd8 Major rewrite of adjust_frame_size
Have adjust_frame_size pass native frame sizes to backends
instead of text sizes.  Expand frame size history management.
Drop PIXELWISE argument from change_frame_size and convert
native to text sizes only when calling adjust_frame_size.  Use
convention in arguments that -1 instead of 0 means that no size
change is required.  When adjusting frame sizes pick up delayed
size changes (Bug#46827).

* lisp/frame.el (frame-notice-user-settings, make-frame): Don't
set frame size history.
(frame--size-history): Rewrite doc-string.  Handle new formats
of `frame-size-history' entries.
* src/dispextern.h (delayed_size_change): Extern it.
(change_frame_size): Drop last argument from extern.
* src/dispnew.c (delayed_size_change): Make it global.
(handle_window_change_signal): Reformat.  Drop last argument
from change_frame_size call.
(do_pending_window_change, init_display_interactive): Drop last
argument from change_frame_size call.
(change_frame_size_1): NEW_WIDTH and NEW_HEIGHT now specify
native sizes.  Drop last argument PIXELWISE.  Queue a change
when it either differs from F's current pixel sizes or F's
previously queued sizes.  Inject frame_size_history_extra call
when queuing.  Adopt convention that for queued sizes -1 means
that no size change is required.  Convert from native to text
sizes when calling adjust_frame_size.
(change_frame_size): Drop last argument PIXELWISE and drop it
also in change_frame_size_1 calls.
* src/frame.c (frame_size_history_add): Remove.
(frame_inhibit_resize): Remove call to frame_size_history_add.
(set_menu_bar_lines, set_tab_bar_lines): Simplify.  Drop last
argument from change_frame_size call.
(frame_windows_min_size): No more static.
(keep_ratio): Minor rewrite using macros.
(frame_size_history_adjust, frame_size_history_plain)
(frame_size_history_extra): New functions.
(adjust_frame_size): Major rewrite.  Adopt new convention that
negative values for new sizes mean no change.  Pick up delayed
size changes from F's new_width and new_height slots
(Bug#46827).  Call set_window_size_hook with native instead of
text sizes.  Do not sanitize window sizes any more.  Call
frame_size_history_adjust instead of frame_size_history_add.
Always set F's resized_p slot to true.
(make_frame): Initialize new_width and new_height slots to -1.
Simplify setup of initial sizes and an adjust_frame_size call.
(Fframe_parameters): Drop processing F's new_pixelwise slot.
(check_frame_pixels): Reorder to make declarations appear first.
(Fset_frame_height, Fset_frame_width, Fset_frame_size): Pass
explicit width and height values to adjust_frame_size instead of
-1.
(gui_set_frame_parameters): Minor rewrite making sure that
explicit sizes and the corresponding parameter are passed to
adjust_frame_size.  Remove frame_size_history_add call.
(gui_figure_window_size): Drop last two arguments.  Simplify
assignment of initial size.  Set new_height and new_width slots
to -1.  Use adjust_frame_size to set sizes instead of returning
them to caller.
(syms_of_frame): Drop symbols used by frame size history; these
are now built on-the-fly.  Also drop some menu bar related
symbols in favor of Qmenu_bar_lines.
* src/frame.h (struct frame): Remove new_pixelwise.
(SET_FRAME_COLS, SET_FRAME_LINES, SET_FRAME_WIDTH)
(SET_FRAME_HEIGHT): Remove macros.
(frame_size_history_add): Remove externs.
(frame_windows_min_size, frame_size_history_plain)
(frame_size_history_extra): Add externs.
(FRAME_WINDOWS_WIDTH, FRAME_WINDOWS_HEIGHT): Rename to
FRAME_INNER_WIDTH and FRAME_INNER_HEIGHT.
(gui_figure_window_size): Drop last two arguments from
extern.
* src/gtkutil.c (xg_frame_resized): Rename arguments to WIDTH
and HEIGHT.  Consult delayed_size_change to handle case where
WIDTH and HEIGHT do not match F's new_width and new_height
values.  Call change_frame_size with native sizes and without
PIXELWISE argument.  Instead of frame_size_history_add call
frame_size_history_extra.
(xg_frame_set_char_size): WIDTH and HEIGHT are native sizes now;
fix adjust_frame_size call accordingly.  Instead of
frame_size_history_add call frame_size_history_extra.
(style_changed_cb): Call xg_frame_set_char_size with native
instead of text sizes.
(tb_size_cb): Remove frame_size_history_add call.  Call
adjust_frame_size with INHIBIT 5.
(free_frame_tool_bar, xg_change_toolbar_position): Remove
frame_size_history_add call.
(update_frame_tool_bar): Call adjust_frame_size with INHIBIT 2
and let it handle frame_inhibit_implied_resize and
fullheight/-width.  Remove frame_size_history_add call.
* src/keyboard.c (Fsuspend_emacs): Call change_frame_size with
native sizes.
* src/nsfns.m (ns_set_tool_bar_lines): Call adjust_frame_size
with INHIBIT 2 and let it handle frame_inhibit_implied_resize
and fullheight/-width.  Remove frame_size_history_add call.
(Fx_create_frame): Drop two last arguments in
gui_figure_window_size call.  Do not SET_FRAME_WIDTH and
SET_FRAME_HEIGHT, the adjust_frame_size in
gui_figure_window_size did that already.
* src/nsterm.m (ns_set_window_size): Drop PIXELWISE argument and
its processing; WIDTH and HEIGHT represent native pixel sizes
now.  Call change_frame_size with native sizes.  Remove call to
frame_size_history_add.
([EmacsView viewDidResize:]): Call change_frame_size with native
sizes.
* src/term.c (Fresume_tty): Call change_frame_size with native
sizes.
* src/termhooks.h (*set_window_size_hook): Drop last argument
PIXELWISE.
* src/w32fns.c (w32_change_tab_bar_height)
(w32_change_tool_bar_height): Fix handling of these in the initial
phase before they have been resized at least once.
(Fx_create_frame, w32_create_tip_frame): Drop two last arguments
in gui_figure_window_size call.  Do not SET_FRAME_WIDTH and
SET_FRAME_HEIGHT (or SET_FRAME_COLS and SET_FRAME_LINES), the
adjust_frame_size in gui_figure_window_size did that already.
* src/w32inevt.c (resize_event, maybe_generate_resize_event):
Pass native sizes to change_frame_size.
* src/w32term.c (w32_read_socket): When WM_WINDOWPOSCHANGED pass
native sizes to change_frame_size.
(w32_new_font): Recalculate FRAME_TAB_BAR_HEIGHT.  Simplify
code.
(w32fullscreen_hook): Call change_frame_size with native sizes.
(w32_set_window_size): Drop argument PIXELWISE and its
processing; WIDTH and HEIGHT are native sizes now.  Remove
frame_size_history_add calls.  Pass native sizes to
change_frame_size.
* src/widget.c (set_frame_size): Set width and height of widget
directly.  Call frame_size_history_plain instead of
frame_size_history_add.
(update_from_various_frame_slots): Call
frame_size_history_extra.
(EmacsFrameRealize): Call frame_size_history_plain.
(EmacsFrameResize): Call change_frame_size with native sizes.
Call frame_size_history_extra instead of frame_size_history_add.
(EmacsFrameSetCharSize): Call frame_size_history_extra.  Drop
PIXELWISE argument in x_set_window_size call and specify pixels.
(pixel_to_text_size): Remove function.
* src/xdisp.c (resize_mini_window): Replace FRAME_WINDOWS_HEIGHT
with FRAME_INNER_HEIGHT.
(redisplay_tab_bar): Don't set tab_bar_redisplayed when we did
not redisplay it.
(redisplay_tool_bar): Don't call it for external tool bar.
Don't set tool_bar_redisplayed when we did not redisplay it.
(redisplay_window): When the tool bar is external call
update_frame_tool_bar directly.
* src/xfns.c (x_set_menu_bar_lines): Call adjust_frame_size only
if number of menu bar lines changed and fix 6th argument.
(x_change_tab_bar_height, x_change_tool_bar_height): Fix
handling of these in the initial phase before they have been
resized at least once.
(Fx_create_frame, x_create_tip_frame): Drop two last arguments
in gui_figure_window_size call.  Do not SET_FRAME_WIDTH and
SET_FRAME_HEIGHT (or SET_FRAME_COLS and SET_FRAME_LINES), the
adjust_frame_size in gui_figure_window_size did that already.
* src/xmenu.c (update_frame_menubar): Fix 6th arg of
adjust_frame_size call.
(free_frame_menubar): For Motif frames fix fullscreen and
`frame-inhibit-implied-resize' handling.  Fix 6th arg of
adjust_frame_size calls.
* src/xterm.c (x_net_wm_state): Remove call to
frame_size_history_add.
(handle_one_xevent): For PropertyNotify and UnmapNotify events
add frame_size_history_plain calls.  For MapNotify and
ConfigureNotify events add a frame_size_history_extra call.  For
ConfigureNotify events also handle delayed size changes and call
change_frame_size with native sizes.
(x_new_font): Recalculate FRAME_TAB_BAR_HEIGHT.  Simplify code.
(x_handle_net_wm_state): Remove frame_size_history_add call.
(x_check_fullscreen): Remove frame_size_history_add call.  Call
change_frame_size with native height.
(x_set_window_size_1): WIDTH and HEIGHT are now native.  Remove
some frame_size_history_add calls and add frame_size_history_extra
calls instead.  If the frame is not visible call adjust_frame_size
directly instead of calling change_frame_size.
(x_set_window_size): Drop PIXELWISE argument.  WIDTH and HEIGHT
represent native sizes now.
(x_make_frame_visible, x_make_frame_invisible): Call
frame_size_history_plain.
* src/xterm.h (x_set_window_size): Drop last argument from
extern declaration.
2021-04-27 09:53:42 +02:00
Glenn Morris
40a1e94f4c Doc fixes for comp.el
* lisp/emacs-lisp/comp.el (comp-deferred-compilation-deny-list)
(comp-bootstrap-deny-list, comp-pred-to-cstr, make-comp-mvar)
(comp-mvar-used-p, comp-async-compilation): Doc fixes.
2021-04-26 22:18:14 -07:00
Glenn Morris
b3b2cba5ca Fix some custom types in comp.el
* lisp/emacs-lisp/comp.el (comp-deferred-compilation-deny-list)
(comp-bootstrap-deny-list, comp-never-optimize-functions)
(comp-async-env-modifier-form, comp-native-driver-options):
Fix :type (`list' on its own isn't even a valid type).
2021-04-26 22:09:46 -07:00
Amin Bandali
6a03e4cc4f
* lisp/erc/erc.el: Add past maintainer Michael Olson to Contributors. 2021-04-26 23:58:05 -04:00
Lars Ingebrigtsen
8f52c5da76 Fix compilation warnings in non-toolkit builds
* src/xterm.c (x_create_toolkit_scroll_bar)
(x_create_horizontal_toolkit_scroll_bar): String constants for
XtSetArg are defined as const strings (in
/usr/include/X11/Xaw3d/ThreeD.h, for instance), but the argument
in XtSetArg is defined as either a const char* or a regular char*
in /usr/include/X11/Intrinsic.h.  Cast the argument to String
(which should be correct on all platforms, hopefully) to avoid a
compilation warning (bug#47452).
2021-04-27 04:25:30 +02:00
Stefan Kangas
e1541b5cb4 Rename abnormal hook to comp-async-cu-done-functions
* lisp/emacs-lisp/comp.el (comp-async-cu-done-functions): Rename
from 'comp-async-cu-done-hook' to reflect that it is an abnormal
hook.  Doc fix and update single caller.
2021-04-27 03:37:43 +02:00
Lars Ingebrigtsen
bd5aebce03 Fix failing subr test
* test/lisp/subr-tests.el (subr-tests-bug22027): Fix mocked
signature of `read-string' (bug#48022).
2021-04-27 01:31:52 +02:00
Lars Ingebrigtsen
e1562bbab3 Fix failing auth-source test
* test/lisp/auth-source-tests.el
(auth-source-test-secrets-create-secret): Fix test failing because
the mocked `read-string' had the wrong interface.
2021-04-27 01:27:58 +02:00
Adam Sjøgren
cbd95b9a41 Ensure that we get an X-Draft-From headers
* lisp/gnus/gnus-msg.el (gnus-setup-message): Ensure that we get an
X-Draft-From headers (bug#48049).
2021-04-27 01:18:07 +02:00
Stefan Monnier
7f03ee8de1 * lisp/emacs-lisp/package.el: Fix use of find-library-name
That function caused a warning for a good reason.
Don't just declare it and hope it will be available.

(package--list-of-conflicts): Require `find-func` explicitly before
declaring the function.  Also don't ignore all errors but only
the `file-error`s which will be emitted by `find-library-name`
in normal circumstances.

* lisp/emacs-lisp/find-func.el (find-library-name): Signal a `file-error`
Instead of a generic `error`.
2021-04-26 18:40:09 -04:00
Andrea Corallo
40c71e574a * lisp/emacs-lisp/comp-cstr.el (comp-ctxt): Initialize it. 2021-04-26 23:13:41 +02:00
Andrea Corallo
edf42af2cc Rework where `comp-ctxt' is defined.
* test/lisp/emacs-lisp/comp-cstr-tests.el (comp-ctxt): Remove
	`comp-ctxt' definition.
	* lisp/emacs-lisp/comp.el (comp-ctxt): Likewise.
	* lisp/emacs-lisp/comp-cstr.el (comp-ctxt): Define it here.
2021-04-26 23:01:39 +02:00
Andrea Corallo
4396ef5a38 * lisp/emacs-lisp/comp.el: Make it loadable in vanilla builds (bug#48021). 2021-04-26 22:45:08 +02:00
Andrea Corallo
fbfb503012 * lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Fix string-search. 2021-04-26 22:32:05 +02:00
Eric Abrahamsen
6546ebcb97 Small tweaks to gnus-registry reindexing messaging
* lisp/gnus/gnus-registry.el (gnus-registry-fixup-registry): Use
`seq-set-equal-p' so we don't care about list element ordering.  Don't
show messages within `registry-reindex' if we aren't at gnus-verbose
level 9.
2021-04-26 12:08:14 -07:00
Lars Ingebrigtsen
a139f14c05 Fix previous emake adjustment 2021-04-26 20:51:52 +02:00
Andrea Corallo
449045b2a6 Make use of ert-resource-file' ert-resource-directory' in comp-tests
* test/src/comp-resources/comp-test-pure.el: Rename.
	* test/src/comp-resources/comp-test-funcs.el: Likewise.
	* test/src/comp-resources/comp-test-funcs-dyn.el: Likewise.
	* test/src/comp-resources/comp-test-45603.el: Likewise.
	* test/src/comp-tests.el (comp-test-src, comp-test-dyn-src): Use
	`ert-resource-file'.
	(comp-tests-bootstrap): Use ert-resource-directory.
	(comp-tests-45603-1, comp-tests-pure): Use `ert-resource-file'.
2021-04-26 20:01:50 +02:00
Andrea Corallo
9d34fd8b33 * Use expand-file-name' in place of concat' in comp-tests.el
* test/src/comp-tests.el (comp-test-src,
	comp-test-dyn-src) (comp-tests-bootstrap, comp-tests-pure,
	comp-test-src): Use `expand-file-name' in place of `concat'.
2021-04-26 17:28:38 +02:00
Andrea Corallo
244e97d5f8 Move native compiler test data into proper directory (bug#48031)
* test/src/comp-tests-resources/comp-test-45603.el: Rename.
	* test/src/comp-tests-resources/comp-test-funcs-dyn.el: Likewise.
	* test/src/comp-tests-resources/comp-test-funcs.el: Likewise.
	* test/src/comp-tests-resources/comp-test-pure.el: Likewise.
	* test/src/comp-tests.el (comp-test-directory): Update.
2021-04-26 17:28:18 +02:00
Andrea Corallo
d164436b2a * test/src/comp-tests.el: Fix it for non native compiled build (bug#48031). 2021-04-26 16:59:17 +02:00
Andrea Corallo
a390a4965f * Fix comp-cstr tests for vanilla build (bug#48021)
* test/lisp/emacs-lisp/comp-cstr-tests.el (comp-ctxt): Fix tests
	for vanilla build (bug#48021)
2021-04-26 16:52:10 +02:00
Andrea Corallo
58fc16063c * lisp/emacs-lisp/comp.el (comp-accept-and-process-async-output): Fix regexp. 2021-04-26 16:00:03 +02:00
Michael Albinus
de80086b95 Some rearrangement in gitlab-ci.yml
* test/infra/gitlab-ci.yml (test-filenotify-gio, test-gnustep):
Add 'needs:' clause.
(build-native-bootstrap-speed0, build-native-bootstrap-speed1)
(build-native-bootstrap-speed2): Rename from 'test-*'.  Do not use
'--without-makeinfo'.
2021-04-26 15:53:59 +02:00
Dario Gjorgjevski
a9560a2b51 Fix typo in tramp-get-remote-gid
* lisp/net/tramp.el (tramp-get-remote-gid): Pass the correct
operation to find-file-name-handler.  (Bug#48026)
2021-04-26 09:57:23 +02:00
Stefan Kangas
50f29f6a28 * src/editfns.c (Fpropertize): Doc fix; reference Info manual. 2021-04-26 04:40:48 +02:00
Glenn Morris
890631bc6a ; NEWS copyedits 2021-04-25 17:49:42 -07:00
Glenn Morris
b7c22fab7d ; Add 2021 to copyright years 2021-04-25 17:24:48 -07:00
Stefan Monnier
8e2faa74ce * lisp/url/url-proxy.el (url-find-proxy-for-url): Minor simplification 2021-04-25 17:29:01 -04:00
Andrea Corallo
83a915d3df * lisp/startup.el (comp-eln-load-path): Silence a warning. 2021-04-25 20:58:37 +02:00
Lars Ingebrigtsen
6bfe589078 Hack around problems in Turkish environments in url-proxy
* lisp/url/url-proxy.el (url-find-proxy-for-url): Work around a
problem in Turkish language environments (where a downcased I is
?ı (bug#44604).
2021-04-25 20:54:56 +02:00
Stefan Kangas
ec2ccae3e6 * lisp/emacs-lisp/comp.el (no-native-compile): Minor doc fixes. 2021-04-25 20:47:44 +02:00
Stefan Kangas
230f90d6e2 * lisp/help-macro.el: Remove stale Change Log. 2021-04-25 20:47:44 +02:00
Lars Ingebrigtsen
2a33fc8d19 Adjust regexp to extra native-comp lines 2021-04-25 20:36:01 +02:00
Andrea Corallo
289000eee7 Merge branch 'feature/native-comp' into into trunk 2021-04-25 20:06:22 +02:00
Lars Ingebrigtsen
8f63f0078a Revert window/winner changes (Revert 0454bfd331)
See bug#23621 for an explanation.
2021-04-25 19:47:14 +02:00
Alan Mackenzie
142babb9bd CC Mode: Get proper search limits in c-font-lock-cut-off-declarators
* lisp/progmodes/cc-fonts.el (c-font-lock-cut-off-declarators): Instead of
using a crude 2,000 characters back limit for backward searching, which is
erroneous when that point is in a literal, use the already calculated
c-determine-limit result.
2021-04-25 17:40:16 +00:00
Glenn Morris
6dabbddb5f Merge from origin/emacs-27
7d5b973959 (origin/emacs-27) * doc/misc/cl.texi (For Clauses): Minor ...
4570781f8d ; * doc/lispref/files.texi (Directory Names): Add missing ...
1b52fd538d Minor update for make-tarball.txt
8efb8491b2 * doc/misc/cl.texi (Iteration Clauses): fix `never' clause...
0873134682 ; Fix Texinfo in last change to minibuf.texi.
cad8913c89 Improve filling-related documentation
2b7eed23eb ; * doc/lispref/keymaps.texi (Easy Menu): Fix typo.
47fc92cefc Fix reference to "yanking" in the main Emacs manual
1789dcdb35 Improve documentation of 'map-y-or-n-p'
2021-04-25 09:16:09 -07:00
Stefan Kangas
6f9180ecb6 Add more scroll key bindings to make-help-screen
* lisp/help-macro.el (make-help-screen): Add bindings to scroll on
<PageUp>, <PageDown>, <up>, <down>.
2021-04-25 17:04:29 +02:00