1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-22 14:52:34 -07:00
Commit graph

148415 commits

Author SHA1 Message Date
Lars Ingebrigtsen
8b1693f689 Make previous Fkill_emacs change safer
* src/emacs.c (Fkill_emacs): Don't run `kill-emacs-hook' if it's nil.
2020-12-07 17:26:53 +01:00
Basil L. Contovounesios
1537a8c863 ; Fix recent typos/wording in NEWS and server.el 2020-12-07 16:07:41 +00:00
Daniel Martín
6e0080e755 Add commands xref-next-group and xref-prev-group
* lisp/progmodes/xref.el (xref-next-group): New command that navigates
to the first item of the next xref group (typically a file).
(xref-prev-group): New command that navigates
to the first item of the next xref group (typically a file).
(xref--xref-buffer-mode-map): Bound the new commands to 'N' and 'P',
respectively.
* doc/emacs/maintaining.texi (Xref Commands): Document the new
commands in the Emacs manual.
* etc/NEWS: Announce them (bug#45089).
2020-12-07 17:01:35 +01:00
Alyssa Ross
13651833c7 Only use the comint environment in comint-derived modes
* lisp/progmodes/compile.el (compilation-start): Only use the
comint environment in comint-derived modes (bug#45095).

Copyright-paperwork-exempt: yes
2020-12-07 16:58:15 +01:00
Stefan Kangas
60cf0aa21c Prefer setq-local in calendar/*.el
* lisp/calendar/calendar.el (calendar-mode):
* lisp/calendar/diary-lib.el (diary-list-entries, diary-mode):
(diary-fancy-display-mode): Prefer setq-local.
2020-12-07 16:45:46 +01:00
Stefan Kangas
d174a2bb23 Prefer setq-local in gnus/*.el
* lisp/gnus/gnus-agent.el (gnus-agent-mode)
(gnus-agent-get-undownloaded-list, gnus-agent-open-history):
* lisp/gnus/gnus-art.el (gnus-article-setup-highlight-words)
(gnus-article-mode, gnus-article-setup-buffer, defsubst)
(gnus-article-describe-bindings, gnus-article-edit-mode):
* lisp/gnus/gnus-cus.el (gnus-custom-mode, gnus-group-customize)
(gnus-score-customize, gnus-agent-customize-category):
* lisp/gnus/gnus-group.el (gnus-group-make-tool-bar):
* lisp/gnus/gnus-msg.el (gnus-setup-message)
(gnus-summary-news-other-window, gnus-configure-posting-styles):
* lisp/gnus/gnus-salt.el (gnus-pick-mode, gnus-binary-mode):
* lisp/gnus/gnus-score.el (gnus-score-edit-current-scores)
(gnus-score-edit-file):
* lisp/gnus/gnus-srvr.el (gnus-server-mode):
* lisp/gnus/gnus-start.el (gnus-no-server-1)
(gnus-dribble-read-file, gnus-save-newsrc-file)
(gnus-gnus-to-newsrc-format):
* lisp/gnus/gnus-sum.el (gnus-summary-make-tool-bar)
(gnus-summary-mode, gnus-summary-setup-buffer)
(gnus-select-newsgroup, gnus-summary-edit-article)
(gnus-summary-setup-default-charset):
* lisp/gnus/gnus-topic.el (gnus-topic-mode):
* lisp/gnus/gnus-undo.el (gnus-undo-mode):
* lisp/gnus/gnus.el (gnus-simplify-mode-line):
* lisp/gnus/message.el (message-cite-reply-position)
(message-cite-style, message-mode, message-setup-fill-variables):
* lisp/gnus/mm-view.el (mm-display-inline-fontify):
* lisp/gnus/mml.el (mml-mode):
* lisp/gnus/nndiary.el (nndiary-open-nov):
* lisp/gnus/nnfolder.el (nnfolder-save-buffer)
(nnfolder-open-nov):
* lisp/gnus/nnheader.el (nnheader-init-server-buffer):
* lisp/gnus/nnimap.el (nnimap-make-process-buffer):
* lisp/gnus/nnml.el (nnml-get-nov-buffer): Prefer setq-local.
2020-12-07 16:45:33 +01:00
Andrea Corallo
be907b0ba8 * Spawn a sub-process for running GCC also in batch mode (bug#45056)
* lisp/emacs-lisp/comp.el (comp-async-compilation): New variable.
	(comp-final): Always run the C side of the compilation as a
	sub-process unless during bootstrap or async compilation.
	(comp-run-async-workers): Set `comp-async-compilation'.
2020-12-07 16:43:01 +01:00
Lars Ingebrigtsen
3ee94cc7bb Insert skeletons at the correct point
* lisp/skeleton.el (skeleton-read): Don't insert the skeleton at
an arbitrary point if the user moves around (bug#17752).
2020-12-07 16:36:09 +01:00
Lars Ingebrigtsen
b218c8b6b5 Allow shutting down Emacs even if there are errors in kill-emacs-hook
* lisp/subr.el (run-hook-query-error-with-timeout): New function
(bug#28542).

* src/emacs.c (Fkill_emacs): Use it to allow exiting Emacs even if
there are errors in kill-emacs-hook.
(syms_of_emacs): Define the symbol.
2020-12-07 15:40:23 +01:00
Lars Ingebrigtsen
9cef8fc8cd Ensure that new emacsclient frames has focus
* lisp/server.el (server-execute): Focus the frame here...
(server-switch-buffer): Instead of here (bug#15469).  This ensures
that the frame has focus if Emacs is querying the user about
something when opening a file (for instance "Revert from file?").
2020-12-07 14:29:46 +01:00
Lars Ingebrigtsen
ff5a3c74fc Allow inhibiting the instructions on how to close emacsclient frames
* doc/emacs/misc.texi (Invoking emacsclient): Document it.
* lisp/server.el (server-client-instructions): New variable.
(server-execute): Use it.
2020-12-07 13:53:24 +01:00
Illia Ostapyshyn
78017a6e59 Allow using newer versions of Gnuplot from calc again
* lisp/calc/calc-graph.el (calc-graph-plot): Don't use the "time"
abbreviation for "timestamp" (bug#39232) -- it's no longer valid
after
b979b5371b

Copyright-paperwork-exempt: yes
2020-12-07 13:37:44 +01:00
Lars Ingebrigtsen
e74f60fde0 Fix file name quoting problems in tex-mode
* lisp/textmodes/tex-mode.el (tex--quote-spec): New function
(bug#14286).
(tex-format-cmd): Use it.
(tex-compile): Don't quote the file names, because we're using
`file-exists-p' and friends on the results later, and that fails
on systems where everything is quoted, and on file names that need
quoting.
2020-12-07 13:37:44 +01:00
Lars Ingebrigtsen
3568ff084c Clarify icomplete-show-matches-on-no-input doc string
* lisp/icomplete.el (icomplete-show-matches-on-no-input): Clarify
doc string (bug#19031), suggested by Andrii Kolomoiets.
2020-12-07 13:37:44 +01:00
Lars Ingebrigtsen
de7a741c7b Revert "Clarify icomplete-show-matches-on-no-input doc string"
This reverts commit f352c57972.

The new explanation of what icomplete does is wrong.
2020-12-07 13:37:44 +01:00
Mattias Engdegård
d6d871a1a2 Calc: simplify integer log2 and power of 2
We have bignums and fast primitives now; no caches are needed.

* lisp/calc/calc-bin.el (math-power-of-2-cache)
(math-big-power-of-2-cache): Remove.
(math-power-of-2, math-integer-log2): Simplify.
(calcFunc-ash): Don't call math-power-of-2 with negative argument.
2020-12-07 13:18:00 +01:00
Mattias Engdegård
5d04ee5085 * doc/misc/calc.texi (Predefined Units): Prune outdated kg text. 2020-12-07 13:17:59 +01:00
Philipp Stephani
2d989e81b7 Unbreak a few unit tests that rely on lack of backtraces
* test/lisp/emacs-lisp/gv-tests.el (gv-dont-define-expander-in-file)
(gv-dont-define-expander-other-file):
* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-with-default-config):
Suppress backtraces in batch mode to unbreak unit tests.
2020-12-07 11:59:06 +01:00
Philipp Stephani
3970f4ac40 Add new variable to selectively suppress backtraces in batch mode.
* src/eval.c (syms_of_eval): Define new variable
'backtrace-on-error-noninteractive' to selectively enable backtrace
printing in batch mode.
(signal_or_quit): Use it.

* etc/NEWS: Document new variable.

* test/src/eval-tests.el (eval-tests/backtrace-in-batch-mode/inhibit):
New unit test.
2020-12-07 11:59:06 +01:00
Stefan Kangas
2187b805d1 * lisp/ielm.el (inferior-emacs-lisp-mode): Prefer setq-local. 2020-12-07 11:19:15 +01:00
Stefan Kangas
6e0cac17b5 * lisp/ibuffer.el (ibuffer, ibuffer-mode): Prefer setq-local. 2020-12-07 11:16:37 +01:00
Stefan Kangas
8a42354b0a Prefer setq-local in whitespace.el
* lisp/whitespace.el (whitespace-turn-on, whitespace-color-on): Prefer
setq-local.
2020-12-07 11:14:22 +01:00
Stefan Kangas
737d22f295 Prefer setq-local in tar-mode.el
* lisp/tar-mode.el (tar-summarize-buffer, tar-mode, tar-extract):
Prefer setq-local.
2020-12-07 11:11:54 +01:00
Stefan Kangas
69f039bf6d Prefer setq-local in tcl.el
* lisp/progmodes/tcl.el (tcl-mode, inferior-tcl-mode, inferior-tcl):
(tcl-auto-fill-mode, tcl-guess-application): Prefer setq-local.
2020-12-07 11:07:10 +01:00
Michael Albinus
09b040cb58 * lisp/net/tramp.el (tramp-read-passwd): Use connection-local `auth-sources'.
* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
Move setting of connection-local variables up.
2020-12-07 10:38:24 +01:00
Stefan Monnier
300c581370 * lisp/emacs-lisp/lisp-mode.el: Give paren syntax to [...] in lisp-data-mode
(lisp-data-mode-syntax-table): Rename from lisp--mode-syntax-table.
Adjust all users.  Set [...] to have paren syntax.
(lisp-data-mode): Don't set `lisp-syntax` arg any more

* lisp/progmodes/elisp-mode.el (emacs-lisp-mode-syntax-table):
Don't bother setting [...] to have paren syntax any more.

* lisp/progmodes/inf-lisp.el (inferior-lisp-mode): Don't use
`lisp-syntax` arg of lisp-mode-variables any more.
2020-12-06 22:18:48 -05:00
Mattias Engdegård
c13b4fa61e Remove Calc bignum remnants
* lisp/calc/calc-macs.el (Math-natnum-lessp):
* lisp/calc/calc-ext.el (math-norm-bignum, math-compare-bignum):
* lisp/calc/calc-math.el (math-zerop-bignum)
(math-scale-bignum-digit-size): Remove.

* lisp/calc/calc-bin.el (math-integer-log2, calcFunc-rot, math-clip):
* lisp/calc/calc-comb.el (math-prime-test, calcFunc-prfac)
(calcFunc-totient, calcFunc-moebius):
* lisp/calc/calc-ext.el (math-gcd):
* lisp/calc/calc-funcs.el (calcFunc-betaB):
* lisp/calc/calc-math.el (math-nth-root-int-iter, calcFunc-ilog):
Replace Math-natnum-lessp with <.
2020-12-06 23:43:53 +01:00
Juri Linkov
f13ae2bb95 * lisp/vc/vc-git.el: Update args of backend API calls in the header comments
https://lists.gnu.org/archive/html/emacs-devel/2020-12/msg00283.html
2020-12-06 23:19:23 +02:00
Juri Linkov
3fe6cea6e0 * lisp/vc/vc.el: Update args of backend API calls in the header comments
https://lists.gnu.org/archive/html/emacs-devel/2020-12/msg00283.html
2020-12-06 23:18:13 +02:00
Juri Linkov
a40be60ec8 Backport Handle read-char-from-minibuffer and y-or-n-p from pre-command-hook
* lisp/subr.el (read-char-from-minibuffer-insert-char)
(read-char-from-minibuffer-insert-other, y-or-n-p-insert-y)
(y-or-n-p-insert-n, y-or-n-p-insert-other):
Check for 'minibufferp' before executing the body.
(read-char-from-minibuffer, y-or-n-p): Let-bind this-command
before calling read-from-minibuffer.  (Bug#45029)

; Do not merge to master.
2020-12-06 23:12:13 +02:00
Juri Linkov
5204c7420b Handle calling read-char-from-minibuffer and y-or-n-p from pre-command-hook
* lisp/subr.el (read-char-from-minibuffer-insert-char)
(read-char-from-minibuffer-insert-other, y-or-n-p-insert-y)
(y-or-n-p-insert-n, y-or-n-p-insert-other):
Check for 'minibufferp' before executing the body.
(read-char-from-minibuffer, y-or-n-p): Let-bind this-command
before calling read-from-minibuffer.  (Bug#45029)
2020-12-06 23:09:07 +02:00
Andrea Corallo
715a1ca174 Merge remote-tracking branch 'savannah/master' into HEAD 2020-12-06 18:07:27 +01:00
Andrea Corallo
27f666e111 * Unify common fallback exit point in `comp-cstr-union-1-no-mem'.
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-union-1-no-mem): Define
	a local function `give-up' as a common fall-back exit point.
2020-12-06 18:07:03 +01:00
Andrea Corallo
ac40a60696 Couple of `comp-cstr-union-1-no-mem' improvements for mixed neg pos union
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-union-1-no-mem):
	Generalize disjoint pos types vs neg values conditions.
	(comp-cstr-union-1-no-mem): Do not propagate ranges when we are
	already returning integer as generic type.
	* test/lisp/emacs-lisp/comp-cstr-tests.el
	(comp-cstr-typespec-tests-alist): Add corresponding tests.
2020-12-06 18:02:18 +01:00
Philipp Stephani
40e11743ca Print a backtrace on unhandled errors in batch mode (Bug#44942).
* src/eval.c (signal_or_quit): Print a backtrace in batch mode if no
error handler was found.

* test/src/eval-tests.el (eval-tests/backtrace-in-batch-mode)
(eval-tests/backtrace-in-batch-mode/demoted-errors): New unit tests.

* etc/NEWS: Document change.
2020-12-06 17:47:52 +01:00
Eli Zaretskii
87a9fc6dcd Improve error message text of "C-x C-SPC"
* lisp/simple.el (pop-global-mark): Mention the buffer name in the
error message.  Suggested by T.V Raman <raman@google.com>.
2020-12-06 17:43:18 +02:00
Eli Zaretskii
32090a3de4 Improve documentation of streams in batch mode
* doc/lispref/os.texi (Batch Mode):
* doc/lispref/streams.texi (Input Streams, Output Streams): Better
documentation of I/O streams in batch mode, with more
cross-references.
2020-12-06 15:54:37 +02:00
Michael Albinus
2bd76cc107 Make Tramp scripts more unique and robust
* lisp/net/tramp-sh.el (tramp-uudecode, tramp-perl-file-truename)
(tramp-perl-file-name-all-completions)
(tramp-perl-file-attributes)
(tramp-perl-directory-files-and-attributes)
(tramp-perl-encode-with-module, tramp-perl-decode-with-module)
(tramp-perl-encode, tramp-perl-decode, tramp-perl-pack)
(tramp-perl-unpack, tramp-hexdump-encode, tramp-awk-encode)
(tramp-hexdump-awk-encode, tramp-od-encode, tramp-od-awk-encode)
(tramp-awk-decode): Use format specifiers supported by
`tramp-expand-script'.  Adapt docstring.
(tramp-vc-registered-read-file-names): Adapt docstring.
(tramp-sh-handle-file-local-copy): Let-bind local `default-directory'.
(tramp-expand-script): New defun.
(tramp-maybe-send-script, tramp-find-inline-encoding): Use it.
(tramp-local-coding-commands): Simplify.
2020-12-06 14:24:13 +01:00
Mattias Engdegård
75a91a0bb5 Unicode integrals in Calc
* lisp/calc/calccomp.el (math-compose-integ): Use Unicode integral
signs when available instead of a crude ASCII approximation, with a
shorter stem to save space.
2020-12-06 13:11:18 +01:00
Basil L. Contovounesios
e84a1ffde9 Avoid modifying nnimap user option in spam.el
* lisp/gnus/nnimap.el (nnimap--split-download-body): New variable.
(nnimap-fetch-inbox): Use it in conjunction with
nnimap-split-download-body.
* lisp/gnus/spam.el: Don't load nnimap.el at compile time for a
dynamic variable.
(spam-setup-widening): Rather than unconditionally set user option
nnimap-split-download-body, set nnimap--split-download-body to a
unique non-nil value only if the variable was nil (bug#44981).
(spam-teardown-widening): New function that undoes this if
nnimap--split-download-body still holds the unique value.
(spam-unload-hook): Call spam-teardown-widening to revert any change
to the value of nnimap--split-download-body.
2020-12-06 11:45:52 +00:00
Stefan Kangas
61497defb4 ; * lisp/subr.el (interactive-p): Note to not remove in a hurry. 2020-12-06 10:37:31 +01:00
Stefan Kangas
ba02ac89e6 ; * lisp/gnus/spam.el (spam-setup-widening): Silence byte-compiler. 2020-12-06 10:06:33 +01:00
Stefan Kangas
e5c06669b8 Prefer setq-local in several progmodes
* lisp/progmodes/executable.el (executable-interpret):
* lisp/progmodes/f90.el (f90-mode):
* lisp/progmodes/flymake-cc.el (flymake-cc--make-diagnostics):
* lisp/progmodes/fortran.el (fortran-mode):
* lisp/progmodes/gud.el (gud-gdb, sdb, dbx, xdb, perldb, pdb)
(jdb, gud-mode, gud-common-init, gdb-script-mode)
(gud-tooltip-activate-mouse-motions):
* lisp/progmodes/hideshow.el (hs-minor-mode):
* lisp/progmodes/icon.el (icon-mode):
* lisp/progmodes/ld-script.el (ld-script-mode):
* lisp/progmodes/mixal-mode.el (mixal-mode):
* lisp/progmodes/modula2.el (m2-mode):
* lisp/progmodes/simula.el (simula-mode):
* lisp/progmodes/subword.el (subword-setup-buffer):
* lisp/progmodes/which-func.el (which-function):  Prefer setq-local.
2020-12-06 10:06:22 +01:00
Eli Zaretskii
34feded008 Support ks_c_5601-1987 encoding
* lisp/language/korean.el (ks_c_5601-1987): Define as an alias for
'korean-iso-8bit.  (It is sometimes used in email messages.)
2020-12-06 10:01:20 +02:00
Stefan Kangas
79d287c7b5 Prefer setq-local in emulation/*.el
* lisp/emulation/edt.el (edt-select-mode):
* lisp/emulation/viper-cmd.el (viper-refresh-mode-line):
(viper-minibuffer-setup-sentinel):
* lisp/emulation/viper.el (viper-comint-mode-hook): Prefer setq-local.
2020-12-06 08:54:50 +01:00
Stefan Kangas
7c113c344e Prefer setq-local in url/*.el
* lisp/url/url-cookie.el (url-cookie-write-file):
* lisp/url/url-http.el (url-http-parse-headers):
* lisp/url/url-util.el (url-extract-mime-headers): Prefer setq-local.
2020-12-06 08:51:23 +01:00
YAMAMOTO Mitsuharu
da00a6f317 Fix Xaw widget text disappearing when built with cairo (bug#43418)
* lwlib/lwlib-utils.c (crxft_font_open_name): Use FcFontMatch to
get a pattern to pass to cairo_ft_font_face_create_for_pattern.
2020-12-06 14:21:35 +09:00
Andrea Corallo
09ec39e352 * Memoize `comp-cstr-union-1'
* lisp/emacs-lisp/comp-cstr.el (comp-cstr): Do not synthesize the
	copier.
	(comp-cstr-ctxt): Add `union-1-mem-no-range' `union-1-mem-range'
	slots.
	(comp-cstr-copy): New function.
	(comp-cstr-union-1-no-mem): Rename from `comp-cstr-union-1'.
	(comp-cstr-union-1): New function.
2020-12-05 22:33:35 +01:00
Andrea Corallo
2eb41ec137 More improvements to `comp-cstr-union-1' for mixed positive/negative cases
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-union-1): Better handle
	mixed positive/negated cases.
	* test/lisp/emacs-lisp/comp-cstr-tests.el
	(comp-cstr-typespec-tests-alist): Add a number of tests.
2020-12-05 19:01:04 +01:00
Andrea Corallo
f923de6853 * Fix `comp-cstr-to-type-spec'
* lisp/emacs-lisp/comp-cstr.el (comp-star-or-num-p): New predicate.
	(comp-type-spec-to-cstr): Make use of.
	(comp-cstr-to-type-spec): Output correctly type specifiers
	as (not (or integer ...
2020-12-05 19:01:04 +01:00