]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoImprove two native compiler related docstrings.
Andrea Corallo [Wed, 24 Mar 2021 15:59:52 +0000 (16:59 +0100)]
Improve two native compiler related docstrings.

* lisp/emacs-lisp/comp.el (comp-eln-load-path-eff): Improve docstring.
* src/comp.c (comp-eln-load-path): Likewise.

3 years ago* src/lread.c (maybe_swap_for_eln): Fix eln filename (bug#bug#47337).
Andrea Corallo [Wed, 24 Mar 2021 10:23:00 +0000 (11:23 +0100)]
* src/lread.c (maybe_swap_for_eln): Fix eln filename (bug#bug#47337).

3 years ago* lisp/emacs-lisp/comp.el (comp-lookup-eln): Add autoload cookie.
Andrea Corallo [Sun, 21 Mar 2021 20:55:13 +0000 (21:55 +0100)]
* lisp/emacs-lisp/comp.el (comp-lookup-eln): Add autoload cookie.

3 years ago; * src/comp.c (Fcomp_el_to_eln_filename): Improve docstring.
Andrea Corallo [Sun, 21 Mar 2021 20:49:03 +0000 (21:49 +0100)]
; * src/comp.c (Fcomp_el_to_eln_filename): Improve docstring.

3 years ago* lisp/emacs-lisp/comp.el (comp-lookup-eln): Add new function.
Andrea Corallo [Sun, 21 Mar 2021 20:24:26 +0000 (21:24 +0100)]
* lisp/emacs-lisp/comp.el (comp-lookup-eln): Add new function.

3 years agoPrevent unnecessary multiple .el hashing in 'maybe_swap_for_eln'
Andrea Corallo [Sun, 21 Mar 2021 19:40:45 +0000 (20:40 +0100)]
Prevent unnecessary multiple .el hashing in 'maybe_swap_for_eln'

* src/comp.c (Fcomp_el_to_eln_rel_filename): New function.
(Fcomp_el_to_eln_filename): Make use of.
(syms_of_comp): Register 'Scomp_el_to_eln_rel_filename'.
* src/lread.c (maybe_swap_for_eln): Make use of
'Fcomp_el_to_eln_rel_filename' to hash prevent unnecessary
multiple hashing.

3 years ago; * test/Makefile.in (TEST_HOME): Add a note.
Andrea Corallo [Sun, 21 Mar 2021 18:39:52 +0000 (19:39 +0100)]
; * test/Makefile.in (TEST_HOME): Add a note.

3 years agoAdd a tmp dir to `comp-eln-load-path' when running the testsuite.
Andrea Corallo [Sun, 21 Mar 2021 15:55:19 +0000 (16:55 +0100)]
Add a tmp dir to `comp-eln-load-path' when running the testsuite.

* lisp/startup.el (normal-top-level): Tweak `comp-eln-load-path'
adding a temp directory when running the testsuite.

3 years agoRevert "* lisp/emacs-lisp/comp.el (comp-clean-up-stale-eln): Clean-up all..."
Andrea Corallo [Sun, 21 Mar 2021 14:32:52 +0000 (15:32 +0100)]
Revert "* lisp/emacs-lisp/comp.el (comp-clean-up-stale-eln): Clean-up all..."

This reverts commit be22cda7be9e77e67f224f6f07cca9dd44aaa078.

Older binaries might still need those .eln if they where preloaded.

3 years ago; Remove two unnecessary quotes
Andrea Corallo [Sun, 21 Mar 2021 08:28:25 +0000 (09:28 +0100)]
; Remove two unnecessary quotes

* lisp/emacs-lisp/comp-cstr.el (comp-cstr-=): Remove unnecessary
quote.
* lisp/emacs-lisp/comp.el (comp-compile-ctxt-to-file): Likewise.

3 years ago* lisp/emacs-lisp/comp.el (comp-clean-up-stale-eln): Clean-up all .eln dirs.
Andrea Corallo [Sun, 21 Mar 2021 08:15:25 +0000 (09:15 +0100)]
* lisp/emacs-lisp/comp.el (comp-clean-up-stale-eln): Clean-up all .eln dirs.

3 years agoMerge remote-tracking branch 'savannah/master' into native-comp
Andrea Corallo [Fri, 19 Mar 2021 14:28:00 +0000 (15:28 +0100)]
Merge remote-tracking branch 'savannah/master' into native-comp

3 years agoImprove the docs of a recent change in mb-depth.el
Eli Zaretskii [Fri, 19 Mar 2021 12:46:15 +0000 (14:46 +0200)]
Improve the docs of a recent change in mb-depth.el

* lisp/mb-depth.el (minibuffer-depth-indicator-function): Improve
the wording of the doc string and of the label used for the
default value.  (Bug#47252)

3 years agoDo not load native code when `load' is explicitly called on a .elc file
Andrea Corallo [Fri, 19 Mar 2021 09:23:41 +0000 (10:23 +0100)]
Do not load native code when `load' is explicitly called on a .elc file

* src/lread.c (Fload): Do not load native code when `load' is
explicitly called on a .elc file.
(Flocate_file_internal): Update 'openp' call sites.
(maybe_swap_for_eln): Add new 'no_native' parameter.
(openp): Likewise + update 'maybe_swap_for_eln' and 'openp' call
sites.
* src/lisp.h: Update 'openp' signature.
* src/w32proc.c (sys_spawnve): Update 'openp' call sites.
* src/w32.c (check_windows_init_file): Likewise.
* src/sound.c (Fplay_sound_internal): Likewise.
* src/process.c (Fmake_process): Likewise.
* src/image.c (image_create_bitmap_from_file)
(image_find_image_fd): Likewise.
* src/emacs.c (set_invocation_vars): Likewise.
* src/charset.c (load_charset_map_from_file): Likewise.
* src/callproc.c (call_process): Likewise.

3 years agoFix :type of recently introduced defcustom
Mauro Aranda [Fri, 19 Mar 2021 08:50:55 +0000 (05:50 -0300)]
Fix :type of recently introduced defcustom

* lisp/mb-depth.el (minibuffer-depth-indicator-function): The option
can be nil, so add nil as a choice.  (Bug#47252)

3 years agoMake minibuffer-depth-indicator-function a defcustom
Gabriel do Nascimento Ribeiro [Fri, 19 Mar 2021 08:37:55 +0000 (09:37 +0100)]
Make minibuffer-depth-indicator-function a defcustom

* lisp/mb-depth.el (minibuffer-depth-indicator-function): Make
into a user option (bug#47252).

3 years agoWarn the user if we can't find pkg-config
Lars Ingebrigtsen [Fri, 19 Mar 2021 07:58:32 +0000 (08:58 +0100)]
Warn the user if we can't find pkg-config

* configure.ac (WITH_IFAVAILABLE): Warn the user if we can't find
a usable pkg-config (bug#47159).

3 years agoAdd a note to NEWS as to how to restore the facemenu
Lars Ingebrigtsen [Fri, 19 Mar 2021 07:44:19 +0000 (08:44 +0100)]
Add a note to NEWS as to how to restore the facemenu

3 years agoFix copyright lines mistakenly treated as outline headers
Stefan Monnier [Fri, 19 Mar 2021 03:32:57 +0000 (23:32 -0400)]
Fix copyright lines mistakenly treated as outline headers

* lisp/emacs-lisp/generator.el:
* test/lisp/cedet/semantic-utest.el:
* test/lisp/cedet/semantic/format-tests.el:
* test/lisp/cedet/semantic/fw-tests.el:
* test/lisp/cedet/semantic/bovine/gcc-tests.el:
* test/lisp/cedet/semantic/format-resources/test-fmt.el:
* test/manual/cedet/semantic-tests.el:
* lisp/obsolete/inversion.el: Use only 2 semi-colons before "Copyright".

3 years agolisp/erc: Use lexical-binding
Stefan Monnier [Fri, 19 Mar 2021 03:14:33 +0000 (23:14 -0400)]
lisp/erc: Use lexical-binding

Also remove various redundant `:group` arguments.

* lisp/erc/erc-backend.el (define-erc-response-handler): Move `declare`
after the docstring.

* lisp/erc/erc-capab.el: Use lexical-binding.
(erc-capab-identify-activate): Simplify with `member`.

* lisp/erc/erc-dcc.el (erc-dcc): Move before erc-dcc-mode definition,
which refers to it.
(erc-dcc-chat-accept): Remove unused vars `nick` and `buffer`.

* lisp/erc/erc-imenu.el: Use lexical-binding.
(erc-create-imenu-index): Remove unused var `prev-pos`.

* lisp/erc/erc-match.el: Use lexical-binding.
(erc-match-message): Remove unused var `old-pt`.
(erc-match-message): Strength-reduce `eval` to `symbol-value`.

* lisp/erc/erc-page.el: Use lexical-binding.
(erc-page): Move Custom group before `erg-page-mode` which refers to it.

* lisp/erc/erc-replace.el: Use lexical-binding.
(erc-replace-insert): Use `functionp`.

* lisp/erc/erc-status-sidebar.el: Use lexical-binding.
(erc-status-sidebar-open): Remove unused var `sidebar-window`.

* lisp/erc/erc.el: Fix header to use the customary 3 semi-colons.
(erc-fill-column): Declare variable.

* lisp/erc/erc-autoaway.el: Use lexical-binding.
* lisp/erc/erc-ezbounce.el: Use lexical-binding.
* lisp/erc/erc-fill.el: Use lexical-binding.
* lisp/erc/erc-goodies.el: Use lexical-binding.
* lisp/erc/erc-ibuffer.el: Use lexical-binding.
* lisp/erc/erc-identd.el: Use lexical-binding.
* lisp/erc/erc-join.el: Use lexical-binding.
* lisp/erc/erc-lang.el: Use lexical-binding.
* lisp/erc/erc-log.el: Use lexical-binding.
* lisp/erc/erc-menu.el: Use lexical-binding.
* lisp/erc/erc-netsplit.el: Use lexical-binding.
* lisp/erc/erc-networks.el: Use lexical-binding.
* lisp/erc/erc-pcomplete.el: Use lexical-binding.
* lisp/erc/erc-ring.el: Use lexical-binding.
* lisp/erc/erc-speedbar.el: Use lexical-binding.
* lisp/erc/erc-spelling.el: Use lexical-binding.
* lisp/erc/erc-truncate.el: Use lexical-binding.
* lisp/erc/erc-xdcc.el: Use lexical-binding.

3 years agoDo interactive mode tagging for finder.el
Stefan Kangas [Fri, 19 Mar 2021 01:22:25 +0000 (02:22 +0100)]
Do interactive mode tagging for finder.el

3 years agoUse lexical-binding in finder.el
Stefan Kangas [Fri, 19 Mar 2021 01:14:10 +0000 (02:14 +0100)]
Use lexical-binding in finder.el

* lisp/finder.el: Use lexical-binding.
(finder-mode-map, finder-compile-keywords): Remove unused lexical
variables.

3 years agoFix a warning due to not preloading facemenu.el
Stefan Kangas [Fri, 19 Mar 2021 01:12:01 +0000 (02:12 +0100)]
Fix a warning due to not preloading facemenu.el

* test/src/undo-tests.el (facemenu): Require.

3 years ago* lisp/faces.el (help-key-binding): Tweak background.
Stefan Kangas [Thu, 18 Mar 2021 22:36:08 +0000 (23:36 +0100)]
* lisp/faces.el (help-key-binding): Tweak background.

3 years ago* lisp/emacs-lisp/cl-macs.el (cl--self-tco): Optimize the "return nil" case
Stefan Monnier [Thu, 18 Mar 2021 21:54:43 +0000 (17:54 -0400)]
* lisp/emacs-lisp/cl-macs.el (cl--self-tco): Optimize the "return nil" case

3 years ago* test/lisp/progmodes/cperl-mode-tests.el: Silence warnings
Stefan Monnier [Thu, 18 Mar 2021 18:32:36 +0000 (14:32 -0400)]
* test/lisp/progmodes/cperl-mode-tests.el: Silence warnings

(cperl-test-bug-47112): Actually obey the major-mode for the test.

3 years ago* lisp/newcomment.el: Allow 'comment-continue' with whitespace (bug#47167)
Juri Linkov [Thu, 18 Mar 2021 18:01:26 +0000 (20:01 +0200)]
* lisp/newcomment.el: Allow 'comment-continue' with whitespace (bug#47167)

* lisp/newcomment.el (comment-region-default-1): Still use 'comment-continue'
as a string with whitespace even when 'comment-padright' returns nil.

3 years ago* lisp/simple.el (next-error-quit-window): New function (bug#44611).
Juri Linkov [Thu, 18 Mar 2021 17:56:45 +0000 (19:56 +0200)]
* lisp/simple.el (next-error-quit-window): New function (bug#44611).

(next-error-found-function): Add it as a choice.

3 years ago; ChangeLog.3 fix
Glenn Morris [Thu, 18 Mar 2021 16:16:10 +0000 (09:16 -0700)]
; ChangeLog.3 fix

admin/make-tarball.txt:
"It's best not to commit these files until the release is actually made"

3 years ago* admin/make-tarball.txt: Be kind to people merging branches.
Glenn Morris [Thu, 18 Mar 2021 16:02:30 +0000 (09:02 -0700)]
* admin/make-tarball.txt: Be kind to people merging branches.

3 years agoMerge from origin/emacs-27
Glenn Morris [Thu, 18 Mar 2021 15:52:48 +0000 (08:52 -0700)]
Merge from origin/emacs-27

d5b160d7cc (tag: emacs-27.2-rc1, origin/emacs-27) Prepare the Emacs 2...
216bd67a4f ; * admin/make-tarball.txt: Advise to remove stale subdire...

# Conflicts:
# ChangeLog.3
# README
# configure.ac
# etc/AUTHORS
# etc/NEWS
# lisp/ldefs-boot.el
# msdos/sed2v2.inp
# nt/README.W32

3 years ago; Merge from origin/emacs-27
Glenn Morris [Thu, 18 Mar 2021 15:50:32 +0000 (08:50 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

7ae4588bb4 Document that `buffer-string' retains text properties

3 years agoMerge from origin/emacs-27
Glenn Morris [Thu, 18 Mar 2021 15:50:32 +0000 (08:50 -0700)]
Merge from origin/emacs-27

a7f95d5244 Remove duplicate @table item from ELisp manual
be1b3512f7 Fix reference to 'diff-font-lock-syntax' in diff-mode docu...

3 years ago; Merge from origin/emacs-27
Glenn Morris [Thu, 18 Mar 2021 15:50:32 +0000 (08:50 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

b9ec6111e2 Fix buffer overflow in xbm_scan (bug#47094)

3 years agoMerge from origin/emacs-27
Glenn Morris [Thu, 18 Mar 2021 15:50:32 +0000 (08:50 -0700)]
Merge from origin/emacs-27

f60eb988f6 Fix typos and omissions for (elisp)Button Buffer Commands
876b95bf90 Teach Rmail about NBSP in "Re:"

# Conflicts:
# lisp/mail/rmail.el

3 years ago; Merge from origin/emacs-27
Glenn Morris [Thu, 18 Mar 2021 15:44:16 +0000 (08:44 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

a2960025e8 Revert "* lisp/mouse.el: Fix mouse-1-clock-follows-mouse =...

3 years agoPrepare the Emacs 27.2 release. emacs-27.2-rc1
Eli Zaretskii [Thu, 18 Mar 2021 12:43:54 +0000 (08:43 -0400)]
Prepare the Emacs 27.2 release.

* etc/HISTORY: Update for Emacs 27.2.

* README:
* configure.ac:
* nt/README.W32:
* msdos/sed2v2.inp: Set version to 27.2

3 years agoOptimise tail calls in `and` and `or` forms in `cl-labels` functions
Mattias Engdegård [Thu, 18 Mar 2021 12:33:09 +0000 (13:33 +0100)]
Optimise tail calls in `and` and `or` forms in `cl-labels` functions

* lisp/emacs-lisp/cl-macs.el (cl--self-tco): Handle `and` and `or`.
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs--labels):
Add test cases.

3 years agoExtend handled events in 'while-no-input-ignore-events' (Bug#47205)
Michael Albinus [Thu, 18 Mar 2021 11:43:35 +0000 (12:43 +0100)]
Extend handled events in 'while-no-input-ignore-events' (Bug#47205)

* etc/NEWS: Mention changes to 'while-no-input-ignore-events'.

* src/keyboard.c (kbd_buffer_store_buffered_event): Handle also
Qfile_notify and Qdbus_event as ignore_event.  (Bug#47205)

3 years ago; * admin/make-tarball.txt: Advise to remove stale subdirectories.
Eli Zaretskii [Thu, 18 Mar 2021 10:49:02 +0000 (12:49 +0200)]
; * admin/make-tarball.txt: Advise to remove stale subdirectories.

3 years agoAdd comint-password-prompt-regexp test for "zip -e ..."
Stefan Kangas [Thu, 18 Mar 2021 10:17:34 +0000 (11:17 +0100)]
Add comint-password-prompt-regexp test for "zip -e ..."

* test/lisp/comint-tests.el (comint-testsuite-password-strings):
Add test for "zip -e ...".  (Bug#47209)

3 years agoCompute chart-face-list dynamically
Lars Ingebrigtsen [Thu, 18 Mar 2021 10:15:50 +0000 (11:15 +0100)]
Compute chart-face-list dynamically

* lisp/emacs-lisp/chart.el (chart-face-list): Allow a function as
the value (bug#47133) so that we can compute the faces dynamically
on different displays.
(chart--face-list): New function.
(chart-draw-data): Use it.

3 years agoDocument that `buffer-string' retains text properties
Lars Ingebrigtsen [Thu, 18 Mar 2021 04:59:12 +0000 (05:59 +0100)]
Document that `buffer-string' retains text properties

* doc/lispref/text.texi (Buffer Contents): Mention text properties
in the `buffer-string' documentation.
* src/editfns.c (Fbuffer_string): Mention text properties in the
doc string (bug#47220).

(cherry picked from commit 60af754170f22f5d25510af069ed0ebfec95f992)

3 years agoFix breaking undo-test
Lars Ingebrigtsen [Thu, 18 Mar 2021 08:22:28 +0000 (09:22 +0100)]
Fix breaking undo-test

3 years agoMake "not found" message in dictionary less misleading
Lars Ingebrigtsen [Thu, 18 Mar 2021 07:43:22 +0000 (08:43 +0100)]
Make "not found" message in dictionary less misleading

* lisp/net/dictionary.el (dictionary-do-search): Don't say there
are more words when there aren't (bug#47056).

3 years agoMake memory-report work with buffer-local unbound vars
Lars Ingebrigtsen [Thu, 18 Mar 2021 07:33:40 +0000 (08:33 +0100)]
Make memory-report work with buffer-local unbound vars

* lisp/emacs-lisp/memory-report.el (memory-report--buffer-data):
Protect against buffer-local unbound variables (bug#47057).

3 years agoFix sorting in speedbar sub-groups
Lars Ingebrigtsen [Thu, 18 Mar 2021 07:25:17 +0000 (08:25 +0100)]
Fix sorting in speedbar sub-groups

* lisp/speedbar.el (speedbar-prefix-group-tag-hierarchy): Sort
entries in sub-groups (bug#47073).

3 years agolisp/cedet/pulse.el: Use color.el
Gabriel do Nascimento Ribeiro [Thu, 18 Mar 2021 07:10:52 +0000 (08:10 +0100)]
lisp/cedet/pulse.el: Use color.el

* lisp/cedet/pulse.el: (pulse-int-to-hex): Remove function.
(pulse-color-values-to-hex): Remove function.
(pulse-lighten-highlight): Remove function.
(pulse-momentary-iteration): Add variable.
(pulse-momentary-highlight-overlay): Use color-gradient from color.el.
(pulse-tick): Receive colors and update overlay background (bug#47083).

3 years agocperl-mode: Don't interpret y_ as start of y// function.
Harald Jörg [Thu, 18 Mar 2021 07:06:13 +0000 (08:06 +0100)]
cperl-mode: Don't interpret y_ as start of y// function.

* lisp/progmodes/cperl-mode.el (cperl-find-pods-heres): Avoid
treating underscores as word-terminators.

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-test-bug-47112): Test case for that bug (bug#47112).

3 years agoFix uniquify-trailing-separator-p + uniquify-strip-common-suffix
Gabriel do Nascimento Ribeiro [Thu, 18 Mar 2021 06:54:46 +0000 (07:54 +0100)]
Fix uniquify-trailing-separator-p + uniquify-strip-common-suffix

(uniquify-item): New slot 'original-dirname'.
(uniquify-rationalize-file-buffer-names): Use new slot.
(uniquify-rationalize): Use new slot.
(uniquify-get-proposed-name): New optional argument 'original-dirname'
to properly add a trailing separator when the corresponding user option
is set and the dirname is an existing directory (bug#47132).

3 years agoFix problem of trashing files to an inconsistent trash directory
Lars Ingebrigtsen [Thu, 18 Mar 2021 06:36:15 +0000 (07:36 +0100)]
Fix problem of trashing files to an inconsistent trash directory

* lisp/files.el (move-file-to-trash): Allow moving files to trash
even if there's a file in trash with the same name (but no entry
in info) (bug#47135).

3 years agoAutoload 'mouse-wheel-mode'
Lars Ingebrigtsen [Thu, 18 Mar 2021 05:21:44 +0000 (06:21 +0100)]
Autoload 'mouse-wheel-mode'

* lisp/mwheel.el (mouse-wheel-mode): Autoload, since the mode can
be used (but isn't preloaded) when there isn't any window system
(bug#47162).

3 years agoRecognise "Verify password" as a password prompt
Lars Ingebrigtsen [Thu, 18 Mar 2021 05:11:06 +0000 (06:11 +0100)]
Recognise "Verify password" as a password prompt

* lisp/comint.el (comint-password-prompt-regexp): Also react to
"Verify password" (output by "zip -e") (bug#47209).

3 years agoDocument that `buffer-string' retains text properties
Lars Ingebrigtsen [Thu, 18 Mar 2021 04:59:12 +0000 (05:59 +0100)]
Document that `buffer-string' retains text properties

* doc/lispref/text.texi (Buffer Contents): Mention text properties
in the `buffer-string' documentation.
* src/editfns.c (Fbuffer_string): Mention text properties in the
doc string (bug#47220).

3 years agoDon't pre-load facemenu
Lars Ingebrigtsen [Thu, 18 Mar 2021 04:55:16 +0000 (05:55 +0100)]
Don't pre-load facemenu

* lisp/facemenu.el (facemenu-add-face-function): Move to avoid a
compilation warning.
(facemenu-color-alist): Made obsolete.

* lisp/faces.el (read-color): Don't use it.

* lisp/loadup.el ("emacs-lisp/syntax"): Don't load facemenu.

* lisp/wid-edit.el (color): Don't use facemenu-color-alist.
(widget-color--choose-action): Require facemenu.
(widget-color-action): Ditto.

* lisp/progmodes/cperl-mode.el (facemenu): Require.

* lisp/textmodes/sgml-mode.el (facemenu): Require.

3 years agoUnbind `M-o' and add new `C-x x f' binding
Lars Ingebrigtsen [Thu, 18 Mar 2021 04:10:32 +0000 (05:10 +0100)]
Unbind `M-o' and add new `C-x x f' binding

* doc/lispref/modes.texi (Other Font Lock Variables):
`font-lock-fontify-block' is no longer bound.
* lisp/bindings.el (ctl-x-x-map): Bind `font-lock-update'.

* lisp/font-lock.el (font-lock-update): New command written by
Gregory Heytings <gregory@heytings.org>.

* lisp/loadup.el: Remove transitional experimental code.

3 years ago* lisp/textmodes: Use lexical-binding
Stefan Monnier [Thu, 18 Mar 2021 03:32:39 +0000 (23:32 -0400)]
* lisp/textmodes: Use lexical-binding

* lisp/textmodes/enriched.el: Use lexical-binding.
(enriched-mode): Use `delete-dups` to avoid `add-to-list` on
a local variable.

* lisp/textmodes/makeinfo.el: Use lexical-binding.
(makeinfo-region): Remove unused var `filename-or-header`.

* lisp/textmodes/refbib.el: Use lexical-binding.
(r2b-put-field): Remove unused var `multi-line`.
(r2b-barf-output): Remove unused var `match`.

* lisp/textmodes/refer.el: Use lexical-binding.
(refer-find-entry-internal): Remove unused vars `old-buffer` and `found`.

* lisp/textmodes/reftex-auc.el: Use lexical-binding.
(LaTeX-add-bibitems): Declare function.
(reftex-plug-into-AUCTeX): Use `add-function` and `advice-add` so we
can properly unplug.

* lisp/textmodes/reftex-cite.el: Use lexical-binding.
(reftex-create-bibtex-file): Remove unused var `file`.
(reftex--found-list): Declare var.
(reftex-offer-bib-menu): Rename local var to `reftex--found-list`.

* lisp/textmodes/reftex-dcr.el: Use lexical-binding.
(reftex-use-itimer-in-xemacs): Delete XEmacs-only var.
(reftex-toggle-auto-view-crossref): Delete XEmacs-only code.
(reftex-start-itimer-once): Delete XEmacs-only function.

* lisp/textmodes/reftex-global.el: Use lexical-binding.
(reftex-isearch-push-state-function): Use a closure instead of `(lambda).

* lisp/textmodes/reftex-index.el: Use lexical-binding.
(mark-active, transient-mark-mode): Delete var declarations.
(reftex-index-mode-map): Remove XEmacs-only code.
Use `mapc` so we can use closures instead of hand-built lambdas.
(reftex-index-next, reftex-index-previous): Tweak interactive spec to
remove unused prefix arg and mark it as a motion command.
(reftex-index-phrases-font-lock-keywords)
(reftex-index-phrases-font-lock-keywords): Move initialization into
declaration.
(reftex-index-initialize-phrases-buffer, reftex-index-phrases-mode)
reftex-index-phrases-apply-to-region: Remove XEmacs-only code.
(TeX-master): Remove redundant declaration.
(reftex--chars-first): Rename dynvar from `chars-first`.  Adjust all uses.

* lisp/textmodes/reftex-parse.el: Use lexical-binding.

* lisp/textmodes/reftex-ref.el: Use lexical-binding.
(reftex-label): Remove always-nil var `text`.
(reftex-refstyle): Declare before first use.
(<toplevel>): Use closures rather than `eval` when building commands from
`reftex-ref-style-alist`.

* lisp/textmodes/reftex-sel.el: Use lexical-binding.
(reftex-select-label-mode-map, reftex-select-bib-mode-map):
Use `mapc` so we can use closures instead of hand-built lambdas.
(reftex-select-label-mode, reftex-select-bib-mode): Remove XEmacs-only code.
(reftex-select-data, reftex-select-prompt, reftex-refstyle):
Move declaration before first use.
(reftex--found-list, reftex--cb-flag, reftex--last-data)
(reftex--call-back, reftex--help-string): Move declaration before use,
and rename by adding `reftext--` prefix.  Adjust all uses in this file.
For `reftex--found-list` adjust corresponding uses in `reftex-cite.el`.
(reftex-select-item): Explicitly let-bind them.
Remove XEmacs-only code.

* lisp/textmodes/reftex-toc.el: Use lexical-binding.
(reftex-toc-mode-map, reftex-toc-mode, reftex-toc-restore-region)
(reftex-toc-next, reftex-toc-previous, reftex-toc-next-heading)
(reftex-toc-previous-heading, reftex-toggle-auto-toc-recenter
(reftex-make-separate-toc-frame): Remove XEmacs-only code.

* lisp/textmodes/reftex-vars.el: Use lexical-binding.

* lisp/textmodes/reftex.el: Use lexical-binding.
(reftex-mode-map, reftex-mode, reftex-fontify-select-label-buffer)
(reftex-verified-face): Remove XEmacs-only code.
(reftex-region-active-p, reftex-overlay-put, reftex-move-overlay)
(reftex-make-overlay, reftex-get-buffer-visiting, reftex-delete-overlay):
Redefine as obsolete aliases.  Replace all callers.
(current-message): Remove XEmacs-only definition.

* lisp/textmodes/remember.el: Use lexical-binding.

* lisp/textmodes/table.el (<toplevel>): Use closures rather than `(lambda)
to build commands.

* lisp/textmodes/texinfmt.el: Use lexical-binding.
(texinfo-example-start): Declare var.
(texinfo-format-region, texinfo-format-buffer-1): Remove unused var
`last-input-buffer`.
(texinfo-format-scan): Use `dlet` to bind `whitespace-silent`.
(texinfo-optional-braces-discard, texinfo-format-parse-line-args)
(texinfo-format-parse-args): Remove unused var `start`.
(texinfo-multitable-widths): Remove unused var `start-of-templates`.
(texinfo-multitable-item): Strength-reduce `eval` to `symbol-value`.
(texinfo-alias): Remove unused vars `start` and `args`.
(texinfo-defun-type symbol-property): Change the car to help the type
symbol rather than an expression returning it.
(texinfo-format-deffn): Remove corresponding `eval`.
(texinfo-clear): Remove unused var `value`.
(texinfo-format-ifeq): Remove unused var `end`.

* lisp/textmodes/texinfo.el: Use lexical-binding.
(tex-show-print-queue): Declare function.

* lisp/textmodes/texnfo-upd.el: Use lexical-binding.
(texinfo-start-menu-description): Remove unused var `end`.
(texinfo-insert-node-lines): Remove unused var `beginning-marker`.
(texinfo-multiple-files-update): Remove unused vars `next-node-name`
and `previous-node-name`.

* lisp/textmodes/two-column.el: Use lexical-binding.

3 years agoLeave signaling the exact error to cl-generic's internals
Dmitry Gutov [Thu, 18 Mar 2021 00:35:10 +0000 (02:35 +0200)]
Leave signaling the exact error to cl-generic's internals

* lisp/progmodes/project.el (project-root): Extract default
definition to a new method, predicated on a context
(https://lists.gnu.org/archive/html/emacs-devel/2021-03/msg00771.html).

3 years ago* lisp/emacs-lisp/benchmark.el (benchmark-call): New function
Stefan Monnier [Wed, 17 Mar 2021 23:04:28 +0000 (19:04 -0400)]
* lisp/emacs-lisp/benchmark.el (benchmark-call): New function

(benchmark-run, benchmark-run-compiled, benchmark): Use it.
(benchmark--adaptive): New internal function.

3 years ago* lisp/tab-line.el: Face cleanup.
Juri Linkov [Wed, 17 Mar 2021 17:42:48 +0000 (19:42 +0200)]
* lisp/tab-line.el: Face cleanup.

3 years ago* lisp/tab-bar.el: New faces and face options.
Juri Linkov [Wed, 17 Mar 2021 17:42:27 +0000 (19:42 +0200)]
* lisp/tab-bar.el: New faces and face options.

* lisp/tab-bar.el (tab-bar-tab-group-current)
(tab-bar-tab-group-inactive, tab-bar-tab-ungrouped): New deffaces.
(tab-bar-tab-face-function): New defcustom.
(tab-bar-tab-face-default): New function.
(tab-bar-tab-name-format-default): Use it.
(tab-bar-tab-group-format-default): Use tab-bar-tab-group-inactive face.
(tab-bar-tab-group-face-function): New defcustom.
(tab-bar-tab-group-face-default): New function.
(tab-bar--format-tab-group): Add new arg 'current-p'.
(tab-bar-format-tabs-groups): Prepend current group name before first tab.
Override tab-bar-tab-face-function with tab-bar-tab-group-face-function.

3 years agoStop project-root from going into infinite recursion
Dmitry Gutov [Wed, 17 Mar 2021 16:49:14 +0000 (18:49 +0200)]
Stop project-root from going into infinite recursion

* lisp/progmodes/project.el (project--within-roots-fallback):
New variable.
(project-root, project-roots): Use it (bug#47168).

3 years agoRemove duplicate @table item from ELisp manual
Fabrice Bauzac [Tue, 16 Mar 2021 20:09:15 +0000 (21:09 +0100)]
Remove duplicate @table item from ELisp manual

* doc/lispref/objects.texi (Special Read Syntax): Remove duplicate
item "#@N" from the table of Special Read Syntax.  (Bug#47200)

3 years ago; Remove traces from tramp-tests.el
Michael Albinus [Tue, 16 Mar 2021 18:45:23 +0000 (19:45 +0100)]
; Remove traces from tramp-tests.el

3 years agoNew commands xref-next-line-no-show and xref-prev-line-no-show (bug#44611)
Juri Linkov [Tue, 16 Mar 2021 18:07:34 +0000 (20:07 +0200)]
New commands xref-next-line-no-show and xref-prev-line-no-show (bug#44611)

* lisp/progmodes/xref.el (xref-next-line-no-show)
(xref-prev-line-no-show): New commands.
(xref-next-line, xref-prev-line): Use them.

3 years agoMinor fixes
Juri Linkov [Tue, 16 Mar 2021 18:03:55 +0000 (20:03 +0200)]
Minor fixes

* lisp/frame.el (set-frame-property--interactive): Remove '(point)'
that makes no sense as the default value.  (Bug#9970)

* lisp/simple.el (next-error-found-function): Move defcustom
closer to function 'next-error-found' where it's used.

3 years agoFix `no-byte-compile' native compilation interaction (bug#47169)
Andrea Corallo [Tue, 16 Mar 2021 17:56:34 +0000 (18:56 +0100)]
Fix `no-byte-compile' native compilation interaction (bug#47169)

* lisp/emacs-lisp/comp.el (comp-spill-lap-function): Throw
no-native-compile when `byte-native-qualities' are null.
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): No need
to consider `no-byte-compile'.

3 years ago* lisp/tab-bar.el (tab-bar-select-tab): Support negative arg.
Juri Linkov [Tue, 16 Mar 2021 17:54:54 +0000 (19:54 +0200)]
* lisp/tab-bar.el (tab-bar-select-tab): Support negative arg.

3 years ago* lisp/tab-bar.el: Simplify internal functions.
Juri Linkov [Tue, 16 Mar 2021 17:53:27 +0000 (19:53 +0200)]
* lisp/tab-bar.el: Simplify internal functions.

* lisp/tab-bar.el (tab-bar-tabs-set): New function.
(tab-bar-tabs): Use tab-bar--current-tab-find and tab-bar-tabs-set.
(tab-bar--tab): Use tab-bar--current-tab-find.
(tab-bar--current-tab): Remove unused line (assq 'current-tab ...)
because there is no current-tab when it's called.  Remove unused arg 'frame'.
(tab-bar--current-tab-find): Simplify.
(tab-bar-move-tab-to, tab-bar-move-tab-to-frame)
(tab-bar-new-tab-to, tab-bar-close-tab)
(tab-bar-close-other-tabs, tab-bar-undo-close-tab)
(tab-switcher-delete-from-list): Use tab-bar-tabs-set
instead of set-frame-parameter.
(tab-bar-close-group-tabs): Simplify using tab-bar--current-tab-find
without arg.

3 years agoFix problem of image-tests.el on emba
Michael Albinus [Tue, 16 Mar 2021 17:40:24 +0000 (18:40 +0100)]
Fix problem of image-tests.el on emba

* test/README: Mention $EMACS_TEST_DIRECTORY.

* test/lisp/image-tests.el (image-tests--emacs-images-directory):
Use `data-directory', for runs w/o of make.
(image-type/from-filename): Check for `image-load-path'.

3 years agoFix problem in Tramp running two async processes in parallel
Michael Albinus [Tue, 16 Mar 2021 17:39:51 +0000 (18:39 +0100)]
Fix problem in Tramp running two async processes in parallel

* lisp/net/tramp-integration.el
(tramp-compile-disable-ssh-controlmaster-options): New defun.  Add
it to `compilation-mode-hook'.  (Bug#45518)

* lisp/progmodes/compile.el (compilation-get-file-structure):
Revert commit 4ce5646d59, it isn't needed.

3 years ago; Further traces in tramp-tests.el
Michael Albinus [Tue, 16 Mar 2021 15:35:23 +0000 (16:35 +0100)]
; Further traces in tramp-tests.el

3 years ago; Trace variables in tramp-tests.el
Michael Albinus [Tue, 16 Mar 2021 14:36:54 +0000 (15:36 +0100)]
; Trace variables in tramp-tests.el

3 years ago* etc/themes/modus-themes.el: Bump version for GNU ELPA release
Stefan Monnier [Tue, 16 Mar 2021 12:43:45 +0000 (08:43 -0400)]
* etc/themes/modus-themes.el: Bump version for GNU ELPA release

(News:): New section.

3 years agoHave `no-byte-compile' implies also `no-native-compile'.
Andrea Corallo [Tue, 16 Mar 2021 08:10:31 +0000 (09:10 +0100)]
Have `no-byte-compile' implies also `no-native-compile'.

* lisp/emacs-lisp/comp.el (no-native-compile): Update doctring.
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): when
`no-byte-compile' is set to non-nil it overrides this.

3 years agoAdd minibuffer input support to commands that set the frame size
Daniel Martín [Tue, 16 Mar 2021 00:29:28 +0000 (01:29 +0100)]
Add minibuffer input support to commands that set the frame size

* lisp/frame.el (set-frame-property--interactive): Internal function to
produce the interactive form of `set-frame-width' and
`set-frame-height'.  Offer the current size as default.  (Bug#9970)
* src/frame.c (Fset_frame_height): Modify to call
`set-frame-property--interactive'.
(Fset_frame_width): Modify to call `set-frame-property--interactive'.
* doc/lispref/frames.texi (Frame Size): Update the manuals.
* etc/NEWS: Advertise the change (bug#9970).

3 years ago* lisp/emacs-lisp/byte-opt.el: Fix native re-compilation (bug#47161).
Eli Zaretskii [Mon, 15 Mar 2021 17:24:20 +0000 (19:24 +0200)]
* lisp/emacs-lisp/byte-opt.el: Fix native re-compilation (bug#47161).

3 years ago* lisp/tab-bar.el (tab-bar-new-tab-group): New defcustom.
Juri Linkov [Mon, 15 Mar 2021 17:21:53 +0000 (19:21 +0200)]
* lisp/tab-bar.el (tab-bar-new-tab-group): New defcustom.

(tab-bar--current-tab, tab-bar-new-tab-to, tab-bar-duplicate-tab): Use it.

3 years ago* lisp/tab-bar.el (tab-bar-tab-group-format-function): New defcustom.
Juri Linkov [Mon, 15 Mar 2021 17:20:06 +0000 (19:20 +0200)]
* lisp/tab-bar.el (tab-bar-tab-group-format-function): New defcustom.

(tab-bar-tab-group-default): New function.
(tab-bar-tab-group-format-default, tab-bar-format-tabs-groups)
(tab-bar-change-tab-group, tab-bar-close-group-tabs): Use it.

3 years ago* CONTRIBUTE: Refer to gnulib for request-assign.future.
Glenn Morris [Mon, 15 Mar 2021 15:51:05 +0000 (08:51 -0700)]
* CONTRIBUTE: Refer to gnulib for request-assign.future.

The vast majority of the exchanges on this topic are "please send me
the form; ok I sent you the form", and there's no need to involve a
mailing list for that.

3 years ago* lisp/emacs-lisp/bytecomp.el: Fix native re-compilation (bug#47161).
Andrea Corallo [Mon, 15 Mar 2021 15:46:16 +0000 (16:46 +0100)]
* lisp/emacs-lisp/bytecomp.el: Fix native re-compilation (bug#47161).

3 years agoPrefer expand-file-name to concat in native-compilation code
Eli Zaretskii [Mon, 15 Mar 2021 14:56:08 +0000 (16:56 +0200)]
Prefer expand-file-name to concat in native-compilation code

* lisp/emacs-lisp/comp.el (comp-eln-load-path-eff):
* src/comp.c (Fcomp_el_to_eln_filename)
(eln_load_path_final_clean_up): Prefer expand-file-name to concat.
(Bug#43725)

3 years agoMake the `kbd` macro work in both Emacs-26 and Emacs-28
Protesilaos Stavrou [Mon, 15 Mar 2021 14:04:20 +0000 (10:04 -0400)]
Make the `kbd` macro work in both Emacs-26 and Emacs-28

This is so that elpa.gnu.org's Emacs-26 can successfully build the
Info version of it for the GNU ELPA package.

3 years agoImprove command completion in tramp-crypt.el
Michael Albinus [Mon, 15 Mar 2021 08:49:20 +0000 (09:49 +0100)]
Improve command completion in tramp-crypt.el

* lisp/net/tramp-crypt.el (tramp-crypt-command-completion-p):
Rename from `tramp-crypt-enabled-p'.  Handle
`tramp-crypt-remove-directory' special.

3 years ago; Silence byte-compiler after previous commit
Stefan Kangas [Mon, 15 Mar 2021 08:16:47 +0000 (09:16 +0100)]
; Silence byte-compiler after previous commit

3 years ago* lisp/textmodes/refill.el: Use lexical-binding.
Stefan Kangas [Mon, 15 Mar 2021 08:15:29 +0000 (09:15 +0100)]
* lisp/textmodes/refill.el: Use lexical-binding.

3 years ago* lisp/cedet: Convert remaining files to lexical-binding
Stefan Monnier [Mon, 15 Mar 2021 04:08:34 +0000 (00:08 -0400)]
* lisp/cedet: Convert remaining files to lexical-binding

Remove a few more redundant `:group` args.
Make use of lexical scoping to replace `(lambda...) with proper closures.

* lisp/cedet/ede/custom.el (ede-project-sort-targets-list):
Use `dotimes` and replace `(lambda..) with closures.

* lisp/cedet/ede/proj-comp.el (proj-comp-insert-variable-once):
* lisp/cedet/ede/pmake.el (ede-pmake-insert-variable-once):
Remove unused var `addcr`.

* lisp/cedet/semantic/complete.el: Use lexical-binding.
(semantic-displayer-show-request): Remove unused var `typing-count`.
Use `equal` instead of `stringp+string=`.

* lisp/cedet/semantic/db-ebrowse.el: Use lexical-binding.
(semanticdb-create-ebrowse-database): Remove unused vars `mma` and `regexp`.
(semanticdb-ebrowse-strip-trees): Remove unused var `class` and `filename`.
(semanticdb-ebrowse-add-globals-to-table): Remove unused var `fname`.

* lisp/cedet/semantic/db-find.el: Use lexical-binding.
(semanticdb-find-adebug-insert-scanned-tag-cons): Remove always-nil var
`tip`.

* lisp/cedet/semantic/db-global.el: Use lexical-binding.
(semanticdb-enable-gnu-global-databases): Access local var
`semantic--ih` by sticking its value in the code passed to `eval`
rather than by dynamic scoping.

* lisp/cedet/semantic/db-typecache.el: Use lexical-binding.
(semanticdb-db-typecache-dump): Remove unused var `junk`.

* lisp/cedet/semantic/debug.el: Use lexical-binding.

* lisp/cedet/semantic/dep.el: Use lexical-binding.
(semantic-add-system-include): Avoid `add-to-list` on a local variable.
Access local var `value` by sticking its value in the code passed to
`eval` rather than by dynamic scoping.
(semantic-remove-system-include): Don't use `delete` on a list received
from elsewhere.
Access local var `value` by sticking its value in the code passed to
`eval` rather than by dynamic scoping.
(semantic-reset-system-include): Simplify a bit.

* lisp/cedet/semantic/ede-grammar.el: Use lexical-binding.
(project-compile-target): Remove unused vars `csrc` and `cb`.
Use `cl-incf`.  Remove apparently unneeded `with-no-warnings`.

* lisp/cedet/semantic/edit.el: Use lexical-binding.
(semantic-edits-change-over-tags): Remove unused var `inner-start`.
(semantic-edits-incremental-parser-1): Silence warnings about
intentionally unused var `last-cond`.

* lisp/cedet/semantic/fw.el: Use lexical-binding.
(recentf-exclude, semantic-init-hook, ede-auto-add-method)
(flymake-start-syntax-check-on-find-file, auto-insert): Declare vars.

* lisp/cedet/semantic/ia-sb.el: Use lexical-binding.
(semantic-ia-sb-key-map): Move initialization into declaration.
(semantic-ia-sb-more-buttons): Remove unused var `idx`.
(semantic-ia-sb-line-path): Simplify `if` -> `or`.

* lisp/cedet/semantic/idle.el (semantic-idle-breadcrumbs--tag-function):
Make it a function returning a closure.

* lisp/cedet/semantic/senator.el: Use lexical-binding.
(senator-search-set-tag-class-filter): Replace `(lambda..) with a closure.

* lisp/cedet/semantic/sort.el: Use lexical-binding.
(semanticdb-search-system-databases): Declare var.
(semantic-tag-external-member-children-default): Replace `(lambda..)
with a closure.

* lisp/cedet/semantic/tag-ls.el: Use lexical-binding.
(semantic-tag-protection-default, semantic-tag-abstract-p-default):
Simplify with `member`.

* lisp/cedet/semantic/util.el: Use lexical-binding.
(semantic-something-to-tag-table): Declare function
`semanticdb-abstract-table--eieio-childp` called via `cl-typep`.

* lisp/cedet/semantic/bovine/scm.el (semantic-default-scheme-setup):
Remove duplicate setting of `imenu-create-index-function`.

* lisp/cedet/semantic/decorate/mode.el (semantic-decoration-build-style-menu):
Replace `(lambda..) with a closure.

* lisp/cedet/srecode/cpp.el (srecode-semantic-apply-tag-to-dict):
Remove always-t variable `member`.

* lisp/cedet/srecode/mode.el (srecode-minor-mode-templates-menu):
Replace `(lambda..) with a closure.  Use `push`.

* lisp/cedet/semantic/chart.el: Use lexical-binding.
* lisp/cedet/semantic/db-debug.el: Use lexical-binding.
* lisp/cedet/semantic/db-el.el: Use lexical-binding.
* lisp/cedet/semantic/db-file.el: Use lexical-binding.
* lisp/cedet/semantic/db-javascript.el: Use lexical-binding.
* lisp/cedet/semantic/db-mode.el: Use lexical-binding.
* lisp/cedet/semantic/db-ref.el: Use lexical-binding.
* lisp/cedet/semantic/decorate.el: Use lexical-binding.
* lisp/cedet/semantic/doc.el: Use lexical-binding.
* lisp/cedet/semantic/find.el: Use lexical-binding.
* lisp/cedet/semantic/format.el: Use lexical-binding.
* lisp/cedet/semantic/html.el: Use lexical-binding.
* lisp/cedet/semantic/ia.el: Use lexical-binding.
* lisp/cedet/semantic/imenu.el: Use lexical-binding.
* lisp/cedet/semantic/java.el: Use lexical-binding.
* lisp/cedet/semantic/mru-bookmark.el: Use lexical-binding.
* lisp/cedet/semantic/symref.el: Use lexical-binding.
* lisp/cedet/semantic/tag-file.el: Use lexical-binding.
* lisp/cedet/semantic/tag-write.el: Use lexical-binding.
* lisp/cedet/semantic/texi.el: Use lexical-binding.
* lisp/cedet/semantic/util-modes.el: Use lexical-binding.

3 years agoInit archive and add noconfirm to 'package-install-selected-packages'
Gabriel do Nascimento Ribeiro [Sat, 13 Mar 2021 19:12:47 +0000 (16:12 -0300)]
Init archive and add noconfirm to 'package-install-selected-packages'

* lisp/emacs-lisp/package.el (package-install-selected-packages):
Add call to 'package--archives-initialize' and add optional argument
NOCONFIRM to skip user confirmation when installing packages.  (Bug#47124)

3 years ago* lisp/vc/ediff-vers.el: Remove XEmacs compat code.
Stefan Kangas [Mon, 15 Mar 2021 01:49:07 +0000 (02:49 +0100)]
* lisp/vc/ediff-vers.el: Remove XEmacs compat code.

3 years agoUse lexical-binding in expand.el
Stefan Kangas [Mon, 15 Mar 2021 01:32:11 +0000 (02:32 +0100)]
Use lexical-binding in expand.el

* lisp/expand.el: Use lexical-binding.  Remove redundant :group args.

3 years ago* lisp/help-macro.el: Use lexical-binding.
Stefan Kangas [Mon, 15 Mar 2021 01:20:23 +0000 (02:20 +0100)]
* lisp/help-macro.el: Use lexical-binding.

3 years agoAdd three new tests for image.el
Stefan Kangas [Mon, 15 Mar 2021 00:43:11 +0000 (01:43 +0100)]
Add three new tests for image.el

* test/lisp/image-tests.el (image-find-image)
(image-type-from-file-name, image-type/from-filename): New tests.

3 years ago* lisp/wid-edit.el (widget-field): Add subtle border to face.
Stefan Kangas [Sun, 14 Mar 2021 23:27:20 +0000 (00:27 +0100)]
* lisp/wid-edit.el (widget-field): Add subtle border to face.

3 years agoFix some entry in `comp-known-type-specifiers' (bug#46847)
Andrea Corallo [Sun, 14 Mar 2021 20:54:06 +0000 (21:54 +0100)]
Fix some entry in `comp-known-type-specifiers' (bug#46847)

* lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Some
fix.
* test/src/comp-tests.el (comp-tests-46670-1): Update test.

3 years agoDon't call setjmp through a function pointer on Windows (bug#47067)
Pip Cet [Sun, 14 Mar 2021 12:13:40 +0000 (12:13 +0000)]
Don't call setjmp through a function pointer on Windows (bug#47067)

* src/comp.c (ABI_VERSION): Bump.
(emit_setjmp): Call setjmp directly.
(declare_runtime_imported_funcs): Remove setjmp.
(helper_link_table): Remove entry for setjmp.

3 years agoRevert "* lisp/calendar/appt.el (appt-activate): Set the local `write-file-functions`"
Stefan Monnier [Sun, 14 Mar 2021 15:35:55 +0000 (11:35 -0400)]
Revert "* lisp/calendar/appt.el (appt-activate): Set the local `write-file-functions`"

This reverts commit 587a97bcb23bc6ea429ab790efa03f2260a9bca8.
We really do want to affect the global part of the hook.
Reported by Gabriel <gabriel376@hotmail.com>.

3 years agoFix hang due to failure to clean up *.eln.old files at exit
Eli Zaretskii [Sun, 14 Mar 2021 13:36:39 +0000 (15:36 +0200)]
Fix hang due to failure to clean up *.eln.old files at exit

* src/comp.c (eln_load_path_final_clean_up): Call
internal_delete_file, not Fdelete_file, to ignore any errors.
(Bug#46972)

3 years ago* lisp/tab-bar.el: Tab groups can be displayed with tab-bar-format-tabs-groups
Juri Linkov [Sun, 14 Mar 2021 09:29:31 +0000 (11:29 +0200)]
* lisp/tab-bar.el: Tab groups can be displayed with tab-bar-format-tabs-groups

* lisp/tab-bar.el (tab-bar-format): Turn defvar into defcustom.
Add :options and force-mode-line-update in :set.
(tab-bar--format-tab): New function refactored from tab-bar-format-tabs.
(tab-bar-format-tabs): Move most of code to tab-bar--format-tab and call it.
(tab-bar-tab-group-format-function): New defcustom.
(tab-bar-tab-group-format-default): New function.
(tab-bar--format-tab-group, tab-bar-format-tabs-groups): New functions.
(tab-bar-format-align-right, tab-bar-format-global): Shorten id.
(tab-bar-change-tab-group): Add refs to tab-bar-format in docstring.

3 years ago* lisp/tab-line.el: Update docstring of 'tab-line-tabs-function' (bug#47117)
Gabriel do Nascimento Ribeiro [Sat, 13 Mar 2021 22:04:55 +0000 (19:04 -0300)]
* lisp/tab-line.el: Update docstring of 'tab-line-tabs-function' (bug#47117)

(tab-line-tabs-function): Mention 'tab-line-tabs-buffer-groups'
in the docstring.
(tab-line-tabs-buffer-groups): Add docstring.

3 years ago* lisp/tab-line.el: Add face for group-tab (bug#47118)
Gabriel do Nascimento Ribeiro [Sat, 13 Mar 2021 02:12:10 +0000 (23:12 -0300)]
* lisp/tab-line.el: Add face for group-tab (bug#47118)

(tab-line-tab-face-functions): Add choice for 'tab-line-tab-face-group'.
(tab-line-tab-group): New face.
(tab-line-tabs-buffer-groups): Set alist key 'group-tab' for group tabs.
(tab-line-tab-face-group): New function to set face for group tabs.