]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoxref-matches-in-files: Decrease per match and per group overhead
Dmitry Gutov [Thu, 23 Sep 2021 16:08:36 +0000 (19:08 +0300)]
xref-matches-in-files: Decrease per match and per group overhead

* lisp/progmodes/xref.el (xref-search-program-alist):
Add '--null' argument for slightly faster parsing and probably
better behavior with weirder file names.
(xref--alistify): Don't accept TEST argument, use 'assoc' instead
of 'cl-assoc', use a tash table during sorting (bug#50733).

3 years agoFix string-distance for two empty strings
Philip Kaludercic [Thu, 23 Sep 2021 16:12:41 +0000 (18:12 +0200)]
Fix string-distance for two empty strings

* fns.c (Fstring_distance): Avoid using uninitialized memory.
* test/src/fns-tests.el (test-string-distance): Add test cases.

3 years ago* lisp/mouse.el (context-menu-region): Use save-excursion for syntax-ppss.
Juri Linkov [Thu, 23 Sep 2021 16:52:49 +0000 (19:52 +0300)]
* lisp/mouse.el (context-menu-region): Use save-excursion for syntax-ppss.

3 years agoNew thing-at-point target 'list-or-string' used in context-menu-region
Juri Linkov [Thu, 23 Sep 2021 16:32:36 +0000 (19:32 +0300)]
New thing-at-point target 'list-or-string' used in context-menu-region

* lisp/mouse.el (context-menu-region): Rearrange the order to
All>Defun>List>Line>Symbol.  Show title either "List" or "String"
depending on syntax-ppss, then use thing 'list-or-string' (bug#9054).

* lisp/thingatpt.el (thing-at-point-bounds-of-list-at-point): Add optional
args 'escape-strings' and 'no-syntax-crossing' like in 'up-list'.
(list-or-string): New target 'list-or-string'.
(thing-at-point-bounds-of-list-or-string-at-point): New function.

3 years ago* lisp/outline.el (outline-minor-mode-cycle-filter): New defcustom (bug#50679)
Juri Linkov [Thu, 23 Sep 2021 16:14:56 +0000 (19:14 +0300)]
* lisp/outline.el (outline-minor-mode-cycle-filter): New defcustom (bug#50679)

(outline-minor-mode-cycle--bind): New helper function.
(outline-minor-mode-cycle-map): Rename from outline-mode-cycle-map.
(outline-mode-map): Revert part of 6458e16f33 to disassociate
keymaps outline-mode-map and outline-minor-mode-cycle-map.
(outline-font-lock-keywords, outline-minor-mode-highlight-buffer):
Use outline-minor-mode-cycle-map instead of outline-mode-cycle-map.

* lisp/help.el (describe-bindings): Rename outline-mode-cycle-map
to outline-minor-mode-cycle-map.

3 years ago; * lisp/progmodes/verilog-mode.el: Untabify doc-strings.
Wilson Snyder [Thu, 23 Sep 2021 15:43:29 +0000 (11:43 -0400)]
; * lisp/progmodes/verilog-mode.el: Untabify doc-strings.

3 years ago* test/infra/Dockerfile.emba: Do not run 'make -j4 bootstrap'.
Michael Albinus [Thu, 23 Sep 2021 14:04:35 +0000 (16:04 +0200)]
* test/infra/Dockerfile.emba: Do not run 'make -j4 bootstrap'.

3 years ago; * etc/NEWS: Fix typos and punctuation in recently added entries.
Eli Zaretskii [Thu, 23 Sep 2021 13:22:31 +0000 (16:22 +0300)]
; * etc/NEWS: Fix typos and punctuation in recently added entries.

3 years agoFix Tramp's make-process on macOS
Michael Albinus [Thu, 23 Sep 2021 12:29:28 +0000 (14:29 +0200)]
Fix Tramp's make-process on macOS

* lisp/net/tramp-sh.el (tramp-get-remote-mknod-or-mkfifo): New defun.
(tramp-sh-handle-make-process): Use it.  (Bug#50748)

3 years ago* lisp/net/tramp-cmds.el (tramp-cleanup-connection): Remove trace buffer.
Michael Albinus [Thu, 23 Sep 2021 12:28:42 +0000 (14:28 +0200)]
* lisp/net/tramp-cmds.el (tramp-cleanup-connection): Remove trace buffer.

3 years agoAdd aggregate project discovery and maintenance functions
Philip Kaludercic [Tue, 31 Aug 2021 12:12:13 +0000 (14:12 +0200)]
Add aggregate project discovery and maintenance functions

* project.el (project-remember-project): Add optional no-write argument
(project-remember-projects-under): Add command
(project-forget-zombie-projects): Add command
(project-forget-projects-under): Add command
* etc/NEWS: Document new commands

3 years agoFix vc-annotate-show-log-revision-at-line
Dmitry Gutov [Thu, 23 Sep 2021 11:53:31 +0000 (14:53 +0300)]
Fix vc-annotate-show-log-revision-at-line

* lisp/vc/vc-annotate.el (vc-annotate-show-log-revision-at-line):
Stop from being affected by 'vc-git-print-log-follow'.

* lisp/vc/vc-git.el (vc-git-print-log-follow):
Mention caveats in a comment.

3 years agoverilog-mode.el: Backout part of recent change showing wrong comment
Wilson Snyder [Thu, 23 Sep 2021 11:36:02 +0000 (07:36 -0400)]
verilog-mode.el: Backout part of recent change showing wrong comment

3 years agoClarify which-function tooltip text
Stefan Kangas [Thu, 23 Sep 2021 11:20:55 +0000 (13:20 +0200)]
Clarify which-function tooltip text

* lisp/progmodes/which-func.el (which-func-format): Clarify tooltip
text.

3 years agoImprove NEWS entry for 'ffap-file-name-with-spaces'
Robert Pluim [Thu, 23 Sep 2021 09:06:57 +0000 (11:06 +0200)]
Improve NEWS entry for 'ffap-file-name-with-spaces'

* etc/NEWS: Mention default value of 'ffap-file-name-with-spaces'.

3 years ago;* lisp/whitespace.el (whitespace-display-window): Add doc-string.
Martin Rudalics [Thu, 23 Sep 2021 07:41:32 +0000 (09:41 +0200)]
;* lisp/whitespace.el (whitespace-display-window): Add doc-string.

3 years ago; * lisp/subr.el (match-string): Clarify doc string.
Eli Zaretskii [Thu, 23 Sep 2021 07:36:59 +0000 (10:36 +0300)]
; * lisp/subr.el (match-string): Clarify doc string.

3 years agoClarify align-regexp doc string
Lars Ingebrigtsen [Wed, 22 Sep 2021 22:18:17 +0000 (00:18 +0200)]
Clarify align-regexp doc string

* lisp/align.el (align-regexp): Clarify what REGEXP has to
contain, and which bits are added automatically interactively
(bug#33541).

3 years agoAdd section to refcard explaining our keybinding notation
Stefan Kangas [Tue, 21 Sep 2021 20:07:05 +0000 (22:07 +0200)]
Add section to refcard explaining our keybinding notation

* etc/refcards/refcard.tex (Starting Emacs): Delete section.
(Key Binding Notation): New section.  (Bug#41403)

3 years agoUse lexical-binding in emoji-zwj.el
Stefan Kangas [Wed, 22 Sep 2021 21:48:36 +0000 (23:48 +0200)]
Use lexical-binding in emoji-zwj.el

* admin/unidata/emoji-zwj.awk: Add lexical-binding cookie to
generated fie emoji-zwj.el.

3 years agoExpand the `match-string' doc string
Lars Ingebrigtsen [Wed, 22 Sep 2021 22:09:47 +0000 (00:09 +0200)]
Expand the `match-string' doc string

* lisp/subr.el (match-string): Mention some caveats (bug#34214).

3 years agoImprove error messaging from byte-compiling dotted lists
Lars Ingebrigtsen [Wed, 22 Sep 2021 21:46:59 +0000 (23:46 +0200)]
Improve error messaging from byte-compiling dotted lists

* lisp/emacs-lisp/cconv.el (cconv-analyze-form): Improve error
messaging when byte-compiling dotted lists (bug#35186).

Test case -- byte-compile the following file:

;;;  -*- lexical-binding: t -*-

(defun foo ()
  (+ 1 2)
  (a . b))

3 years ago; * etc/NEWS: Fix typo in last commit.
Stefan Kangas [Wed, 22 Sep 2021 21:43:49 +0000 (23:43 +0200)]
; * etc/NEWS: Fix typo in last commit.

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