1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-24 17:00:44 -08:00
Commit graph

151382 commits

Author SHA1 Message Date
James N. V. Cash
c1daeb4c28 Refactor tab-bar-mode to -define-keys and -load-buttons (bug#42052)
* lisp/tab-bar.el (tab-bar--define-keys, tab-bar--load-buttons):
Move some code here from 'tab-bar-mode'.
(tab-bar-new-tab-to): Call tab-bar--load-buttons and tab-bar--define-keys.

Copyright-paperwork-exempt: yes
2021-01-05 20:35:35 +02:00
Eli Zaretskii
02e6ffe860 Fix process-tests on MS-Windows
It was again broken by recent changes.
* test/src/process-tests.el
(process-tests/fd-setsize-no-crash/make-serial-process): Skip test
on MS-Windows.
2021-01-05 20:26:38 +02:00
Stefan Monnier
9973019764 * lisp/emacs-lisp/package.el: Load package-quickstart without package.el
Speed up startup when `package-quickstart` is in use by making it possible
to load the quickstart file without having to load `package.el` at all.

(package-user-dir, package-directory-list, package-quickstart-file):
Preload those variables.
(package--get-activatable-pkg): New fun, extracted from `package-activate`.
(package-activate): Use it.
(package--activate-all): New function, extracted from
`package-activate-all`.
(package-activate-all): Use it and make the function preloaded.
(package--archives-initialize): New function.
(package-install): Use it.
(list-packages): Avoid `switch-to-buffer`.
(package-get-descriptor): New function.

* lisp/startup.el (command-line): Simplify the code now that
package-user-dir and package-directory-list are preloaded.

* lisp/emacs-lisp/autoload.el (make-autoload): Add support for
`:initialize #'custom-initialize-delay` in `defcustom`.
2021-01-05 12:28:37 -05:00
Michael Albinus
149d64bbb2 * doc/misc/tramp.texi (Quick Start Guide): Fix thinko. 2021-01-05 15:45:45 +01:00
Robert Pluim
97747e6fb9 Tell people how to remove fontconfig customizations 2021-01-05 14:42:10 +01:00
Simen Heggestøyl
33d0c603c6 ; * doc/lispref/modes.texi (SMIE Indentation Example): Fix previous commit 2021-01-05 12:22:31 +01:00
Mattias Engdegård
1433a12014 ruby-mode: eliminate redundant regexp branch
* lisp/progmodes/ruby-mode.el (ruby-add-log-current-method):
Since ruby-operator-re matches dot, don't include both in regexp.
This pacifies relint.
2021-01-05 12:01:32 +01:00
Mattias Engdegård
77796eb014 ; * lisp/subr.el (ctl-x-map): Fix typo in kill-buffer binding. 2021-01-05 11:28:58 +01:00
Mattias Engdegård
7f16f17727 Pretty-print keys without <> around modifiers (bug#45536)
Be consistent when pretty-printing keys: put modifiers outside <>,
thus the more logical C-M-<return> instead of <C-M-return>.

* src/keymap.c (Fsingle_key_description):
Skip modifier prefix before adding <>.
* doc/lispref/help.texi (Describing Characters): Update example.
* doc/lispref/debugging.texi (Backtraces):
* doc/lispref/minibuf.texi (Text from Minibuffer):
Use @kbd instead of @key.
* etc/NEWS: Announce the change.
* test/src/keymap-tests.el (keymap--key-description):
* test/lisp/subr-tests.el (subr--kbd): New tests.
2021-01-05 11:28:58 +01:00
Mattias Engdegård
e6617f0dff * lisp/filesets.el (filesets-external-viewers): Tighten regexp. 2021-01-05 11:28:58 +01:00
Harald Jörg
06810abc59 perl-mode: Display here-docs as strings instead of comments
* lisp/progmodes/perl-mode.el
(perl-syntax-propertize-function): Handle HERE doc starter
lines ending in a comment.
(perl-heredoc): New face for HERE docs, inheriting from
font-lock-string-face.
(perl-font-lock-syntactic-face-function): Apply the new face
to HERE docs (Bug#23461).

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-test--run-bug-10483): Skip for Perl mode.  The test
explicitly calls a function of CPerl mode.
2021-01-05 10:15:04 +01:00
Stefan Monnier
8ef4314c44 * lisp/subr.el (esc-map): Initialize inside declaration
* src/commands.h (meta_map):
* src/keymap.c (meta_map): Delete variable.
(syms_of_keymap): Don't initialize esc-map here.
(initial_define_key):
* src/keymap.h (initial_define_key): Delete function.

* src/keyboard.c (keys_of_keyboard): Don't initialize esc-map here.

* src/window.h (keys_of_window):
* src/window.c (keys_of_window): Delete function.
* src/lisp.h (keys_of_casefiddle):
* src/casefiddle.c (keys_of_casefiddle): Delete function.
* src/emacs.c (main): Don't call them.
2021-01-04 23:43:40 -05:00
Stefan Monnier
5bddc09738 * lisp/subr.el (ctl-x-map): Initialize inside the declaration.
* src/command.h (control_x_map):
* src/keymap.c (control_x_map): Delete variable.
(syms_of_keymap):
* src/keyboard.c (keys_of_keyboard):
* src/casefiddle.c (keys_of_casefiddle):
* src/window.c (keys_of_window): Move initialization of ctl-x-map to
subr.el.

* src/lisp.h (syms_of_buffer):
* src/buffer.c (keys_of_buffer): Delete function.
* src/emacs.c (main): Don't call it.
2021-01-04 23:41:31 -05:00
Stefan Monnier
d6f30e5632 * lisp/subr.el (global-map): Initialize inside declaration.
* src/commands.h (global_map):
* src/keymap.c (global_map): Delete variable.
(syms_of_keymap): Don't initialize global_map here.
(keys_of_keymap): Delete function.
* src/lisp.h (keys_of_cmds):
* src/cmds.c (keys_of_cmds): Delete function.
* src/emacs.c (main): Don't call them.

* src/window.c (keys_of_window): Don't initialize global_map here.
* src/keyboard.c (keys_of_keyboard): Don't initialize global_map here.
2021-01-04 23:41:19 -05:00
Stefan Monnier
898a94a9be Use lexical-binding in the remaining preloaded files
* lisp/widget.el:
* lisp/w32-fns.el:
* lisp/textmodes/fill.el:
* lisp/term/common-win.el:
* lisp/scroll-bar.el:
* lisp/rfn-eshadow.el:
* lisp/menu-bar.el:
* lisp/language/tibetan.el:
* lisp/language/thai.el:
* lisp/language/misc-lang.el:
* lisp/language/lao.el:
* lisp/language/korean.el:
* lisp/language/japanese.el:
* lisp/language/indian.el:
* lisp/language/hebrew.el:
* lisp/language/european.el:
* lisp/language/ethiopic.el:
* lisp/language/english.el:
* lisp/language/cyrillic.el:
* lisp/language/chinese.el:
* lisp/jka-cmpr-hook.el:
* lisp/international/ucs-normalize.el:
* lisp/international/mule.el:
* lisp/international/mule-conf.el:
* lisp/international/iso-transl.el:
* lisp/international/fontset.el:
* lisp/international/characters.el:
* lisp/format.el:
* lisp/facemenu.el:
* lisp/electric.el:
* lisp/dos-w32.el:
* lisp/dos-fns.el:
* lisp/disp-table.el:
* lisp/cus-face.el:
* lisp/composite.el:
* lisp/bindings.el:
* admin/unidata/blocks.awk:
* admin/charsets/eucjp-ms.awk:
* admin/charsets/cp51932.awk: Use `lexical-binding`.
2021-01-04 20:57:42 -05:00
Stefan Monnier
80e2647220 * lisp/filesets.el: Use lexical-binding
Remove redundant `:group` args.  Require cl-lib and seq.
Fix various O(n²) bug and flag a few remaining ones.

(filesets-external-viewers): Simplify regexps.  Use \' instead of $.
Remove useless :constraint-flag properties.
(filesets-convert-path-list): η-reduce.
(filesets-eviewer-constraint-p): Mark :constraint-flag as obsolete.
(filesets-spawn-external-viewer): Can't use `run-hooks` on
lexical variable.
(filesets-filter-list): Fix O(n²) bug.
(filesets-ormap): Simplify.
(filesets-some, filesets-member, filesets-sublist): Make them
obsolete aliases.
(filesets-reset-fileset): Simplify.
(filesets-directory-files): Use `push`.
(filesets-spawn-external-viewer): Use `mapconcat` to fix O(n²) bug.
(filesets-cmd-get-args): Use `mapcan` to fix O(n²) bug.
(filesets-run-cmd): Use `mapconcat` and `mapcan` to fix O(n²) bugs.
(filesets-ingroup-collect-finder): Use dynamic scoping.
(filesets-ingroup-collect-files): Use `nreverse` to fix O(n²) bug.
(filesets-ingroup-collect-build-menu): Use `mapcan` to fix O(n²) bug.
2021-01-04 18:23:43 -05:00
Andrea Corallo
8ad983c4ac * test/src/comp-tests.el (cond-rw-1, not-cons, 45576): Rename three tests. 2021-01-04 22:32:09 +01:00
Andrea Corallo
7293c23d14 * Fix a type specifier test
* test/lisp/emacs-lisp/comp-cstr-tests.el
	(comp-cstr-typespec-tests-alist): Fix a testcase.
2021-01-04 22:31:40 +01:00
Andrea Corallo
5074447ef4 Fix type inference for bug#45635
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-union-1-no-mem): Fix
	missing mixed pos neg handling.
	* test/lisp/emacs-lisp/comp-cstr-tests.el
	(comp-cstr-typespec-tests-alist): Add a test.
	* test/src/comp-tests.el (45635): New testcase.
	* test/src/comp-test-funcs.el (comp-test-45635-f): New function.
2021-01-04 22:31:40 +01:00
Philipp Stephani
57e872ac75 Make a process tests a bit more robust.
* test/src/process-tests.el
(process-tests/fd-setsize-no-crash/make-process): Allow for processes
to fail before 'exec'.
2021-01-04 22:13:32 +01:00
Stefan Monnier
37e3a6eb31 * lisp/cedet/srecode/semantic.el: Use lexical-binding
(srecode-semantic-insert-tag): Can't use `run-hook-with-args` on
lexical variable.
2021-01-04 15:34:12 -05:00
Stefan Monnier
a79e1a85f8 * lisp/mail/reporter.el: Use lexical-binding
(reporter--run-functions): New function.
(reporter-dump-state): Use it and simplify the code.
2021-01-04 15:31:58 -05:00
Stefan Monnier
42c3f7a134 * lisp/erc/erc.el (erc-process-input-line): Undo confused last change 2021-01-04 15:25:29 -05:00
Dmitry Gutov
1e776d7d6a ruby-add-log-current-method: Support methods with symbolic names
* lisp/progmodes/ruby-mode.el (ruby-add-log-current-method):
Support methods with symbolic names.
2021-01-04 21:13:53 +02:00
Paul Eggert
97226aacfd Do not assume Xrender merely because Cairo
Problem reported by Andrea Corallo in:
https://lists.gnu.org/r/emacs-devel/2021-01/msg00225.html
* src/xterm.c (x_term_init) [USE_CAIRO && !HAVE_XRENDER]:
Do not call XRenderQueryExtension.
2021-01-04 10:35:19 -08:00
Paul Eggert
fa574e68de Fix broken build on AIX 7.2
Without this fix, the build on AIX 7.2 with xlc fails in the ‘CCLD
temacs’ step with the diagnostic ‘ld: 0711-317 ERROR: Undefined
symbol: BC’.  This is because -lcurses does not define BC etc.
* configure.ac: When building terminfo.o, define
TERMINFO_DEFINES_BC if the library defines BC etc.
* src/terminfo.c (UP, BC, PC): Define depending on
TERMINFO_DEFINES_BC, not on TERMINFO.

(cherry picked from commit 632917461a)
2021-01-04 09:02:40 -08:00
Simen Heggestøyl
03080b5545 Remove extraneous closing paren
* doc/lispref/modes.texi (SMIE Indentation Example): Remove extraneous
closing paren.
2021-01-04 19:01:23 +02:00
Glenn Morris
2c84790252 Merge from origin/emacs-27
99cc0045eb (origin/emacs-27) Update two user option names in the Widg...
2021-01-04 07:50:26 -08:00
Glenn Morris
b90f3c5cae ; Merge from origin/emacs-27
The following commit was skipped:

32c960bdc6 Mention -lcurses problem on AIX
2021-01-04 07:50:26 -08:00
Glenn Morris
1395fb8ff7 Merge from origin/emacs-27
2e09efdb68 Revert previous patch which was installed into wrong branch.
2021-01-04 07:50:25 -08:00
Glenn Morris
e8bf7258ae ; Merge from origin/emacs-27
The following commit was skipped:

585997d05a Fix broken build on AIX 7.2
2021-01-04 07:50:25 -08:00
Glenn Morris
49137d3278 Merge from origin/emacs-27
a7c2793efe Fix last change
2021-01-04 07:50:25 -08:00
Glenn Morris
33108bc477 ; Merge from origin/emacs-27
The following commit was skipped:

ec1e1f80e6 Add a reference between the Strings node and Search/Replace
2021-01-04 07:50:25 -08:00
Glenn Morris
ba2f2f9378 Merge from origin/emacs-27
90c782e92e Merge branch 'emacs-27' of git.savannah.gnu.org:/srv/git/e...
2021-01-04 07:50:25 -08:00
Glenn Morris
82c6f43653 ; Merge from origin/emacs-27
The following commit was skipped:

f0deca159d (emacs-27) ; Auto-commit of loaddefs files.
2021-01-04 07:50:25 -08:00
Glenn Morris
6f0bb2fe58 Merge from origin/emacs-27
7384ec6416 Add warning comments abound binding keys in Isearch maps
2021-01-04 07:50:22 -08:00
Glenn Morris
dadffdd81f ; Merge from origin/emacs-27
The following commit was skipped:

3711339f92 Fix crash in ns_mouse_position (bug#45541)
2021-01-04 07:50:22 -08:00
Michael Albinus
f5a1315f1e Fix error in tramp-sh-handle-insert-directory
* lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): Let buffer be
unibyte when applying numbers returned with the ls --dired option.
Reported by Justus Piater <Justus-dev@Piater.name>.

* test/lisp/net/tramp-tests.el (tramp--test-check-files): Extend test.
2021-01-04 16:32:32 +01:00
Mauro Aranda
99cc0045eb Update two user option names in the Widget manual
* doc/misc/widget.texi (Basic Types): The user options
widget-glyph-directory and widget-glyph-enable were renamed long ago
to widget-image-directory and widget-image-enable, but the manual
kept calling them by their old names.  Update the names.
2021-01-04 10:26:14 -03:00
Basil L. Contovounesios
56556b5f4d
Fix build for --enable-checking=structs
The last change to lisp.h only added comments in Lisp_String, so the
portable dumper need not be changed.

* src/pdumper.c (dump_string): Update hash for Lisp_String.
2021-01-04 13:15:15 +00:00
Mauro Aranda
4e80eb7b7c Don't skip widgets when moving backward
* lisp/wid-edit.el (widget-move): Remove code that caused
widget-backward to skip an immediate previous widget when moving
backward from the start of a widget.  (Bug#45623)

* test/lisp/wid-edit-tests.el (widget-test-widget-backward): New test.
2021-01-04 10:02:20 -03:00
Amin Bandali
65f21729e6 Fix off-by-one error in mode-line-compact code
* src/xdisp.c (display_mode_line): Fix off-by-one error that would
chop off the final non-space character when compacting (bug#45646).
2021-01-04 10:48:08 +01:00
Lars Ingebrigtsen
b2f81b7bab Fix computation of Lines in nnmaildir
* lisp/gnus/nnmaildir.el (nnmaildir--update-nov): Lines is -1 if
it's not present; not 0 (probably) (bug#45650).
2021-01-04 10:42:13 +01:00
Stefan Monnier
90951f847c * src/print.c (print_vectorlike): Use HASH_TABLE_SIZE 2021-01-04 01:00:33 -05:00
Stefan Monnier
b2f8c9f96f * src/xdisp.c (syms_of_xdisp): New var redisplay-skip-fontification-on-input
(handle_fontified_prop): Use it.

* src/keyboard.h (input_was_pending): Declare.
* src/keyboard.c (input_was_pending): Make non-static.
2021-01-04 00:59:56 -05:00
Stefan Monnier
0c599ee2e2 * lisp/erc/erc.el: Use run-hook-with-args for erc-pre-send-functions
(erc-process-input-line): A function can be `listp`.
(erc-send-input): Use `run-hook-with-args` for `erc-pre-send-functions`.
(erc-display-command): Comment out, unused.
2021-01-04 00:21:02 -05:00
Stefan Monnier
535a25164b * lisp/calc/calc-yank.el (calc-edit-mode): Make it into a proper major mode
Also make `calc-edit-handler` hold a function instead of an expression.

(calc-original-buffer, calc-return-buffer, calc-one-window)
(calc-edit-handler, calc-restore-trail, calc-allow-ret)
(calc-edit-top): Give them a default value.
(calc--edit-mode): New function extracted from old `calc-edit-mode`.
(calc-edit-return, calc-edit-finish): Don't need to test `boundp` any more.
(calc-edit-finish): Allow `calc-edit-handler` to be a function.

(calc-edit, calc-alg-edit):

* lisp/calc/calc-prog.el (calc-edit-user-syntax, calc-user-define-edit):
* lisp/calc/calc-embed.el (calc-embedded-edit):
* lisp/calc/calc-sel.el (calc-edit-selection):
* lisp/calc/calc-store.el (calc-edit-variable):
Use `calc--edit-mode` and make first arg into a function.

* lisp/calc/calc-ext.el (calc-init-extensions): Autoload `calc--edit-mode`
instead of `calc-edit-mode`.
2021-01-04 00:01:58 -05:00
Stefan Monnier
d8d223e7ef * Makefile.in (test/%): New target 2021-01-03 23:15:33 -05:00
Stefan Monnier
587a97bcb2 * lisp/calendar/appt.el (appt-activate): Set the local write-file-functions 2021-01-03 23:14:18 -05:00
Mark Oteiza
9c0387d786 Fix last change in json.el
* lisp/json.el (json-encode-array): Include optimization for lists.
2021-01-03 22:07:59 -05:00