Commit graph

4494 commits

Author SHA1 Message Date
Lars Ingebrigtsen
b19b942f72 Add a new way to encode unprintable characters in Message: url-encode
* lisp/gnus/message.el (message-fix-before-sending): Add a new
conversion method for invalid characters -- URL-encoding (bug#38955).
2020-08-20 16:42:06 +02:00
Lars Ingebrigtsen
ac79d73760 Fix problem with unprintable characters in Message headers
* lisp/gnus/message.el (message-fix-before-sending): Remove
unprintable characters from the entire buffer, not just the body
(bug#38955).
2020-08-20 16:33:29 +02:00
Lars Ingebrigtsen
63ac91a2ec Fix interactive spec of message-beginning-of-line
* lisp/gnus/message.el (message-beginning-of-line): Fix problem
with C-S-a getting translated to C-a in message-mode (bug#39545).
2020-08-20 16:12:07 +02:00
Lars Ingebrigtsen
219e80f0a3 message-sendmail-f-is-evil doc string fix
* lisp/gnus/message.el (message-sendmail-f-is-evil): Make doc
string less confusing by removing a joke (bug#41096).
2020-08-20 15:27:07 +02:00
Lars Ingebrigtsen
1a31051069 Remove some compat code from smiley.el
* lisp/gnus/smiley.el (smiley-style): face-attribute is always defined.
2020-08-18 23:19:09 +02:00
Philip K
52d7aa76b1 Fix issues with OpenPGP header
* doc/misc/message.texi (OpenPGP Header): Mention correct hook
* lisp/gnus/message.el (message-openpgp-header): Improve customize type
(message-add-openpgp-header): Insert header into correct buffer
(bug#42913).
2020-08-18 18:06:13 +02:00
Lars Ingebrigtsen
37358dd43c Make Gnus stop clobbering the M-s search prefix key binding
* doc/emacs/misc.texi (Gnus Summary Buffer): Ditto.

* doc/misc/gnus.texi (Searching for Articles): Document moved M-s
(bug#39706).

* lisp/gnus/gnus-sum.el (gnus-summary-mode-map): Move
gnus-summary-search-article-forward to M-s M-s, and add M-s M-r
for gnus-summary-search-article-backward.
2020-08-15 14:20:02 +02:00
Stefan Kangas
874ba85363 Remove many items obsolete since Emacs 23.1
Emacs 23.1 was five major releases and over a decade ago.
This list can be reviewed before to the next release, but for now
hopefully this motivates any needed external updates.
Ref: https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg02198.html

* lisp/abbrev.el (pre-abbrev-expand-hook):
* lisp/bookmark.el (bookmark-read-annotation-text-func)
(bookmark-jump-noselect):
* lisp/buff-menu.el (buffer-menu-mode-hook):
* lisp/cus-edit.el (custom-mode-hook, custom-mode):
* lisp/dirtrack.el (dirtrack-debug-toggle, dirtrack-debug):
* lisp/emacs-lisp/crm.el (crm-minibuffer-complete)
(crm-minibuffer-completion-help)
(crm-minibuffer-complete-and-exit):
* lisp/emacs-lisp/easymenu.el
(easy-menu-precalculate-equivalent-keybindings):
* lisp/emacs-lisp/lisp-mode.el (lisp-mode-auto-fill):
* lisp/epa.el (epa-display-verify-result):
* lisp/epg.el (epg-passphrase-callback-function):
* lisp/eshell/eshell.el (eshell-report-bug):
* lisp/ffap.el (ffap-bug, ffap-submit-bug):
* lisp/files.el (locate-file-completion):
* lisp/hi-lock.el (hi-lock-face-history, hi-lock-regexp-history):
* lisp/hilit-chg.el (highlight-changes-initial-state)
(highlight-changes-active-string)
(highlight-changes-passive-string, global-highlight-changes):
* lisp/international/mule-cmds.el (nonascii-insert-offset)
(nonascii-translation-table):
* lisp/international/mule-diag.el (non-iso-charset-alist):
* lisp/international/mule-util.el (detect-coding-with-priority):
* lisp/international/mule.el (charset-id, charset-bytes)
(charset-list, char-valid-p, generic-char-p)
(char-coding-system-table, make-coding-system)
(set-coding-priority)
* lisp/mail/rmail.el (rmail-message-filter):
* lisp/minibuffer.el (complete-in-turn, dynamic-completion-table)
(completion-common-substring)
(minibuffer-local-must-match-filename-map):
* lisp/mouse.el (mouse-major-mode-menu, mouse-popup-menubar)
(mouse-popup-menubar-stuff):
* lisp/net/newst-treeview.el (newsticker-groups-filename):
* lisp/obsolete/tpu-edt.el (tpu-have-ispell, GOLD-map):
* lisp/password-cache.el (password-read-and-add):
* lisp/shell.el (shell-dirtrack-toggle):
* lisp/subr.el (forward-point, redisplay-end-trigger-functions)
(process-filter-multibyte-p, set-process-filter-multibyte):
* lisp/t-mouse.el (t-mouse-mode):
* lisp/term/w32-win.el (w32-focus-frame, w32-select-font):
* lisp/textmodes/ispell.el (ispell-aspell-supports-utf8):
* lisp/textmodes/remember.el (remember-buffer):
* lisp/tooltip.el (tooltip-hook):
* lisp/url/url-util.el (url-generate-unique-filename):
* lisp/url/url-vars.el (url-temporary-directory):
* lisp/vc/vc-hooks.el (vc-workfile-version)
(vc-default-working-revision):
* lisp/vc/vc-mtn.el (vc-mtn-command):
* lisp/vc/vc.el (vc-revert-buffer):
* lisp/vcursor.el (vcursor-toggle-vcursor-map):
Remove items, obsolete since Emacs 23.1.
* lisp/abbrev.el (expand-abbrev):
* lisp/epg.el (epg-context): Change
'epg-passphrase-callback-function' call to 'epa-' alternative.
* lisp/eshell/em-rebind.el (eshell-cannot-leave-input-list): Don't
refer to removed function 'forward-point'.
* test/manual/etags/c-src/abbrev.c (Fexpand_abbrev):
(syms_of_abbrev): Don't run removed hook 'pre-abbrev-expand-hook'.
* lisp/international/mule.el (transform-make-coding-system-args):
Declare obsolete.
* lisp/progmodes/idlwave.el:
Update reference to removed function 'char-valid-p'.
* lisp/gnus/mml2015.el (epg-encrypt-string):
* lisp/gnus/mml1991.el (epg-make-context):
* lisp/gnus/mml-smime.el (autoload):
Remove autoload of removed 'epg-passphrase-callback-function'.
* lisp/minibuffer.el (completion-extra-properties):
Remove support for `completion-common-substring'.
* lisp/obsolete/tpu-edt.el (tpu-toggle-overwrite-mode)
Remove support for removed `spell' package.
* src/coding.c (syms_of_coding):
* doc/misc/efaq.texi:
* doc/emacs/frames.texi (Menu Mouse Clicks):
* doc/misc/url.texi (Customization): Doc fixes.
; * etc/NEWS: List removed items.
2020-08-14 13:07:26 +02:00
Lars Ingebrigtsen
9102ecc63b Remove some compat code from mm-util.el
* lisp/gnus/mm-util.el (mm-charset-to-coding-system): Remove the
non-mule case, because it's always false.
2020-08-12 19:54:48 +02:00
Lars Ingebrigtsen
36466ed666 Simplify the computation of mm-mime-mule-charset-alist
* lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): For
compatibility with XEmacs, mm-mime-mule-charset-alist was first
set to a list of hard-coded entries, and then overwritten on Emacs
from `coding-system-list'.  Remove the hard-coded values and
simplify the code.
2020-08-12 19:54:48 +02:00
Lars Ingebrigtsen
c0c24267b3 Remove some compat code from gnus.el
* lisp/gnus/gnus.el: Remove a check for a function that is always
defined.
2020-08-12 19:54:48 +02:00
Lars Ingebrigtsen
86a326d2d8 Slight gnus-util clean-up
* lisp/gnus/gnus-util.el (gnus-message-with-timestamp-1):
messages-buffer is always defined.
2020-08-11 21:04:12 +02:00
Tino Calancha
2ed502d2a7 Add constants for shell command output buffer names
Buffers `*Shell Command Output*' and `*Async Shell Command*'
have been around since a long time; used across several libraries,
they are de facto output buffers for shell commands.

* lisp/simple.el (shell-command-buffer-name)
(shell-command-buffer-name-async): New variables.
* lisp/dired-aux.el
* lisp/gnus/gnus-sum.el
* lisp/gnus/gnus-win.el
* lisp/ibuf-ext.el
* lisp/net/tramp.el: Use them.

* etc/NEWS (Changes in Emacs 28.1): Announce this change.

* doc/emacs/misc.texi (Single Shell)
* doc/misc/tramp.texi (Remote processes):
Update manual (bug#39138).
2020-08-09 14:18:09 +02:00
Lars Ingebrigtsen
1888c6cb96 Doc string fix for message-mailto
* lisp/gnus/message.el (message-mailto): Doc string fix.
2020-08-09 12:55:15 +02:00
Lars Ingebrigtsen
5732d8ee9a Slight code clean-up in message-mailto
* lisp/gnus/message.el (message-mailto): Clean up code slightly.
2020-08-09 12:52:02 +02:00
Basil L. Contovounesios
444e404325 ; Fix typos in recent message.el changes
* doc/misc/message.texi (OpenPGP Header):
* etc/NEWS:
* lisp/gnus/message.el (message-add-openpgp-header): Fix spelling of
function name.
2020-08-08 23:56:30 +01:00
Eli Zaretskii
843b55f682 ; Fix recent message.el-related changes
* lisp/gnus/message.el (message-openpgp-header):
* doc/misc/message.texi (OpenPGP Header): Fix the documentation
added in recent commits.
2020-08-08 17:06:45 +03:00
Philip K
b799cc271d Add support for the OpenPGP header to Emacs
* lisp/gnus/message.el (message-openpgp-header): New variable
(bug#39964).
(messasge-add-openpgp-header): New function to use it.
2020-08-08 15:40:32 +02:00
Tassilo Horn
6cb6215cbe Show A C hint only if partial fetches are enabled.
* lisp/gnus/gnus-art.el (gnus-insert-mime-button): Show A C hint for
downloading the complete message only if partial fetches are enabled.
2020-08-06 21:52:18 +02:00
Tassilo Horn
33b50e2fc9 Show A C hint for loading complete message only in nnimap groups.
* lisp/gnus/gnus-art.el (gnus-insert-mime-button): Show A C hint for
loading complete message only in nnimap groups.
2020-08-06 21:47:48 +02:00
Lars Ingebrigtsen
c05f1020ce Tweat how MML specifies the encoding of binary data
* lisp/gnus/mml.el (mml-parse-1): Use `data-encoding' to be
slightly less confusing than `content-transfer-encoding'.

* doc/misc/emacs-mime.texi (MML Definition): Document it.

* lisp/gnus/message.el (message-insert-screenshot): Adjust usage.
2020-08-06 16:47:21 +02:00
Lars Ingebrigtsen
d3fabff99d Change how Mail-Copies-To: never is handled in Message
* lisp/gnus/message.el (message-get-reply-headers): Change how
Mail-Copies-To: never is handled (bug#37591).  When that header is
present, put all the remaining recipients in the To header,
instead of picking an arbitrary recipient to have in the To
header, and the rest in the Cc header.
2020-08-06 15:53:24 +02:00
Lars Ingebrigtsen
b5ea24cb44 Make it possible to use Message as a mailto: desktop handler
* doc/misc/message.texi (System Mailer Setup): Document the usage.

* lisp/gnus/gnus-art.el (gnus-url-mailto): Move most of the code
here to 'message-mailto-1' (bug#38314).

* lisp/gnus/message.el (message-parse-mailto-url): Mark as obsolete.
(message-parse-mailto-url): Rewritten slightly from the above.
(message-mailto): New command.
(message-mailto-1): New function.
2020-08-06 14:50:40 +02:00
Christophe Troestler
2194284c55 Enable replying to an ical event even when not an attendee
* lisp/gnus/gnus-icalendar.el
(gnus-icalendar-event--build-reply-event-body): Display a warning
instead of barfing when user is missing from attendee list.

When the user identity is not present in the attendee list, an error
is triggered making replying to such an event impossible (the reply
message not being even composed).  This replaces it with a warning.
This is necessary because one may receive events that the organizer
did not set up well and it is up to the user to decide whether or not
to reply to them (bug#41723).
Copyright-paperwork-exempt: yes
2020-08-05 18:01:27 +02:00
Lars Ingebrigtsen
4b3f44fc97 Fix max-width/height for Message screenshots
* lisp/gnus/message.el (message-insert-screenshot):
:max-width/height apparently has to be integers.
2020-08-05 15:02:28 +02:00
Lars Ingebrigtsen
1b7eb82864 Tweak the Message screenshot insertion
* lisp/gnus/message.el (message-insert-screenshot): Force scaling
to 1, since the screenshot image will already be suitable for
displaying directly (it's the same resolution).
2020-08-05 12:31:44 +02:00
Lars Ingebrigtsen
a06f41ad2c Implement a screenshot command for Message mode
* doc/misc/message.texi (MIME): Document it.

* lisp/gnus/message.el (message-screenshot-command): New variable.
(message-mode-map): New keystroke and menu item.  Also add
mml-attach-file to the menu.
(message-insert-screenshot): New command.

* lisp/gnus/mml.el (mml-parse-1): Allow having
content-transfer-encoding already in the part, so that we can have
inline base64-encoded binaries in the Message buffers.
2020-08-05 12:21:35 +02:00
Arik Mitschang
9c967e7298 Add options for mode modern ciphers in smime-encrypt-cipher
* lisp/gnus/smime.el (smime-encrypt-cipher): Add support for more
modern ciphers (bug#8474).

Copyright-paperwork-exempt: yes
2020-08-04 20:32:13 +02:00
Lars Ingebrigtsen
59243e9f18 Fix two mml-sec minor bugs revealed by new test harness
* lisp/gnus/mml-sec.el
(mml-secure-allow-signing-with-unknown-recipient): New variable
(bug#18393) (but this should probably be fixed in a different way).
(mml-secure-epg-sign): Use it.
(mml-secure-check-user-id): Protect against recipients that aren't
email addresses, like "No recipient".
2020-08-04 19:28:51 +02:00
Lars Ingebrigtsen
9eb04d8740 Mark unused Gnus util function as obsolete
* lisp/gnus/gnus-util.el (gnus-test-list): Mark utility function
as obsolete -- there are no in-tree usage.
2020-08-04 19:28:51 +02:00
Lars Ingebrigtsen
0a12d43e84 Fix viewing encrypted+signed messages from Outlook
* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Fix
problem with CRLF-encoded encrypted+signed parts (bug#42637).
2020-08-04 18:08:47 +02:00
Lars Ingebrigtsen
2ad38b4745 If gnus-visual is nil, don't fontify patches and the like
* doc/misc/emacs-mime.texi (Display Customization): Document it.

* lisp/gnus/gnus-art.el (gnus-mime-display-single): Bind it.

* lisp/gnus/mm-view.el (mm-inline-font-lock): New variable (bug#38421).
(mm-display-inline-fontify): Use it.
2020-08-02 19:44:30 +02:00
Lars Ingebrigtsen
99d1a66646 Make the "All" setting for large-newsgroup-initial in Gnus work
* lisp/gnus/gnus-sum.el (gnus-articles-to-read): Use it.
(gnus-summary-insert-old-articles): Ditto.

* lisp/gnus/gnus.el (large-newsgroup-initial): Make the "All"
setting work by using a special symbol, instead of nil which is
indistinguishable from not being present (bug#38466).
2020-08-02 14:32:19 +02:00
Lars Ingebrigtsen
a0b18d3cc2 Make libravatar lookups asynchronous
* lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Fix check for
repeated gravatars, which is now easier to trigger now that things
are more asynchronous.

* lisp/image/gravatar.el (gravatar--service-libravatar): Fetch the
data asynchronously (bug#40676).
(gravatar-service-alist): Adjust all providers so they are
asynchronous.
(gravatar-build-url): Adjust caller to be asynchronous.
(gravatar-retrieve): Ditto.
(gravatar-retrieve-synchronously): Ditto.
2020-07-30 05:32:16 +02:00
Lars Ingebrigtsen
b2bb1135d8 Fix thinko in previous nnmail.el patch
* lisp/gnus/nnmail.el (nnmail-check-duplication): Fix thinko in
previous patch -- group-art is a list of pairs, not a pair.
2020-07-28 00:51:29 +02:00
Lars Ingebrigtsen
3bd748ebba Fix problem with new-mail-mark in Gnus with non-unique names
* lisp/gnus/gnus-group.el (gnus-group-new-mail): Call with Gnus
group name.
(gnus-group-catchup): Ditto.

* lisp/gnus/gnus-sum.el (gnus-summary-exit): Ditto.

* lisp/gnus/nnimap.el (nnimap-update-info): Store Gnus group name.

* lisp/gnus/nnmail.el (nnmail-check-duplication): Store unique
Gnus names in the history instead of backend-specific (possibly
duplicated) group names (bug#41842).
2020-07-28 00:46:37 +02:00
Lars Ingebrigtsen
96a3b473fa Fix viewing of encrypted S/MIME messages
* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Don't
add a content-type header if there already is one (bug#41659).
2020-07-24 16:37:28 +02:00
Lars Ingebrigtsen
84ec57fe06 Fix viewing of encrypted S/MIME messages
* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Don't
add a content-type header if there already is one (bug#41659).
2020-07-23 17:12:40 +02:00
Mattias Engdegård
1da5b3abd5 Suppress relint false positive in gnus-start.el
* lisp/gnus/gnus-start.el (gnus-active-to-gnus-format):
Add suppressive comment.  Prepending "^to\\.\\|" is redundant when
'gnus-ignored-newsgroups' already matches that pattern, but adding
logic here is not worth the trouble.
2020-07-20 11:06:02 +02:00
Eric Abrahamsen
abe9497d74 Complete over the MIME types in gnus-summary-save-parts
* lisp/gnus/gnus-sum.el (gnus-summary-save-parts): Allow
completing over the parts in the first article in the list of the
process-marked articles (bug#39543).
2020-07-19 16:15:33 +02:00
Štěpán Němec
b89af66209 gnus-button-alist: Prefer URL links to Elisp library links
* lisp/gnus/gnus-art.el (gnus-button-alist): Move the URL clauses
higher up the list before library link setup to prevent URLs ending in
".el" from failing to be recognized (and invalid library links being
created instead) (bug#39781).
2020-07-19 16:05:11 +02:00
Lars Ingebrigtsen
b2eec81fcd Do window configuration change before killing Gnus buffers on exit
* lisp/gnus/gnus-sum.el (gnus-summary-exit): Do window
configuration changes before killing off the summary buffer, so
that the window conf machinery can return to a group-only
configuration (bug#40069).
2020-07-19 15:46:17 +02:00
Lars Ingebrigtsen
00a9712420 Allow adjusting the `W Q' Gnus summary command interactively
* doc/misc/gnus.texi (Article Washing): Document it.

* lisp/gnus/gnus-art.el (article-fill-long-lines): Take a numeric
prefix as the fill width (bug#38698).
2020-07-19 15:18:29 +02:00
Kévin Le Gouguec
af5861569b Simplify dummy root subject before comparing it to the current article
* lisp/gnus/gnus-sum.el (gnus-summary-prepare-threads): Simplify both
the dummy root and the following article before comparing them,
otherwise both the former and the latter might display the thread's
subject even when gnus-summary-line-format contains "%s" (bug#40520).
2020-07-19 04:34:22 +02:00
Lars Ingebrigtsen
e68a455afb Fix C-c C-f in the Gnus article buffer
* lisp/gnus/gnus-art.el (gnus-article-mode-map): Make the C-c C-f
command work in the article buffer, too (bug#40548).
2020-07-19 04:28:46 +02:00
Lars Ingebrigtsen
e9d359af41 Mention the Emacs bug tracker in the bug reporting doc strings
* lisp/gnus/gnus-msg.el (gnus-bug): Mention the Emacs bug tracker.

* lisp/mail/emacsbug.el (report-emacs-bug): Link directly to the
Emacs portion of the bug reports (bug#41109).
2020-07-19 03:49:16 +02:00
Lars Ingebrigtsen
468b02a5da Doc fix for article-fill-long-lines
* lisp/gnus/gnus-art.el (article-fill-long-lines): Mention that it
also respects `fill-column' (bug#41534).
2020-07-19 03:20:13 +02:00
Lars Ingebrigtsen
17f646128f Allow open-network-stream to use different TLS capability commands
* doc/lispref/processes.texi (Network): Document non-string
capability command.
* lisp/gnus/nntp.el (nntp-open-connection): Use HELP for Typhoon
and CAPABILITIES for everything else (bug#41960).

* lisp/net/network-stream.el (open-network-stream): Document
function variety of :capability-command.
(network-stream-open-starttls): Use it.
(network-stream-open-tls): Ditto.
(network-stream-open-shell): Ditto.
(network-stream--capability-command): New helper function.
2020-07-19 02:56:40 +02:00
Eric Abrahamsen
42b33405c2 Narrow to headers in gnus-registry before getting data
* lisp/gnus/gnus-registry.el (gnus-registry-spool-action): Narrow
to the headers before getting data from them (bug#42029).
2020-07-19 02:19:33 +02:00
Lars Ingebrigtsen
ef4c92bc0c Make old aliases to gnus-child* commands work before Gnus is loaded
* lisp/gnus/gnus.el (gnus-slave-no-server, gnus-slave): Mark as
obsolete in a way that still lets them be used as interactive
commands before Gnus is loaded.
* lisp/gnus/gnus-agent.el (gnus-slave-unplugged): Ditto (bug#42401).
2020-07-17 03:52:35 +02:00