]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoMove 'kdb-macro-redisplay' key binding
Lars Ingebrigtsen [Wed, 22 Sep 2021 19:56:31 +0000 (21:56 +0200)]
Move 'kdb-macro-redisplay' key binding

* doc/emacs/kmacro.texi (Basic Keyboard Macro): Adjust.

* lisp/kmacro.el (kmacro-keymap): Move 'kdb-macro-redisplay' to
`C-x C-k d' since upper-case letters are reserved for users (bug#50727).

3 years ago; More minor stylistic fixes found by checkdoc
Stefan Kangas [Wed, 22 Sep 2021 18:26:40 +0000 (20:26 +0200)]
; More minor stylistic fixes found by checkdoc

3 years agoPut './' in the project directory completions
Dmitry Gutov [Wed, 22 Sep 2021 18:07:49 +0000 (21:07 +0300)]
Put './' in the project directory completions

* lisp/progmodes/project.el (project--read-file-cpd-relative):
Put './' in the completions set when cpd was in the original
(bug#50732).

3 years ago; Fix recently added documentation
Eli Zaretskii [Wed, 22 Sep 2021 17:45:47 +0000 (20:45 +0300)]
; Fix recently added documentation

* lisp/thingatpt.el (bounds-of-thing-at-mouse, thing-at-mouse):
Improve and clarify the doc strings.

3 years agoMany improvements for Context Menus (bug#9054)
Juri Linkov [Wed, 22 Sep 2021 17:08:45 +0000 (20:08 +0300)]
Many improvements for Context Menus (bug#9054)

* lisp/menu-bar.el (menu-bar-showhide-menu): Add "Context Menus".

* lisp/mouse.el (context-menu-undo): Add "in Region" to the titles
when the region is active.
(context-menu-region): Use 'mouse-yank-from-menu' in menu items
created from 'yank-menu' for submenu "Paste from Kill Menu".
(context-menu-region): Add submenu "Select" with things to mark.
(mark-thing-at-mouse, mouse-yank-from-menu): New functions.

* lisp/thingatpt.el (bounds-of-thing-at-mouse): New function.

* lisp/progmodes/elisp-mode.el (elisp-context-menu):
* lisp/progmodes/prog-mode.el (prog-context-menu):
Use full symbol/identifier names in :help strings.

Suggested by Martin Rudalics <rudalics@gmx.at>

3 years agoFix build with native compilation but without zlib
Eli Zaretskii [Wed, 22 Sep 2021 16:13:49 +0000 (19:13 +0300)]
Fix build with native compilation but without zlib

* src/comp.c (comp_hash_source_file): Condition code that requires
zlib with HAVE_ZLIB.

* etc/NEWS: Explain that '--without-compress-install' is necessary
when configuring with native compilation but without zlib.

3 years agoverilog-mode.el: Enable lexical binding, and merge from upstream.
Wilson Snyder [Wed, 22 Sep 2021 14:19:57 +0000 (10:19 -0400)]
verilog-mode.el: Enable lexical binding, and merge from upstream.

* lisp/progmodes/verilog-mode.el: Enable lexical binding.  Templates that
  used the never-documented `inst' or `submod' variables may need to change
  to use vl-... variables.
  (verilog-at-constraint-p): Fix indentation on double curly brackets
  (#1719) (#1744).  Reported by Nikolay Puzanov.

3 years agoDon't rely on lexical-binding being nil in tests
Mattias Engdegård [Wed, 22 Sep 2021 13:40:29 +0000 (15:40 +0200)]
Don't rely on lexical-binding being nil in tests

* test/lisp/button-tests.el (button--help-echo-form):
* test/lisp/files-tests.el (files-tests-permanent-local-variables):
Remove assumption that `with-temp-buffer` creates a buffer
where `lexical-binding` is nil.

3 years ago; * .gitignore: Add native-lisp/.
Eli Zaretskii [Wed, 22 Sep 2021 13:03:39 +0000 (16:03 +0300)]
; * .gitignore: Add native-lisp/.

3 years agoDoc string fixes in comp.e
Eli Zaretskii [Wed, 22 Sep 2021 13:01:30 +0000 (16:01 +0300)]
Doc string fixes in comp.e

* src/comp.c (Fcomp_el_to_eln_filename)
(Fcomp_el_to_eln_rel_filename): Doc fix.

3 years agoUpdate comments warning about GC-resistant C programming
Eli Zaretskii [Wed, 22 Sep 2021 07:07:25 +0000 (10:07 +0300)]
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>

3 years agoNative compilation on macOS: libgccjit not found
Daniel Fleischer [Sat, 18 Sep 2021 21:17:49 +0000 (00:17 +0300)]
Native compilation on macOS: libgccjit not found

* etc/PROBLEMS: Describe the problem with libgccjit setup on
macOS.  (Bug#50411)

3 years ago; * doc/misc/mh-e.texi (Scan Line Formats): Fix typo, an extra "the".
Stephen Gildea [Wed, 22 Sep 2021 05:28:29 +0000 (22:28 -0700)]
; * doc/misc/mh-e.texi (Scan Line Formats): Fix typo, an extra "the".

3 years agoSpeed up `replace-match' slightly
Lars Ingebrigtsen [Wed, 22 Sep 2021 05:22:17 +0000 (07:22 +0200)]
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.

3 years agoMigrate MH-E functional tests from SourceForge
Stephen Gildea [Wed, 22 Sep 2021 05:01:03 +0000 (22:01 -0700)]
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.

3 years agoChange how thread-first/thread-last indent the first argument
Lars Ingebrigtsen [Wed, 22 Sep 2021 03:57:48 +0000 (05:57 +0200)]
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.

3 years agoMake global-auto-revert-non-file-buffers work better
Lars Ingebrigtsen [Tue, 21 Sep 2021 21:09:34 +0000 (23:09 +0200)]
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'.

3 years ago(etc-authors-mode--hide-local-variables): Obfuscate more efficiently
Stefan Monnier [Tue, 21 Sep 2021 20:53:25 +0000 (16:53 -0400)]
(etc-authors-mode--hide-local-variables): Obfuscate more efficiently

3 years ago; * etc/NEWS: Improve wording of an item.
Stefan Kangas [Tue, 21 Sep 2021 20:17:14 +0000 (22:17 +0200)]
; * etc/NEWS: Improve wording of an item.

* lisp/emacs-lisp/hierarchy.el: Improve wording of package description.

3 years agoFix warning in etc-authors-mode.el
Stefan Kangas [Tue, 21 Sep 2021 20:09:09 +0000 (22:09 +0200)]
Fix warning in etc-authors-mode.el

* lisp/textmodes/etc-authors-mode.el
(etc-authors-mode--hide-local-variables): Avoid warning.

3 years agoDon't quote nil and t in doc strings and comments
Lars Ingebrigtsen [Tue, 21 Sep 2021 20:11:43 +0000 (22:11 +0200)]
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.

3 years agoDocument isearch-wrap-pause
Lars Ingebrigtsen [Tue, 21 Sep 2021 20:01:28 +0000 (22:01 +0200)]
Document isearch-wrap-pause

* doc/emacs/search.texi (Repeat Isearch): Document
`isearch-wrap-pause'.

3 years agoNew major mode with font-locking for etc/AUTHORS
Stefan Kangas [Sun, 19 Sep 2021 13:46:44 +0000 (15:46 +0200)]
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.

3 years ago; * doc/lispref/windows.texi (Cyclic Window Ordering): Fix typo.
Stefan Kangas [Tue, 21 Sep 2021 19:07:37 +0000 (21:07 +0200)]
; * doc/lispref/windows.texi (Cyclic Window Ordering): Fix typo.

3 years agoImprove recently added documentation
Eli Zaretskii [Tue, 21 Sep 2021 18:51:38 +0000 (21:51 +0300)]
Improve recently added documentation

* doc/lispref/lists.texi (Building Lists):
* lisp/subr.el (ensure-list): Avoid passive tense in documenting
'ensure-list'.

3 years agoAdd new function `ensure-list'
Lars Ingebrigtsen [Tue, 21 Sep 2021 18:30:57 +0000 (20:30 +0200)]
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.

3 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Tue, 21 Sep 2021 18:27:48 +0000 (20:27 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

3 years agoFix tramp-compat-temporary-file-directory implementation
Michael Albinus [Tue, 21 Sep 2021 18:26:59 +0000 (20:26 +0200)]
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.

3 years ago; * lisp/emacs-lisp/checkdoc.el: Fix warnings.
Stefan Kangas [Tue, 21 Sep 2021 18:17:46 +0000 (20:17 +0200)]
; * lisp/emacs-lisp/checkdoc.el: Fix warnings.

3 years agoMinor clean-up and fixes in checkdoc
Stefan Kangas [Tue, 21 Sep 2021 17:23:17 +0000 (19:23 +0200)]
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.

3 years agocheckdoc: New defvars to disable some warnings
Stefan Kangas [Tue, 21 Sep 2021 17:20:48 +0000 (19:20 +0200)]
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.

3 years agoAdd new command 'checkdoc-dired'
Stefan Kangas [Tue, 21 Sep 2021 17:18:50 +0000 (19:18 +0200)]
Add new command 'checkdoc-dired'

* lisp/emacs-lisp/checkdoc.el (checkdoc-dired): New command.
(checkdoc--dired-skip-lines-re): New constant.

3 years agoMore NEWS tagging
Lars Ingebrigtsen [Tue, 21 Sep 2021 17:55:11 +0000 (19:55 +0200)]
More NEWS tagging

3 years agoDo some NEWS tagging
Lars Ingebrigtsen [Tue, 21 Sep 2021 17:52:23 +0000 (19:52 +0200)]
Do some NEWS tagging

3 years agoDocument `window-bump-use-time'
Lars Ingebrigtsen [Tue, 21 Sep 2021 17:47:57 +0000 (19:47 +0200)]
Document `window-bump-use-time'

* doc/lispref/windows.texi (Cyclic Window Ordering): Mention
window-bump-use-time.

3 years ago* lisp/tab-bar.el: Preserve all existing tab parameters when switching tabs.
Juri Linkov [Tue, 21 Sep 2021 17:45:38 +0000 (20:45 +0300)]
* 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

3 years agoDocument completions-detailed
Lars Ingebrigtsen [Tue, 21 Sep 2021 17:43:03 +0000 (19:43 +0200)]
Document completions-detailed

* doc/emacs/help.texi (Name Help): Document completions-detailed.
* lisp/minibuffer.el (completions-detailed): Give an example in
the doc string.

3 years ago; * etc/NEWS: Refile recent addition (bug#50690).
Basil L. Contovounesios [Tue, 21 Sep 2021 17:14:11 +0000 (18:14 +0100)]
; * etc/NEWS: Refile recent addition (bug#50690).

3 years agoMake dired-do-compress-to work in inserted subdirectories
Michalis V [Tue, 21 Sep 2021 17:13:35 +0000 (19:13 +0200)]
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).

3 years agoRevert "Make dired-compress-file query for a directory to uncompress to"
Lars Ingebrigtsen [Tue, 21 Sep 2021 17:05:15 +0000 (19:05 +0200)]
Revert "Make dired-compress-file query for a directory to uncompress to"

This reverts commit 7e395a59b025c7f4be49294ad806addf5b1a25c9.

The behaviour change isn't good for the majority of tar files.

3 years agoRevert "Make recent dired tests check for external executables"
Lars Ingebrigtsen [Tue, 21 Sep 2021 17:04:46 +0000 (19:04 +0200)]
Revert "Make recent dired tests check for external executables"

This reverts commit 98a17f30b8314e40a1edefac3d542d3e105c7bd6.

Reverting parent commit.

3 years agoRestore some of the previous behaviour in whitespace-display-window
Lars Ingebrigtsen [Tue, 21 Sep 2021 16:54:41 +0000 (18:54 +0200)]
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>.

3 years ago; Stylistic docfixes in htmlfontify.el found by checkdoc
Stefan Kangas [Tue, 21 Sep 2021 16:12:07 +0000 (18:12 +0200)]
; Stylistic docfixes in htmlfontify.el found by checkdoc

3 years agoDon't use `format' on strings without % format directives
Lars Ingebrigtsen [Tue, 21 Sep 2021 15:52:53 +0000 (17:52 +0200)]
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.

3 years agoFix usage of `format' in mm-uu-pgp-encrypted-extract
Lars Ingebrigtsen [Tue, 21 Sep 2021 15:47:55 +0000 (17:47 +0200)]
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.

3 years agoFix usage of `format' in `article-verify-x-pgp-sig'
Lars Ingebrigtsen [Tue, 21 Sep 2021 15:46:10 +0000 (17:46 +0200)]
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.

3 years agoFix PGP verification buttons (which would have cached results)
Lars Ingebrigtsen [Tue, 21 Sep 2021 15:41:26 +0000 (17:41 +0200)]
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.

3 years agoDon't inhibit redisplay in the mml* functions
Lars Ingebrigtsen [Tue, 21 Sep 2021 15:39:02 +0000 (17:39 +0200)]
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.

3 years ago* python.el (python-syntax-stringify): Extend comment about last change
Stefan Monnier [Tue, 21 Sep 2021 15:39:24 +0000 (11:39 -0400)]
* python.el (python-syntax-stringify): Extend comment about last change

3 years agoFix emoji-zwj.awk dolist
Robert Pluim [Tue, 21 Sep 2021 15:32:20 +0000 (17:32 +0200)]
Fix emoji-zwj.awk dolist

* admin/unidata/emoji-zwj.awk: Fix typo, the dolist should end
after the first set-char-table-range.

3 years agoMake recent dired tests check for external executables
Glenn Morris [Tue, 21 Sep 2021 15:14:01 +0000 (08:14 -0700)]
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.

3 years agoRename project-remove-known-project to project-forget-project
Dmitry Gutov [Tue, 21 Sep 2021 13:07:39 +0000 (16:07 +0300)]
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).

3 years agoConsistently test alist keys with equal in map.el
Basil L. Contovounesios [Tue, 14 Sep 2021 23:17:26 +0000 (00:17 +0100)]
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.

3 years agoRemove the emoji script overrides for U+2xxx codepoints
Robert Pluim [Tue, 21 Sep 2021 11:50:41 +0000 (13:50 +0200)]
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.

3 years agoFix the UK flag sequence composition regexp
Robert Pluim [Tue, 21 Sep 2021 11:50:10 +0000 (13:50 +0200)]
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.

3 years agoSilence byte-compiler warning for network-stream-tests.el
Robert Pluim [Tue, 21 Sep 2021 08:20:10 +0000 (10:20 +0200)]
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.

3 years agoAvoid double argument evaluation in vc-call macro
Basil L. Contovounesios [Sun, 19 Sep 2021 21:39:20 +0000 (22:39 +0100)]
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.

3 years agoMake syntax-ppss more accurate for Python triple quotes (bug#49518)
João Távora [Sun, 19 Sep 2021 10:42:20 +0000 (11:42 +0100)]
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.

3 years agoExpand and improve electric-pair-mode and Python testing (bug#49518)
João Távora [Sun, 19 Sep 2021 16:08:41 +0000 (17:08 +0100)]
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.

3 years agoAdd docstring for 'electric-pair-p-s-i-f' and minor refactor
João Távora [Sun, 19 Sep 2021 15:16:31 +0000 (16:16 +0100)]
Add docstring for 'electric-pair-p-s-i-f' and minor refactor

Extract the "open newline between pairs behaviour" into its own
function, electric-pair-open-newline-between-pairs-psif.

* lisp/elec-pair.el (electric-pair-post-self-insert-function): Add
docstring.
(electric-pair-open-newline-between-pairs-psif): New function.
(electric-pair-mode): Add/remove electric-pair-open-newline-between-pairs-psif

3 years agoSpeed up test/lisp/electric-tests.el when run interactively
João Távora [Sun, 19 Sep 2021 09:25:36 +0000 (10:25 +0100)]
Speed up test/lisp/electric-tests.el when run interactively

'blink-paren-function' and its timers could sometimes interfere with
the tests and slow them down significantly.

* test/lisp/electric-tests.el (call-with-saved-electric-modes):
Bind blink-paren-function to nil.

3 years ago; Minor checkdoc fixes in url/*.el
Stefan Kangas [Tue, 21 Sep 2021 09:14:14 +0000 (11:14 +0200)]
; Minor checkdoc fixes in url/*.el

3 years agoFix whitespace-report window creation
Lars Ingebrigtsen [Tue, 21 Sep 2021 05:29:55 +0000 (07:29 +0200)]
Fix whitespace-report window creation

* lisp/whitespace.el (whitespace-display-window): Avoid creating
many buffers if called many times (bug#50716).

3 years agoUse `special-mode' for whitespace-report
Lars Ingebrigtsen [Tue, 21 Sep 2021 05:23:09 +0000 (07:23 +0200)]
Use `special-mode' for whitespace-report

* lisp/whitespace.el (whitespace-report-region): Use
`special-mode' instead of `fundamental-mode' (bug#50715).

3 years agoInhibit warning in mm-inline-wash-with-file from previous change
Lars Ingebrigtsen [Tue, 21 Sep 2021 05:16:37 +0000 (07:16 +0200)]
Inhibit warning in mm-inline-wash-with-file from previous change

* lisp/gnus/mm-view.el (mm-inline-wash-with-file): Inhibit warning
about previous lexical fixup.

3 years agoFix problems with non-ASCII non-encoded PGP names
Lars Ingebrigtsen [Tue, 21 Sep 2021 05:12:35 +0000 (07:12 +0200)]
Fix problems with non-ASCII non-encoded PGP names

* lisp/epg.el (epg-signature-to-string): User IDs may be
non-encoded, non-ASCII (bug#50706).

3 years agoFix typo in tex--prettify-symbols-alist
Lars Ingebrigtsen [Tue, 21 Sep 2021 04:48:44 +0000 (06:48 +0200)]
Fix typo in tex--prettify-symbols-alist

* lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Fix
varsigma typo (bug#50710).

3 years agoFix lexical fallout in mm-inline-wash-with-file
Lars Ingebrigtsen [Tue, 21 Sep 2021 04:43:16 +0000 (06:43 +0200)]
Fix lexical fallout in mm-inline-wash-with-file

* lisp/gnus/mm-view.el (mm-inline-wash-with-file): This is only
called from the `links' handler, and it passes in `file' expecting
that to be dynamically bound.  Which is a very, very confusing
interface, but make that work again, anyway.

3 years agoMake dired-compress-file query for a directory to uncompress to
Michalis V [Tue, 21 Sep 2021 04:30:58 +0000 (06:30 +0200)]
Make dired-compress-file query for a directory to uncompress to

* lisp/dired-aux.el (dired-compress-file-suffixes): Specify the
directory in the tar targets.
(dired-uncompress-file): New function (bug#47058).  This asks what
directory to uncompress to.
(dired-compress-file): Use it.

3 years agoClear netrc cache in auth-source test
Lars Ingebrigtsen [Tue, 21 Sep 2021 03:59:11 +0000 (05:59 +0200)]
Clear netrc cache in auth-source test

* test/lisp/auth-source-tests.el
(auth-source-test-netrc-create-secret): Clear the netrc cache, too.

3 years agoOnly search netrc in the netrc tests
Lars Ingebrigtsen [Tue, 21 Sep 2021 03:28:40 +0000 (05:28 +0200)]
Only search netrc in the netrc tests

* test/lisp/auth-source-tests.el
(auth-source-test-netrc-create-secret): Only search netrc.

3 years agoRemove some last calls to Gnus group name encoding
Eric Abrahamsen [Tue, 21 Sep 2021 01:13:10 +0000 (18:13 -0700)]
Remove some last calls to Gnus group name encoding

This should have been part of cb12a84f2c

* lisp/gnus/gnus-msg.el (gnus-summary-resend-message-insert-gcc,
gnus-inews-do-gcc): Don't encode group names.

3 years ago; Mention it in NEWS too
Dmitry Gutov [Tue, 21 Sep 2021 01:01:21 +0000 (04:01 +0300)]
; Mention it in NEWS too

3 years agoNew command: project-find-dir
Dmitry Gutov [Tue, 21 Sep 2021 00:34:00 +0000 (03:34 +0300)]
New command: project-find-dir

* doc/emacs/maintaining.texi (Project File Commands):
Mention the new command and update the bindings information.

* lisp/progmodes/project.el (project-find-dir):
New command (bug#43153).
(project-prefix-map): Use 'd' as its binding.
Move 'project-dired' to 'D'.
(project-switch-commands):
Replace 'project-dired' with 'project-find-dir'.

3 years agoSupport for Unicode emoji sequences
Robert Pluim [Mon, 20 Sep 2021 10:41:15 +0000 (12:41 +0200)]
Support for Unicode emoji sequences

This covers both sequences using Zero-Width-Joiner codepoints and
those without. Bug#39799, I hope.

* .gitignore: Add emoji-zwj.el
* admin/notes/unicode: Add emoji-zwj-sequences.txt and
emoji-sequences.txt references.  Describe how to test after updating
to a newer Unicode version.
* admin/unidata/Makefile.in (all): add emoji-zwj.el as a dependency.
(emoji-zwj.el): Add target plus rules for building.
(gen-clean): Add emoji-zwj.el.
* admin/unidata/README: Add emoji-zwj-sequences.txt and
emoji-sequences.txt references.
* admin/unidata/blocks.awk: Force emoji script to be used for certain
codepoints that are used by the Unicode sequences.
* admin/unidata/emoji-sequences.txt: New file.
* admin/unidata/emoji-zwj-sequences.txt: New file.
* admin/unidata/emoji-zwj.awk: New file.  Derives
composition-function-table rules from emoji-zwj-sequences.txt, plus
hardcodes some derived manually from emoji-sequences.txt.
* etc/NEWS: Announce change.
* lisp/international/characters.el: Load the generated emoji-zwj.el
* src/Makefile.in (emoji-zwj): New target.
(temacs): Add emoji-zwj as a dependency.

3 years agoNo longer raise error when http authentication failed
Jonas Bernoulli [Thu, 16 Sep 2021 18:24:30 +0000 (20:24 +0200)]
No longer raise error when http authentication failed

* lisp/url/url-http.el (url-http-handle-authentication): Return t
instead of raising an error, instructing the caller to invoke the
request specific error handler (bug#50511).

3 years ago; admin/unidata/README: remove mistaken addition of local file
Glenn Morris [Mon, 20 Sep 2021 17:47:02 +0000 (10:47 -0700)]
; admin/unidata/README: remove mistaken addition of local file

3 years agoAdd a note about testing out-of-tree builds
Robert Pluim [Mon, 20 Sep 2021 15:18:40 +0000 (17:18 +0200)]
Add a note about testing out-of-tree builds

* CONTRIBUTE: Ask contributors to test out-of-tree builds when
making build system changes.

3 years agoBase emoji script membership on Emoji_Presentation
Robert Pluim [Sun, 19 Sep 2021 19:07:36 +0000 (21:07 +0200)]
Base emoji script membership on Emoji_Presentation

The Emoji property describes which codepoints can be displayed as
emoji, but Emoji_Presentation governs which are displayed as emoji by
default.

* admin/notes/unicode: Adjust check-emoji-coverage to look in the
Emoji_Presentation sections of emoji-data.txt
* admin/unidata/blocks.awk: Assign emoji script using the
Emoji_Presentation section.

3 years ago; admin/unidata/README: sort entries
Glenn Morris [Mon, 20 Sep 2021 15:43:10 +0000 (08:43 -0700)]
; admin/unidata/README: sort entries

3 years ago; admin/unidata/README: update file dates
Glenn Morris [Mon, 20 Sep 2021 15:41:56 +0000 (08:41 -0700)]
; admin/unidata/README: update file dates

I'm not sure how useful it is to keep this information in the README.
Also, add missing EastAsianWidth.txt.

3 years agoFix VC repo URL detection in bug-reference-mode
Basil L. Contovounesios [Sun, 19 Sep 2021 20:13:17 +0000 (21:13 +0100)]
Fix VC repo URL detection in bug-reference-mode

* lisp/progmodes/bug-reference.el (bug-reference-try-setup-from-vc):
Pass file or directory name in question as the first argument to the
backend's repository-url implementation (bug#50689).  Use when-let
and seq-some to flatten nested conditionals.

3 years agoFix assertion violation with zero-width :box attributes
Eli Zaretskii [Mon, 20 Sep 2021 12:22:07 +0000 (15:22 +0300)]
Fix assertion violation with zero-width :box attributes

* src/xfaces.c (merge_face_ref): Don't allow :box attribute with a
zero value.  (Bug#50699)

3 years agoRemove superfluous skip in auth-source-tests.el
Michael Albinus [Mon, 20 Sep 2021 08:21:30 +0000 (10:21 +0200)]
Remove superfluous skip in auth-source-tests.el

* test/lisp/auth-source-tests.el
(auth-source-test-netrc-create-secret): Remove superfluous skip.

3 years agoDump with `lexical-binding` bound to nil
Mattias Engdegård [Sun, 19 Sep 2021 18:07:11 +0000 (20:07 +0200)]
Dump with `lexical-binding` bound to nil

* lisp/loadup.el (dump-mode): Temporarily bind `lexical-binding` to
nil while dumping.  Otherwise, it will be t in Emacs by default
and that is not our intention (yet).

3 years ago; * src/keyboard.c (Frecursive_edit): Minor fixes of the doc string.
Eli Zaretskii [Mon, 20 Sep 2021 07:50:53 +0000 (10:50 +0300)]
; * src/keyboard.c (Frecursive_edit): Minor fixes of the doc string.

3 years ago* lisp/tab-bar.el (tab-bar-new-tab): Add optional arg 'from-number'.
Juri Linkov [Mon, 20 Sep 2021 07:20:32 +0000 (10:20 +0300)]
* lisp/tab-bar.el (tab-bar-new-tab): Add optional arg 'from-number'.

(tab-bar-mouse-context-menu): Use tab-number as an arg for
'tab-bar-duplicate-tab'.
(tab-bar-duplicate-tab): Add optional arg 'from-number'.

3 years agoAdd support for url-retrieve-synchronously to eww-retrieve-command (bug#50680)
Juri Linkov [Mon, 20 Sep 2021 07:16:09 +0000 (10:16 +0300)]
Add support for url-retrieve-synchronously to eww-retrieve-command (bug#50680)

* doc/misc/eww.texi (Advanced): Mention url-retrieve-synchronously
for eww-retrieve-command.

* lisp/net/eww.el (eww-retrieve-command): Add choice 'sync' for
url-retrieve-synchronously.
(eww-retrieve): Use value 'sync' for url-retrieve-synchronously.
(eww-isearch-next-buffer): Let-bind eww-retrieve-command to 'sync'.

3 years agoImprove documentation of exiting recursive editing
Miha Rihtaršič [Mon, 20 Sep 2021 06:00:08 +0000 (08:00 +0200)]
Improve documentation of exiting recursive editing

* doc/lispref/commands.texi (Recursive Editing): Mention what happens
when throwing a string or any other value to 'exit.
* src/keyboard.c (Frecursive_edit): Document throwing a function
to 'exit (bug#49700).

3 years agoRefactor minibuffer aborting
Miha Rihtaršič [Mon, 20 Sep 2021 05:59:29 +0000 (07:59 +0200)]
Refactor minibuffer aborting

* lisp/minibuffer.el (minibuffer-quit-recursive-edit): New optional
argument to specify how many levels of recursion to quit.

* src/eval.c (internal_catch): Remove special handling of 'exit
tag (bug#49700).
* src/minibuf.c (Fabort_minibuffers): Use
minibuffer-quit-recursive-edit to quit multiple levels of minibuffer
recursion.

3 years agoFix dolist-with-progress-reporter behaviour
Philip Kaludercic [Mon, 12 Jul 2021 15:26:43 +0000 (17:26 +0200)]
Fix dolist-with-progress-reporter behaviour

* subr.el (dolist-with-progress-reporter): Use the length of list
  argument as maximal value the reporter with reach

3 years agoRevert "Flag checkdoc-symbol-words as a :safe variable"
Stefan Kangas [Sun, 19 Sep 2021 20:28:46 +0000 (22:28 +0200)]
Revert "Flag checkdoc-symbol-words as a :safe variable"

There was no need for this change, as this variable was already marked
as :safe.

This reverts commit 222a7a1a8afdf6921e5981133c605c2d695e9281.

3 years agoAvoid segfaults due to 'bug-reference-mode'
Eli Zaretskii [Sun, 19 Sep 2021 18:39:18 +0000 (21:39 +0300)]
Avoid segfaults due to 'bug-reference-mode'

* src/xdisp.c (handle_fontified_prop): Set the frame's
inhibit_clear_image_cache flag around calls to
'fontification-functions', to avoid Lisp triggering the clearing
of image and/or face caches behind redisplay's back.  (Big#50571)

3 years agoFix blocks.awk wrt to Emoji characters
Eli Zaretskii [Sun, 19 Sep 2021 18:33:02 +0000 (21:33 +0300)]
Fix blocks.awk wrt to Emoji characters

* admin/unidata/blocks.awk: Fix emoji-data.txt processing for
older Awks.

3 years agoDo not save empty passwords in auth-source-search
Michael Albinus [Sun, 19 Sep 2021 17:59:05 +0000 (19:59 +0200)]
Do not save empty passwords in auth-source-search

* lisp/auth-source.el (auth-source-netrc-create)
(auth-source-secrets-create): Set :save-function only for non
empty passwords.

* lisp/net/tramp.el (tramp-read-passwd): Don't save empty passwords.

* test/lisp/auth-source-tests.el
(auth-source-test-secrets-create-secret): Adapt test.
(auth-source-test-netrc-create-secret): New test.

3 years agoBe explicit about missing sections in eshell manual
Stefan Kangas [Sun, 19 Sep 2021 16:33:35 +0000 (18:33 +0200)]
Be explicit about missing sections in eshell manual

* doc/misc/eshell.texi (Writing a module, Module testing)
(Directory handling, Key rebinding, Smart scrolling)
(Terminal emulation): Explicitly say that these sections remain to
be written.  (Bug#49306)

3 years ago* lisp/progmodes/elisp-mode.el (elisp-context-menu): Improve menu items.
Juri Linkov [Sun, 19 Sep 2021 16:21:27 +0000 (19:21 +0300)]
* lisp/progmodes/elisp-mode.el (elisp-context-menu): Improve menu items.

3 years agoFix build with native compilation on Cygwin
Ken Brown [Sat, 18 Sep 2021 18:03:41 +0000 (14:03 -0400)]
Fix build with native compilation on Cygwin

* src/Makefile.in (emacs$(EXEEXT)) [CYGWIN]: Rebase the *.eln
files after they are all created, to avoid fork problems later
in the build.  (Bug#50666)

3 years ago; Fix typo in package.el doc string
王滋涵 Zephyr Wang [Sun, 19 Sep 2021 15:39:26 +0000 (17:39 +0200)]
; Fix typo in package.el doc string

* lisp/emacs-lisp/package.el (package-archive-column-width): Fix
copy-paste in doc string (bug#50678).

Copyright-paperwork-exempt: yes

3 years agoClarify docstring of pcase-exhaustive
Stefan Kangas [Sun, 19 Sep 2021 15:25:39 +0000 (17:25 +0200)]
Clarify docstring of pcase-exhaustive

* lisp/emacs-lisp/pcase.el (pcase-exhaustive): Clarify docstring
by contrasting with pcase.  (Bug#44166)