1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-23 00:10:48 -08:00
Commit graph

155589 commits

Author SHA1 Message Date
Eli Zaretskii
959d647568 Doc string fixes in comp.e
* src/comp.c (Fcomp_el_to_eln_filename)
(Fcomp_el_to_eln_rel_filename): Doc fix.
2021-09-22 16:01:30 +03:00
Eli Zaretskii
7973227f67 Update comments warning about GC-resistant C programming
* src/eval.c: Remove an outdated comment about protection from GC.
* src/buffer.h:
* src/lisp.h: Add warnings about using 'char *' pointers to text
of Lisp strings and buffer text in code that could GC.  Reported by
Po Lu <luangruo@yahoo.com>
2021-09-22 10:07:25 +03:00
Daniel Fleischer
3d575534d4 Native compilation on macOS: libgccjit not found
* etc/PROBLEMS: Describe the problem with libgccjit setup on
macOS.  (Bug#50411)
2021-09-22 09:46:29 +03:00
Stephen Gildea
e402a21704 ; * doc/misc/mh-e.texi (Scan Line Formats): Fix typo, an extra "the". 2021-09-21 22:34:35 -07:00
Lars Ingebrigtsen
f2bd2386a7 Speed up `replace-match' slightly
* src/search.c (Freplace_match): Speed up non-literal (but
actually literal) common case.

This makes

(benchmark-run 1000000
  (replace-regexp-in-string
  "a+" "foo"
  "ogihdipofdhookfdohkfdpokhpokhfdpokfdhpokfdhkdfkhgoadfphokfkhpofdkhkdpokf"))

about 10% faster.
2021-09-22 07:22:22 +02:00
Stephen Gildea
7ce721bdac Migrate MH-E functional tests from SourceForge
* test/lisp/mh-e/mh-limit-tests.el:
* test/lisp/mh-e/mh-utils-tests.el:
* test/lisp/mh-e/mh-xface-tests.el:
Import the functional tests from src/mh-unit.el.

mh-unit.el is from the old SourceForge mh-e repository, last changed
in 2017.  To this are applied unmerged patches Mike Kupfer wrote in
2018 ("Refactor mh-unit into functional and release tests" and
"Fix the functional tests").

All tests have been converted to run under Emacs's ERT framework.

Some tests for mh-utils use MH programs to examine mail folders.
These tests require an MH variant to be installed on the system; for
these, added both a mock harness that pretends the needed files and MH
programs do exist, and a wrapper that creates the necessary mail files.

New function 'mh-test-utils-setup-with-variant' bears some resemblance
to 'mh-test-folders-set-up' from the original tests.  New function
'mh-test-utils-setup-with-mocks' is new functionality for these tests.
2021-09-21 22:03:08 -07:00
Lars Ingebrigtsen
2a73673809 Change how thread-first/thread-last indent the first argument
* lisp/doc-view.el (doc-view--current-cache-dir): Reindent.

* lisp/emacs-lisp/subr-x.el (thread-first):
(thread-last): Change indentation to match examples.
(internal--build-binding): Reindent.

* test/lisp/emacs-lisp/subr-x-tests.el
(subr-x-test-thread-first-function-names-are-threaded):
(subr-x-test-thread-first-examples):
(subr-x-test-thread-last-function-names-are-threaded):
(subr-x-test-thread-last-examples): Reindent.
2021-09-22 05:57:48 +02:00
Lars Ingebrigtsen
8a8319140c Make global-auto-revert-non-file-buffers work better
* lisp/autorevert.el (global-auto-revert-mode): Always switch on
the non-file tracking.
(auto-revert--global-possibly-adopt-current-buffer): New function
to respect dynamically changing `global-auto-revert-non-file-buffers'.
2021-09-21 23:09:38 +02:00
Stefan Monnier
e000a7ab10 (etc-authors-mode--hide-local-variables): Obfuscate more efficiently 2021-09-21 16:53:25 -04:00
Stefan Kangas
7f5ac1468d ; * etc/NEWS: Improve wording of an item.
* lisp/emacs-lisp/hierarchy.el: Improve wording of package description.
2021-09-21 22:21:31 +02:00
Stefan Kangas
b58228903f Fix warning in etc-authors-mode.el
* lisp/textmodes/etc-authors-mode.el
(etc-authors-mode--hide-local-variables): Avoid warning.
2021-09-21 22:21:31 +02:00
Lars Ingebrigtsen
85e9e5f616 Don't quote nil and t in doc strings and comments
* test/src/minibuf-tests.el (test-try-completion-ignore-case):
* test/lisp/url/url-auth-tests.el
(url-auth-test-digest-auth-retrieve-cache):
* test/lisp/subr-tests.el (subr-tests-add-hook-depth):
* test/lisp/so-long-tests/so-long-tests.el
(so-long-tests-invisible-buffer-function):
* test/lisp/emacs-lisp/tabulated-list-test.el (tabulated-list-sort):
* src/xfaces.c:
* src/process.c (Finterrupt_process):
(syms_of_process):
* src/minibuf.c (Fread_from_minibuffer):
(Fcompleting_read):
(syms_of_minibuf):
* src/dispnew.c (syms_of_display):
* src/data.c:
* lisp/so-long.el (so-long--hack-local-variables):
* lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
(elisp--xref-find-definitions):
* lisp/org/ox-html.el (org-html-htmlize-output-type):
* lisp/org/org-agenda.el (org-agenda-do-in-region):
* lisp/net/tramp.el:
* lisp/minibuffer.el (set-minibuffer-message):
* lisp/isearch.el (isearch-wrap-pause):
(isearch-repeat-on-direction-change):
* lisp/emacs-lisp/timer.el (timer):
* lisp/emacs-lisp/package.el (package-read-archive-contents):
* lisp/emacs-lisp/faceup.el (faceup-next-property-change):
* lisp/emacs-lisp/comp.el (comp-func):
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-empty-p):
* lisp/emacs-lisp/cl-macs.el (cl-do):
(cl-do*):
(cl--self-tco):
* lisp/emacs-lisp/bytecomp.el (byte-compile-unresolved-functions):
(byte-compile-cond-jump-table): Don't quote t and nil.
2021-09-21 22:11:43 +02:00
Lars Ingebrigtsen
636e082e45 Document isearch-wrap-pause
* doc/emacs/search.texi (Repeat Isearch): Document
`isearch-wrap-pause'.
2021-09-21 22:01:28 +02:00
Stefan Kangas
7b62ea95c9 New major mode with font-locking for etc/AUTHORS
* lisp/textmodes/etc-authors-mode.el: New file.  (Bug#50674)
* etc/AUTHORS (mode): Add "mode: etc-authors" to local variables.
* admin/authors.el (authors): Add "mode: etc-authors" to local
variables of the generated AUTHORS file.
2021-09-21 21:40:15 +02:00
Stefan Kangas
e4a9aa940b ; * doc/lispref/windows.texi (Cyclic Window Ordering): Fix typo. 2021-09-21 21:07:37 +02:00
Eli Zaretskii
fd77065fc6 Improve recently added documentation
* doc/lispref/lists.texi (Building Lists):
* lisp/subr.el (ensure-list): Avoid passive tense in documenting
'ensure-list'.
2021-09-21 21:51:38 +03:00
Lars Ingebrigtsen
be4f858498 Add new function `ensure-list'
* doc/lispref/lists.texi (Building Lists): Document it.

* lisp/subr.el (ensure-list): New function.

* lisp/emacs-lisp/shortdoc.el (list): Mention it.
2021-09-21 20:31:05 +02:00
Michael Albinus
a08bb1f682 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2021-09-21 20:27:48 +02:00
Michael Albinus
2e5752cf98 Fix tramp-compat-temporary-file-directory implementation
* lisp/net/tramp-archive.el
(tramp-archive-handle-temporary-file-directory):
Use `tramp-compat-temporary-file-directory-function'.

* lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory):
Make it a defconst.

* lisp/net/tramp.el (tramp-get-debug-buffer, tramp-get-debug-file-name)
(tramp-debug-message, tramp-file-name-handler, tramp-parse-file)
(tramp-parse-shostkeys-sknownhosts)
(tramp-handle-expand-file-name, tramp-handle-make-process)
(tramp-local-host-p, tramp-call-process)
(tramp-call-process-region, tramp-process-lines)
(tramp-read-passwd):
* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
* lisp/net/tramp-compat.el (tramp-compat-make-temp-name)
(tramp-compat-make-temp-file);
* lisp/net/tramp-crypt.el (tramp-crypt-file-name-for-operation)
(tramp-crypt-maybe-open-connection, tramp-crypt-send-command)
(tramp-crypt-do-encrypt-or-decrypt-file-name):
* lisp/net/tramp-fuse.el (tramp-fuse-mount-point, tramp-fuse-mounted-p)
(tramp-fuse-unmount):
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
(tramp-sh-handle-expand-file-name)
(tramp-sh-handle-file-local-copy, )
(tramp-sh-handle-write-region, tramp-maybe-open-connection):
* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Use it.
2021-09-21 20:26:59 +02:00
Stefan Kangas
f41a4ec8e1 ; * lisp/emacs-lisp/checkdoc.el: Fix warnings. 2021-09-21 20:17:46 +02:00
Stefan Kangas
b2bb717d4b Minor clean-up and fixes in checkdoc
* lisp/emacs-lisp/checkdoc.el: Minor doc fixes.  Remove unnecessary
space at the end of 'y-or-n-p' prompts.  Move obsolete definitions to
the end of the file.
(checkdoc-symbol-words, checkdoc-common-verbs-wrong-voice): Add
some more common words.
2021-09-21 20:08:04 +02:00
Stefan Kangas
8f0806da1a checkdoc: New defvars to disable some warnings
* lisp/emacs-lisp/checkdoc.el (checkdoc--argument-missing-flag)
(checkdoc--disambiguate-symbol-flag)
(checkdoc--interactive-docstring-flag): New defvars to disable some
warnings.  These are intended for use with Emacs itself rather than
with third-party libraries.
(checkdoc-this-string-valid, checkdoc-this-string-valid-engine):
Respect above new variables.
2021-09-21 20:07:30 +02:00
Stefan Kangas
1c73c0b33a Add new command 'checkdoc-dired'
* lisp/emacs-lisp/checkdoc.el (checkdoc-dired): New command.
(checkdoc--dired-skip-lines-re): New constant.
2021-09-21 20:02:19 +02:00
Lars Ingebrigtsen
f29aee1d9a More NEWS tagging 2021-09-21 19:55:11 +02:00
Lars Ingebrigtsen
3678f916d8 Do some NEWS tagging 2021-09-21 19:52:23 +02:00
Lars Ingebrigtsen
314f27014e Document `window-bump-use-time'
* doc/lispref/windows.texi (Cyclic Window Ordering): Mention
window-bump-use-time.
2021-09-21 19:48:01 +02:00
Juri Linkov
b539512762 * lisp/tab-bar.el: Preserve all existing tab parameters when switching tabs.
* lisp/tab-bar.el (tab-bar--tab, tab-bar--current-tab-make):
Copy other possible tab parameters.
https://lists.gnu.org/archive/html/emacs-devel/2021-09/msg01544.html
2021-09-21 20:46:14 +03:00
Lars Ingebrigtsen
a7d51676f1 Document completions-detailed
* doc/emacs/help.texi (Name Help): Document completions-detailed.
* lisp/minibuffer.el (completions-detailed): Give an example in
the doc string.
2021-09-21 19:43:07 +02:00
Basil L. Contovounesios
90d491ee57 ; * etc/NEWS: Refile recent addition (bug#50690). 2021-09-21 18:16:36 +01:00
Michalis V
0e2792e8b4 Make dired-do-compress-to work in inserted subdirectories
* lisp/dired-aux.el (dired-do-compress-to): Make this work in file
in inserted subdirectories (bug#46913).
2021-09-21 19:13:35 +02:00
Lars Ingebrigtsen
bd6fe44a57 Revert "Make dired-compress-file query for a directory to uncompress to"
This reverts commit 7e395a59b0.

The behaviour change isn't good for the majority of tar files.
2021-09-21 19:05:49 +02:00
Lars Ingebrigtsen
ff714466e7 Revert "Make recent dired tests check for external executables"
This reverts commit 98a17f30b8.

Reverting parent commit.
2021-09-21 19:05:49 +02:00
Lars Ingebrigtsen
aaf4bb1f07 Restore some of the previous behaviour in whitespace-display-window
* lisp/whitespace.el (whitespace-display-window): Emulate previous
behaviour (bug#50716).  Code from martin rudalics <rudalics@gmx.at>.
2021-09-21 18:54:41 +02:00
Stefan Kangas
6f360c5aad ; Stylistic docfixes in htmlfontify.el found by checkdoc 2021-09-21 18:19:43 +02:00
Lars Ingebrigtsen
43c1ee90cb Don't use `format' on strings without % format directives
* lisp/vc/ediff-init.el (ediff-BAD-INFO):
* lisp/url/url-ldap.el (url-ldap):
* lisp/url/url-http.el (url-http--user-agent-default-string):
* lisp/textmodes/reftex.el (reftex-access-parse-file):
* lisp/textmodes/reftex-index.el (reftex-index-phrases-info):
* lisp/textmodes/ispell.el (ispell-create-debug-buffer):
* lisp/term.el (serial-read-speed):
* lisp/progmodes/verilog-mode.el (verilog-scan-debug):
* lisp/progmodes/idlwave.el (idlwave-find-module):
* lisp/progmodes/compile.el (compilation-revert-buffer):
* lisp/org/org-agenda.el (org-search-view):
* lisp/net/telnet.el (telnet-revert-buffer):
* lisp/net/soap-inspect.el (soap-sample-value-for-xs-simple-type):
* lisp/net/newst-backend.el (newsticker--cache-read):
* lisp/mh-e/mh-seq.el (mh-msg-is-in-seq):
* lisp/mail/smtpmail.el (smtpmail-via-smtp):
* lisp/mail/emacsbug.el (report-emacs-bug):
* lisp/jsonrpc.el (jsonrpc-error):
* lisp/help-fns.el (describe-variable):
* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt):
* lisp/gnus/gnus.el (gnus-group-startup-message):
(gnus-group-startup-message):
* lisp/gnus/gnus-group.el (gnus-group-restart):
* lisp/frame.el (make-frame-on-display):
* lisp/emulation/viper-ex.el (ex-help):
* lisp/calendar/icalendar.el (icalendar--convert-ical-to-diary):
(icalendar--add-diary-entry):
* lisp/calendar/cal-tex.el (cal-tex-end-document):
* lisp/calc/calcalg3.el (math-ninteg-romberg): Don't use `format'
on strings that have no % format directives in them.
2021-09-21 17:52:53 +02:00
Lars Ingebrigtsen
18ad9dfe95 Fix usage of `format' in mm-uu-pgp-encrypted-extract
* lisp/gnus/mm-uu.el (mm-uu-pgp-encrypted-extract): Use
`substring' instead of `format' to ensure a fresh string.
2021-09-21 17:47:55 +02:00
Lars Ingebrigtsen
f07d5f115a Fix usage of format' in article-verify-x-pgp-sig'
* lisp/gnus/gnus-art.el (article-verify-x-pgp-sig): Use
`substring' instead of `format' to ensure a fresh string.
2021-09-21 17:46:10 +02:00
Lars Ingebrigtsen
fb32368efd Fix PGP verification buttons (which would have cached results)
* lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract): `format' was used
here to guarantee a new, fresh string (since it's destructively
modified), but that's apparently not the case any more.  Use
`substring' instead, which is documented to do this.
2021-09-21 17:41:32 +02:00
Lars Ingebrigtsen
18c18c69fc Don't inhibit redisplay in the mml* functions
* lisp/gnus/mml-smime.el (inhibit-redisplay): Removed.
(mml-smime-epg-encrypt):
(mml-smime-epg-verify): Don't inhibit.

* lisp/gnus/mml1991.el (mml1991-epg-sign): Ditto.

* lisp/gnus/mml2015.el (inhibit-redisplay): Removed
(mml2015-epg-decrypt):
(mml2015-epg-clear-decrypt):
(mml2015-epg-verify):
(mml2015-epg-clear-verify):
(mml2015-epg-sign):
(mml2015-epg-encrypt): Don't bind `inhibit-redisplay', because it
makes debugging very odd, and doesn't seem to help much with anything.
2021-09-21 17:41:32 +02:00
Stefan Monnier
3bc7234349 * python.el (python-syntax-stringify): Extend comment about last change 2021-09-21 11:39:24 -04:00
Robert Pluim
2151f5763d Fix emoji-zwj.awk dolist
* admin/unidata/emoji-zwj.awk: Fix typo, the dolist should end
after the first set-char-table-range.
2021-09-21 17:37:50 +02:00
Glenn Morris
98a17f30b8 Make recent dired tests check for external executables
* test/lisp/dired-aux-tests.el (dired-test-bug47058-tar)
(dired-test-bug47058-zip): Add skip conditions.
2021-09-21 08:15:02 -07:00
Dmitry Gutov
e1712bdb35 Rename project-remove-known-project to project-forget-project
* doc/emacs/maintaining.texi (Managing Projects): Ditto.

* etc/NEWS: Update accordingly.

* lisp/progmodes/project.el (project-forget-project):
Rename from 'project-remove-known-project', for consistency with
'project-remember-project' (discussed in bug#50297).
2021-09-21 16:07:52 +03:00
Basil L. Contovounesios
14495e33af Consistently test alist keys with equal in map.el
* etc/NEWS: Announce new default behavior of map-elt and map-delete
on alists.

* lisp/emacs-lisp/map.el: Bump to version 3.2.
(map-elt): Test alist keys with equal by default.  Betray a little
bit more information in the docstring on which functions are used
for which map types.  (Bug#47368)
(map-put): Update docstring accordingly.
(map--plist-delete): Consistently test plist keys with eq.
(map-delete): Consistently test alist keys with equal.

* test/lisp/emacs-lisp/map-tests.el (test-map-elt-testfn): Update
for new map-elt behavior.
(test-map-put!-alist, test-map-delete-alist): New tests.
2021-09-21 13:32:49 +01:00
Robert Pluim
414fcd7e98 Remove the emoji script overrides for U+2xxx codepoints
* admin/unidata/blocks.awk: Remove the overrides for U+261D, U+26F9,
U+270C..U+270D, and U+2764.  They don't belong in the emoji script.
2021-09-21 13:56:34 +02:00
Robert Pluim
3de0f98311 Fix the UK flag sequence composition regexp
* admin/unidata/emoji-zwj.awk: Fix the regexp for UK flags.
Thanks to Mattias Engdegård <mattiase@acm.org> and his magic
regexp checker.
2021-09-21 13:56:34 +02:00
Robert Pluim
0493dd36dc Silence byte-compiler warning for network-stream-tests.el
The api specifically requires a symbol here, so we can't just replace
nowait with nil.

* test/lisp/net/network-stream-tests.el
(open-gnutls-stream-old-api-wait): Add explicit value for nowait
to silence byte-compiler warning due to Bug#47080.
2021-09-21 13:56:34 +02:00
Basil L. Contovounesios
5b962a7ad8 Avoid double argument evaluation in vc-call macro
* lisp/vc/vc-hooks.el (vc-call): Ensure second argument is evaluated
only once (bug#50690).
* etc/NEWS (Change Logs and VC): Announce this change in behavior.
2021-09-21 12:30:58 +01:00
João Távora
0646c68171 Make syntax-ppss more accurate for Python triple quotes (bug#49518)
By putting delimiter syntax on the last character of Python
triple-quoted strings, this makes syntax-ppss be more accurate.

Previously:

    emacs -Q something.py
    type two single quotes
    M-: (nth 3 (syntax-ppss))
    notice how the return value says you're outside a string, correctly
    type another quote
    M-: (nth 3 (syntax-ppss))
    notice how the return value says you're inside a string, correctly
    backspace the quote just entered
    M-: (nth 3 (syntax-ppss))
    notice how the return value says you're inside a string, incorrectly

With this patch the last step is corrected.  This helps things like
electric-pair-mode.  Also, the test
python-syntax-after-python-backspace now passes, again.

* lisp/progmodes/python.el (python-syntax-stringify): Put
delimiter syntax in "inner" of the surrouding triple quotes.

* test/lisp/progmodes/python-tests.el
(python-syntax-after-python-backspace): Passes again.
2021-09-21 10:56:27 +01:00
João Távora
9ad962e118 Expand and improve electric-pair-mode and Python testing (bug#49518)
In python-tests.el, the triple-quote pairing tests are passing
incorrectly, i.e. the auto-pairing functionality they purport to guard
isn't really working for users trying it interactively.  Added a new
failing test, soon to be fixed.

In electric-tests.el, added tests for Python, too.

* test/lisp/electric-tests.el (define-electric-pair-test): Also run
main tests for python-mode.  (pair-some-quotes-skip-others): Test
another slightly different pairing.

* test/lisp/progmodes/python-tests.el
(python-triple-double-quote-pairing): Rename from
python-triple-quote-pairing.
(python-triple-single-quote-pairing): New test.
2021-09-21 10:54:19 +01:00