Phil Sainty [Thu, 9 Sep 2021 07:53:25 +0000 (19:53 +1200)]
; * lisp/so-long.el (so-long-mode): Use `so-long-mode-line-active' face
Phil Sainty [Sat, 18 Sep 2021 02:16:13 +0000 (14:16 +1200)]
; * lisp/so-long.el: Documentation
Clarify things which are only relevant to 'global-so-long-mode', and
not when the 'so-long' command, or one of its actions, is invoked
directly.
Use the new "customization group" hyperlink syntax.
Only quote 'so-long' as a symbol when it specifically refers to the
command (or will otherwise generate a hyperlink which is appropriate
to the context). When referring to the library more generally, leave
it unquoted.
Changes from commit
63f419f1339cbd0a7d1e64586854a4f01b3f80d1 are
reverted or improved.
Dan Ports [Sat, 18 Sep 2021 14:04:38 +0000 (16:04 +0200)]
Use the newest gcc installed by Macports
* configure.ac: There may be more than one gcc version installed
in Macports (bug#50649). Use the newest.
Copyright-paperwork-exempt: yes
Basil L. Contovounesios [Sat, 18 Sep 2021 10:49:07 +0000 (11:49 +0100)]
Fontify Libtool macros in autoconf-mode
* lisp/progmodes/autoconf.el (autoconf-font-lock-keywords): Apply
font-lock-keyword-face also to Libtool's LT_* macros (bug#50659).
Eli Zaretskii [Sat, 18 Sep 2021 11:56:55 +0000 (14:56 +0300)]
Improve doc strings of a recent commit
* lisp/emacs-lisp/generator.el (iter-defun):
* lisp/emacs-lisp/comp.el (comp-clean-up-stale-eln):
* lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode):
* lisp/emacs-lisp/autoload.el (autoload-insert-section-header):
Include description of arguments in the doc string's first line.
Mattias Engdegård [Sat, 18 Sep 2021 11:39:09 +0000 (13:39 +0200)]
Regexp-quote literal symbols when grepping
`xref-find-references` was unable to find symbols like
`backquote-list*-macro`.
* lisp/cedet/semantic/symref/grep.el
(semantic-symref-grep--quote-extended): New function.
(semantic-symref-perform-search): Call it.
Stefan Kangas [Sat, 18 Sep 2021 11:12:41 +0000 (13:12 +0200)]
; More stylistic docfixes in emacs-lisp/*.el found by checkdoc
Eli Zaretskii [Sat, 18 Sep 2021 10:23:48 +0000 (13:23 +0300)]
Fix performance degradation in commands that describe key bindings
* src/keymap.c (syms_of_keymap)
<describe-bindings-check-shadowing-in-ranges>: New variable.
(describe_vector): Check shadowing of consecutive keys only if
'describe-bindings-check-shadowing-in-ranges' is non-nil. Remove
redundant second loop when VECTOR is a char-table. Improve
comments. Patch by Stefan Kangas <stefan@marxist.se>. (Bug#45379)
* test/src/keymap-tests.el
(help--describe-vector/bug-9293-one-shadowed-in-range): Adapt the
test case for the new variable.
Stefan Kangas [Sat, 18 Sep 2021 09:24:22 +0000 (11:24 +0200)]
* lisp/emacs-lisp/checkdoc.el: Doc fix; mention flymake.
Stefan Kangas [Sat, 18 Sep 2021 09:21:32 +0000 (11:21 +0200)]
Do interactive mode tagging for checkdoc.el
Stefan Kangas [Sat, 18 Sep 2021 08:39:35 +0000 (10:39 +0200)]
checkdoc: Only look for commonly used modifier keys
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
Search for the modifier key "s-", but not the modifier key "A-".
The latter is very uncommon and leads to false positives.
Michael Albinus [Sat, 18 Sep 2021 08:23:32 +0000 (10:23 +0200)]
Skip "fast" tests on emba CI
* test/infra/gitlab-ci.yml (stages): Comment "fast" stage out.
(test-fast-inotify): Comment out.
Eli Zaretskii [Sat, 18 Sep 2021 07:56:05 +0000 (10:56 +0300)]
; * lisp/loadup.el: Fix "Eager macro-expansion error" on w32.
Stefan Kangas [Sat, 18 Sep 2021 07:40:29 +0000 (09:40 +0200)]
Add indent declaration to emerge-defvar-local
* lisp/vc/emerge.el (emerge-defvar-local): Add indent declaration
for docstring. Fix wrongly indented callers.
Stefan Kangas [Sat, 18 Sep 2021 07:38:45 +0000 (09:38 +0200)]
Make doc argument of emerge-defvar-local optional
* lisp/vc/emerge.el (emerge-defvar-local): Make doc argument
optional.
Stefan Kangas [Sat, 18 Sep 2021 07:33:53 +0000 (09:33 +0200)]
Make doc argument of ediff-defvar-local optional
* lisp/vc/ediff-init.el (ediff-defvar-local): Make DOC argument
optional. Update callers passing the empty string to not use it.
Stefan Kangas [Sat, 18 Sep 2021 07:13:37 +0000 (09:13 +0200)]
; More stylistic docfixes in vc/*.el found by checkdoc
Eli Zaretskii [Sat, 18 Sep 2021 06:40:55 +0000 (09:40 +0300)]
; Improve the last change in NEWS.
Federico Tedin [Tue, 14 Sep 2021 22:15:16 +0000 (00:15 +0200)]
Check for null bytes in filenames in 'expand-file-name' (bug#49723)
* src/fileio.c (expand-file-name): Check for null bytes for both
NAME and DEFAULT-DIRECTORY arguments. Also check for null bytes
in buffer-local default-directory, assuming it is used.
* src/coding.c (encode_file_name): Use CHECK_STRING_NULL_BYTES.
* src/lisp.h (CHECK_STRING_NULL_BYTES): Add function for checking
for null bytes in Lisp strings.
* test/src/fileio-tests.el (fileio-test--expand-file-name-null-bytes):
Add test for new changes to expand-file-name.
* etc/NEWS: Announce changes.
Amin Bandali [Sat, 18 Sep 2021 01:54:15 +0000 (21:54 -0400)]
* lisp/erc/erc.el: Add Package-Requires and URL headers.
Amin Bandali [Sat, 18 Sep 2021 01:25:18 +0000 (21:25 -0400)]
* etc/NEWS: Announce update of IRC-related references to point to Libera.Chat.
Also remove the note about freenode subdomain change, as it's not
relevant anymore.
Stefan Kangas [Fri, 17 Sep 2021 23:17:50 +0000 (01:17 +0200)]
; * etc/NEWS: Fix typos.
Stefan Kangas [Fri, 17 Sep 2021 20:57:33 +0000 (22:57 +0200)]
Update refcard to mention iconify before suspend
* etc/refcards/refcard.tex (section{Leaving Emacs}): Put iconify
Emacs ahead of suspend.
Stefan Kangas [Thu, 16 Sep 2021 17:13:56 +0000 (19:13 +0200)]
checkdoc: 'y-or-n-p' no longer needs space
* lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
Change 'y-or-n-p' check to accept prompt ending with both "? " or "?",
that is, it no longer needs the space. (Bug#50621)
(checkdoc--fix-y-or-n-p): New helper function.
* test/lisp/emacs-lisp/checkdoc-tests.el (checkdoc-tests-fix-y-or-n-p)
(checkdoc-tests-fix-y-or-n-p/no-change)
(checkdoc-tests-fix-y-or-n-p/with-space): New tests.
Robert Pluim [Fri, 17 Sep 2021 18:56:09 +0000 (20:56 +0200)]
; Fix etc/NEWS merge error
* etc/NEWS: fix merge error
Robert Pluim [Fri, 17 Sep 2021 17:40:48 +0000 (19:40 +0200)]
Move emoji fontset addition later
* lisp/international/fontset.el (setup-default-fontset): Move the
fontset addition for emoji script after that for various graphic-like
characters, since they overlap, and we want the emoji setting to win.
Martin Joerg [Fri, 17 Sep 2021 17:54:00 +0000 (19:54 +0200)]
* lisp/net/tramp-sh.el (tramp-methods) <rsync>: Separate "%c" marker.
Copyright-paperwork-exempt: yes
Robert Pluim [Fri, 17 Sep 2021 17:35:27 +0000 (19:35 +0200)]
Fix emoji-induced build breakage
* admin/unidata/blocks.awk: Cater for out-of-tree builds, match
the name of the file using regexp rather than exact match.
Uwe Brauer [Fri, 17 Sep 2021 17:01:51 +0000 (19:01 +0200)]
Replace hex representation by its literal form in pretty tex symbols
* lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
Correct error \Bbb{T}, replace hex representation by its literal
form (bug#50645).
Lars Ingebrigtsen [Fri, 17 Sep 2021 16:37:51 +0000 (18:37 +0200)]
Tweak how term-emulate-terminal selects windows
* lisp/term.el (term-emulate-terminal): Don't record the selection
of the window here, because we're not doing a user-level window
selection, but just selecting the window for internal purposes
(bug#41984).
Juri Linkov [Fri, 17 Sep 2021 16:02:48 +0000 (19:02 +0300)]
* lisp/progmodes/elisp-mode.el (elisp-context-menu): Improve menu items.
Juri Linkov [Fri, 17 Sep 2021 16:00:03 +0000 (19:00 +0300)]
* lisp/repeat.el (repeat-echo-message): Clear only own added part of message.
(describe-repeat-maps, repeat-mode): Refer to each other in docstrings.
Lars Ingebrigtsen [Fri, 17 Sep 2021 15:54:21 +0000 (17:54 +0200)]
Stop imenu indexing after a certain number of seconds
* doc/emacs/programs.texi (Imenu): Document it.
* lisp/imenu.el (imenu-max-index-time): New user option.
(imenu-default-create-index-function, imenu--generic-function):
Use it (bug#18696).
Manuel Giraud [Fri, 17 Sep 2021 14:34:05 +0000 (16:34 +0200)]
Fix typo in idlwave
* lisp/progmodes/idlwave.el (idlwave-keyword-abbrev): Fix typo
(bug#50638).
Uwe Brauer [Fri, 17 Sep 2021 14:32:48 +0000 (16:32 +0200)]
Add more symbols to tex--prettify-symbols-alist
* lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add
mathbb, caligraphic letters, fractur, varkappa and
\|. (bug#50639).
Lars Ingebrigtsen [Thu, 16 Sep 2021 15:13:11 +0000 (17:13 +0200)]
Mention that the garbage collection is convervative
* doc/lispref/internals.texi (Garbage Collection): Mention that
we're using a conservative gc (bug#42013).
Stephen Gildea [Fri, 17 Sep 2021 14:01:40 +0000 (07:01 -0700)]
MH-E: fix check for nmh or Mailutils installation
* lisp/mh-e/mh-e.el (mh-variant-gnu-mh-info, mh-variant-nmh-info):
Run install-mh, not mhparam, to check whether an MH variant is
installed on the system. mhparam fails if no user profile is found,
so it is not a reliable check of the state of the system as a whole.
Tested with:
nmh 1.4, nmh 1.7.1, GNU Mailutils 2.2, GNU Mailutils 3.7, GNU Mailutils 3.13
Eli Zaretskii [Fri, 17 Sep 2021 14:07:32 +0000 (17:07 +0300)]
Fix display of stretch glyphs
* src/xterm.c (x_draw_stretch_glyph_string):
* src/w32term.c (w32_draw_stretch_glyph_string): Fix drawing
stretch glyphs when the window is hscrolled. (The original
pre-Jan-2021 code was almost correct, except that it used
'window_box_left_offset' instead of 'window_box_left', and didn't
restrict the background_width fixup to text-area.) (Bug#50564)
Robert Pluim [Tue, 14 Sep 2021 17:07:03 +0000 (19:07 +0200)]
Split Unicode emoji into their own script
* admin/notes/unicode: Describe how to update emoji for new Unicode release.
* admin/unidata/Makefile.in: Pass emoji-data.txt to
blocks.awk script.
* admin/unidata/README: Add pointer to emoji-data.txt file.
* admin/unidata/blocks.awk: Parse emoji-data.txt, add emoji codepoints
to the 'emoji' script (except for the ASCII ones).
* admin/unidata/emoji-data.txt: New file.
* etc/NEWS: Describe new 'emoji' script.
* etc/TODO: Update item about 'emoji' script.
* lisp/international/fontset.el (script-representative-chars): Add
'emoji' script.
(setup-default-fontset): Add 'emoji' script. Use "Noto Color Emoji"
as default font for it.
Dmitry Gutov [Fri, 17 Sep 2021 12:39:23 +0000 (15:39 +0300)]
xref-matches-in-files: Move sorting to Lisp
For better compatibility with different systems.
Performance is unaffected, except in very pathological cases
(~100000 matches), and even then the overhead of 'sort' is comparable.
* lisp/progmodes/xref.el (xref-search-program-alist):
Drop the piping through 'sort'.
(xref-matches-in-files): Sort here instead.
Do that to both searchers' output as well now.
Stefan Kangas [Fri, 17 Sep 2021 12:06:18 +0000 (14:06 +0200)]
; * test/lisp/emacs-lisp/seq-tests.el: Remove duplicate test.
Eli Zaretskii [Fri, 17 Sep 2021 12:03:53 +0000 (15:03 +0300)]
Improve the documentation of a recent change
* etc/NEWS:
* doc/lispref/sequences.texi (Sequence Functions): Improve
documentation of 'seq-union'.
Stefan Kangas [Fri, 17 Sep 2021 12:01:20 +0000 (14:01 +0200)]
Improve performance of seq-union
* lisp/emacs-lisp/seq.el (seq-union): Improve performance by using
nreverse instead of seq-reverse.
Stefan Kangas [Fri, 17 Sep 2021 10:32:59 +0000 (12:32 +0200)]
; Make change that was accidentally left out in my last commit
Stefan Kangas [Fri, 17 Sep 2021 09:39:47 +0000 (11:39 +0200)]
Make viper-subseq into obsolete alias for cl-subseq
* lisp/emulation/viper-util.el (viper-subseq): Make into obsolete
function alias for 'cl-subseq'. Update callers.
Stefan Kangas [Fri, 17 Sep 2021 09:01:54 +0000 (11:01 +0200)]
* lisp/vc/ediff-util.el (ediff-member): Make obsolete.
Stefan Kangas [Fri, 17 Sep 2021 09:02:38 +0000 (11:02 +0200)]
Make ediff-set-difference into obsolete alias for seq-difference
* lisp/vc/ediff-util.el (ediff-set-difference): Make into obsolete
function alias for 'seq-difference'.
* lisp/vc/ediff-mult.el (ediff-intersect-directories): Update single caller.
Stefan Kangas [Fri, 17 Sep 2021 09:00:06 +0000 (11:00 +0200)]
Make ediff-intersection into obsolete alias for seq-intersection
* lisp/vc/ediff-util.el (ediff-intersection): Make into obsolete
function alias for 'seq-intersection'.
* lisp/vc/ediff-mult.el (ediff-intersect-directories): Update
single caller.
Stefan Kangas [Fri, 17 Sep 2021 08:41:15 +0000 (10:41 +0200)]
Make ediff-union into obsolete alias for seq-union
* lisp/emacs-lisp/seq.el (seq-union): Autoload.
* lisp/vc/ediff-util.el (ediff-union): Make into obsolete function
alias for 'seq-union'.
* lisp/vc/ediff-mult.el (ediff-intersect-directories): Update single
caller.
Stefan Kangas [Fri, 17 Sep 2021 08:35:13 +0000 (10:35 +0200)]
Add new sequence function 'seq-union'
* lisp/emacs-lisp/seq.el (seq-union): New function.
* doc/lispref/sequences.texi (Sequence Functions):
* lisp/emacs-lisp/shortdoc.el (sequence): Document above new
function.
* test/lisp/emacs-lisp/seq-tests.el (test-seq-union): New test.
Stefan Kangas [Fri, 17 Sep 2021 07:45:21 +0000 (09:45 +0200)]
* lisp/allout.el (allout-old-expose-topic): Make obsolete.
John Cummings [Thu, 16 Sep 2021 23:00:50 +0000 (23:00 +0000)]
Fix disk-free info in 'insert-directory'
* lisp/files.el (insert-directory): Call 'get-free-disk-space'
with the argument FILE, to make sure the reported info is for the
correct volume. (Bug#50630)
Copyright-paperwork-exempt: yes
Michael Albinus [Fri, 17 Sep 2021 05:29:01 +0000 (07:29 +0200)]
Fix annoyance in tramp-smb.el
* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
Add "TERM=dumb".
Olivier Certner [Fri, 5 Feb 2021 14:34:50 +0000 (15:34 +0100)]
ERC: NickServ: Prompt for password last, overall simplifications (bug#46777)
When 'erc-prompt-for-nickserv-password' is non-nil, don't ignore the
other forms of identification. Instead, process them first, and
prompt for the password last. Separate concerns (determination of the
nick to use, of the password to use, and actual message sending).
Note that the user can be interactively prompted for a password on
reception of a NickServ request, as before (on
'erc-prompt-for-nickserv-password').
* lisp/erc/erc-services.el (erc-nickserv-identify): Make the password
argument optional (and don't prompt for it interactively). Further,
now take the nick to use for identification (interactively, ask for
it, defaulting to the current one). Move the actual message sending
into the new 'erc-nickserv-send-identify' function, and the password
prompting into 'erc-nickserv-get-password'.
(erc-nickserv-send-identify): New function containing the code for
sending the identify message to NickServ, given the nick and password.
(erc-nickserv-get-password): Try each password source in turn, in the
following order: 'erc-nickserv-passwords', auth-source (if
'erc-use-auth-source-for-nickserv-password' is non-nil), and in the
end prompt the user interactively (if
'erc-prompt-for-nickserv-password' is non-nil). If one source returns
a string, the function returns it, or nil if the string is empty.
(erc-nickserv-call-identify-function): Declare obsolete, but retain
for backward compatibility. Prefer invoking 'erc-nickserv-identify'
directly instead.
(erc-nickserv-identify-autodetect, erc-nickserv-identify-on-connect)
(erc-nickserv-identify-on-nick-change): Call 'erc-nickserv-identify'
directly ('erc-nickserv-call-identify-function' has been obsoleted).
For the last two functions, remove the redundant checks on the
NickServ identification flags (additionally, it is doubtful they have
any measurable impact on performance).
* etc/NEWS: Announce the change.
Co-authored-by: F. Jason Park <jp@neverwas.me>
Amin Bandali [Fri, 17 Sep 2021 02:45:46 +0000 (22:45 -0400)]
* lisp/erc/erc-button.el (erc-emacswiki-url): Update to shorter address.
Alfred M. Szmidt [Thu, 16 Sep 2021 23:03:22 +0000 (02:03 +0300)]
* lisp/vc/vc.el: API doc fixes.
Manuel Giraud [Thu, 16 Sep 2021 23:01:09 +0000 (02:01 +0300)]
Reuse vc-read-backend more
* lisp/vc/vc.el (vc-read-backend): New optional arguments.
(vc-create-repo): Use it here.
(vc-switch-backend): And here (bug#50603).
Stefan Kangas [Thu, 16 Sep 2021 18:05:48 +0000 (20:05 +0200)]
Docfix: use command substitution for 'universal-argument'
* lisp/autoarg.el (autoarg-mode):
* lisp/bookmark.el (bookmark-set, bookmark-set-no-overwrite)
(bookmark-save):
* lisp/calendar/todo-mode.el (todo-insert-item)
(todo-filter-top-priorities)
(todo-filter-top-priorities-multifile):
* lisp/dired-x.el (dired-mark-extension, dired-mark-suffix):
* lisp/eshell/eshell.el (eshell):
* lisp/gnus/gnus-group.el (gnus-group-find-new-groups):
* lisp/gnus/gnus-start.el (gnus-find-new-newsgroups):
* lisp/gnus/gnus-sum.el (gnus-summary-show-article):
* lisp/gnus/gnus.el (gnus-secondary-servers):
* lisp/org/org-timer.el (org-timer-set-timer):
* lisp/org/ox.el (org-export-dispatch-last-position):
* lisp/printing.el (pr-ps-directory-preview)
(pr-ps-directory-using-ghostscript, pr-ps-directory-print)
(pr-ps-directory-ps-print, pr-ps-buffer-preview)
(pr-ps-buffer-using-ghostscript, pr-ps-buffer-print)
(pr-ps-buffer-ps-print, pr-despool-preview)
(pr-despool-using-ghostscript, pr-despool-print)
(pr-despool-ps-print, pr-ps-file-up-ps-print, pr-ps-fast-fire)
(pr-txt-fast-fire):
* lisp/progmodes/idlwave.el (idlwave-complete):
* lisp/progmodes/sh-script.el (sh-set-shell):
* lisp/replace.el (occur):
* lisp/ses.el (ses--advice-yank):
* lisp/simple.el (set-mark-command-repeat-pop):
* lisp/sort.el (delete-duplicate-lines):
* lisp/strokes.el (strokes-help):
* lisp/textmodes/artist.el (artist-mode):
* lisp/textmodes/reftex-cite.el (reftex-citation):
* lisp/textmodes/reftex-dcr.el (reftex-view-crossref):
* lisp/textmodes/reftex-index.el (reftex-index-selection-or-word)
(reftex-display-index):
* lisp/textmodes/reftex-ref.el (reftex-reference):
* lisp/textmodes/reftex-toc.el (reftex-toc):
* lisp/textmodes/reftex-vars.el (reftex-cite-prompt-optional-args)
(reftex-enable-partial-scans):
* lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
* lisp/windmove.el (windmove-display-in-direction)
(windmove-delete-left, windmove-delete-up)
(windmove-delete-right, windmove-delete-down):
* lisp/window.el (recenter-window-group, recenter-other-window): Use
command substitution for 'universal-argument' instead of raw "C-u".
Stefan Kangas [Tue, 14 Sep 2021 06:43:18 +0000 (08:43 +0200)]
; Minor stylistic fixes found by checkdoc
Michael Albinus [Thu, 16 Sep 2021 14:50:24 +0000 (16:50 +0200)]
Tramp code cleanup
* lisp/net/tramp-sh.el (tramp-methods) <telnet, nc>:
Reintroduce "%n" marker.
(tramp-maybe-open-connection): Handle it.
* lisp/net/tramp.el (tramp-prefix-regexp):
* lisp/net/tramp-smb.el (tramp-smb-options): Fix docstring.
* lisp/net/tramp*.el: Fix typos. Remove trailing space from
`yes-or-no-p' and `y-or-n-p' prompts.
* test/lisp/net/tramp-tests.el (tramp--test-telnet-p): New defun.
(tramp-test29-start-file-process, tramp-test30-make-process)
(tramp-test35-remote-path, tramp-test44-asynchronous-requests):
Adapt tests.
Wilson Snyder [Thu, 16 Sep 2021 14:23:10 +0000 (10:23 -0400)]
verilog-mode.el: Merge from upstream: prepare for lexical bindings.
* verilog-mode.el (verilog-do-indent)
(verilog-indent-declaration, verilog-read-always-signals-recurse)
(verilog-read-decls): Prepare for lexical bindings.
Eli Zaretskii [Thu, 16 Sep 2021 14:10:49 +0000 (17:10 +0300)]
Support '...' quoting in Lisp files
* lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
Support quoting 'like this'.
Augusto Stoffel [Thu, 16 Sep 2021 14:06:29 +0000 (16:06 +0200)]
Make 'compile' respect buffer-local process environment
* lisp/progmodes/compile.el (compilation-start): Use
`process-environment' from original buffer in the compilation
process (bug#50607).
Lars Ingebrigtsen [Thu, 16 Sep 2021 14:03:36 +0000 (16:03 +0200)]
Bind `M-o' in html-mode and enriched-mode
* lisp/textmodes/enriched.el (enriched-mode-map): Actually define
the `M-o' face map.
* lisp/textmodes/sgml-mode.el (html-mode-map): Ditto (bug#50616).
* lisp/textmodes/sgml-mode.el (html-mode): Adjust doc string.
Kevin Brubeck Unhammer [Thu, 16 Sep 2021 13:48:28 +0000 (15:48 +0200)]
Allow irc network symbols in erc-autojoin-channels-alist
* lisp/erc/erc-join.el (erc-autojoin-channels-alist): Explain the
extension.
(erc-autojoin-server-match): New function.
(erc-autojoin-channels): Use it.
(erc-autojoin-current-server): New function.
(erc-autojoin-add): Use it.
(erc-autojoin-remove): Ditto.
This can be useful when connecting to an IRC proxy like Weechat that
relays several networks under the same server. If we just keyed on the
server name, we would end up joining a channel on all networks
whenever we join one network on that server.
Networks are simply stored as symbols instead of regexes, since that's
how `erc-network' works.
The `erc-autojoin-add' function will still auto-add servers as strings
if the network doesn't have at least one entry in
`erc-autojoin-channels-alist'.
Stefan Kangas [Thu, 16 Sep 2021 13:35:10 +0000 (15:35 +0200)]
; Normalize some header comments
Stefan Kangas [Thu, 16 Sep 2021 13:33:35 +0000 (15:33 +0200)]
Prefer "website" to "homepage"
These days, a "home page" is understood to be only "the main web page
of a website" or "landing page", whereas a "website" is "a collection
of web pages and related content" (Wikipedia).
* doc/emacs/emacs.texi (Top):
* doc/emacs/package.texi (Package Menu):
* doc/lispintro/emacs-lisp-intro.texi (Top):
* doc/lispref/elisp.texi (Top):
* doc/lispref/tips.texi (Documentation Tips):
* doc/misc/ede.texi (ede-project):
* doc/misc/efaq-w32.texi (More information):
* doc/misc/gnus-faq.texi (FAQ 5-7):
* doc/misc/gnus.texi (About mairix):
* doc/misc/mairix-el.texi (About):
* doc/misc/reftex.texi (AUCTeX, Imprint):
* lisp/cedet/ede/base.el (ede-project):
* lisp/cedet/ede/system.el (ede-web-browse-home):
* lisp/emacs-lisp/package.el (package-menu-mode-menu)
(package-browse-url):
* lisp/erc/erc-button.el (erc-emacswiki-url):
* lisp/filesets.el (filesets-goto-homepage):
* lisp/net/mairix.el:
* lisp/net/webjump.el (webjump-sample-sites):
* lisp/obsolete/vc-arch.el:
* lisp/progmodes/idlw-shell.el (idlwave-shell-mode):
* lisp/progmodes/idlwave.el (idlwave, idlwave-mode):
* lisp/textmodes/reftex-vars.el (reftex):
Prefer "website" to "home page".
* doc/lispref/tips.texi (Documentation Tips):
Sort the "URL" header comment before "Homepage".
* lisp/emacs-lisp/lisp-mnt.el
(lm-website): Rename from 'lm-homepage'.
(lm-homepage): Make into alias for 'lm-website'.
F. Jason Park [Thu, 16 Sep 2021 13:35:55 +0000 (15:35 +0200)]
Change the erc debug logging format to be more repeatable
* erc.el (erc-debug-irc-protocol): Fix line-ending mismatch between
incoming and outgoing logger lines without changing interface. Do this
by adding carriage returns to the latter to improve machine
readability. Change printed peer labels to most accurately reflect
logical endpoints.
(erc-debug-irc-protocol-time-format): Add new variable to support
timestamps in protocol logger output.
(erc-debug-irc-protocol-version): Add new variable to help tooling
track logging format independent of ERC and Emacs versions.
(erc-toggle-debug-irc-protocol): Add headers to protocol-log buffer
to aid future bug-reproduction tools. Clean up overlong lines (bug#50009).
F. Jason Park [Thu, 16 Sep 2021 13:25:18 +0000 (15:25 +0200)]
Fix erc nick trimming
* lisp/erc/erc.el (erc-lurker-maybe-trim): Prevent warning from
showing up in third-party code using this function by autoloading
rx.el when needed. Remove trailing chars appended for uniquifying
purposes when a nick is already taken. Special thanks to Mattias
Engdegård for making this more respectable (Bug#50005).
* test/lisp/erc/erc-tests.el: Add tests for the above and require
erc-networks.
F. Jason Park [Thu, 16 Sep 2021 13:20:59 +0000 (15:20 +0200)]
Fix mistake in test for erc-ring-previous-command
* test/lisp/erc/erc-tests.el (erc-ring-previous-command):
The variable erc-send-completed-hook was previously set to nil
permanently, which would affect other tests (bug#50005).
Stefan Kangas [Thu, 16 Sep 2021 12:47:51 +0000 (14:47 +0200)]
Do interactive mode tagging for play/*.el
Eli Zaretskii [Thu, 16 Sep 2021 12:37:22 +0000 (15:37 +0300)]
; * src/minibuf.c (Ftest_completion): Clarify doc string.
Eli Zaretskii [Thu, 16 Sep 2021 12:34:36 +0000 (15:34 +0300)]
Clarify use of early-init file
* doc/emacs/custom.texi (Early Init File): Clarify that using the
early-init file should be reserved to cases where it is absolutely
necessary. (Bug#50491)
Lars Ingebrigtsen [Thu, 16 Sep 2021 12:18:30 +0000 (14:18 +0200)]
Clarify test-completion doc string
* src/minibuf.c (Ftest_completion): Clarify what it means to be a
valid completion (bug#50583).
Stefan Kangas [Thu, 16 Sep 2021 11:58:38 +0000 (13:58 +0200)]
Remove references to dead packages
* etc/themes/manoj-dark-theme.el: Delete references to colortheme and
emacs-goodies.
Stefan Kangas [Thu, 16 Sep 2021 09:48:08 +0000 (11:48 +0200)]
Make a redundant idlwave variable obsolete
* lisp/progmodes/idlw-help.el (idlwave-help-browse-url-available):
Make obsolete.
(idlwave-help-check-locations): Don't use above variable.
Stefan Kangas [Thu, 16 Sep 2021 09:31:42 +0000 (11:31 +0200)]
Various minor checkdoc tweaks
* lisp/emacs-lisp/checkdoc.el (checkdoc-symbol-words): Add more
"good" words that are used a lot in practice, and where using them
doesn't really hurt the quality of the documentation.
(checkdoc-proper-noun-list): Add "dired", remove "ispell"; the
latter should not always be capitalized.
(checkdoc-common-verbs-wrong-voice): Add some more common words.
Don't check for "matches" as it leads to too many false positives and
almost no fixes in practice.
(checkdoc-this-string-valid-engine): Clarify comment.
(checkdoc-in-abbreviation-p): Ignore some less common or non-standard
abbreviations.
Stefan Kangas [Thu, 16 Sep 2021 07:23:51 +0000 (09:23 +0200)]
Doc fix for y-or-n-p; trailing space is no longer needed
* doc/lispref/minibuf.texi (Yes-or-No Queries):
* doc/lispref/os.texi (Suspending Emacs):
* doc/lispref/tips.texi (Programming Tips):
* doc/misc/gnus-faq.texi (FAQ 5-9):
* lisp/subr.el (y-or-n-p):
* src/fns.c (Fyes_or_no_p): Doc fix to reflect that a trailing space
is no longer needed; one is added or removed automatically.
Stefan Kangas [Thu, 16 Sep 2021 00:33:08 +0000 (02:33 +0200)]
* doc/misc/pgg.texi: Clarify that its obsolete in the menu entry.
Stefan Kangas [Wed, 15 Sep 2021 21:13:32 +0000 (23:13 +0200)]
Remove function obsolete since 22.1
* lisp/erc/erc-networks.el (erc-current-network): Remove function
obsolete since Emacs 22.1.
Basil L. Contovounesios [Wed, 15 Sep 2021 20:57:19 +0000 (21:57 +0100)]
; * etc/NEWS: Fix typo.
Eli Zaretskii [Wed, 15 Sep 2021 19:01:21 +0000 (22:01 +0300)]
Documentation followup to a recent commit
* doc/lispref/tips.texi (Documentation Tips): Make the wording of
recommendation not to over-use \\[..] more future-proof.
(Bug#50599)
Basil L. Contovounesios [Wed, 15 Sep 2021 18:37:08 +0000 (19:37 +0100)]
Evaluate recent isearch-motion lambdas
* lisp/isearch.el (beginning-of-buffer, end-of-buffer)
(scroll-up-command, scroll-down-command): Evaluate the lambdas
inside the isearch-motion properties of these commands.
Stefan Kangas [Wed, 15 Sep 2021 06:18:20 +0000 (08:18 +0200)]
checkdoc: Don't warn about command substitutions by default
* lisp/emacs-lisp/checkdoc.el (checkdoc-max-keyref-before-warn):
Add new valid value nil meaning to never warn about too many command
substitutions, and use this value as the default. This is no longer a
performance problem on modern machines. (Bug#50599)
(checkdoc-this-string-valid-engine): Respect above new valid value
nil.
Juri Linkov [Wed, 15 Sep 2021 16:09:33 +0000 (19:09 +0300)]
* lisp/tab-line.el: Add context menu bound to down-mouse-3 like on tab bar.
* lisp/tab-line.el: Bind tab-line down-mouse-3 to tab-line-context-menu.
(tab-line-tab-map): Rebind tab-line-select-tab from mouse-1 to down-mouse-1.
Bind down-mouse-3 to tab-line-tab-context-menu.
(tab-line-add-map): Rebind tab-line-new-tab from mouse-1 to down-mouse-1.
(tab-line-left-map, tab-line-right-map): Rebind mouse-1 to down-mouse-1.
(tab-line-tab-context-menu, tab-line-context-menu): New functions.
(tab-line-hscroll-right, tab-line-hscroll-left)
(tab-line-new-tab, tab-line-select-tab)
(tab-line-switch-to-prev-tab, tab-line-switch-to-next-tab)
(tab-line-close-tab): Rename event args to 'event'.
Juri Linkov [Wed, 15 Sep 2021 16:03:13 +0000 (19:03 +0300)]
* lisp/tab-bar.el (tab-bar-format): Add new option tab-bar-format-menu-global
(tab-bar-format-menu-global): New function.
Juri Linkov [Wed, 15 Sep 2021 16:00:56 +0000 (19:00 +0300)]
Add docstrings to context menu functions, and add middle-separator
* lisp/mouse.el (context-menu-functions): Add context-menu-middle-separator
to default values.
(context-menu-middle-separator): New function.
* lisp/replace.el (occur-context-menu): Use middle-separator.
* lisp/progmodes/elisp-mode.el (elisp-context-menu):
* lisp/progmodes/prog-mode.el (prog-context-menu):
Use middle-separator and reorder menu items correspondingly.
Philip Kaludercic [Wed, 15 Sep 2021 15:36:19 +0000 (17:36 +0200)]
Merge branch 'feature/rcirc-update'
Lars Ingebrigtsen [Wed, 15 Sep 2021 13:53:53 +0000 (15:53 +0200)]
Tweak python-hideshow-forward-sexp-function warning avoidance
* lisp/progmodes/python.el
(python-hideshow-forward-sexp-function): Avoid compilation warning
in a more standard way. Problem reported in
https://thedailywtf.com/articles/the-programmer-s-motto-and-other-comments
Michael Albinus [Wed, 15 Sep 2021 13:16:27 +0000 (15:16 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Wed, 15 Sep 2021 13:15:53 +0000 (15:15 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Eli Zaretskii [Wed, 15 Sep 2021 13:14:30 +0000 (16:14 +0300)]
Avoid crashes due to clearing of a frame's face cache
* src/xfaces.c (clear_face_cache): Don't clear fonts and faces of
a frame that is being redisplayed, just because it's time for some
routine maintenance. (Bug#50571)
* src/xdisp.c (redisplay_internal):
* src/frame.h (struct frame) <inhibit_clear_image_cache>: Update
commentary of using this struct member.
Michael Albinus [Wed, 15 Sep 2021 13:14:24 +0000 (15:14 +0200)]
* lisp/net/tramp-sh.el (tramp-methods): <sudo>: Change template. (Bug#50594)
Eli Zaretskii [Wed, 15 Sep 2021 13:09:45 +0000 (16:09 +0300)]
Avoid compiler warnings in comp.c on MS-Windows
* src/comp.c (DEF_DLL_FN, init_gccjit_functions): Don't load and
don't define functions/macros if libgccjit doesn't have them, to
avoid compiler warnings.
Mattias Engdegård [Wed, 15 Sep 2021 11:47:15 +0000 (13:47 +0200)]
Faster grep pattern for identifiers
* lisp/cedet/semantic/symref/grep.el (semantic-symref-perform-search):
Use the `-w` flag instead of wrapping the pattern in regexps that make
matching much slower. This speeds up `xref-find-references` by about
3× on macOS.
Eli Zaretskii [Wed, 15 Sep 2021 11:40:13 +0000 (14:40 +0300)]
Update Unicode support to Unicode version 14.0.0
* admin/unidata/copyright.html:
* admin/unidata/UnicodeData.txt:
* admin/unidata/Blocks.txt:
* admin/unidata/BidiBrackets.txt:
* admin/unidata/BidiMirroring.txt:
* admin/unidata/IVD_Sequences.txt:
* admin/unidata/NormalizationTest.txt:
* admin/unidata/SpecialCasing.txt:
* test/manual/BidiCharacterTest.txt: Updated files from Unicode
14.0.
* lisp/international/fontset.el (script-representative-chars): Add
new scripts.
(otf-script-alist): Update from latest version.
(setup-default-fontset): Add new scripts.
* lisp/international/characters.el: Update syntax and category
tables for new characters and scripts.
(char-width-table): Update for changes in Unicode 14.0.
* lisp/international/mule-cmds.el (ucs-names): Update used and
unused ranges per Unicode 14.0.
* test/lisp/international/ucs-normalize-tests.el
(ucs-normalize-tests--failing-lines-part1)
(ucs-normalize-tests--failing-lines-part2): Update per the test
results.
* doc/lispref/nonascii.texi (Character Properties): Update Unicode
version number.
* etc/NEWS: Announce support for Unicode 14.0.
* admin/notes/unicode: Minor copyedits.
João Távora [Wed, 15 Sep 2021 09:22:26 +0000 (10:22 +0100)]
* doc/misc/flymake.texi: Fix @include docstyle.texi
Augusto Stoffel [Wed, 15 Sep 2021 08:02:34 +0000 (10:02 +0200)]
Python shell: rearrange printing of newline before output
* progmodes/python.el (python-shell-output-filter-in-progress)
(python-shell-output-filter-buffer): Move defvars to avoid compiler
warnings.
(python-shell-eval-setup-code): Don't print a newline in
__PYTHON_EL_eval.
(python-shell-send-string): Insert newline before output when
applicable (bug#50514).
Lars Ingebrigtsen [Wed, 15 Sep 2021 07:58:41 +0000 (09:58 +0200)]
Make bookmark fringe marks evaporate
* lisp/bookmark.el (bookmark--set-fringe-mark): Make the bookmark
evaporate when a buffer is erased (like, for instance, when doing
`revert-buffer' in a vc buffer).
Lars Ingebrigtsen [Tue, 14 Sep 2021 12:58:37 +0000 (14:58 +0200)]
Mention `lisp-data-mode' in `emacs-lisp-mode' doc string
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Mention
`lisp-data-mode'.