gnus: Oort Gnus
11.2.8.6 Oort Gnus
..................
New features in Gnus 5.10:
• Installation changes
• Upgrading from previous (stable) version if you have used
Oort.
If you have tried Oort (the unstable Gnus branch leading to
this release) but went back to a stable version, be careful
when upgrading to this version. In particular, you will
probably want to remove all ‘.marks’ (nnml) and ‘.mrk’
(nnfolder) files, so that flags are read from your
‘.newsrc.eld’ instead of from the ‘.marks’/‘.mrk’ file where
this release store flags. See a later entry for more
information about marks. Note that downgrading isn’t save in
general.
• Lisp files are now installed in ‘.../site-lisp/gnus/’ by
default. It defaulted to ‘.../site-lisp/’ formerly. In
addition to this, the new installer issues a warning if other
Gnus installations which will shadow the latest one are
detected. You can then remove those shadows manually or
remove them using ‘make remove-installed-shadows’.
• New ‘make.bat’ for compiling and installing Gnus under MS
Windows
Use ‘make.bat’ if you want to install Gnus under MS Windows,
the first argument to the batch-program should be the
directory where ‘xemacs.exe’ respectively ‘emacs.exe’ is
located, if you want to install Gnus after compiling it, give
‘make.bat’ ‘/copy’ as the second parameter.
‘make.bat’ has been rewritten from scratch, it now features
automatic recognition of XEmacs and Emacs, generates
‘gnus-load.el’, checks if errors occur while compilation and
generation of info files and reports them at the end of the
build process. It now uses ‘makeinfo’ if it is available and
falls back to ‘infohack.el’ otherwise. ‘make.bat’ should now
install all files which are necessary to run Gnus and be
generally a complete replacement for the ‘configure; make;
make install’ cycle used under Unix systems.
The new ‘make.bat’ makes ‘make-x.bat’ and ‘xemacs.mak’
superfluous, so they have been removed.
• ‘~/News/overview/’ not used.
As a result of the following change, the ‘~/News/overview/’
directory is not used any more. You can safely delete the
entire hierarchy.
• ‘(require 'gnus-load)’
If you use a stand-alone Gnus distribution, you’d better add
‘(require 'gnus-load)’ into your ‘~/.emacs’ after adding the
Gnus lisp directory into load-path.
File ‘gnus-load.el’ contains autoload commands, functions and
variables, some of which may not be included in distributions
of Emacsen.
• New packages and libraries within Gnus
• The revised Gnus FAQ is included in the manual,
Frequently Asked Questions.
• TLS wrapper shipped with Gnus
TLS/SSL is now supported in IMAP and NNTP via ‘tls.el’ and
GnuTLS.
• Improved anti-spam features.
Gnus is now able to take out spam from your mail and news
streams using a wide variety of programs and filter rules.
Among the supported methods are RBL blocklists, bogofilter and
white/blacklists. Hooks for easy use of external packages
such as SpamAssassin and Hashcash are also new.
Thwarting Email Spam and Spam Package.
• Gnus supports server-side mail filtering using Sieve.
Sieve rules can be added as Group Parameters for groups, and
the complete Sieve script is generated using ‘D g’ from the
Group buffer, and then uploaded to the server using ‘C-c C-l’
in the generated Sieve buffer. Sieve Commands, and
the new Sieve manual Top (sieve)Top.
• Changes in group mode
• ‘gnus-group-read-ephemeral-group’ can be called interactively,
using ‘G M’.
• Retrieval of charters and control messages
There are new commands for fetching newsgroup charters (‘H c’)
and control messages (‘H C’).
• The new variable ‘gnus-parameters’ can be used to set group
parameters.
Earlier this was done only via ‘G p’ (or ‘G c’), which stored
the parameters in ‘~/.newsrc.eld’, but via this variable you
can enjoy the powers of customize, and simplified backups
since you set the variable in ‘~/.gnus.el’ instead of
‘~/.newsrc.eld’. The variable maps regular expressions
matching group names to group parameters, a’la:
(setq gnus-parameters
'(("mail\\..*"
(gnus-show-threads nil)
(gnus-use-scoring nil))
("^nnimap:\\(foo.bar\\)$"
(to-group . "\\1"))))
• Unread count correct in nnimap groups.
The estimated number of unread articles in the group buffer
should now be correct for nnimap groups. This is achieved by
calling ‘nnimap-fixup-unread-after-getting-new-news’ from the
‘gnus-setup-news-hook’ (called on startup) and
‘gnus-after-getting-new-news-hook’ (called after getting new
mail). If you have modified those variables from the default,
you may want to add
‘nnimap-fixup-unread-after-getting-new-news’ again. If you
were happy with the estimate and want to save some (minimal)
time when getting new mail, remove the function.
• Group names are treated as UTF-8 by default.
This is supposedly what USEFOR wanted to migrate to. See
‘gnus-group-name-charset-group-alist’ and
‘gnus-group-name-charset-method-alist’ for customization.
• ‘gnus-group-charset-alist’ and
‘gnus-group-ignored-charsets-alist’.
The regexps in these variables are compared with full group
names instead of real group names in 5.8. Users who customize
these variables should change those regexps accordingly. For
example:
("^han\\>" euc-kr) -> ("\\(^\\|:\\)han\\>" euc-kr)
• Old intermediate incoming mail files (‘Incoming*’) are deleted
after a couple of days, not immediately. Mail Source
Customization. (New in Gnus 5.10.10 / Emacs 22.2)
• Changes in summary and article mode
• ‘F’ (‘gnus-article-followup-with-original’) and ‘R’
(‘gnus-article-reply-with-original’) only yank the text in the
region if the region is active.
• In draft groups, ‘e’ is now bound to
‘gnus-draft-edit-message’. Use ‘B w’ for
‘gnus-summary-edit-article’ instead.
• Article Buttons
More buttons for URLs, mail addresses, Message-IDs, Info
links, man pages and Emacs or Gnus related references.
Article Buttons. The variables ‘gnus-button-*-level’ can be
used to control the appearance of all article buttons.
Article Button Levels.
• Single-part yenc encoded attachments can be decoded.
• Picons
The picons code has been reimplemented to work in GNU
Emacs—some of the previous options have been removed or
renamed.
Picons are small “personal icons” representing users, domain
and newsgroups, which can be displayed in the Article buffer.
Picons.
• If the new option ‘gnus-treat-body-boundary’ is non-‘nil’, a
boundary line is drawn at the end of the headers.
• Signed article headers (X-PGP-Sig) can be verified with ‘W p’.
• The Summary Buffer uses an arrow in the fringe to indicate the
current article. Use ‘(setq gnus-summary-display-arrow nil)’
to disable it.
• Warn about email replies to news
Do you often find yourself replying to news by email by
mistake? Then the new option
‘gnus-confirm-mail-reply-to-news’ is just the thing for you.
• If the new option ‘gnus-summary-display-while-building’ is
non-‘nil’, the summary buffer is shown and updated as it’s
being built.
• Gnus supports RFC 2369 mailing list headers, and adds a number
of related commands in mailing list groups. Mailing
List.
• The Date header can be displayed in a format that can be read
aloud in English. Article Date.
• diffs are automatically highlighted in groups matching
‘mm-uu-diff-groups-regexp’
• Better handling of Microsoft citation styles
Gnus now tries to recognize the mangled header block that some
Microsoft mailers use to indicate that the rest of the message
is a citation, even though it is not quoted in any way. The
variable ‘gnus-cite-unsightly-citation-regexp’ matches the
start of these citations.
The new command ‘W Y f’
(‘gnus-article-outlook-deuglify-article’) allows deuglifying
broken Outlook (Express) articles.
• ‘gnus-article-skip-boring’
If you set ‘gnus-article-skip-boring’ to ‘t’, then Gnus will
not scroll down to show you a page that contains only boring
text, which by default means cited text and signature. You
can customize what is skippable using
‘gnus-article-boring-faces’.
This feature is especially useful if you read many articles
that consist of a little new content at the top with a long,
untrimmed message cited below.
• Smileys (‘:-)’, ‘;-)’ etc.) are now displayed graphically in
Emacs too.
Put ‘(setq gnus-treat-display-smileys nil)’ in ‘~/.gnus.el’ to
disable it.
• Face headers handling. Face.
• In the summary buffer, the new command ‘/ N’ inserts new
messages and ‘/ o’ inserts old messages.
• Gnus decodes morse encoded messages if you press ‘W m’.
• ‘gnus-summary-line-format’
The default value changed to ‘%U%R%z%I%(%[%4L: %-23,23f%]%)
%s\n’. Moreover ‘gnus-extra-headers’, ‘nnmail-extra-headers’
and ‘gnus-ignored-from-addresses’ changed their default so
that the users name will be replaced by the recipient’s name
or the group name posting to for NNTP groups.
• Deleting of attachments.
The command ‘gnus-mime-save-part-and-strip’ (bound to ‘C-o’ on
MIME buttons) saves a part and replaces the part with an
external one. ‘gnus-mime-delete-part’ (bound to ‘d’ on MIME
buttons) removes a part. It works only on back ends that
support editing.
• ‘gnus-default-charset’
The default value is determined from the
‘current-language-environment’ variable, instead of
‘iso-8859-1’. Also the ‘.*’ item in
‘gnus-group-charset-alist’ is removed.
• Printing capabilities are enhanced.
Gnus supports Muttprint natively with ‘O P’ from the Summary
and Article buffers. Also, each individual MIME part can be
printed using ‘p’ on the MIME button.
• Extended format specs.
Format spec ‘%&user-date;’ is added into
‘gnus-summary-line-format-alist’. Also, user defined extended
format specs are supported. The extended format specs look
like ‘%u&foo;’, which invokes function
‘gnus-user-format-function-FOO’. Because ‘&’ is used as the
escape character, old user defined format ‘%u&’ is no longer
supported.
• ‘/ *’ (‘gnus-summary-limit-include-cached’) is rewritten.
It was aliased to ‘Y c’
(‘gnus-summary-insert-cached-articles’). The new function
filters out other articles.
• Some limiting commands accept a ‘C-u’ prefix to negate the
match.
If ‘C-u’ is used on subject, author or extra headers, i.e., ‘/
s’, ‘/ a’, and ‘/ x’
(‘gnus-summary-limit-to-{subject,author,extra}’) respectively,
the result will be to display all articles that do not match
the expression.
• Gnus inlines external parts (message/external).
• Changes in Message mode and related Gnus features
• Delayed articles
You can delay the sending of a message with ‘C-c C-j’ in the
Message buffer. The messages are delivered at specified time.
This is useful for sending yourself reminders. Delayed
Articles.
• If the new option ‘nnml-use-compressed-files’ is non-‘nil’,
the nnml back end allows compressed message files.
• The new option ‘gnus-gcc-mark-as-read’ automatically marks Gcc
articles as read.
• Externalizing of attachments
If ‘gnus-gcc-externalize-attachments’ or
‘message-fcc-externalize-attachments’ is non-‘nil’, attach
local files as external parts.
• The envelope sender address can be customized when using
Sendmail. Mail Variables (message)Mail Variables.
• Gnus no longer generate the Sender: header automatically.
Earlier it was generated when the user configurable email
address was different from the Gnus guessed default user
address. As the guessing algorithm is rarely correct these
days, and (more controversially) the only use of the Sender:
header was to check if you are entitled to cancel/supersede
news (which is now solved by Cancel Locks instead, see another
entry), generation of the header has been disabled by default.
See the variables ‘message-required-headers’,
‘message-required-news-headers’, and
‘message-required-mail-headers’.
• Features from third party ‘message-utils.el’ added to
‘message.el’.
Message now asks if you wish to remove ‘(was: <old subject>)’
from subject lines (see ‘message-subject-trailing-was-query’).
‘C-c M-m’ and ‘C-c M-f’ inserts markers indicating included
text. ‘C-c C-f a’ adds a X-No-Archive: header. ‘C-c C-f x’
inserts appropriate headers and a note in the body for
cross-postings and followups (see the variables
‘message-cross-post-*’).
• References and X-Draft-From headers are no longer generated
when you start composing messages and
‘message-generate-headers-first’ is ‘nil’.
• Easy inclusion of X-Faces headers. X-Face.
• Group Carbon Copy (GCC) quoting
To support groups that contains SPC and other weird
characters, groups are quoted before they are placed in the
Gcc: header. This means variables such as
‘gnus-message-archive-group’ should no longer contain quote
characters to make groups containing SPC work. Also, if you
are using the string ‘nnml:foo, nnml:bar’ (indicating Gcc into
two groups) you must change it to return the list ‘("nnml:foo"
"nnml:bar")’, otherwise the Gcc: line will be quoted
incorrectly. Note that returning the string ‘nnml:foo,
nnml:bar’ was incorrect earlier, it just didn’t generate any
problems since it was inserted directly.
• ‘message-insinuate-rmail’
Adding ‘(message-insinuate-rmail)’ and ‘(setq mail-user-agent
'gnus-user-agent)’ in ‘.emacs’ convinces Rmail to compose,
reply and forward messages in message-mode, where you can
enjoy the power of MML.
• ‘message-minibuffer-local-map’
The line below enables BBDB in resending a message:
(define-key message-minibuffer-local-map [(tab)]
'bbdb-complete-name)
• ‘gnus-posting-styles’
Add a new format of match like
((header "to" "larsi.*org")
(Organization "Somewhere, Inc."))
The old format like the lines below is obsolete, but still
accepted.
(header "to" "larsi.*org"
(Organization "Somewhere, Inc."))
• ‘message-ignored-news-headers’ and
‘message-ignored-mail-headers’
‘X-Draft-From’ and ‘X-Gnus-Agent-Meta-Information’ have been
added into these two variables. If you customized those,
perhaps you need add those two headers too.
• Gnus supports the “format=flowed” (RFC 2646) parameter. On
composing messages, it is enabled by ‘use-hard-newlines’.
Decoding format=flowed was present but not documented in
earlier versions.
• The option ‘mm-fill-flowed’ can be used to disable treatment
of “format=flowed” messages. Also, flowed text is disabled
when sending inline PGP signed messages. Flowed text
(emacs-mime)Flowed text. (New in Gnus 5.10.7)
• Gnus supports the generation of RFC 2298 Disposition
Notification requests.
This is invoked with the ‘C-c M-n’ key binding from message
mode.
• Message supports the Importance: (RFC 2156) header.
In the message buffer, ‘C-c C-f C-i’ or ‘C-c C-u’ cycles
through the valid values.
• Gnus supports Cancel Locks in News.
This means a header ‘Cancel-Lock’ is inserted in news posting.
It is used to determine if you wrote an article or not (for
canceling and superseding). Gnus generates a random password
string the first time you post a message, and saves it in your
‘~/.emacs’ using the Custom system. While the variable is
called ‘canlock-password’, it is not security sensitive data.
Publishing your canlock string on the web will not allow
anyone to be able to anything she could not already do. The
behavior can be changed by customizing
‘message-insert-canlock’.
• Gnus supports PGP (RFC 1991/2440), PGP/MIME (RFC 2015/3156)
and S/MIME (RFC 2630–2633).
It needs an external S/MIME and OpenPGP implementation, but no
additional Lisp libraries. This add several menu items to the
Attachments menu, and ‘C-c RET’ key bindings, when composing
messages. This also obsoletes ‘gnus-article-hide-pgp-hook’.
• MML (Mime compose) prefix changed from ‘M-m’ to ‘C-c C-m’.
This change was made to avoid conflict with the standard
binding of ‘back-to-indentation’, which is also useful in
message mode.
• The default for ‘message-forward-show-mml’ changed to the
symbol ‘best’.
The behavior for the ‘best’ value is to show MML (i.e.,
convert to MIME) when appropriate. MML will not be used when
forwarding signed or encrypted messages, as the conversion
invalidate the digital signature.
• If ‘auto-compression-mode’ is enabled, attachments are
automatically decompressed when activated.
• Support for non-ASCII domain names
Message supports non-ASCII domain names in From:, To: and Cc:
and will query you whether to perform encoding when you try to
send a message. The variable ‘message-use-idna’ controls
this. Gnus will also decode non-ASCII domain names in From:,
To: and Cc: when you view a message. The variable
‘gnus-use-idna’ controls this.
• You can now drag and drop attachments to the Message buffer.
See ‘mml-dnd-protocol-alist’ and ‘mml-dnd-attach-options’.
MIME (message)MIME.
• ‘auto-fill-mode’ is enabled by default in Message mode. See
‘message-fill-column’. Message Headers
(message)Various Message Variables.
• Changes in back ends
• Gnus can display RSS newsfeeds as a newsgroup. RSS.
• The nndoc back end now supports mailman digests and exim
bounces.
• Gnus supports Maildir groups.
Gnus includes a new back end ‘nnmaildir.el’. Maildir.
• The nnml and nnfolder back ends store marks for each groups.
This makes it possible to take backup of nnml/nnfolder
servers/groups separately of ‘~/.newsrc.eld’, while preserving
marks. It also makes it possible to share articles and marks
between users (without sharing the ‘~/.newsrc.eld’ file)
within, e.g., a department. It works by storing the marks
stored in ‘~/.newsrc.eld’ in a per-group file ‘.marks’ (for
nnml) and ‘GROUPNAME.mrk’ (for nnfolder, named GROUPNAME). If
the nnml/nnfolder is moved to another machine, Gnus will
automatically use the ‘.marks’ or ‘.mrk’ file instead of the
information in ‘~/.newsrc.eld’. The new server variables
‘nnml-marks-is-evil’ and ‘nnfolder-marks-is-evil’ can be used
to disable this feature.
• Appearance
• The menu bar item (in Group and Summary buffer) named “Misc”
has been renamed to “Gnus”.
• The menu bar item (in Message mode) named “MML” has been
renamed to “Attachments”. Note that this menu also contains
security related stuff, like signing and encryption (
Security (message)Security.).
• The tool bars have been updated to use GNOME icons in Group,
Summary and Message mode. You can also customize the tool
bars: ‘M-x customize-apropos RET -tool-bar$’ should get you
started. This is a new feature in Gnus 5.10.10. (Only for
Emacs, not in XEmacs.)
• The tool bar icons are now (de)activated correctly in the
group buffer, see the variable ‘gnus-group-update-tool-bar’.
Its default value depends on your Emacs version. This is a
new feature in Gnus 5.10.9.
• Miscellaneous changes
• ‘gnus-agent’
The Gnus Agent has seen a major updated and is now enabled by
default, and all nntp and nnimap servers from
‘gnus-select-method’ and ‘gnus-secondary-select-method’ are
agentized by default. Earlier only the server in
‘gnus-select-method’ was agentized by the default, and the
agent was disabled by default. When the agent is enabled,
headers are now also retrieved from the Agent cache instead of
the back ends when possible. Earlier this only happened in
the unplugged state. You can enroll or remove servers with ‘J
a’ and ‘J r’ in the server buffer. Gnus will not download
articles into the Agent cache, unless you instruct it to do
so, though, by using ‘J u’ or ‘J s’ from the Group buffer.
You revert to the old behavior of having the Agent disabled
with ‘(setq gnus-agent nil)’. Note that putting
‘(gnus-agentize)’ in ‘~/.gnus.el’ is not needed any more.
• Gnus reads the NOV and articles in the Agent if plugged.
If one reads an article while plugged, and the article already
exists in the Agent, it won’t get downloaded once more.
‘(setq gnus-agent-cache nil)’ reverts to the old behavior.
• Dired integration
‘gnus-dired-minor-mode’ (see Other modes) installs key
bindings in dired buffers to send a file as an attachment,
open a file using the appropriate mailcap entry, and print a
file using the mailcap entry.
• The format spec ‘%C’ for positioning point has changed to
‘%*’.
• ‘gnus-slave-unplugged’
A new command which starts Gnus offline in slave mode.