[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
GNUS was written by Masanobu UMEDA. When autumn crept up in ’94, Lars Magne Ingebrigtsen grew bored and decided to rewrite Gnus.
If you want to investigate the person responsible for this outrage, you can point your (feh!) web browser to http://quimby.gnus.org/. This is also the primary distribution point for the new and spiffy versions of Gnus, and is known as The Site That Destroys Newsrcs And Drives People Mad.
During the first extended alpha period of development, the new Gnus was called “(ding) Gnus”. (ding) is, of course, short for ding is not Gnus, which is a total and utter lie, but who cares? (Besides, the “Gnus” in this abbreviation should probably be pronounced “news” as UMEDA intended, which makes it a more appropriate name, don’t you think?)
In any case, after spending all that energy on coming up with a new and spunky name, we decided that the name was too spunky, so we renamed it back again to “Gnus”. But in mixed case. “Gnus” vs. “GNUS”. New vs. old.
11.2.1 Gnus Versions | What Gnus versions have been released. | |
11.2.2 Why? | What’s the point of Gnus? | |
11.2.3 Compatibility | Just how compatible is Gnus with GNUS? | |
11.2.4 Conformity | Gnus tries to conform to all standards. | |
11.2.5 Emacsen | Gnus can be run on a few modern Emacsen. | |
11.2.6 Gnus Development | How Gnus is developed. | |
11.2.7 Contributors | Oodles of people. | |
11.2.8 New Features | Pointers to some of the new stuff in Gnus. |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The first “proper” release of Gnus 5 was done in November 1995 when it was included in the Emacs 19.30 distribution (132 (ding) Gnus releases plus 15 Gnus 5.0 releases).
In May 1996 the next Gnus generation (aka. “September Gnus” (after 99 releases)) was released under the name “Gnus 5.2” (40 releases).
On July 28th 1996 work on Red Gnus was begun, and it was released on January 25th 1997 (after 84 releases) as “Gnus 5.4” (67 releases).
On September 13th 1997, Quassia Gnus was started and lasted 37 releases. It was released as “Gnus 5.6” on March 8th 1998 (46 releases).
Gnus 5.6 begat Pterodactyl Gnus on August 29th 1998 and was released as “Gnus 5.8” (after 99 releases and a CVS repository) on December 3rd 1999.
On the 26th of October 2000, Oort Gnus was begun and was released as Gnus 5.10 on May 1st 2003 (24 releases).
On the January 4th 2004, No Gnus was begun.
On April 19, 2010 Gnus development was moved to Git. See http://git.gnus.org for details (http://www.gnus.org will be updated with the information when possible).
On the January 31th 2012, Ma Gnus was begun.
If you happen upon a version of Gnus that has a prefixed name—“(ding) Gnus”, “September Gnus”, “Red Gnus”, “Quassia Gnus”, “Pterodactyl Gnus”, “Oort Gnus”, “No Gnus”, “Ma Gnus”—don’t panic. Don’t let it know that you’re frightened. Back away. Slowly. Whatever you do, don’t run. Walk away, calmly, until you’re out of its reach. Find a proper released version of Gnus and snuggle up to that instead.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
What’s the point of Gnus?
I want to provide a “rad”, “happening”, “way cool” and “hep” newsreader, that lets you do anything you can think of. That was my original motivation, but while working on Gnus, it has become clear to me that this generation of newsreaders really belong in the stone age. Newsreaders haven’t developed much since the infancy of the net. If the volume continues to rise with the current rate of increase, all current newsreaders will be pretty much useless. How do you deal with newsgroups that have thousands of new articles each day? How do you keep track of millions of people who post?
Gnus offers no real solutions to these questions, but I would very much like to see Gnus being used as a testing ground for new methods of reading and fetching news. Expanding on UMEDA-san’s wise decision to separate the newsreader from the back ends, Gnus now offers a simple interface for anybody who wants to write new back ends for fetching mail and news from different sources. I have added hooks for customizations everywhere I could imagine it being useful. By doing so, I’m inviting every one of you to explore and invent.
May Gnus never be complete. C-u 100 M-x all-hail-emacs and C-u 100 M-x all-hail-xemacs.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Gnus was designed to be fully compatible with GNUS. Almost all key bindings have been kept. More key bindings have been added, of course, but only in one or two obscure cases have old bindings been changed.
Our motto is:
In a cloud bones of steel.
All commands have kept their names. Some internal functions have changed their names.
The gnus-uu
package has changed drastically. See section Decoding Articles.
One major compatibility question is the presence of several summary buffers. All variables relevant while reading a group are buffer-local to the summary buffer they belong in. Although many important variables have their values copied into their global counterparts whenever a command is executed in the summary buffer, this change might lead to incorrect values being used unless you are careful.
All code that relies on knowledge of GNUS internals will probably
fail. To take two examples: Sorting gnus-newsrc-alist
(or
changing it in any way, as a matter of fact) is strictly verboten. Gnus
maintains a hash table that points to the entries in this alist (which
speeds up many functions), and changing the alist directly will lead to
peculiar results.
Old hilit19 code does not work at all. In fact, you should probably
remove all hilit code from all Gnus hooks
(gnus-group-prepare-hook
and gnus-summary-prepare-hook
).
Gnus provides various integrated functions for highlighting. These are
faster and more accurate. To make life easier for everybody, Gnus will
by default remove all hilit calls from all hilit hooks. Uncleanliness!
Away!
Packages like expire-kill
will no longer work. As a matter of
fact, you should probably remove all old GNUS packages (and other
code) when you start using Gnus. More likely than not, Gnus already
does what you have written code to make GNUS do. (Snicker.)
Even though old methods of doing things are still supported, only the new methods are documented in this manual. If you detect a new method of doing something while reading this manual, that does not mean you have to stop doing it the old way.
Gnus understands all GNUS startup files.
Overall, a casual user who hasn’t written much code that depends on GNUS internals should suffer no problems. If problems occur, please let me know by issuing that magic command M-x gnus-bug.
If you are in the habit of sending bug reports very often, you
may find the helpful help buffer annoying after a while. If so, set
gnus-bug-create-help-buffer
to nil
to avoid having it pop
up at you.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
No rebels without a clue here, ma’am. We conform to all standards known to (wo)man. Except for those standards and/or conventions we disagree with, of course.
There are no known breaches of this standard.
There are no known breaches of this standard, either.
We do have some breaches to this one.
These are considered to be “vanity headers”, while I consider them
to be consumer information. After seeing so many badly formatted
articles coming from tin
and Netscape
I know not to use
either of those for posting articles. I would not have known that if
it wasn’t for the X-Newsreader
header.
USEFOR is an IETF working group writing a successor to RFC 1036, based on Son-of-RFC 1036. They have produced a number of drafts proposing various changes to the format of news articles. The Gnus towers will look into implementing the changes when the draft is accepted as an RFC.
All the various MIME RFCs are supported.
Message Mode is able to request notifications from the receiver.
RFC 1991 is the original PGP message specification, published as an informational RFC. RFC 2440 was the follow-up, now called Open PGP, and put on the Standards Track. Both document a non-MIME aware PGP format. Gnus supports both encoding (signing and encryption) and decoding (verification and decryption).
RFC 2015 (superseded by 3156 which references RFC 2440 instead of RFC 1991) describes the MIME-wrapping around the RFC 1991/2440 format. Gnus supports both encoding and decoding.
RFC 2633 describes the S/MIME format.
RFC 1730 is IMAP version 4, updated somewhat by RFC 2060 (IMAP 4 revision 1). RFC 2195 describes CRAM-MD5 authentication for IMAP. RFC 2086 describes access control lists (ACLs) for IMAP. RFC 2359 describes a IMAP protocol enhancement. RFC 2595 describes the proper TLS integration (STARTTLS) with IMAP. RFC 1731 describes the GSSAPI/Kerberos4 mechanisms for IMAP.
If you ever notice Gnus acting non-compliant with regards to the texts mentioned above, don’t hesitate to drop a note to Gnus Towers and let us know.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This version of Gnus should work on:
This Gnus version will absolutely not work on any Emacsen older than that. Not reliably, at least. Older versions of Gnus may work on older Emacs versions. Particularly, Gnus 5.10.8 should also work on Emacs 20.7 and XEmacs 21.1.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Gnus is developed in a two-phased cycle. The first phase involves much discussion on the development mailing list ‘ding@gnus.org’, where people propose changes and new features, post patches and new back ends. This phase is called the alpha phase, since the Gnusae released in this phase are alpha releases, or (perhaps more commonly in other circles) snapshots. During this phase, Gnus is assumed to be unstable and should not be used by casual users. Gnus alpha releases have names like “Oort Gnus” and “No Gnus”. See section Gnus Versions.
After futzing around for 10–100 alpha releases, Gnus is declared frozen, and only bug fixes are applied. Gnus loses the prefix, and is called things like “Gnus 5.10.1” instead. Normal people are supposed to be able to use these, and these are mostly discussed on the ‘gnu.emacs.gnus’ newsgroup. This newgroup is mirrored to the mailing list ‘info-gnus-english@gnu.org’ which is carried on Gmane as ‘gmane.emacs.gnus.user’. These releases are finally integrated in Emacs.
Some variable defaults differ between alpha Gnusae and released Gnusae,
in particular, mail-source-delete-incoming
. This is to prevent
lossage of mail if an alpha release hiccups while handling the mail.
See section Mail Source Customization.
The division of discussion between the ding mailing list and the Gnus newsgroup is not purely based on publicity concerns. It’s true that having people write about the horrible things that an alpha Gnus release can do (sometimes) in a public forum may scare people off, but more importantly, talking about new experimental features that have been introduced may confuse casual users. New features are frequently introduced, fiddled with, and judged to be found wanting, and then either discarded or totally rewritten. People reading the mailing list usually keep up with these rapid changes, while people on the newsgroup can’t be assumed to do so.
So if you have problems with or questions about the alpha versions, direct those to the ding mailing list ‘ding@gnus.org’. This list is also available on Gmane as ‘gmane.emacs.gnus.general’.
Some variable defaults differ between alpha Gnusae and released Gnusae,
in particular, mail-source-delete-incoming
. This is to prevent
lossage of mail if an alpha release hiccups while handling the mail.
See section Mail Source Customization.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The new Gnus version couldn’t have been done without the help of all the people on the (ding) mailing list. Every day for over a year I have gotten billions of nice bug reports from them, filling me with joy, every single one of them. Smooches. The people on the list have been tried beyond endurance, what with my “oh, that’s a neat idea <type type>, yup, I’ll release it right away <ship off> no wait, that doesn’t work at all <type type>, yup, I’ll ship that one off right away <ship off> no, wait, that absolutely does not work” policy for releases. Micro$oft—bah. Amateurs. I’m much worse. (Or is that “worser”? “much worser”? “worsest”?)
I would like to take this opportunity to thank the Academy for… oops, wrong show.
This manual was proof-read by Adrian Aichner, with Ricardo Nassif, Mark Borges, and Jost Krieger proof-reading parts of the manual.
The following people have contributed many patches and suggestions:
Christopher Davis, Andrew Eskilsson, Kai Grossjohann, Kevin Greiner, Jesper Harder, Paul Jarc, Simon Josefsson, David Kågedal, Richard Pieri, Fabrice Popineau, Daniel Quinlan, Michael Shields, Reiner Steib, Jason L. Tibbitts, III, Jack Vinson, Katsumi Yamaoka, and Teodor Zlatanov.
Also thanks to the following for patches and stuff:
Jari Aalto, Adrian Aichner, Vladimir Alexiev, Russ Allbery, Peter Arius, Matt Armstrong, Marc Auslander, Miles Bader, Alexei V. Barantsev, Frank Bennett, Robert Bihlmeyer, Chris Bone, Mark Borges, Mark Boyns, Lance A. Brown, Rob Browning, Kees de Bruin, Martin Buchholz, Joe Buehler, Kevin Buhr, Alastair Burt, Joao Cachopo, Zlatko Calusic, Massimo Campostrini, Castor, David Charlap, Dan Christensen, Kevin Christian, Jae-you Chung, James H. Cloos, Jr., Laura Conrad, Michael R. Cook, Glenn Coombs, Andrew J. Cosgriff, Neil Crellin, Frank D. Cringle, Geoffrey T. Dairiki, Andre Deparade, Ulrik Dickow, Dave Disser, Rui-Tao Dong, Joev Dubach, Michael Welsh Duggan, Dave Edmondson, Paul Eggert, Mark W. Eichin, Karl Eichwalder, Enami Tsugutomo, Michael Ernst, Luc Van Eycken, Sam Falkner, Nelson Jose dos Santos Ferreira, Sigbjorn Finne, Sven Fischer, Paul Fisher, Decklin Foster, Gary D. Foster, Paul Franklin, Guy Geens, Arne Georg Gleditsch, David S. Goldberg, Michelangelo Grigni, Dale Hagglund, D. Hall, Magnus Hammerin, Kenichi Handa, Raja R. Harinath, Yoshiki Hayashi, P. E. Jareth Hein, Hisashige Kenji, Scott Hofmann, Tassilo Horn, Marc Horowitz, Gunnar Horrigmo, Richard Hoskins, Brad Howes, Miguel de Icaza, François Felix Ingrand, Tatsuya Ichikawa, Ishikawa Ichiro, Lee Iverson, Iwamuro Motonori, Rajappa Iyer, Andreas Jaeger, Adam P. Jenkins, Randell Jesup, Fred Johansen, Gareth Jones, Greg Klanderman, Karl Kleinpaste, Michael Klingbeil, Peter Skov Knudsen, Shuhei Kobayashi, Petr Konecny, Koseki Yoshinori, Thor Kristoffersen, Jens Lautenbacher, Martin Larose, Seokchan Lee, Joerg Lenneis, Carsten Leonhardt, James LewisMoss, Christian Limpach, Markus Linnala, Dave Love, Mike McEwan, Tonny Madsen, Shlomo Mahlab, Nat Makarevitch, Istvan Marko, David Martin, Jason R. Mastaler, Gordon Matzigkeit, Timo Metzemakers, Richard Mlynarik, Lantz Moore, Morioka Tomohiko, Erik Toubro Nielsen, Hrvoje Niksic, Andy Norman, Fred Oberhauser, C. R. Oldham, Alexandre Oliva, Ken Olstad, Masaharu Onishi, Hideki Ono, Ettore Perazzoli, William Perry, Stephen Peters, Jens-Ulrik Holger Petersen, Ulrich Pfeifer, Matt Pharr, Andy Piper, John McClary Prevost, Bill Pringlemeir, Mike Pullen, Jim Radford, Colin Rafferty, Lasse Rasinen, Lars Balker Rasmussen, Joe Reiss, Renaud Rioboo, Roland B. Roberts, Bart Robinson, Christian von Roques, Markus Rost, Jason Rumney, Wolfgang Rupprecht, Jay Sachs, Dewey M. Sasser, Conrad Sauerwald, Loren Schall, Dan Schmidt, Ralph Schleicher, Philippe Schnoebelen, Andreas Schwab, Randal L. Schwartz, Danny Siu, Matt Simmons, Paul D. Smith, Jeff Sparkes, Toby Speight, Michael Sperber, Darren Stalder, Richard Stallman, Greg Stark, Sam Steingold, Paul Stevenson, Jonas Steverud, Paul Stodghill, Kiyokazu Suto, Kurt Swanson, Samuel Tardieu, Teddy, Chuck Thompson, Tozawa Akihiko, Philippe Troin, James Troup, Trung Tran-Duc, Jack Twilley, Aaron M. Ucko, Aki Vehtari, Didier Verna, Vladimir Volovich, Jan Vroonhof, Stefan Waldherr, Pete Ware, Barry A. Warsaw, Christoph Wedler, Joe Wells, Lee Willis, and Lloyd Zusman.
For a full overview of what each person has done, the ChangeLogs included in the Gnus alpha distributions should give ample reading (550kB and counting).
Apologies to everybody that I’ve forgotten, of which there are many, I’m sure.
Gee, that’s quite a list of people. I guess that must mean that there actually are people who are using Gnus. Who’d’a thunk it!
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
11.2.8.1 (ding) Gnus | New things in Gnus 5.0/5.1, the first new Gnus. | |
11.2.8.2 September Gnus | The Thing Formally Known As Gnus 5.2/5.3. | |
11.2.8.3 Red Gnus | Third time best—Gnus 5.4/5.5. | |
11.2.8.4 Quassia Gnus | Two times two is four, or Gnus 5.6/5.7. | |
11.2.8.5 Pterodactyl Gnus | Pentad also starts with P, AKA Gnus 5.8/5.9. | |
11.2.8.6 Oort Gnus | It’s big. It’s far out. Gnus 5.10/5.11. | |
11.2.8.7 No Gnus | Very punny. Gnus 5.12/5.13. | |
11.2.8.8 Ma Gnus | Celebrating 25 years of Gnus. |
These lists are, of course, just short overviews of the most important new features. No, really. There are tons more. Yes, we have feeping creaturism in full effect.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
New features in Gnus 5.0/5.1:
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
New features in Gnus 5.2/5.3:
mail-mode
, rnews-reply-mode
and gnus-msg
are
now obsolete.
(setq gnus-build-sparse-threads 'some) |
trn
-like tree buffer can be displayed (see section Tree Display).
(setq gnus-use-trees t) |
nn
-like pick-and-read minor mode is available for the summary
buffers (see section Pick and Read).
(add-hook 'gnus-summary-mode-hook 'gnus-pick-mode) |
(add-hook 'gnus-group-mode-hook 'gnus-topic-mode) |
(add-hook 'gnus-summary-exit-hook 'gnus-summary-bubble-group) |
nndoc
now understands all kinds of digests, mail boxes, rnews
news batches, ClariNet briefs collections, and just about everything
else (see section Document Groups).
nnsoup
) to create/read SOUP packets.
Message-ID
.
gnus-buffer-configuration
(see section Window Layout).
(setq gnus-permanently-visible-groups "^nnml:") |
Mail-Copies-To
header.
References
header
(see section Customizing Threading).
(setq gnus-summary-thread-gathering-function 'gnus-gather-threads-by-references) |
(setq gnus-keep-backlog 50) |
(setq gnus-prompt-before-saving t) |
gnus-uu
can view decoded files asynchronously while fetching
articles (see section Other Decode Variables).
(setq gnus-uu-grabbed-file-functions 'gnus-uu-grab-view) |
(setq gnus-cited-lines-visible 2) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
New features in Gnus 5.4/5.5:
and
,
or
, not
, and parent redirection (see section Advanced Scoring).
(setq gnus-suppress-duplicates t) |
nndoc
was rewritten to be easily extensible (see section Document Server Internals).
nn
-like. Line
numbers are displayed and the . command can be used to pick
articles (Pick and Read
).
w
(see section Score File Format).
(setq gnus-use-adaptive-scoring '(word)) |
(setq gnus-decay-scores t) |
nndoc
with nnvirtual
on top) has been added—C-M-d
(see section Really Various Summary Commands).
Sorting
Groups
).
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
New features in Gnus 5.6:
nndraft
back end has returned, but works differently than
before. All Message buffers are now also articles in the nndraft
group, which is created automatically.
gnus-alter-header-function
can now be used to alter header
values.
gnus-summary-goto-article
now accept Message-IDs.
nnvirtual
groups with
C-u C-c C-c.
nntp-rlogin-program
—new variable to ease customization.
C-u C-c C-c
in gnus-article-edit-mode
will now inhibit
re-highlighting of the article buffer.
gnus-boring-article-headers
—long-to
.
gnus-simplify-subject-functions
variable to allow greater
control over simplification.
nnmail-split-methods
.
custom-face-lookup
function has been removed.
If you used this function in your initialization files, you must
rewrite them to use face-spec-set
instead.
nntp
, you can set
nntp-record-commands
to a non-nil
value.
nntp
now uses ‘~/.authinfo’, a ‘.netrc’-like file, for
controlling where and how to send AUTHINFO to NNTP servers.
article-date-iso8601
.
gnus-score-thread-simplify
.
message-cite-original-without-signature
.
article-strip-all-blank-lines
—new article command.
gnus-adaptive-word-minimum
variable.
gnus-start-date-timer
command.
nnlistserv
back end.
nnweb
.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
New features in Gnus 5.8:
If you used procmail like in
(setq nnmail-use-procmail t) (setq nnmail-spool-file 'procmail) (setq nnmail-procmail-directory "~/mail/incoming/") (setq nnmail-procmail-suffix "\\.in") |
this now has changed to
(setq mail-sources '((directory :path "~/mail/incoming/" :suffix ".in"))) |
See section Mail Source Specifiers.
gnus-auto-select-first
can now be a function to be
called to position point.
gnus-article-display-hook
has been removed. Instead, a number
of variables starting with gnus-treat-
have been added.
nnslashdot
,
nnwarchive
and nnultimate
. nnweb has been revamped,
again, to keep up with ever-changing layouts.
nnimap
.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
New features in Gnus 5.10:
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.
make
remove-installed-shadows
.
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.
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.
TLS/SSL is now supported in IMAP and NNTP via ‘tls.el’ and GnuTLS.
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.
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. See section Sieve Commands, and the new Sieve manual (sieve)Top section ‘Top’ in Emacs Sieve.
gnus-group-read-ephemeral-group
can be called interactively,
using G M.
There are new commands for fetching newsgroup charters (H c) and control messages (H C).
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")))) |
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.
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) |
gnus-article-followup-with-original
) and R
(gnus-article-reply-with-original
) only yank the text in the
region if the region is active.
gnus-draft-edit-message
.
Use B w for gnus-summary-edit-article
instead.
More buttons for URLs, mail addresses, Message-IDs, Info links, man
pages and Emacs or Gnus related references. See section Article Buttons. The
variables gnus-button-*-level
can be used to control the
appearance of all article buttons. See section Article button levels.
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. See section Picons.
gnus-treat-body-boundary
is non-nil
, a
boundary line is drawn at the end of the headers.
(setq gnus-summary-display-arrow nil)
to disable it.
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.
gnus-summary-display-while-building
is
non-nil
, the summary buffer is shown and updated as it’s being
built.
mm-uu-diff-groups-regexp
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.
Put (setq gnus-treat-display-smileys nil)
in ‘~/.gnus.el’ to
disable it.
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.
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.
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.
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.
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.
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. See section Delayed Articles.
nnml-use-compressed-files
is non-nil
,
the nnml back end allows compressed message files.
gnus-gcc-mark-as-read
automatically marks
Gcc articles as read.
If gnus-gcc-externalize-attachments
or
message-fcc-externalize-attachments
is non-nil
, attach
local files as external parts.
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
.
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-*
).
message-generate-headers-first
is
nil
.
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.
use-hard-newlines
.
Decoding format=flowed was present but not documented in earlier
versions.
mm-fill-flowed
can be used to disable treatment of
“format=flowed” messages. Also, flowed text is disabled when sending
inline PGP signed messages. See (emacs-mime)Flowed text section ‘Flowed text’ in The Emacs MIME Manual. (New in Gnus 5.10.7)
This is invoked with the C-c M-n key binding from message mode.
In the message buffer, C-c C-f C-i or C-c C-u cycles through the valid values.
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
.
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
.
This change was made to avoid conflict with the standard binding of
back-to-indentation
, which is also useful in message mode.
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.
auto-compression-mode
is enabled, attachments are automatically
decompressed when activated.
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.
mml-dnd-protocol-alist
and mml-dnd-attach-options
.
See (message)MIME section ‘MIME’ in Message Manual.
auto-fill-mode
is enabled by default in Message mode.
See message-fill-column
. See (message)Various Message Variables section ‘Message Headers’ in Message Manual.
Gnus includes a new back end ‘nnmaildir.el’. See section Maildir.
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.
gnus-group-update-tool-bar
.
Its default value depends on your Emacs version. This is a new feature
in Gnus 5.10.9.
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.
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.
gnus-dired-minor-mode
(see Interaction with 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.
%C
for positioning point has changed to %*
.
gnus-slave-unplugged
A new command which starts Gnus offline in slave mode.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
New features in No Gnus:
If you have tried No Gnus (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 the ‘~/News/marks’ directory (perhaps selectively), so that flags are read from your ‘~/.newsrc.eld’ instead of from the stale marks file, where this release will store flags for nntp. See a later entry for more information about nntp marks. Note that downgrading isn’t safe in general.
utf-8-emacs
for saving articles drafts and ‘~/.newsrc.eld’. These files may not
be read correctly in Emacs 22 and below. If you want to use Gnus across
different Emacs versions, you may set mm-auto-save-coding-system
to emacs-mule
.
make
remove-installed-shadows
.
This provides a clean API to SASL mechanisms from within Emacs. The user visible aspects of this, compared to the earlier situation, include support for DIGEST-MD5 and NTLM. See (sasl)Top section ‘Emacs SASL’ in Emacs SASL.
The primary change this brings is support for DIGEST-MD5 and NTLM, when the server supports it.
It is enabled by default (see password-cache
), with a short
timeout of 16 seconds (see password-cache-expiry
). If
PGG is used as the PGP back end, the PGP
passphrase is managed by this mechanism. Passwords for ManageSieve
connections are managed by this mechanism, after querying the user
about whether to do so.
gnus-summary-idna-message
). This requires that GNU Libidn
(http://www.gnu.org/software/libidn/) has been installed.
nntp
, nnml
, and nnrss
. Also the
agent, the cache, and the marks features work with those back ends.
See section Accessing groups of non-English names.
gnus-summary-limit-to-replied
) and / R
(gnus-summary-limit-to-recipient
). See section Limiting.
gnus-summary-insert-ticked-articles
). See section Summary Generation Commands.
gnus-summary-sort-by-recipient
). See section Summary Sorting.
smime-ldap-host-list
.
gnus-picon-style
. See section Picons.
ANSI sequences are used in some Chinese hierarchies for
highlighting articles (gnus-article-treat-ansi-sequences
).
gnus-article-loose-mime
.
gnus-decay-scores
can be a regexp matching score files.
For example, set it to ‘\\.ADAPT\\'’ and only adaptive score files
will be decayed. See section Score Decays.
To
and Newsgroup
headers in
summary lines when using gnus-ignored-from-addresses
can be
customized with gnus-summary-to-prefix
and
gnus-summary-newsgroup-prefix
. See section To From Newsgroups.
gnus-mime-replace-part
and gnus-article-replace-part
.
See section MIME Commands, Using MIME.
mm-fill-flowed
can be used to disable treatment of
format=flowed messages. Also, flowed text is disabled when sending
inline PGP signed messages. See (emacs-mime)Flowed text section ‘Flowed text’ in The Emacs MIME Manual. (New in Gnus 5.10.7)
gnus-article-wide-reply-with-original
) for a wide reply in the
article buffer yanks a text that is in the active region, if it is set,
as well as the R (gnus-article-reply-with-original
) command.
Note that the R command in the article buffer no longer accepts a
prefix argument, which was used to make it do a wide reply.
See section Article Keymap.
gnus-article-describe-bindings
) used in the article buffer now
shows not only the article commands but also the real summary commands
that are accessible from the article buffer.
(setq message-generate-hashcash t)
to enable.
See section Hashcash.
mml-dnd-protocol-alist
and mml-dnd-attach-options
.
See (message)MIME section ‘MIME’ in Message Manual.
message-yank-empty-prefix
now controls how
empty lines are prefixed in cited text. See (message)Insertion Variables section ‘Insertion Variables’ in Message Manual.
References
header is hidden by default. To make all
headers visible, use (setq message-hidden-headers nil)
.
See (message)Message Headers section ‘Message Headers’ in Message Manual.
gnus-message-highlight-citation
.
auto-fill-mode
is enabled by default in Message mode.
See message-fill-column
. See (message)Various Message Variables section ‘Message Headers’ in Message Manual.
message-signature-directory
.
message-citation-line-format
controls the format
of the "Whomever writes:" line. You need to set
message-citation-line-function
to
message-insert-formatted-citation-line
as well.
The directory can be changed using the (customizable) variable
nntp-marks-directory
, and marks can be disabled using the
(back end) variable nntp-marks-is-evil
. The advantage of this
is that you can copy ‘~/News/marks’ (using rsync, scp or
whatever) to another Gnus installation, and it will realize what
articles you have read and marked. The data in ‘~/News/marks’
has priority over the same data in ‘~/.newsrc.eld’.
By default, Gnus does not send any information about itself, but you can
customize it using the variable nnimap-id
.
nnrss
back end now supports multilingual text.
Non-ASCII group names for the nnrss
groups are also
supported. See section RSS.
This feature, accessible via the functions
gnus-group-compact-group
(G z in the group buffer) and
gnus-server-compact-server
(z in the server buffer)
renumbers all articles in a group, starting from 1 and removing gaps.
As a consequence, you get a correct total article count (until
messages are deleted again).
gnus-group-update-tool-bar
.
Its default value depends on your Emacs version.
gnus-use-toolbar
and message-use-toolbar
.
nntp-via-address
into ‘bar.example.com’ from
‘foo.example.com’, Gnus will connect to the news host by way of the
intermediate host ‘bar.example.com’ from next time.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
I’m sure there will be lots of text here. It’s really spelled 真 Gnus.
New features in Ma Gnus:
If you don’t want those files to be compressed, use the configure option ‘--without-compress-install’. Lisp source files that don’t have the compiled elc version in the installation directory will not be compressed.
gnus-gcc-pre-body-encode-hook
and
gnus-gcc-post-body-encode-hook
are run before/after encoding
the message body of the Gcc copy of a sent message. See
See section Archived Messages.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] |
This document was generated on January 25, 2015 using texi2html 1.82.