diff options
| author | Miles Bader | 2005-03-30 08:14:32 +0000 |
|---|---|---|
| committer | Miles Bader | 2005-03-30 08:14:32 +0000 |
| commit | 10ace8ea53395cc0ca656080cc3e828febc39b34 (patch) | |
| tree | 76c630eeaaeb80f46baa34c8af29ff0b41abfd4b | |
| parent | 96a29ab7a8e391db9078d1ffc0c76faffb470a1b (diff) | |
| download | emacs-10ace8ea53395cc0ca656080cc3e828febc39b34.tar.gz emacs-10ace8ea53395cc0ca656080cc3e828febc39b34.zip | |
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-220
Merge from gnus--rel--5.10
Patches applied:
* gnus--rel--5.10 (patch 45-52)
- Update from CVS
- Update from CVS: texi Makefile.in CVS keyw cruft
- Update from CVS: ChangeLog tweaks
2005-03-29 Reiner Steib <Reiner.Steib@gmx.de>
* etc/gnus-refcard.tex, etc/gnus-logo.eps: New files.
2005-03-25 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/message.el (message-resend): Bind rfc2047-encode-encoded-words.
* lisp/gnus/mm-util.el (mm-replace-in-string): New function.
(mm-xemacs-find-mime-charset-1): Ignore errors while loading
latin-unity, which cannot be used with XEmacs 21.1.
* lisp/gnus/rfc2047.el (rfc2047-encode-function-alist): Rename from
rfc2047-encoding-function-alist in order to avoid conflicting with
the old version.
(rfc2047-encode-message-header): Remove useless goto-char.
(rfc2047-encodable-p): Don't move point.
(rfc2047-syntax-table): Treat `(' and `)' as is.
(rfc2047-encode-region): Concatenate words containing non-ASCII
characters in structured fields; don't encode space-delimited
ASCII words even in unstructured fields; don't break words at
char-category boundaries; encode encoded words in structured
fields; treat text within parentheses as special; show the
original text when error has occurred; move point to the end of
the region after encoding, suggested by IRIE Tetsuya
<irie@t.email.ne.jp>; treat backslash-quoted characters as
non-special; check carefully whether to encode special characters;
fix some kind of misconfigured headers; signal a real error if
debug-on-quit or debug-on-error is non-nil; don't infloop,
suggested by Hiroshi Fujishima <pooh@nature.tsukuba.ac.jp>; assume
the close parenthesis may be included in the encoded word; encode
bogus delimiters.
(rfc2047-encode-string): Use mm-with-multibyte-buffer.
(rfc2047-encode-max-chars): New variable.
(rfc2047-encode-1): New function.
(rfc2047-encode): Use it; encode text so that it occupies the
maximum width within 76-column; work correctly on Q encoding for
iso-2022-* charsets; fold the line before encoding; don't append a
space if the encoded word includes close parenthesis.
(rfc2047-fold-region): Use existing whitespace for LWSP; make it
sure not to break a line just after the header name.
(rfc2047-b-encode-region): Remove.
(rfc2047-b-encode-string): New function.
(rfc2047-q-encode-region): Remove.
(rfc2047-q-encode-string): New function.
(rfc2047-encode-parameter): New function.
(rfc2047-encoded-word-regexp): Don't use shy group.
(rfc2047-decode-region): Follow rfc2047-encoded-word-regexp change.
(rfc2047-parse-and-decode): Ditto.
(rfc2047-decode): Treat the ascii coding-system as raw-text by
default.
2005-03-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
* lisp/gnus/rfc2047.el (rfc2047-encode-encoded-words): New variable.
(rfc2047-field-value): Strip props.
(rfc2047-encode-message-header): Disabled header folding -- not
all headers can be folded, and this should be done by the message
composition mode. Probably. I think.
(rfc2047-encodable-p): Say that =? needs encoding.
(rfc2047-encode-region): Encode =? strings.
2005-03-25 Jesper Harder <harder@ifa.au.dk>
* lisp/gnus/rfc2047.el (rfc2047-encoded-word-regexp): Support RFC 2231
language tags; remove unnecessary '+'. Reported by Stefan Wiens
<s.wi@gmx.net>.
(rfc2047-decode-string): Don't cons a string unnecessarily.
(rfc2047-parse-and-decode, rfc2047-decode): Use a character for
the encoding to avoid consing a string.
(rfc2047-decode): Use mm-subst-char-in-string instead of
mm-replace-chars-in-string.
2005-03-25 TSUCHIYA Masatoshi <tsuchiya@namazu.org>
* lisp/gnus/rfc2047.el (rfc2047-encode): Use uppercase letters to specify
encodings of MIME-encoded words, in order to improve
interoperability with several broken MUAs.
2005-03-21 Reiner Steib <Reiner.Steib@gmx.de>
* lisp/gnus/gnus-srvr.el (gnus-browse-select-group): Add NUMBER argument and
pass it to `gnus-browse-read-group'.
(gnus-browse-read-group): Add NUMBER argument and pass it to
`gnus-group-read-ephemeral-group'.
* lisp/gnus/gnus-group.el (gnus-group-read-ephemeral-group): Add NUMBER
argument and pass it to `gnus-group-read-group'.
2005-03-19 Aidan Kehoe <kehoea@parhasard.net>
* lisp/gnus/mm-util.el (mm-xemacs-find-mime-charset): Only call
mm-xemacs-find-mime-charset-1 if we have the mule feature
available at runtime.
2005-03-25 Katsumi Yamaoka <yamaoka@jpl.org>
* man/emacs-mime.texi (Display Customization): Markup fixes.
(rfc2047): Update.
2005-03-23 Reiner Steib <Reiner.Steib@gmx.de>
* man/gnus-faq.texi: Replaced with auto-generated version.
| -rw-r--r-- | etc/ChangeLog | 4 | ||||
| -rw-r--r-- | etc/gnus-logo.eps | 1055 | ||||
| -rw-r--r-- | etc/gnus-refcard.tex | 1427 | ||||
| -rw-r--r-- | lisp/gnus/ChangeLog | 91 | ||||
| -rw-r--r-- | lisp/gnus/gnus-group.el | 6 | ||||
| -rw-r--r-- | lisp/gnus/gnus-srvr.el | 19 | ||||
| -rw-r--r-- | lisp/gnus/message.el | 3 | ||||
| -rw-r--r-- | lisp/gnus/mm-util.el | 30 | ||||
| -rw-r--r-- | lisp/gnus/rfc2047.el | 641 | ||||
| -rw-r--r-- | man/ChangeLog | 9 | ||||
| -rw-r--r-- | man/emacs-mime.texi | 33 | ||||
| -rw-r--r-- | man/gnus-faq.texi | 3521 | ||||
| -rw-r--r-- | man/message.texi | 2 |
13 files changed, 4675 insertions, 2166 deletions
diff --git a/etc/ChangeLog b/etc/ChangeLog index 5632e1aaf12..4272d50cf2a 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2005-03-29 Reiner Steib <Reiner.Steib@gmx.de> | ||
| 2 | |||
| 3 | * gnus-refcard.tex, gnus-logo.eps: New files. | ||
| 4 | |||
| 1 | 2005-03-23 David Ponce <david@dponce.com> | 5 | 2005-03-23 David Ponce <david@dponce.com> |
| 2 | 6 | ||
| 3 | * NEWS: Mention recentf-keep. | 7 | * NEWS: Mention recentf-keep. |
diff --git a/etc/gnus-logo.eps b/etc/gnus-logo.eps new file mode 100644 index 00000000000..95408ba9af6 --- /dev/null +++ b/etc/gnus-logo.eps | |||
| @@ -0,0 +1,1055 @@ | |||
| 1 | %!PS-Adobe-2.0 EPSF-2.0 | ||
| 2 | %%Title: gnuslogo1.ps | ||
| 3 | %%Creator: XV Version 3.00 Rev: 3/30/93 - by John Bradley | ||
| 4 | %%BoundingBox: 0 0 493 505 | ||
| 5 | %%Pages: 1 | ||
| 6 | %%DocumentFonts: | ||
| 7 | %%EndComments | ||
| 8 | %%EndProlog | ||
| 9 | |||
| 10 | %%Page: 1 1 | ||
| 11 | |||
| 12 | % remember original state | ||
| 13 | /origstate save def | ||
| 14 | |||
| 15 | % build a temporary dictionary | ||
| 16 | 20 dict begin | ||
| 17 | |||
| 18 | % define string to hold a scanline's worth of data | ||
| 19 | /pix 62 string def | ||
| 20 | |||
| 21 | % lower left corner | ||
| 22 | 0 0 translate | ||
| 23 | |||
| 24 | % size of image (on paper, in 1/72inch coords) | ||
| 25 | 493.0 505.0 scale | ||
| 26 | |||
| 27 | % dimensions of data | ||
| 28 | 493 505 1 | ||
| 29 | |||
| 30 | % mapping matrix | ||
| 31 | [493 0 0 -505 0 505] | ||
| 32 | |||
| 33 | {currentfile pix readhexstring pop} | ||
| 34 | image | ||
| 35 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 36 | ffffffffffffffffffffffffffffffffffffffffff01fffffff8 | ||
| 37 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 38 | fffffffffffffffffffffffffffffffffffffffff8003ffffff8 | ||
| 39 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 40 | fffffffffffffffffffffffffffffffffffffffff0000ffffff8 | ||
| 41 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 42 | ffffffffffffffffffffffffffffffffffffffff8000007ffff8 | ||
| 43 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 44 | ffffffffffffffffffffffffffffffffffffffff0000003ffff8 | ||
| 45 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 46 | fffffffffffffffffffffffffffffffffffffffe0000000ffff8 | ||
| 47 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 48 | fffffffffffffffffffffffffffffffffffffff000000003fff8 | ||
| 49 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 50 | fffffffffffffffffffffffffffffffffffffff000000000fff8 | ||
| 51 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 52 | ffffffffffffffffffffffffffffffffffffffc0000000007ff8 | ||
| 53 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 54 | ffffffffffffffffffffffffffffffffffffff80000000003ff8 | ||
| 55 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 56 | ffffffffffffffffffffffffffffffffffffff00000000001ff8 | ||
| 57 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 58 | fffffffffffffffffffffffffffffffffffffe00000000000ff8 | ||
| 59 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 60 | fffffffffffffffffffffffffffffffffffffc00000000000ff8 | ||
| 61 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 62 | fffffffffffffffffffffffffffffffffffff8000000000007f8 | ||
| 63 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 64 | fffffffffffffffffffffffffffffffffffff0000000000003f8 | ||
| 65 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 66 | fffffffffffffffffffffffffffffffffffff0000000000003f8 | ||
| 67 | fffffffffffffffffffffffffff800ffffffffffffffffffffffffffffffffffffffffff | ||
| 68 | ffffffffffffffffffffffffffffffffffffe0000000000001f8 | ||
| 69 | fffffffffffffffffffffffffff0001fffffffffffffffffffffffffffffffffffffffff | ||
| 70 | ffffffffffffffffffffffffffffffffffffc0000000000000f8 | ||
| 71 | ffffffffffffffffffffffffffc00007ffffffffffffffffffffffffffffffffffffffff | ||
| 72 | ffffffffffffffffffffffffffffffffffffc0000000000000f8 | ||
| 73 | ffffffffffffffffffffffffff000001ffffffffffffffffffffffffffffffffffffffff | ||
| 74 | ffffffffffffffffffffffffffffffffffff8000000000000078 | ||
| 75 | fffffffffffffffffffffffffe0000003ffffffffffff0001fffffffffffffffffffffff | ||
| 76 | ffffffffffffffffffffffffffffffffffff0000000000000038 | ||
| 77 | fffffffffffffffffffffffffc0000001fffffffffffe00007ffffffffffffffffffffff | ||
| 78 | fffffffffffffffffffffffffffffffffffe0000000000000038 | ||
| 79 | fffffffffffffffffffffffff800000007ffffffffff800001ffffffffffffffffffffff | ||
| 80 | fffffffffffffffffffffffffffffffffffe0000000000000038 | ||
| 81 | fffffffffffffffffffffffff000000003fffffffffe0000003fffffffffffffffffffff | ||
| 82 | fffffffffffffffffffffffffffffffffffc0000000000000018 | ||
| 83 | ffffffffffffffffffffffffe000000001fffffffff80000000fffffffffffffffffffff | ||
| 84 | fffffffffffffffffffffffffffffffffffc0000000000000018 | ||
| 85 | ffffffffffffffffffffffffc000000000ffffffffe000000003ffffffffffffffffffff | ||
| 86 | fffffffffffffffffffffffffffffffffff80000000000000018 | ||
| 87 | ffffffffffffffffffffffff80000000007fffffff8000000000ffffffffffffffffffff | ||
| 88 | fffffffffffffffffffffffffffffffffff80000000000000008 | ||
| 89 | ffffffffffffffffffffffff00000000003fffffff00000000007fffffffffffffffffff | ||
| 90 | fffffffffffffffffffffffffffffffffff00000000000000008 | ||
| 91 | fffffffffffffffffffffffe00000000001ffffffe00000000001fffffffffffffffffff | ||
| 92 | fffffffffffffffffffffffffffffffffff00000000000000008 | ||
| 93 | fffffffffffffffffffffffc00000000000ffffff8000000000007ffffffffffffffffff | ||
| 94 | ffffffffffffffffffffffffffffffffffe00000000000000008 | ||
| 95 | fffffffffffffffffffffff8000000000007fffff0000000000007ffffffffffffffffff | ||
| 96 | ffffffffffffffffffffffffffffffffffe00000000000000008 | ||
| 97 | fffffffffffffffffffffff0000000000001ffffe0000000000000ffffffffffffffffff | ||
| 98 | ffffffffffffffffffffffffffffffffffc00000000000000000 | ||
| 99 | ffffffffffffffffffffffe0000000000000ffffc00000000000007fffffffffffffffff | ||
| 100 | ffffffffffffffffffffffffffffffffffc00000000000000000 | ||
| 101 | ffffffffffffffffffffffc00000000000007fff800000000000001fffffffffffffffff | ||
| 102 | ffffffffffffffffffffffffffffffffff800000000000000000 | ||
| 103 | ffffffffffffffffffffff800000000000003fff000000000000000fffffffffffffffff | ||
| 104 | ffffffffffffffffffffffffffffffffff800000000000000000 | ||
| 105 | ffffffffffffffffffffff000000000000003fff0000000000000007ffffffffffffffff | ||
| 106 | ffffffffffffffffffffffffffffffffff000040000000000000 | ||
| 107 | fffffffffffffffffffffe000000000000000ffe0000000000000001ffffffffffffffff | ||
| 108 | ffffffffffffffffffffffffffffffffff0007ffc00000000000 | ||
| 109 | fffffffffffffffffffffc000000000000000ffc0000000000000000ffffffffffffffff | ||
| 110 | fffffffffffffffffffffffffffffffffe001ffffc0000000000 | ||
| 111 | fffffffffffffffffffffc0000000000000007fc00000000000000007fffffffffffffff | ||
| 112 | fffffffffffffffffffffffffffffffffc003ffffe0000000000 | ||
| 113 | fffffffffffffffffffff80000000000000007f800000000000000003fffffffffffffff | ||
| 114 | fffffffffffffffffffffffffffffffffc007fffffc000000000 | ||
| 115 | fffffffffffffffffffff00000000000000001f000000000000000001fffffffffffffff | ||
| 116 | fffffffffffffffffffffffffffffffff800fffffff000000000 | ||
| 117 | ffffffffffffffffffffe00000000000000001f000000000000000000fffffffffffffff | ||
| 118 | fffffffffffffffffffffffffffffffff801fffffff800000000 | ||
| 119 | ffffffffffffffffffffc00000000000000000e0000000000000000007ffffffffffffff | ||
| 120 | fffffffffffffffffffffffffffffffff003ffffffff00000000 | ||
| 121 | ffffffffffffffffffff800000000000000000c0000000000000000003ffffffffffffff | ||
| 122 | fffffffffffffffffffffffffffffffff007ffffffff00000000 | ||
| 123 | ffffffffffffffffffff00000000000000000000000000000000000000ffffffffffffff | ||
| 124 | ffffffffffffffffffffffffffffffffe00fffffffff80000000 | ||
| 125 | fffffffffffffffffffe00000000000000000000000000000000000000ffffffffffffff | ||
| 126 | ffffffffffffffffffffffffffffffffe01fffffffffc0000008 | ||
| 127 | fffffffffffffffffffc000000000000000000000000000000000000007fffffffffffff | ||
| 128 | ffffffffffffffffffffffffffffffffc03fffffffffc0000008 | ||
| 129 | fffffffffffffffffff8000000000000000000000000000000000000001fffffffffffff | ||
| 130 | ffffffffffffffffffffffffffffffffc07ffffffffff0000000 | ||
| 131 | fff9fffffffffffffff800000fe00000000000000000000000000000001fffffffffffff | ||
| 132 | ffffffffffffffffffffffffffffffff807ffffffffff0000000 | ||
| 133 | fff9fffffffffffffff000001ff80000000000000000000000000000000fffffffffffff | ||
| 134 | ffffffffffffffffffffffffffffffff80fffffffffff0000008 | ||
| 135 | fff0ffffffffffffffc000007ffc00000000000000000000000000000007ffffffffffff | ||
| 136 | ffffffffffffffffffffffffffffffff81fffffffffff8000008 | ||
| 137 | fff0ffffffffffffffc00000fffc00000000000000000000000000000003ffffffffffff | ||
| 138 | ffffffffffffffffffffffffffffffff01fffffffffff8000008 | ||
| 139 | ffe07fffffffffffff800001ffff00000000000000000000000000000001ffffffffffff | ||
| 140 | ffffffffffffffffffffffffffffffff03fffffffffffc000008 | ||
| 141 | ffe07fffffffffffff00000fffffc0000000000000000000000000000000ffffffffffff | ||
| 142 | fffffffffffffffffffffffffffffffe03fffffffffffc000008 | ||
| 143 | ffe03ffffffffffffc00001fffffe00000000000000000000000000000007fffffffffff | ||
| 144 | fffffffffffffffffffffffffffffffe07fffffffffffe000008 | ||
| 145 | ffe03ffffffffffff800003ffffff00000000000000000000000000000003fffffffffff | ||
| 146 | fffffffffffffffffffffffffffffffe07fffffffffffe000008 | ||
| 147 | ffc03ffffffffffff000007ffffff80000000000000f80000000000000003fffffffffff | ||
| 148 | fffffffffffffffffffffffffffffffe0ffffffffffffe000008 | ||
| 149 | ffc01fffffffffffe00001fffffffe000000000000fffe000000000000001fffffffffff | ||
| 150 | fffffffffffffffffffffffffffffffc0ffffffffffffe000008 | ||
| 151 | ffc00fffffffffffc00003ffffffff000000000001ffff800000000000000fffffffffff | ||
| 152 | fffffffffffffffffffffffffffffffc1fffffffffffff000008 | ||
| 153 | ff800fffffffffff800003ffffffff800000000007ffffc000000000000007ffffffffff | ||
| 154 | fffffffffffffffffffffffffffffffc3fffffffffffff000008 | ||
| 155 | ff8007fffffffffe00000fffffffffc0000000001ffffffc00000000000003ffffffffff | ||
| 156 | fffffffffffffffffffffffffffffff87fffffffffffff000008 | ||
| 157 | ff8007fffffffffc00000fffffffffe0000000005ffffffe00000000000001ffffffffff | ||
| 158 | fffffffffffffffffffffffffffffff87fffffffffffff000008 | ||
| 159 | ff8003fffffffff800001ffffffffff000000000ffffffffc0000000000000ffffffffff | ||
| 160 | fffffffffffffffffffffffffffffff87fffffffffffff000008 | ||
| 161 | ff0001fffffffff000003ffffffffffc00000007fffffffff80000000000007fffffffff | ||
| 162 | fffffffffffffffffffffffffffffff8ffffffffffffff000008 | ||
| 163 | ff0000ffffffffe000003ffffffffffc0000000ffffffffffc0000000000007fffffffff | ||
| 164 | fffffffffffffffffffffffffffffffcffffffffffffff000008 | ||
| 165 | fe00007fffffff800000ffffffffffff0000001ffffffffffe0000000000001fffffffff | ||
| 166 | ffffffffffffffffffffffffffffe7fdffffffffffffff000008 | ||
| 167 | fe00007fffffff000001ffffffffffff8000003fffffffffff0000000000001fffffffff | ||
| 168 | ffffffffffffffffffffffffffffe7fdffffffffffffff000008 | ||
| 169 | fc00001ffffffc000003ffffffffffffc000007fffffffffffe0000000000007ffffffff | ||
| 170 | ffffffffffffffffffffffffffffc7ffffffffffffffff000008 | ||
| 171 | fc00001ffffff0000003ffffffffffffe00000fffffffffffff0000000000007ffffffff | ||
| 172 | fffffffffeffffffffffffffffff87ffffffffffffffff000008 | ||
| 173 | f800000fffffe0000007fffffffffffff00000fffffffffffff8000000000003ffffffff | ||
| 174 | fffffffffcffffffffffffffffff87ffffffffffffffff000008 | ||
| 175 | f8000003ffff0000000ffffffffffffff80001fffffffffffffc000000000001ffffffff | ||
| 176 | fffffffff8ffffffffffffffffff07ffffffffffffffff000008 | ||
| 177 | f8000001fffe0000001ffffffffffffff80001ffffffffffffff000000000000ffffffff | ||
| 178 | fffffffff8fffffffffffffffffe0fffffffffffffffff000008 | ||
| 179 | f0000000fff00000003ffffffffffffffc0001ffffffffffffff8000000000007fffffff | ||
| 180 | fffffffff0fffffffffffffffffe0fffffffffffffffff000018 | ||
| 181 | e00000001a000000007ffffffffffffffe0003ffffffffffffffc000000000003fffffff | ||
| 182 | fffffffff0fffffffffffffffffc0fffffffffffffffff000018 | ||
| 183 | e000000000000000007fffffffffffffff0003ffffffffffffffc000000000003fffffff | ||
| 184 | ffffffffe0fffffffffffffffffc1fffffffffffffffff000018 | ||
| 185 | c00000000000000000ffffffffffffffff0007ffffffffffffffe000000000001fffffff | ||
| 186 | ffffffffe0fffffffffffffffff81fffffffffffffffff000018 | ||
| 187 | c00000000000000001ffffffffffffffff0007fffffffffffffff0000000000007ffffff | ||
| 188 | ffffffffc0fffffffffffffffff83fffffffffffffffff000018 | ||
| 189 | 800000000000000007ffffffffffffffff800ffffffffffffffffc000000000003ffffff | ||
| 190 | ffffffff01fffffffffffffffff03fffffffffffffffff000038 | ||
| 191 | 800000000000000007ffffffffffffffff800ffffffffffffffffe000000000001ffffff | ||
| 192 | ffffffff01fffffffffffffffff03fffffffffffffffff800038 | ||
| 193 | 00000000000000000fffffffffffffffffc00fffffffffffffffff000000000000ffffff | ||
| 194 | fffffffe03ffffffffffffffffe07fffffffffffffffff800038 | ||
| 195 | 00000000000000001fffffffffffffffffc01fffffffffffffffff8000000000007fffff | ||
| 196 | fffffffc03ffffffffffffffffe07fffffffffffffffff800038 | ||
| 197 | 00000000000000003fffffffffffffffffe03fffffffffffffffffc000000000003fffff | ||
| 198 | fffffff803ffffffffffffffffc07fffffffffffffffff800038 | ||
| 199 | 00000000000000007ffffffffffffffffff03fffffffffffffffffe000000000000fffff | ||
| 200 | fffffff007ffffffffffffffffc0ffffffffffffffffff800038 | ||
| 201 | 0000000000000000fffffffffffffffffff07ffffffffffffffffff000000000000fffff | ||
| 202 | fffffff007ffffffffffffffff80ffffffffffffffffff800078 | ||
| 203 | 0000000000000003ffffffffffffffff8ff87ffffffffffffffffff8000000000001ffff | ||
| 204 | ffffffc00fffffffffffffffff81ffffffffffffffffff800078 | ||
| 205 | 8000000000000007ffffffffffffffff0ff8fffffffffffffffffffc000000000000ffff | ||
| 206 | ffffffc00fffffffffffffffff01ffffffffffffffffff8000f8 | ||
| 207 | 8000000000000007fffffffffffffffe0ffffffffffffffffffffffe0000000000007fff | ||
| 208 | ffffff801fffffffffffffffff03ffffffffffffffffff8000f8 | ||
| 209 | c00000000000001ffffffffffffffffc0fffffffffffffffffffffff0000000000001fff | ||
| 210 | fffffe001ffffffffffffffffe07ffffffffffffffffff8000f8 | ||
| 211 | e00000000000007ffffffffffffffff83fffffffffffffffffffffffc0000000000007ff | ||
| 212 | fffff8003ffffffffffffffffc07ffffffffffffffffff8000f8 | ||
| 213 | f00000000000007ffffffffffffffff03fffffffffffffffffffffffc0000000000001ff | ||
| 214 | fffff0003ffffffffffffffff80fffffffffffffffffff8000f8 | ||
| 215 | f0000000000000fffffffffffffffff07fffffffffffffffffffffffe0000000000000ff | ||
| 216 | ffffe0003ffffffffffffffff00fffffffffffffffffff8001f8 | ||
| 217 | f8000000000003ffffffffffffffffe07ffffffffffffffffffffffff00000000000000f | ||
| 218 | ffff00007fffffffffffffffe01fffffffffffffffffff0001f8 | ||
| 219 | fc000000000007ffffffffffffffffc07ffffffffffffffffffffffff800000000000007 | ||
| 220 | fffc00007fffffffffffffffc01fffffffffffffffffff0001f8 | ||
| 221 | fc000000000007ffffffffffffffffc0fffffffffffffffffffffffff800000000000000 | ||
| 222 | ffe000007ffffbffffffffff801fffffffffffffffffff0001f8 | ||
| 223 | fe00000000001fffffffffffffffff03fffffffffffffffffffffffffe00000000000000 | ||
| 224 | 00000000fffff3ffffffffff003fffffffffffffffffff0001f8 | ||
| 225 | fe00000000003fffffffffffffffff03ffffffffffffffffffffffffff00000000000000 | ||
| 226 | 00000001fffff1fffffffffe003fffffffffffffffffff0003f8 | ||
| 227 | ff00000000007ffffffffffffffffe03ffffffffffffffffffffffffff00000000000000 | ||
| 228 | 00000001ffffe1fffffffffc007fffffffffffffffffff0003f8 | ||
| 229 | ff8000000001fffffffffffffffffc07ffffffffffffffffffffffffff80000000000000 | ||
| 230 | 00000003ffffe0fffffffff0007fffffffffffffffffff0003f8 | ||
| 231 | ffc000000003fffffffffffffffffc0fffffffffffffffffffffffffffc0000000000000 | ||
| 232 | 00000003ffffc0ffffffffe0007fffffffffffffffffff0003f8 | ||
| 233 | ffe00000000ffffffffffffffffff81fffffffffffffffffffffffffffe0000000000000 | ||
| 234 | 00000007ffffc07fffffff8000ffffffffffffffffffff0003f8 | ||
| 235 | fff00000003ffffffffffffffffff01ffffffffffffffffffffffffffff0000000000000 | ||
| 236 | 00000007ffff803fffffff0000fffffffffffffffffffe0007f8 | ||
| 237 | fff8000000ffffffffffffffffffe03ffffffffffffffffffffffffffff8000000000000 | ||
| 238 | 00000007ffff801ffffffc0001fffffffffffffffffffe0007f8 | ||
| 239 | fffc000001ffffffffffffffffffe07ffffffffffffffffffffffffffffc000000000000 | ||
| 240 | 0000000fffff000ffffff80003fffffffffffffffffffe0007f8 | ||
| 241 | fffe00000fffffffffffffffffffc07ffffffffffffffffffffffffffffc000000000000 | ||
| 242 | 0000000fffff0007ffffe00003fffffffffffffffffffe0007f8 | ||
| 243 | ffff80007fffffffffffffffffff80fffffffffffffffffffffffffffffe000000000000 | ||
| 244 | 0000001ffffe0001ffff800007fffffffffffffffffffe000ff8 | ||
| 245 | ffffe007ffffffffffffffffffff80ffffffffffffffffffffffffffffff000000000000 | ||
| 246 | 0000001ffffe0000fffc000007fffffffffffffffffffe000ff8 | ||
| 247 | ffffffffffffffffffffffffffff01ffffffffffffffffffffffffffffff800000000000 | ||
| 248 | 0000003ffffe0000000000000ffffffffffffffffffffe000ff8 | ||
| 249 | fffffffffffffffffffffffffffe03ffffffffffffffffffffffffffffffc00000000000 | ||
| 250 | 0000003ffffc0000000000000ffffffffffffffffffffe000ff8 | ||
| 251 | fffffffffffffffffffffffffffe03ffffffffffffffffffffffffffffffe00000000000 | ||
| 252 | 0000007ffff80000000000001ffffffffffffffffffffe001ff8 | ||
| 253 | fffffffffffffffffffffffffffc07fffffffffffffffffffffffffffffff00000000000 | ||
| 254 | 0000007ffff80000000000001ffffffffffffffffffffe001ff8 | ||
| 255 | fffffffffffffffffffffffffff807fffffffffffffffffffffffffffffff80000000000 | ||
| 256 | 000000fffff80000000000003ffffffffffffffffffffc001ff8 | ||
| 257 | fffffffffffffffffffffffffff80ffffffffffffffffffffffffffffffffc0000000000 | ||
| 258 | 000003fffff00000000000007ffffffffffffffffffffc001ff8 | ||
| 259 | fffffffffffffffffffffffffff01ffffffffffffffffffffffffffffffffe0000000000 | ||
| 260 | 000007ffffe00000000000007ffffffffffffffffffffe003ff8 | ||
| 261 | fffffffffffffffffffffffffff01fffffffffffffffffffffffffffffffff0000000000 | ||
| 262 | 000007ffffe0000000000000fffffffffffffffffffffc003ff8 | ||
| 263 | ffffffffffffffffffffffffffc07fffffffffffffffffffffffffffffffff8000000000 | ||
| 264 | 00001fffffc0000000000001fffffffffffffffffffffc003ff8 | ||
| 265 | ffffffffffffffffffffffffffc07fffffffffffffffffffffffffffffffffe000000000 | ||
| 266 | 00001fffffc0000000000003fffffffffffffffffffffc003ff8 | ||
| 267 | ffffffffffffffffffffffffffc07ffffffffffffffffffffffffffffffffff000000000 | ||
| 268 | 00003fffff80000000000003fffffffffffffffffffffc007ff8 | ||
| 269 | ffffffffffffffffffffffffff01fffffffffffffffffffffffffffffffffff800000000 | ||
| 270 | 00007fffff80000000000007fffffffffffffffffffffc007ff8 | ||
| 271 | ffffffffffffffffffffffffff03fffffffffffffffffffffffffffffffffffc00000000 | ||
| 272 | 0000ffffff0000000000000ffffffffffffffffffffffc007ff8 | ||
| 273 | fffffffffffffffffffffffffe03fffffffffffffffffffffffffffffffffffc00000000 | ||
| 274 | 0001ffffff0000000000001ffffffffffffffffffffffc007ff8 | ||
| 275 | fffffffffffffffffffffffffc07ffffffffffffffffffffffffffffffffffff00000000 | ||
| 276 | 0003fffffe0000000000001ffffffffffffffffffffff800fff8 | ||
| 277 | fffffffffffffffffffffffff80fffffffffffffffffffffffffffffffffffff80000000 | ||
| 278 | 0007fffffe0000000000003ffffffffffffffffffffff800fff8 | ||
| 279 | fffffffffffffffffffffffff01ffffffffffffffffffffffffffffffffffffff0000000 | ||
| 280 | 001ffffffc0000000000007ffffffffffffffffffffff800fff8 | ||
| 281 | fffffffffffffffffffffffff03ffffffffffffffffffffffffffffffffffffff8000000 | ||
| 282 | 003ffffffc000000000000fffffffffffffffffffffff800fff8 | ||
| 283 | ffffffffffffffffffffffffe07ffffffffffffffffffffffffffffffffffffffe000000 | ||
| 284 | 00fffffff8000000000003fffffffffffffffffffffff001fff8 | ||
| 285 | ffffffffffffffffffffffffe07fffffffffffffffffffffffffffffffffffffff800000 | ||
| 286 | 03fffffff8000000000003fffffffffffffffffffffff001fff8 | ||
| 287 | ffffffffffffffffffffffffc0ffffffffffffffffffffffffffffffffffffffffc00000 | ||
| 288 | 07fffffff0000000000007fffffffffffffffffffffff001fff8 | ||
| 289 | ffffffffffffffffffffffff80fffffffffffffffffffffffffffffffffffffffffc0000 | ||
| 290 | 3ffffffff000000000000ffffffffffffffffffffffff003fff8 | ||
| 291 | ffffffffffffffffffffffff01ffffffffffffffffffffffffffffffffffffffffffe03f | ||
| 292 | fffffffff000000000003ffffffffffffffffffffffff003fff8 | ||
| 293 | ffffffffffffffffffffffff01ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 294 | fffffffff800000000007ffffffffffffffffffffffff003fff8 | ||
| 295 | fffffffffffffffffffffffe03ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 296 | fffffffff80000000000ffffffffffffffffffffffffe003fff8 | ||
| 297 | fffffffffffffffffffffffc07ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 298 | fffffffffc0000000003ffffffffffffffffffffffffe007fff8 | ||
| 299 | fffffffffffffffffffffffc0fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 300 | fffffffffe0000000007ffffffffffffffffffffffffe007fff8 | ||
| 301 | fffffffffffffffffffffff81fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 302 | fffffffffe000000000fffffffffffffffffffffffffe00ffff8 | ||
| 303 | fffffffffffffffffffffff01fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 304 | ffffffffff000000001fffffffffffffffffffffffffe00ffff8 | ||
| 305 | ffffffffffffffffffffffe03ffffffffffffffffffffffffbffffffffffffffffffffff | ||
| 306 | ffffffffff800000007fffffffffffffffffffffffffc00ffff8 | ||
| 307 | ffffffffffffffffffffffe07ffffffffffffffffffdfffff1ffffffffffffffffffffff | ||
| 308 | ffffffffffc0000000ffffffffffffffffffffffffffc00ffff8 | ||
| 309 | ffffffffffffffffffffffe07ffffffffffffffffff9fffff07fffffffffffffffffffff | ||
| 310 | ffffffffffe0000001ffffffffffffffffffffffffffc00ffff8 | ||
| 311 | ffffffffffffffffffffffc0ffffffffffffffffffe3ffffe03fffffffffffffffffffff | ||
| 312 | fffffffffff800001fffffffffffffffffffffffffffc01ffff8 | ||
| 313 | ffffffffffffffffffffff81ffffffffffffffffffc7ffffc00fffffffffffffffffffff | ||
| 314 | fffffffffffe00007fffffffffffffffffffffffffffc01ffff8 | ||
| 315 | ffffffffffffffffffffff81ffffffffffffffffff87ffffc007ffffffffffffffffffff | ||
| 316 | ffffffffffff8003ffffffffffffffffffffffffffff801ffff8 | ||
| 317 | ffffffffffffffffffffff03ffffffffffffffffff0fffff8007ffffffffffffffffffff | ||
| 318 | ffffffffffffffffffffffffffffffffffffffffffff803ffff8 | ||
| 319 | fffffffffffffffffffffe07fffffffffffffffffe0fffff8001ffffffffffffffffffff | ||
| 320 | ffffffffffffffffffffffffffffffffffffffffffff803ffff8 | ||
| 321 | fffffffffffffffffffffe07fffffffffffffffffc1fffff0000ffffffffffffffffffff | ||
| 322 | ffffffffffffffffffffffffffffffffffffffffffff803ffff8 | ||
| 323 | fffffffffffffffffffffc0ffffffffffffffffff83ffffe00007fffffffffffffffffff | ||
| 324 | ffffffffffffffffffffffffffffffffffffffffffff007ffff8 | ||
| 325 | fffffffffffffffffffff81fffffffffffffffffe03ffffe00007fffffffffffffffffff | ||
| 326 | ffffffffffffffffffffffffffffffffffffffffffff007ffff8 | ||
| 327 | fffffffffffffffffffff83fffffffffffffffffc07ffffc00003fffffffffffffffffff | ||
| 328 | ffffffffffffffffffffffffffffffffffffffffffff007ffff8 | ||
| 329 | fffffffffffffffffffff03fffffffffffffffff80fffff800001fffffffffffffffffff | ||
| 330 | fffffffffffffffffffffffffffffffffffffffffffe00fffff8 | ||
| 331 | ffffffffffffffffffffe07fffffffffffffffff00fffff800000fffffffffffffffffff | ||
| 332 | fffffffffffffffffffffffffffffffffffffffffffe00fffff8 | ||
| 333 | ffffffffffffffffffffe0fffffffffffffffffe01fffff0000007ffffffffffffffffff | ||
| 334 | fffffffffffffffffffffffffffffffffffffffffffe00fffff8 | ||
| 335 | ffffffffffffffffffffc0fffffffffffffffffc01ffffe0000003ffffffffffffffffff | ||
| 336 | fffffffffffffffffffffffffffffffffffffffffffe00fffff8 | ||
| 337 | ffffffffffffffffffff81fffffffffffffffff803ffffe0000003ffffffffffffffffff | ||
| 338 | fffffffffffffffffffffffffffffffffffffffffffe01fffff8 | ||
| 339 | ffffffffffffffffffff81ffffffffffffffffe007ffffc0000003ffffffffffffffffff | ||
| 340 | fffffffffffffffffffffffffffffffffffffffffffc01fffff8 | ||
| 341 | ffffffffffffffffffff83ffffffffffffffffe007ffffc0000001ffffffffffffffffff | ||
| 342 | fffffffffffffffffffffffffffffffffffffffffffc01fffff8 | ||
| 343 | ffffffffffffffffffff07ffffffffffffffff800fffff80000000ffffffffffffffffff | ||
| 344 | fffffffffffffffffffffffffffffffffffffffffffc01fffff8 | ||
| 345 | fffffffffffffffffffe07ffffffffffffffff800fffff00000000ffffffffffffffffff | ||
| 346 | fffffffffffffffffffffffffffffffffffffffffffc03fffff8 | ||
| 347 | fffffffffffffffffffc0ffffffffffffffffe001fffff00000000ffffffffffffffffff | ||
| 348 | fffffffffffffffffffffffffffffffffffffffffff803fffff8 | ||
| 349 | fffffffffffffffffffc0ffffffffffffffffc003ffffe000000007fffffffffffffffff | ||
| 350 | fffffffffffffffffffffffffffffffffffffffffff803fffff8 | ||
| 351 | fffffffffffffffffff81ffffffffffffffff0003ffffc000000007fffffffffffffffff | ||
| 352 | fffffffffffffffffffffffffffffffffffffffffff007fffff8 | ||
| 353 | fffffffffffffffffff01fffffffffffffffe0007ffffc000000003fffffffffffffffff | ||
| 354 | fffffffffffffffffffffffffffffffffffffffffff007fffff8 | ||
| 355 | fffffffffffffffffff03fffffffffffffffe000fffff8000000001fffffffffffffffff | ||
| 356 | fffffffffffffffffffffffffffffffffffffffffff007fffff8 | ||
| 357 | ffffffffffffffffffe07fffffffffffffff8000fffff0000000001fffffffffffffffff | ||
| 358 | ffffffffffffffffffffffffffffffffffffffffffe00ffffff8 | ||
| 359 | ffffffffffffffffffc07fffffffffffffff0001fffff0000000001fffffffffffffffff | ||
| 360 | ffffffffffffffffffffffffffffffffffffffffffe00ffffff8 | ||
| 361 | ffffffffffffffffffc0fffffffffffffffe0001ffffe0000000000fffffffffffffffff | ||
| 362 | ffffffffffffffffffffffffffffffffffffffffffe00ffffff8 | ||
| 363 | ffffffffffffffffff80fffffffffffffff80003ffffe0000000000fffffffffffffffff | ||
| 364 | ffffffffffffffffffffffffffffffffffffffffffe01ffffff8 | ||
| 365 | ffffffffffffffffff81fffffffffffffff00007ffffc0000000000fffffffffffffffff | ||
| 366 | ffffffffffffffffffffffffffffffffffffffffffc01ffffff8 | ||
| 367 | ffffffffffffffffff81ffffffffffffffe00007ffffc00000000007ffffffffffffffff | ||
| 368 | ffffffffffffffffffffffffffffffffffffffffffc01ffffff8 | ||
| 369 | ffffffffffffffffff03ffffffffffffffc0000fffffc00000000007ffffffffffffffff | ||
| 370 | ffffffffffffffffffffffffffffffffffffffffffc03ffffff8 | ||
| 371 | fffffffffffffffffe03ffffffffffffff00000fffffe00000000007ffffffffffffffff | ||
| 372 | ffffffffffffffffffffffffffffffffffffffffff803ffffff8 | ||
| 373 | fffffffffffffffffc07fffffffffffffe00001ffffff00000000007ffffffffffffffff | ||
| 374 | ffffffffffffffffffffffffffffffffffffffffff803ffffff8 | ||
| 375 | fffffffffffffffffc07fffffffffffffc00007ffffffc0000000007ffffffffffffffff | ||
| 376 | ffffffffffffffffffffffffffffffffffffffffff807ffffff8 | ||
| 377 | fffffffffffffffff807fffffffffffff00001fffffffe0000000003ffffffffffffffff | ||
| 378 | ffffffffffffffffffffffffffffffffffffffffff807ffffff8 | ||
| 379 | fffffffffffffffff807ffffffffffffe00003ffffffff0000000003ffffffffffffffff | ||
| 380 | ffffffffffffffffffffffffffffffffffffffffff007ffffff8 | ||
| 381 | fffffffffffffffff00fffffffffffff800007ffffffff8000000003ffffffffffffffff | ||
| 382 | ffffffffffffffffffffffffffffffffffffffffff00fffffff8 | ||
| 383 | fffffffffffffffff00fffffffffffff00000fffffffffc000000001ffffffffffffffff | ||
| 384 | ffffffffffffffffffffffffffffffffffffffffff00fffffff8 | ||
| 385 | ffffffffffffffffe00ffffffffffffc00003fffffffffe000000001ffffffffffffffff | ||
| 386 | fffffffffffffffffffffffffffffffffffffffffe01fffffff8 | ||
| 387 | ffffffffffffffffe00ffffffffffff800007ffffffffff000000001ffffffffffffffff | ||
| 388 | fffffffffffffffffffffffffffffffffffffffffe01fffffff8 | ||
| 389 | ffffffffffffffffc00ffffffffffff00000fffffffffff800000001ffffffffffffffff | ||
| 390 | fffffffffffffffffffffffffffffffffffffffffe01fffffff8 | ||
| 391 | ffffffffffffffff800fffffffffffc00001fffffffffffc00000001ffffffffffffffff | ||
| 392 | fffffffffffffffffffffffffffffffffffffffffe03fffffff8 | ||
| 393 | ffffffffffffffff800fffffffffff000007fffffffffffe00000001ffffffffffffffff | ||
| 394 | fffffffffffffffffffffffffffffffffffffffffe03fffffff8 | ||
| 395 | ffffffffffffffff001ffffffffffe00000fffffffffffff00000001ffffffffffffffff | ||
| 396 | fffffffffffffffffffffffffffffffffffffffffc07fffffff8 | ||
| 397 | ffffffffffffffff001ffffffffffc00001fffffffffffff80000001ffffffffffffffff | ||
| 398 | fffffffffffffffffffffffffffffffffffffffffc07fffffff8 | ||
| 399 | fffffffffffffffe000fffffffffe000003fffffffffffff80000001ffffffffffffffff | ||
| 400 | fffffffffffffffffffffffffffffffffffffffff807fffffff8 | ||
| 401 | fffffffffffffffe000fffffffffc000007fffffffffffffc0000000ffffffffffffffff | ||
| 402 | fffffffffffffffffffffffffffffffffffffffff807fffffff8 | ||
| 403 | fffffffffffffffc000fffffffff800000ffffffffffffffe0000000ffffffffffffffff | ||
| 404 | fffffffffffffffffffffffffffffffffffffffff80ffffffff8 | ||
| 405 | fffffffffffffffc0007fffffffe000001fffffffffffffff0000000ffffffffffffffff | ||
| 406 | fffffffffffffffffffffffffffffffffffffffff80ffffffff8 | ||
| 407 | fffffffffffffffc0003fffffffc000003fffffffffffffff0000000ffffffffffffffff | ||
| 408 | fffffffffffffffffffffffffffffffffffffffff01ffffffff8 | ||
| 409 | fffffffffffffff80001fffffff8000007fffffffffffffff8000000ffffffffffffffff | ||
| 410 | fffffffffffffffffffffffffffffffffffffffff01ffffffff8 | ||
| 411 | fffffffffffffff80000ffffffc000001ffffffffffffffff8000000ffffffffffffffff | ||
| 412 | fffffffffffffffffffffffffffffffffffffffff01ffffffff8 | ||
| 413 | fffffffffffffff800003fffff0000003ffffffffffffffffc000000ffffffffffffffff | ||
| 414 | ffffffffffffffffffffffffffffffffffffffffe01ffffffff8 | ||
| 415 | fffffffffffffff000000000000000007ffffffffffffffffc000000ffffffffffffffff | ||
| 416 | ffffffffffffffffffffffffffffffffffffffffe03ffffffff8 | ||
| 417 | ffffffffffffffe00000000000000000fffffffffffffffffe000000ffffffffffffffff | ||
| 418 | ffffffffffffffffffffffffffffffffffffffffe03ffffffff8 | ||
| 419 | ffffffffffffffe00000000000000001fffffffffffffffffe000000ffffffffffffffff | ||
| 420 | ffffffffffffffffffffffffffffffffffffffffc07ffffffff8 | ||
| 421 | ffffffffffffffc00000000000000003fffffffffffffffffe000000ffffffffffffffff | ||
| 422 | ffffffffffffffffffffffffffffffffffffffffc07ffffffff8 | ||
| 423 | ffffffffffffffc00000000000000007ffffffffffffffffff000000ffffffffffffffff | ||
| 424 | ffffffffffffffffffffffffffffffffffffffffc07ffffffff8 | ||
| 425 | ffffffffffffffc0000000000000000fffffffffffffffffff000000ffffffffffffffff | ||
| 426 | ffffffffffffffffffffffffffffffffffffffffc0fffffffff8 | ||
| 427 | ffffffffffffff80000000000000003fffffffffffffffffff800000ffffffffffffffff | ||
| 428 | ffffffffffffffffffffffffffffffffffffffffc0fffffffff8 | ||
| 429 | ffffffffffffff80000000000000007fffffffffffffffffff800001ffffffffffffffff | ||
| 430 | ffffffffffffffffffffffffffffffffffffffff80fffffffff8 | ||
| 431 | ffffffffffffff8000000000000001ffffffffffffffffffff800001ffffffffffffffff | ||
| 432 | ffffffffffffffffffffffffffffffffffffffff81fffffffff8 | ||
| 433 | ffffffffffffff8000000000000001ffffffffffffffffffffc00001ffffffffffffffff | ||
| 434 | ffffffffffffffffffffffffffffffffffffffff81fffffffff8 | ||
| 435 | ffffffffffffff8000000000000003ffffffffffffffffffffe00001ffffffffffffffff | ||
| 436 | ffffffffffffffffffffffffffffffffffffffff01fffffffff8 | ||
| 437 | ffffffffffffff000000000000000fffffffffffffffffffffe00001ffffffffffffffff | ||
| 438 | ffffffffffffffffffffffffffffffffffffffff03fffffffff8 | ||
| 439 | ffffffffffffff000000000000001ffffffffffffffffffffff00001ffffffffffffffff | ||
| 440 | fffffffffffffffffffffffffffffffffffffffe03fffffffff8 | ||
| 441 | fffffffffffffe000000000000003ffffffffffffffffffffff00001ffffffffffffffff | ||
| 442 | fffffffffffffffffffffffffffffffffffffffe03fffffffff8 | ||
| 443 | fffffffffffffe000000000000007ffffffffffffffffffffff00001ffffffffffffffff | ||
| 444 | fffffffffffffffffffffffffffffffffffffffe03fffffffff8 | ||
| 445 | fffffffffffffc00000000000001fffffffffffffffffffffff00001ffffffffffffffff | ||
| 446 | fffffffffffffffffffffffffffffffffffffffe07fffffffff8 | ||
| 447 | fffffffffffffc00000000000007fffffffffffffffffffffff00001ffffffffffffffff | ||
| 448 | fffffffffffffffffffffffffffffffffffffffc07fffffffff8 | ||
| 449 | fffffffffffffc00000000000007fffffffffffffffffffffff00001ffffffffffffffff | ||
| 450 | fffffffffffffffffffffffffffffffffffffffc07fffffffff8 | ||
| 451 | fffffffffffffc0000000000003ffffffffffffffffffffffff80003ffffffffffffffff | ||
| 452 | fffffffffffffffffffffffffffffffffffffffc0ffffffffff8 | ||
| 453 | fffffffffffffc0000000000007ffffffffffffffffffffffff80003ffffffffffffffff | ||
| 454 | fffffffffffffffffffffffffffffffffffffffc0ffffffffff8 | ||
| 455 | fffffffffffffc000000000000fffffffffffffffffffffffff80003ffffffffffffffff | ||
| 456 | fffffffffffffffffffffffffffffffffffffff80ffffffffff8 | ||
| 457 | fffffffffffffc000000000003fffffffffffffffffffffffff80003ffffffffffffffff | ||
| 458 | fffffffffffffffffffffffffffffffffffffff80ffffffffff8 | ||
| 459 | fffffffffffffc000000000007fffffffffffffffffffffffff80003ffffffffffffffff | ||
| 460 | fffffffffffffffffffffffffffffffffffffff00ffffffffff8 | ||
| 461 | fffffffffffffc00000000001ffffffffffffffffffffffffff80007ffffffffffffffff | ||
| 462 | fffffffffffffffffffffffffffffffffffffff01ffffffffff8 | ||
| 463 | fffffffffffffe00000000001ffffffffffffffffffffffffff80007ffffffffffffffff | ||
| 464 | fffffffffffffffffffffffffffffffffffffff01ffffffffff8 | ||
| 465 | fffffffffffffe0000000000fffffffffffffffffffffffffff80007ffffffffffffffff | ||
| 466 | ffffffffffffffffffffffffffffffffffffffe01ffffffffff8 | ||
| 467 | ffffffffffffff0000000001fffffffffffffffffffffffffff80007ffffffffffffffff | ||
| 468 | ffffffffffffffffffffffffffffffffffffffe03ffffffffff8 | ||
| 469 | ffffffffffffff000000000ffffffffffffffffffffffffffff80007ffffffffffffffff | ||
| 470 | fffffffffffffffffffdffffffffffffffffffe03ffffffffff8 | ||
| 471 | ffffffffffffff800000003ffffffffffffffffffffffffffff80007ffffffffffffffff | ||
| 472 | fffffffffffffffffff9ffffffffffffffffffc03ffffffffff8 | ||
| 473 | ffffffffffffffe0000001fffffffffffffffffffffffffffff80007ffffffffffffffff | ||
| 474 | fffffffffffffffffff1ffffffffffffffffff807ffffffffff8 | ||
| 475 | fffffffffffffff0000001fffffffffffffffffffffffffffff8000fffffffffffffffff | ||
| 476 | fffffffffffffffffff1ffffffffffffffffff807ffffffffff8 | ||
| 477 | fffffffffffffff800000ffffffffffffffffffffffffffffffc000fffffffffffffffff | ||
| 478 | fffffffffffffffffff1ffffffffffffffffff807ffffffffff8 | ||
| 479 | fffffffffffffffe0003fffffffffffffffffffffffffffffffc000fffffffffffffffff | ||
| 480 | ffffffffffffffffffe1ffffffffffffffffff807ffffffffff8 | ||
| 481 | ffffffffffffffff4007fffffffffffffffffffffffffffffffc001fffffffffffffffff | ||
| 482 | ffffffffffffffffffc1ffffffffffffffffff00fffffffffff8 | ||
| 483 | fffffffffffffffffffffffffffffffffffffffffffffffffffc001fffffffffffffffff | ||
| 484 | ffffffffffffffffff83ffffffffffffffffff00fffffffffff8 | ||
| 485 | fffffffffffffffffffffffffffffffffffffffffffffffffffc001fffffffffffffffff | ||
| 486 | ffffffffffffffffff83ffffffffffffffffff00fffffffffff8 | ||
| 487 | fffffffffffffffffffffffffffffffffffffffffffffffffffc001fffffffffffffffff | ||
| 488 | ffffffffffffffffff03ffffffffffffffffff00fffffffffff8 | ||
| 489 | fffffffffffffffffffffffffffffffffffffffffffffffffffc001fffffffffffffffff | ||
| 490 | ffffffffffffffffff03ffffffffffffffffff01fffffffffff8 | ||
| 491 | fffffffffffffffffffffffffffffffffffffffffffffffffffc003fffffffffffffffff | ||
| 492 | ffffffffffffffffff07ffffffffffffffffff01fffffffffff8 | ||
| 493 | fffffffffffffffffffffffffffffffffffffffffffffffffffc003fffffffffffffffff | ||
| 494 | fffffffffffffffffe07fffffffffffffffffe01fffffffffff8 | ||
| 495 | fffffffffffffffffffffffffffffffffffffffffffffffffffc003fffffffffffffffff | ||
| 496 | fffffffffffffffffc07fffffffffffffffffe03fffffffffff8 | ||
| 497 | fffffffffffffffffffffffffffffffffffffffffffffffffffc007fffffffffffffffff | ||
| 498 | fffffffffffffffffc07fffffffffffffffffc03fffffffffff8 | ||
| 499 | fffffffffffffffffffffffffffffffffffffffffffffffffffc007fffffffffffffffff | ||
| 500 | fffffffffffffffff80ffffffffffffffffffc03fffffffffff8 | ||
| 501 | fffffffffffffffffffffffffffffffffffffffffffffffffffe007fffffffffffffffff | ||
| 502 | fffffffffffffffff80ffffffffffffffffffc03fffffffffff8 | ||
| 503 | fffffffffffffffffffffffffffffffffffffffffffffffffffe007fffffffffffffffff | ||
| 504 | fffffffffffffffff80ffffffffffffffffffc03fffffffffff8 | ||
| 505 | fffffffffffffffffffffffffffffffffffffffffffffffffffe00ffffffffffffffffff | ||
| 506 | fffffffffffffffff03ffffffffffffffffff807fffffffffff8 | ||
| 507 | fffffffffffffffffffffffffffffffffffffffffffffffffffe00ffffffffffffffffff | ||
| 508 | ffffffffffffffffe01ffffffffffffffffff807fffffffffff8 | ||
| 509 | fffffffffffffffffffffffffffffffffffffffffffffffffffe01ffffffffffffffffff | ||
| 510 | ffffffffffffffffe03ffffffffffffffffff807fffffffffff8 | ||
| 511 | fffffffffffffffffffffffffffffffffffffffffffffffffffe01ffffffffffffffffff | ||
| 512 | ffffffffffffffffc07ffffffffffffffffff00ffffffffffff8 | ||
| 513 | fffffffffffffffffffffffffffffffffffffffffffffffffffe03ffffffffffffffffff | ||
| 514 | ffffffffffffffffc07ffffffffffffffffff00ffffffffffff8 | ||
| 515 | fffffffffffffffffffffffffffffffffffffffffffffffffffe03ffffffffffffffffff | ||
| 516 | ffffffffffffffff80fffffffffffffffffff00ffffffffffff8 | ||
| 517 | fffffffffffffffffffffffffffffffffffffffffffffffffffe07ffffffffffffffffff | ||
| 518 | ffffffffffffffff80fffffffffffffffffff00ffffffffffff8 | ||
| 519 | ffffffffffffffffffffffffffffffffffffffffffffffffffff07ffffffffffffffffff | ||
| 520 | ffffffffffffffff00ffffffffffffffffffe01ffffffffffff8 | ||
| 521 | ffffffffffffffffffffffffffffffffffffffffffffffffffff07ffffffffffffffffff | ||
| 522 | fffffffffffffffe00ffffffffffffffffffe01ffffffffffff8 | ||
| 523 | ffffffffffffffffffffffffffffffffffffffffffffffffffff0fffffffffffffffffff | ||
| 524 | fffffffffffffffe00ffffffffffffffffffe01ffffffffffff8 | ||
| 525 | ffffffffffffffffffffffffffffffffffffffffffffffffffff0fffffffffffffffffff | ||
| 526 | fffffffffffffffc01ffffffffffffffffffc01ffffffffffff8 | ||
| 527 | ffffffffffffffffffffffffffffffffffffffffffffffffffff1fffffffffffffffffff | ||
| 528 | fffffffffffffffc03ffffffffffffffffffc01ffffffffffff8 | ||
| 529 | ffffffffffffffffffffffffffffffffffffffffffffffffffff3fffffffffffffffffff | ||
| 530 | fffffffffffffffc03ffffffffffffffffffc03ffffffffffff8 | ||
| 531 | ffffffffffffffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffff | ||
| 532 | fffffffffffffff807ffffffffffffffffffc03ffffffffffff8 | ||
| 533 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 534 | fffffffffffffff807ffffffffffffffffff803ffffffffffff8 | ||
| 535 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 536 | fffffffffffffff00fffffffffffffffffff803ffffffffffff8 | ||
| 537 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 538 | fffffffffffffff00fffffffffffffffffff807ffffffffffff8 | ||
| 539 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 540 | ffffffffffffffe01fffffffffffffffffff807ffffffffffff8 | ||
| 541 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 542 | ffffffffffffffe03fffffffffffffffffff807ffffffffffff8 | ||
| 543 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 544 | ffffffffffffffc03fffffffffffffffffff807ffffffffffff8 | ||
| 545 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 546 | ffffffffffffff807fffffffffffffffffff00fffffffffffff8 | ||
| 547 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 548 | ffffffffffffff807fffffffffffffffffff00fffffffffffff8 | ||
| 549 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 550 | ffffffffffffff00ffffffffffffffffffff00fffffffffffff8 | ||
| 551 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 552 | ffffffffffffff00fffffffffffffffffffe00fffffffffffff8 | ||
| 553 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 554 | fffffffffffffe01fffffffffffffffffffe01fffffffffffff8 | ||
| 555 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 556 | fffffffffffffe03fffffffffffffffffffe01fffffffffffff8 | ||
| 557 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 558 | fffffffffffffc03fffffffffffffffffffc01fffffffffffff8 | ||
| 559 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 560 | fffffffffffffc07fffffffffffffffffffc01fffffffffffff8 | ||
| 561 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 562 | fffffffffffff807fffffffffffffffffffc03fffffffffffff8 | ||
| 563 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 564 | fffffffffffff00ffffffffffffffffffffc03fffffffffffff8 | ||
| 565 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 566 | fffffffffffff00ffffffffffffffffffff803fffffffffffff8 | ||
| 567 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 568 | ffffffffffffe01ffffffffffffffffffff803fffffffffffff8 | ||
| 569 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 570 | ffffffffffffe01ffffffffffffffffffff803fffffffffffff8 | ||
| 571 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 572 | ffffffffffffc03ffffffffffffffffffff807fffffffffffff8 | ||
| 573 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 574 | ffffffffffffc03ffffffffffffffffffff007fffffffffffff8 | ||
| 575 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 576 | ffffffffffff807ffffffffffffffffffff007fffffffffffff8 | ||
| 577 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 578 | ffffffffffff807ffffffffffffffffffff007fffffffffffff8 | ||
| 579 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 580 | ffffffffffff00fffffffffffffffffffff007fffffffffffff8 | ||
| 581 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 582 | fffffffffffe00ffffffffffffffffffffe00ffffffffffffff8 | ||
| 583 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 584 | fffffffffffe01ffffffffffffffffffffe00ffffffffffffff8 | ||
| 585 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9fffffffffffff | ||
| 586 | fffffffffffc01ffffffffffffffffffffe00ffffffffffffff8 | ||
| 587 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1fffffffffffff | ||
| 588 | fffffffffffc03ffffffffffffffffffffe00ffffffffffffff8 | ||
| 589 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1fffffffffffff | ||
| 590 | fffffffffff803ffffffffffffffffffffc00ffffffffffffff8 | ||
| 591 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1fffffffffffff | ||
| 592 | fffffffffff807ffffffffffffffffffffc00ffffffffffffff8 | ||
| 593 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1fffffffffffff | ||
| 594 | fffffffffff00fffffffffffffffffffffc01ffffffffffffff8 | ||
| 595 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3fffffffffffff | ||
| 596 | fffffffffff00fffffffffffffffffffffc01ffffffffffffff8 | ||
| 597 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffff83fffffffffffff | ||
| 598 | ffffffffffc01fffffffffffffffffffffc01ffffffffffffff8 | ||
| 599 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffff07fffffffffffff | ||
| 600 | ffffffffffc01fffffffffffffffffffffc01ffffffffffffff8 | ||
| 601 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffff07fffffffffffff | ||
| 602 | ffffffffff801fffffffffffffffffffff801ffffffffffffff8 | ||
| 603 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffff07fffffffffffff | ||
| 604 | ffffffffff803fffffffffffffffffffff801ffffffffffffff8 | ||
| 605 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0ffffffffffffff | ||
| 606 | ffffffffff003fffffffffffffffffffff803ffffffffffffff8 | ||
| 607 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0ffffffffffffff | ||
| 608 | fffffffffe007fffffffffffffffffffff803ffffffffffffff8 | ||
| 609 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1ffffffffffffff | ||
| 610 | fffffffffc007fffffffffffffffffffff003ffffffffffffff8 | ||
| 611 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffff81ffffffffffffff | ||
| 612 | fffffffffc00ffffffffffffffffffffff003ffffffffffffff8 | ||
| 613 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffff01ffffffffffffff | ||
| 614 | fffffffff800ffffffffffffffffffffff003ffffffffffffff8 | ||
| 615 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffff01ffffffffffffff | ||
| 616 | fffffffff801ffffffffffffffffffffff003ffffffffffffff8 | ||
| 617 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffff03ffffffffffffff | ||
| 618 | fffffffff803ffffffffffffffffffffff007ffffffffffffff8 | ||
| 619 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffe07ffffffffffffff | ||
| 620 | fffffffff003fffffffffffffffffffffe007ffffffffffffff8 | ||
| 621 | fffffffffffffffffffffffffffffffffffffffffffffffffffffffc07ffffffffffffff | ||
| 622 | ffffffffe007fffffffffffffffffffffe007ffffffffffffff8 | ||
| 623 | fffffffffffffffffffffffffffffffffffffffffffffffffffffff807ffffffffffffff | ||
| 624 | ffffffffc007fffffffffffffffffffffe007ffffffffffffff8 | ||
| 625 | fffffffffffffffffffffffffffffffffffffffffffffffffffffff007ffffffffffffff | ||
| 626 | ffffffffc007fffffffffffffffffffffe007ffffffffffffff8 | ||
| 627 | fffffffffffffffffffffffffffffffffffffffffffffffffffffff00fffffffffffffff | ||
| 628 | ffffffff800ffffffffffffffffffffffe00fffffffffffffff8 | ||
| 629 | fffffffffffffffffffffffffffffffffffffffffffffffffffffff00fffffffffffffff | ||
| 630 | ffffffff000ffffffffffffffffffffffe00fffffffffffffff8 | ||
| 631 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffe00fffffffffffffff | ||
| 632 | fffffffe001ffffffffffffffffffffffe00fffffffffffffff8 | ||
| 633 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffc01fffffffffffffff | ||
| 634 | fffffffc003ffffffffffffffffffffffe00fffffffffffffff8 | ||
| 635 | ffffffffffffffffffffffffffffffffffffffffffffffffffffffc01fffffffffffffff | ||
| 636 | 9ffffffc003ffffffffffffffffffffffe00fffffffffffffff8 | ||
| 637 | ffffffffffffffffffffffffffffffffffffffffffffffffffffff803fffffffffffffff | ||
| 638 | 0ffffff8003ffffffffffffffffffffffc01fffffffffffffff8 | ||
| 639 | ffffffffffffffffffffffffffffffffffffffffffffffffffffff003ffffffffffffffe | ||
| 640 | 07fffff0007ffffffffffffffffffffffc01fffffffffffffff8 | ||
| 641 | ffffffffffffffffffffffffffffffffffffffffffffffffffffff003ffffffffffffffe | ||
| 642 | 07ffffe000fffffffffffffffffffffffc01fffffffffffffff8 | ||
| 643 | fffffffffffffffffffffffffffffffffffffffffffffffffffffe007ffffffffffffff8 | ||
| 644 | 03ffffc000fffffffffffffffffffffffc01fffffffffffffff8 | ||
| 645 | fffffffffffffffffffffffffffffffffffffffffffffffffffffe007ffffffffffffff0 | ||
| 646 | 03ffff8001fffffffffffffffffffffff801fffffffffffffff8 | ||
| 647 | fffffffffffffffffffffffffffffffffffffffffffffffffffffc007ffffffffffffff0 | ||
| 648 | 01ffff0003fffffffffffffffffffffff803fffffffffffffff8 | ||
| 649 | fffffffffffffffffffffffffffffffffffffffffffffffffffff800ffffffffffffffe0 | ||
| 650 | 00fffe0003fffffffffffffffffffffff803fffffffffffffff8 | ||
| 651 | fffffffffffffffffffffffffffffffffffffffffffffffffffff800ffffffffffffffe0 | ||
| 652 | 00fffe0003fffffffffffffffffffffff803fffffffffffffff8 | ||
| 653 | fffffffffffffffffffffffffffffffffffffffffffffffffffff001ffffffffffffffc0 | ||
| 654 | 003ffc0007fffffffffffffffffffffff003fffffffffffffff8 | ||
| 655 | ffffffffffffffffffffffffffffffffffffffffffffffffffffe003ffffffffffffff80 | ||
| 656 | 001fe0001ffffffffffffffffffffffff003fffffffffffffff8 | ||
| 657 | ffffffffffffffffffffffffffffffffffffffffffffffffffffe003ffffffffffffff00 | ||
| 658 | 000fc0001ffffffffffffffffffffffff007fffffffffffffff8 | ||
| 659 | ffffffffffffffffffffffffffffffffffffffffffffffffffffc007fffffffffffffe00 | ||
| 660 | 000000001ffffffffffffffffffffffff007fffffffffffffff8 | ||
| 661 | ffffffffffffffffffffffffffffffffffffffffffffffffffff8007fffffffffffffe00 | ||
| 662 | 000000003ffffffffffffffffffffffff007fffffffffffffff8 | ||
| 663 | ffffffffffffffffffffffffffffffffffffffffffffffffffff800ffffffffffffffc00 | ||
| 664 | 000000003ffffffffffffffffffffffff007fffffffffffffff8 | ||
| 665 | ffffffffffffffffffffffffffffffffffffffffffffffffffff000ffffffffffffff800 | ||
| 666 | 000000007fffffffffffffffffffffffe007fffffffffffffff8 | ||
| 667 | fffffffffffffffffffffffffffffffffffffffffffffffffffe001ffffffffffffff800 | ||
| 668 | 000000007fffffffffffffffffffffffe007fffffffffffffff8 | ||
| 669 | fffffffffffffffffffffffffffffffffffffffffffffffffffe001ffffffffffffff000 | ||
| 670 | 00000001ffffffffffffffffffffffffe007fffffffffffffff8 | ||
| 671 | fffffffffffffffffffffffffffffffffffffffffffffffffffc003ffffffffffffff000 | ||
| 672 | 00000001ffffffffffffffffffffffffe007fffffffffffffff8 | ||
| 673 | fffffffffffffffffffffffffffffffffffffffffffffffffffc007fffffffffffffe000 | ||
| 674 | 00000001ffffffffffffffffffffffffe007fffffffffffffff8 | ||
| 675 | fffffffffffffffffffffffffffffffffffffffffffffffffff0007fffffffffffffc000 | ||
| 676 | 00000003ffffffffffffffffffffffffc00ffffffffffffffff8 | ||
| 677 | fffffffffffffffffffffffffffffffffffffffffffffffffff000ffffffffffffffc000 | ||
| 678 | 00000003ffffffffffffffffffffffffc00ffffffffffffffff8 | ||
| 679 | ffffffffffffffffffffffffffffffffffffffffffffffffffe000ffffffffffffff8000 | ||
| 680 | 00000007ffffffffffffffffffffffffc00ffffffffffffffff8 | ||
| 681 | ffffffffffffffffffffffffffffffffffffffffffffffffffc001ffffffffffffff0000 | ||
| 682 | 0000000fffffffffffffffffffffffffc01ffffffffffffffff8 | ||
| 683 | ffffffffffffffffffffffffffffffffffffffffffffffffffc003ffffffffffffff0000 | ||
| 684 | 0000001fffffffffffffffffffffffffc01ffffffffffffffff8 | ||
| 685 | ffffffffffffffffffffffffffffffffffffffffffffffffff8003fffffffffffffe0000 | ||
| 686 | 0000001fffffffffffffffffffffffffc01ffffffffffffffff8 | ||
| 687 | ffffffffffffffffffffffffffffffffffffffffffffffffff0007fffffffffffffe0000 | ||
| 688 | 0000003fffffffffffffffffffffffffc01ffffffffffffffff8 | ||
| 689 | fffffffffffffffffffffffffffffffffffffffffffffffffe000ffffffffffffffc0000 | ||
| 690 | 0000007fffffffffffffffffffffffff801ffffffffffffffff8 | ||
| 691 | fffffffffffffffffffffffffffffffffffffffffffffffffe000ffffffffffffff80000 | ||
| 692 | 0000007fffffffffffffffffffffffff801ffffffffffffffff8 | ||
| 693 | fffffffffffffffffffffffffffffffffffffffffffffffffc001ffffffffffffff80000 | ||
| 694 | 000000ffffffffffffffffffffffffff801ffffffffffffffff8 | ||
| 695 | fffffffffffffffffffffffffffffffffffffffffffffffff8001ffffffffffffff00000 | ||
| 696 | 000001ffffffffffffffffffffffffff801ffffffffffffffff8 | ||
| 697 | fffffffffffffffffffffffffffffffffffffffffffffffff0003ffffffffffffff00000 | ||
| 698 | 000001ffffffffffffffffffffffffff801ffffffffffffffff8 | ||
| 699 | fffffffffffffffffffffffffffffffffffffffffffffffff0003ffffffffffffff00000 | ||
| 700 | 000003ffffffffffffffffffffffffff801ffffffffffffffff8 | ||
| 701 | ffffffffffffffffffffffffffffffffffffffffffffffffe0007fffffffffffffe00000 | ||
| 702 | 000003ffffffffffffffffffffffffff801ffffffffffffffff8 | ||
| 703 | ffffffffffffffffffffffffffffffffffffffffffffffffe000ffffffffffffffe00000 | ||
| 704 | 000007ffffffffffffffffffffffffff803ffffffffffffffff8 | ||
| 705 | ffffffffffffffffffffffffffffffffffffffffffffffffc000ffffffffffffffc00000 | ||
| 706 | 00000fffffffffffffffffffffffffff003ffffffffffffffff8 | ||
| 707 | ffffffffffffffffffffffffffffffffffffffffffffffff8001ffffffffffffff800000 | ||
| 708 | 00000fffffffffffffffffffffffffff803ffffffffffffffff8 | ||
| 709 | ffffffffffffffffffffffffffffffffffffffffffffffff0003ffffffffffffff800000 | ||
| 710 | 00001fffffffffffffffffffffffffff803ffffffffffffffff8 | ||
| 711 | ffffffffffffffffffffffffffffffffffffffffffffffff0007ffffffffffffff000200 | ||
| 712 | 00003fffffffffffffffffffffffffff007ffffffffffffffff8 | ||
| 713 | fffffffffffffffffffffffffffffffffffffffffffffffe0007fffffffffffffe000700 | ||
| 714 | 00007fffffffffffffffffffffffffff00fffffffffffffffff8 | ||
| 715 | fffffffffffffffffffffffffffffffffffffffffffffffc000ffffffffffffffe001f80 | ||
| 716 | 0000ffffffffffffffffffffffffffff00fffffffffffffffff8 | ||
| 717 | fffffffffffffffffffffffffffffffffffffffffffffff8000ffffffffffffffe001f80 | ||
| 718 | 0001ffffffffffffffffffffffffffff00fffffffffffffffff8 | ||
| 719 | fffffffffffffffffffffffffffffffffffffffffffffff8000ffffffffffffffc003fc0 | ||
| 720 | 0001ffffffffffffffffffffffffffff00fffffffffffffffff8 | ||
| 721 | fffffffffffffffffffffffffffffffffffffffffffffff0001ffffffffffffff8007fe0 | ||
| 722 | 0003ffffffffffffffffffffffffffff01fffffffffffffffff8 | ||
| 723 | ffffffffffffffffffffffffffffffffffffffffffffffe0003ffffffffffffff0007fe0 | ||
| 724 | 0007ffffffffffffffffffffffffffff01fffffffffffffffff8 | ||
| 725 | ffffffffffffffffffffffffffffffffffffffffffffffe0007ffffffffffffff000fff0 | ||
| 726 | 0007ffffffffffffffffffffffffffff01fffffffffffffffff8 | ||
| 727 | ffffffffffffffffffffffffffffffffffffffffffffffc000ffffffffffffffe003fff8 | ||
| 728 | 001fffffffffffffffffffffffffffff07fffffffffffffffff8 | ||
| 729 | ffffffffffffffffffffffffffffffffffffffffffffff8000ffffffffffffffe003fffc | ||
| 730 | 007fffffffffffffffffffffffffffff07fffffffffffffffff8 | ||
| 731 | ffffffffffffffffffffffffffffffffffffffffffffff8000ffffffffffffffe003fffe | ||
| 732 | 00ffffffffffffffffffffffffffffff07fffffffffffffffff8 | ||
| 733 | ffffffffffffffffffffffffffffffffffffffffffffff0001ffffffffffffffc007ffff | ||
| 734 | dfffffffffffffffffffffffffffffff0ffffffffffffffffff8 | ||
| 735 | fffffffffffffffffffffffffffffffffffffffffffffe0003ffffffffffffff800fffff | ||
| 736 | fffffffffffffffffffffffffffffffe1ffffffffffffffffff8 | ||
| 737 | fffffffffffffffffffffffffffffffffffffffffffffc0007ffffffffffffff800fffff | ||
| 738 | fffffffffffffffffffffffffffffffe1ffffffffffffffffff8 | ||
| 739 | fffffffffffffffffffffffffffffffffffffffffffffc0007ffffffffffffff001fffff | ||
| 740 | fffffffffffffffffffffffffffffffe1ffffffffffffffffff8 | ||
| 741 | fffffffffffffffffffffffffffffffffffffffffffff8000fffffffffffffff003fffff | ||
| 742 | fffffffffffffffffffffffffffffffe3ffffffffffffffffff8 | ||
| 743 | fffffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffe003fffff | ||
| 744 | ffffffffffffffffffffffffffffffff3ffffffffffffffffff8 | ||
| 745 | ffffffffffffffffffffffffffffffffffffffffffffe0001ffffffffffffffc007fffff | ||
| 746 | ffffffffffffffffffffffffffffffff3ffffffffffffffffff8 | ||
| 747 | ffffffffffffffffffffffffffffffffffffffffffffe0003ffffffffffffffc007fffff | ||
| 748 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 749 | ffffffffffffffffffffffffffffffffffffffffffffc0007ffffffffffffffc00ffffff | ||
| 750 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 751 | ffffffffffffffffffffffffffffffffffffffffffff8000fffffffffffffff800ffffff | ||
| 752 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 753 | ffffffffffffffffffffffffffffffffffffffffffff8000fffffffffffffff801ffffff | ||
| 754 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 755 | fffffffffffffffffffffffffffffffffffffffffffe0000fffffffffffffff001ffffff | ||
| 756 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 757 | fffffffffffffffffffffffffffffffffffffffffffc0001fffffffffffffff003ffffff | ||
| 758 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 759 | fffffffffffffffffffffffffffffffffffffffffffc0003ffffffffffffffe007ffffff | ||
| 760 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 761 | fffffffffffffffffffffffffffffffffffffffffff80007ffffffffffffffe007ffffff | ||
| 762 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 763 | fffffffffffffffffffffffffffffffffffffffffff0000fffffffffffffffc00fffffff | ||
| 764 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 765 | fffffffffffffffffffffffffffffffffffffffffff0000fffffffffffffffc00fffffff | ||
| 766 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 767 | ffffffffffffffffffffffffffffffffffffffffffe0001fffffffffffffffc00fffffff | ||
| 768 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 769 | ffffffffffffffffffffffffffffffffffffffffffc0001fffffffffffffff801fffffff | ||
| 770 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 771 | ffffffffffffffffffffffffffffffffffffffffffc0003fffffffffffffff801fffffff | ||
| 772 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 773 | ffffffffffffffffffffffffffffffffffffffffff80003fffffffffffffff003fffffff | ||
| 774 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 775 | ffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffff007fffffff | ||
| 776 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 777 | fffffffffffffffffffffffffffffffffffffffffe0000ffffffffffffffff007fffffff | ||
| 778 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 779 | fffffffffffffffffffffffffffffffffffffffffc0001fffffffffffffffc007fffffff | ||
| 780 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 781 | fffffffffffffffffffffffffffffffffffffffffc0001fffffffffffffffc00ffffffff | ||
| 782 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 783 | fffffffffffffffffffffffffffffffffffffffff80003fffffffffffffffc01ffffffff | ||
| 784 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 785 | fffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffff801ffffffff | ||
| 786 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 787 | ffffffffffffffffffffffffffffffffffffffffe0001ffffffffffffffff801ffffffff | ||
| 788 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 789 | ffffffffffffffffffffffffffffffffffffffffc0001ffffffffffffffff803ffffffff | ||
| 790 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 791 | ffffffffffffffffffffffffffffffffffffffffc0003ffffffffffffffff803ffffffff | ||
| 792 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 793 | ffffffffffffffffffffffffffffffffffffffff80003fffffffffffffffe007ffffffff | ||
| 794 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 795 | ffffffffffffffffffffffffffffffffffffffff80007fffffffffffffffe007ffffffff | ||
| 796 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 797 | ffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffffe00fffffffff | ||
| 798 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 799 | ffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffffc00fffffffff | ||
| 800 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 801 | fffffffffffffffffffffffffffffffffffffffc0001ffffffffffffffff801fffffffff | ||
| 802 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 803 | fffffffffffffffffffffffffffffffffffffff80003ffffffffffffffff803fffffffff | ||
| 804 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 805 | fffffffffffffffffffffffffffffffffffffff80003ffffffffffffffff003fffffffff | ||
| 806 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 807 | fffffffffffffffffffffffffffffffffffffff00007ffffffffffffffff003fffffffff | ||
| 808 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 809 | ffffffffffffffffffffffffffffffffffffffe0000ffffffffffffffffe007fffffffff | ||
| 810 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 811 | ffffffffffffffffffffffffffffffffffffffe0000ffffffffffffffffc007fffffffff | ||
| 812 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 813 | ffffffffffffffffffffffffffffffffffffffc0001ffffffffffffffffc00ffffffffff | ||
| 814 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 815 | ffffffffffffffffffffffffffffffffffffff80007ffffffffffffffffc00ffffffffff | ||
| 816 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 817 | ffffffffffffffffffffffffffffffffffffff00007ffffffffffffffff801ffffffffff | ||
| 818 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 819 | ffffffffffffffffffffffffffffffffffffff00007ffffffffffffffff801ffffffffff | ||
| 820 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 821 | fffffffffffffffffffffffffffffffffffffe0000fffffffffffffffff003ffffffffff | ||
| 822 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 823 | fffffffffffffffffffffffffffffffffffffc0001fffffffffffffffff003ffffffffff | ||
| 824 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 825 | fffffffffffffffffffffffffffffffffffff80003ffffffffffffffffe007ffffffffff | ||
| 826 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 827 | fffffffffffffffffffffffffffffffffffff80003ffffffffffffffffe007ffffffffff | ||
| 828 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 829 | ffffffffffffffffffffffffffffffffffffe00007ffffffffffffffffc00fffffffffff | ||
| 830 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 831 | ffffffffffffffffffffffffffffffffffffe0000fffffffffffffffffc00fffffffffff | ||
| 832 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 833 | ffffffffffffffffffffffffffffffffffffe0000fffffffffffffffffc00fffffffffff | ||
| 834 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 835 | ffffffffffffffffffffffffffffffffffff80001fffffffffffffffff801fffffffffff | ||
| 836 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 837 | ffffffffffffffffffffffffffffffffffff00003fffffffffffffffff801fffffffffff | ||
| 838 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 839 | ffffffffffffffffffffffffffffffffffff00007fffffffffffffffff003fffffffffff | ||
| 840 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 841 | fffffffffffffffffffffffffffffffffffe00007fffffffffffffffff007fffffffffff | ||
| 842 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 843 | fffffffffffffffffffffffffffffffffffc0000ffffffffffffffffff007fffffffffff | ||
| 844 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 845 | fffffffffffffffffffffffffffffffffffc0001fffffffffffffffffc007fffffffffff | ||
| 846 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 847 | fffffffffffffffffffffffffffffffffff80003fffffffffffffffffc00ffffffffffff | ||
| 848 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 849 | fffffffffffffffffffffffffffffffffff80007fffffffffffffffffc01ffffffffffff | ||
| 850 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 851 | fffffffffffffffffffffffffffffffffff00007fffffffffffffffff801ffffffffffff | ||
| 852 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 853 | fffffffffffffffffffffffffffffffffff0000ffffffffffffffffff801ffffffffffff | ||
| 854 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 855 | ffffffffffffffffffffffffffffffffffc0001ffffffffffffffffff803ffffffffffff | ||
| 856 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 857 | ffffffffffffffffffffffffffffffffff80003ffffffffffffffffff803ffffffffffff | ||
| 858 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 859 | ffffffffffffffffffffffffffffffffff00007ffffffffffffffffff007ffffffffffff | ||
| 860 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 861 | ffffffffffffffffffffffffffffffffff00007ffffffffffffffffff007ffffffffffff | ||
| 862 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 863 | fffffffffffffffffffffffffffffffffe0000ffffffffffffffffffe00fffffffffffff | ||
| 864 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 865 | fffffffffffffffffffffffffffffffffc0000ffffffffffffffffffe00fffffffffffff | ||
| 866 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 867 | fffffffffffffffffffffffffffffffffc0001ffffffffffffffffffe01fffffffffffff | ||
| 868 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 869 | fffffffffffffffffffffffffffffffff80003ffffffffffffffffffc03fffffffffffff | ||
| 870 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 871 | fffffffffffffffffffffffffffffffff00007ffffffffffffffffffc03fffffffffffff | ||
| 872 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 873 | ffffffffffffffffffffffffffffffffe00007ffffffffffffffffffc03fffffffffffff | ||
| 874 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 875 | ffffffffffffffffffffffffffffffffe00007ffffffffffffffffffc07fffffffffffff | ||
| 876 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 877 | ffffffffffffffffffffffffffffffffc0001fffffffffffffffffff807fffffffffffff | ||
| 878 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 879 | ffffffffffffffffffffffffffffffff80003fffffffffffffffffff80ffffffffffffff | ||
| 880 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 881 | ffffffffffffffffffffffffffffffff80003fffffffffffffffffff80ffffffffffffff | ||
| 882 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 883 | ffffffffffffffffffffffffffffffff00007fffffffffffffffffff81ffffffffffffff | ||
| 884 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 885 | fffffffffffffffffffffffffffffffe0000ffffffffffffffffffff01ffffffffffffff | ||
| 886 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 887 | fffffffffffffffffffffffffffffffe0001ffffffffffffffffffff03ffffffffffffff | ||
| 888 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 889 | fffffffffffffffffffffffffffffffc0003ffffffffffffffffffff03ffffffffffffff | ||
| 890 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 891 | fffffffffffffffffffffffffffffff80003fffffffffffffffffffe07ffffffffffffff | ||
| 892 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 893 | fffffffffffffffffffffffffffffff00007fffffffffffffffffffe07ffffffffffffff | ||
| 894 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 895 | ffffffffffffffffffffffffffffffe00007fffffffffffffffffffe0fffffffffffffff | ||
| 896 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 897 | ffffffffffffffffffffffffffffffe0000ffffffffffffffffffffc0fffffffffffffff | ||
| 898 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 899 | ffffffffffffffffffffffffffffffe0000ffffffffffffffffffffc1fffffffffffffff | ||
| 900 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 901 | ffffffffffffffffffffffffffffffc0001ffffffffffffffffffffc1fffffffffffffff | ||
| 902 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 903 | ffffffffffffffffffffffffffffff80007ffffffffffffffffffff83fffffffffffffff | ||
| 904 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 905 | ffffffffffffffffffffffffffffff00007ffffffffffffffffffff83fffffffffffffff | ||
| 906 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 907 | fffffffffffffffffffffffffffffe00007ffffffffffffffffffff83fffffffffffffff | ||
| 908 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 909 | fffffffffffffffffffffffffffffe0000fffffffffffffffffffff87fffffffffffffff | ||
| 910 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 911 | fffffffffffffffffffffffffffffc0001fffffffffffffffffffff87fffffffffffffff | ||
| 912 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 913 | fffffffffffffffffffffffffffffc0001fffffffffffffffffffff0ffffffffffffffff | ||
| 914 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 915 | fffffffffffffffffffffffffffff80003fffffffffffffffffffff0ffffffffffffffff | ||
| 916 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 917 | fffffffffffffffffffffffffffff00007fffffffffffffffffffff0ffffffffffffffff | ||
| 918 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 919 | fffffffffffffffffffffffffffff0000ffffffffffffffffffffff1ffffffffffffffff | ||
| 920 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 921 | ffffffffffffffffffffffffffffe0000fffffffffffffffffffffe1ffffffffffffffff | ||
| 922 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 923 | ffffffffffffffffffffffffffffc0001fffffffffffffffffffffe3ffffffffffffffff | ||
| 924 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 925 | ffffffffffffffffffffffffffff80003fffffffffffffffffffffffffffffffffffffff | ||
| 926 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 927 | ffffffffffffffffffffffffffff00007fffffffffffffffffffffffffffffffffffffff | ||
| 928 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 929 | ffffffffffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff | ||
| 930 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 931 | fffffffffffffffffffffffffffe0001ffffffffffffffffffffffffffffffffffffffff | ||
| 932 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 933 | fffffffffffffffffffffffffffe0001ffffffffffffffffffffffffffffffffffffffff | ||
| 934 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 935 | fffffffffffffffffffffffffffc0003ffffffffffffffffffffffffffffffffffffffff | ||
| 936 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 937 | fffffffffffffffffffffffffffc0007ffffffffffffffffffffffffffffffffffffffff | ||
| 938 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 939 | fffffffffffffffffffffffffff0000fffffffffffffffffffffffffffffffffffffffff | ||
| 940 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 941 | fffffffffffffffffffffffffff0000fffffffffffffffffffffffffffffffffffffffff | ||
| 942 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 943 | ffffffffffffffffffffffffffe0001fffffffffffffffffffffffffffffffffffffffff | ||
| 944 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 945 | ffffffffffffffffffffffffffc0003fffffffffffffffffffffffffffffffffffffffff | ||
| 946 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 947 | ffffffffffffffffffffffffffc0003fffffffffffffffffffffffffffffffffffffffff | ||
| 948 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 949 | ffffffffffffffffffffffffffc0007fffffffffffffffffffffffffffffffffffffffff | ||
| 950 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 951 | ffffffffffffffffffffffffff8000ffffffffffffffffffffffffffffffffffffffffff | ||
| 952 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 953 | ffffffffffffffffffffffffff8001ffffffffffffffffffffffffffffffffffffffffff | ||
| 954 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 955 | ffffffffffffffffffffffffff0001ffffffffffffffffffffffffffffffffffffffffff | ||
| 956 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 957 | ffffffffffffffffffffffffff0003ffffffffffffffffffffffffffffffffffffffffff | ||
| 958 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 959 | ffffffffffffffffffffffffff0003ffffffffffffffffffffffffffffffffffffffffff | ||
| 960 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 961 | fffffffffffffffffffffffffe0007ffffffffffffffffffffffffffffffffffffffffff | ||
| 962 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 963 | fffffffffffffffffffffffffc000fffffffffffffffffffffffffffffffffffffffffff | ||
| 964 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 965 | fffffffffffffffffffffffff8001fffffffffffffffffffffffffffffffffffffffffff | ||
| 966 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 967 | fffffffffffffffffffffffff8001fffffffffffffffffffffffffffffffffffffffffff | ||
| 968 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 969 | fffffffffffffffffffffffff8003fffffffffffffffffffffffffffffffffffffffffff | ||
| 970 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 971 | fffffffffffffffffffffffff8007fffffffffffffffffffffffffffffffffffffffffff | ||
| 972 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 973 | fffffffffffffffffffffffff8007fffffffffffffffffffffffffffffffffffffffffff | ||
| 974 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 975 | fffffffffffffffffffffffff0007fffffffffffffffffffffffffffffffffffffffffff | ||
| 976 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 977 | ffffffffffffffffffffffffe000ffffffffffffffffffffffffffffffffffffffffffff | ||
| 978 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 979 | ffffffffffffffffffffffffe001ffffffffffffffffffffffffffffffffffffffffffff | ||
| 980 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 981 | ffffffffffffffffffffffffc001ffffffffffffffffffffffffffffffffffffffffffff | ||
| 982 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 983 | ffffffffffffffffffffffffc007ffffffffffffffffffffffffffffffffffffffffffff | ||
| 984 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 985 | ffffffffffffffffffffffffc00fffffffffffffffffffffffffffffffffffffffffffff | ||
| 986 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 987 | ffffffffffffffffffffffffc01fffffffffffffffffffffffffffffffffffffffffffff | ||
| 988 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 989 | ffffffffffffffffffffffff801fffffffffffffffffffffffffffffffffffffffffffff | ||
| 990 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 991 | ffffffffffffffffffffffff003fffffffffffffffffffffffffffffffffffffffffffff | ||
| 992 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 993 | ffffffffffffffffffffffff003fffffffffffffffffffffffffffffffffffffffffffff | ||
| 994 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 995 | ffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffff | ||
| 996 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 997 | ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 998 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 999 | fffffffffffffffffffffffe00ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1000 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1001 | fffffffffffffffffffffffe01ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1002 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1003 | fffffffffffffffffffffffc03ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1004 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1005 | fffffffffffffffffffffffc03ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1006 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1007 | fffffffffffffffffffffff807ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1008 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1009 | fffffffffffffffffffffff807ffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1010 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1011 | fffffffffffffffffffffff80fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1012 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1013 | fffffffffffffffffffffff00fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1014 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1015 | fffffffffffffffffffffff01fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1016 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1017 | ffffffffffffffffffffffe03fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1018 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1019 | ffffffffffffffffffffffe07fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1020 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1021 | ffffffffffffffffffffffe07fffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1022 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1023 | ffffffffffffffffffffffe0ffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1024 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1025 | ffffffffffffffffffffffc1ffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1026 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1027 | ffffffffffffffffffffffc1ffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1028 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1029 | ffffffffffffffffffffffc3ffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1030 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1031 | ffffffffffffffffffffff83ffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1032 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1033 | ffffffffffffffffffffff87ffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1034 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1035 | ffffffffffffffffffffff8fffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1036 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1037 | ffffffffffffffffffffff8fffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1038 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1039 | ffffffffffffffffffffff1fffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1040 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1041 | ffffffffffffffffffffff1fffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1042 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1043 | ffffffffffffffffffffff3fffffffffffffffffffffffffffffffffffffffffffffffff | ||
| 1044 | fffffffffffffffffffffffffffffffffffffffffffffffffff8 | ||
| 1045 | |||
| 1046 | |||
| 1047 | showpage | ||
| 1048 | |||
| 1049 | % stop using temporary dictionary | ||
| 1050 | end | ||
| 1051 | |||
| 1052 | % restore original state | ||
| 1053 | origstate restore | ||
| 1054 | |||
| 1055 | %%Trailer | ||
diff --git a/etc/gnus-refcard.tex b/etc/gnus-refcard.tex new file mode 100644 index 00000000000..343de2d6f6f --- /dev/null +++ b/etc/gnus-refcard.tex | |||
| @@ -0,0 +1,1427 @@ | |||
| 1 | \documentclass{article} | ||
| 2 | |||
| 3 | % Previously we had five input LaTeX files (booklet.tex bk-lt.tex bk-a4.tex | ||
| 4 | % refcard.tex gnusref.tex) and two logo files (gnuslogo-refcard.eps and | ||
| 5 | % gnuslogo-booklet.eps). | ||
| 6 | % | ||
| 7 | % From this LaTeX file (gnus-refcard.tex) plus a single logo (gnus-logo.eps), | ||
| 8 | % we can generate the refcard and the booklet version. Appropriate Makefile | ||
| 9 | % rules were added. This simplifies to distribute the refcard with Emacs. | ||
| 10 | % | ||
| 11 | % (Reiner Steib, March 2005) | ||
| 12 | |||
| 13 | \usepackage{ifthen} | ||
| 14 | \ifthenelse{\isundefined{\booklettrue}}{ | ||
| 15 | \typeout{Creating reference card...} | ||
| 16 | }{ | ||
| 17 | \typeout{Creating reference booklet...}} | ||
| 18 | |||
| 19 | \usepackage{supertabular} | ||
| 20 | |||
| 21 | \newlength{\logowidth} \setlength{\logowidth} {6.861in} | ||
| 22 | \newlength{\logoheight} \setlength{\logoheight}{7.013in} | ||
| 23 | |||
| 24 | \usepackage{graphicx} | ||
| 25 | |||
| 26 | \usepackage{geometry} | ||
| 27 | |||
| 28 | \ifthenelse{\isundefined{\booklettrue}}{% ifcard %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 29 | % Reference Card | ||
| 30 | |||
| 31 | \def\Guide{Card}\def\guide{card} | ||
| 32 | \def\logoscale{0.25} | ||
| 33 | |||
| 34 | % Page setup for the refcard: | ||
| 35 | |||
| 36 | % \setlength{\textwidth}{7.26in} \setlength{\textheight}{10in} | ||
| 37 | % \setlength{\topmargin}{-1.0in} | ||
| 38 | % % the same settings work for A4, although there is a bit of space at the | ||
| 39 | % % top and bottom of the page. | ||
| 40 | % \setlength{\oddsidemargin}{-0.5in} \setlength{\evensidemargin}{-0.5in} | ||
| 41 | |||
| 42 | \ifthenelse{\isundefined{\letterpapertrue}}{ | ||
| 43 | \geometry{a4paper,hmargin=10mm,tmargin=10mm,bmargin=35mm} | ||
| 44 | }{ | ||
| 45 | \geometry{hmargin=20mm,tmargin=10mm,bmargin=12mm} | ||
| 46 | } | ||
| 47 | |||
| 48 | }{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 49 | % Reference Booklet | ||
| 50 | |||
| 51 | \def\Guide{Booklet}\def\guide{booklet} | ||
| 52 | \def\logoscale{0.5}% FIXME: too large for 2up printing? --rsteib | ||
| 53 | |||
| 54 | % FIXME: Use geometry package. --rsteib | ||
| 55 | % \ifthenelse{\isundefined{\letterpapertrue}}{ | ||
| 56 | % \textwidth 4.9in \textheight 7.35in \topmargin -1.0in | ||
| 57 | % }{ | ||
| 58 | % \textwidth 4.5in \textheight 7.5in \topmargin -1.0in | ||
| 59 | % } | ||
| 60 | % \oddsidemargin -0.5in \evensidemargin -0.5in | ||
| 61 | \ifthenelse{\isundefined{\letterpapertrue}}{ | ||
| 62 | \geometry{a5paper,hmargin=10mm,tmargin=10mm,bmargin=4mm} | ||
| 63 | }{ | ||
| 64 | % FIXME: Use geometry package. --rsteib | ||
| 65 | \geometry{a5paper,hmargin=20mm,tmargin=10mm,bmargin=4mm} | ||
| 66 | } | ||
| 67 | |||
| 68 | \def\sec{\section} | ||
| 69 | \def\subsec{\subsection} | ||
| 70 | \def\subsubsec{\subsubsection} | ||
| 71 | \def\blankpage{\vspace*{\fill}\par | ||
| 72 | %\centerline{(This page intentionally left blank.)} | ||
| 73 | \par\vspace*{\fill}\pagebreak} | ||
| 74 | }%ifbooklet% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 75 | |||
| 76 | % \input{gnusref} % % % % % % % % % % % % % % % % % % % % % % % % % % | ||
| 77 | %% include file for the Gnus refcard and booklet | ||
| 78 | |||
| 79 | \def\progver{5.10}\def\refver{5.10-2} % program and refcard versions | ||
| 80 | \def\date{Mar, 2005} | ||
| 81 | \def\author{Gnus Bugfixing Girls + Boys $<$bugs@gnus.org$>$} | ||
| 82 | |||
| 83 | %% | ||
| 84 | \newlength{\keycolwidth} | ||
| 85 | \newenvironment{keys}[1]% #1 is the widest key | ||
| 86 | {\nopagebreak%\noindent% | ||
| 87 | \settowidth{\keycolwidth}{#1}% | ||
| 88 | \addtolength{\keycolwidth}{\tabcolsep}% | ||
| 89 | \addtolength{\keycolwidth}{-\columnwidth}% | ||
| 90 | \begin{supertabular}{@{}l@{\hspace{\tabcolsep}}p{-\keycolwidth}@{}}}% | ||
| 91 | {\end{supertabular}\\} | ||
| 92 | |||
| 93 | %% uncomment the first definition if you do not want pagebreaks in maps | ||
| 94 | %%\newcommand{\esamepage}{\samepage} | ||
| 95 | \newcommand{\esamepage}{} | ||
| 96 | |||
| 97 | \newcommand*{\B}[1]{{\bf#1})} % bold l)etter | ||
| 98 | |||
| 99 | \newcommand{\Title}{% | ||
| 100 | \begin{center} | ||
| 101 | {\bf\LARGE Gnus \progver\ Reference \Guide\\} | ||
| 102 | %{\normalsize \Guide\ version \refver} | ||
| 103 | \end{center} | ||
| 104 | } | ||
| 105 | |||
| 106 | % \newcommand*{\LogoOLD}[1]{\centerline{% | ||
| 107 | % \makebox[\logoscale\logowidth][l]{\vbox to \logoscale\logoheight | ||
| 108 | % {\vfill\epsfig{figure=gnuslogo-#1}}\vspace{-\baselineskip}}}} | ||
| 109 | |||
| 110 | \newcommand*{\Logo}[1]{\centerline{% | ||
| 111 | \includegraphics[width=\logoscale\logowidth]{gnus-logo}}} | ||
| 112 | |||
| 113 | \newcommand{\Copyright}{% | ||
| 114 | \begin{center} | ||
| 115 | Copyright \copyright\ 1995 Free Software Foundation, Inc.\\* | ||
| 116 | Copyright \copyright\ 1995 Vladimir Alexiev | ||
| 117 | $<$vladimir@cs.ualberta.ca$>$.\\* | ||
| 118 | Copyright \copyright\ 2000 Felix Natter $<$fnatter@gmx.net$>$.\\* | ||
| 119 | Copyright \copyright\ 2001, 2002, 2003, 2005 \author.\\* | ||
| 120 | Created from the Gnus manual Copyright \copyright\ 1994 Lars Magne | ||
| 121 | Ingebrigtsen.\\* | ||
| 122 | and the Emacs Help Bindings feature (C-h b).\\* | ||
| 123 | Gnus logo copyright \copyright\ 1995 Luis Fernandes.\\* | ||
| 124 | \end{center} | ||
| 125 | |||
| 126 | Permission is granted to make and distribute copies of this reference | ||
| 127 | \guide{} provided the copyright notice and this permission are preserved on | ||
| 128 | all copies. Please send corrections, additions and suggestions to the | ||
| 129 | current maintainer's email address. \Guide{} last edited on \date. | ||
| 130 | } | ||
| 131 | |||
| 132 | \newcommand{\Notes}{% | ||
| 133 | \subsection*{Notes} | ||
| 134 | {\esamepage | ||
| 135 | Gnus is complex. Currently it has some 876 interactive (user-callable) | ||
| 136 | functions. Of these 618 are in the two major modes (Group and | ||
| 137 | Summary/Article). Many of these functions have more than one binding, some | ||
| 138 | have 3 or even 4 bindings. The total number of keybindings is 677. So in | ||
| 139 | order to save 40\% space, every function is listed only once on this | ||
| 140 | \guide, under the ``more logical'' binding. Alternative bindings are given | ||
| 141 | in parentheses in the beginning of the description. | ||
| 142 | |||
| 143 | Many Gnus commands are affected by the numeric prefix. Normally you enter a | ||
| 144 | prefix by holding the Meta key and typing a number, but in most Gnus modes | ||
| 145 | you don't need to use Meta since the digits are not self-inserting. The | ||
| 146 | prefixed behavior of commands is given in [brackets]. Often the prefix is | ||
| 147 | used to specify: | ||
| 148 | |||
| 149 | \quad [distance] How many objects to move the point over. | ||
| 150 | |||
| 151 | \quad [scope] How many objects to operate on (including the current one). | ||
| 152 | |||
| 153 | \quad [p/p] The ``Process/Prefix Convention'': If a prefix is given then it | ||
| 154 | determines how many objects to operate on. Else if there are some objects | ||
| 155 | marked with the process mark \#, these are operated on. Else only the | ||
| 156 | current object is affected. | ||
| 157 | |||
| 158 | \quad [level] A group subscribedness level. Only groups with a lower or | ||
| 159 | equal level will be affected by the operation. If no prefix is given, | ||
| 160 | `gnus-group-default-list-level' is used. If | ||
| 161 | `gnus-group-use-permanent-levels', then a prefix to the `g' and `l' | ||
| 162 | commands will also set the default level. | ||
| 163 | |||
| 164 | \quad [score] An article score. If no prefix is given, | ||
| 165 | `gnus-summary-default-score' is used. \\*[\baselineskip] | ||
| 166 | % some keys | ||
| 167 | Gnus startup-commands:\\* | ||
| 168 | \begin{keys}{M-x gnus-unplugged} | ||
| 169 | M-x gnus & start Gnus. \\ | ||
| 170 | M-x gnus-no-server & start Gnus without connecting to server | ||
| 171 | (i.e. to read mail). \\ | ||
| 172 | \end{keys} | ||
| 173 | Additionally, there are the two commands \texttt{gnus-plugged} and | ||
| 174 | \texttt{gnus-unplugged}, which are only used if you want to download | ||
| 175 | news and/or read previously downloaded news offline (see C-c C-i g Gnus | ||
| 176 | Unplugged RET). Note: \texttt{gnus-no-server} ignores the stuff in | ||
| 177 | \texttt{gnus-agent-directory}, and thus does not allow you to use Gnus | ||
| 178 | Unplugged. | ||
| 179 | % | ||
| 180 | \begin{keys}{C-c C-i} | ||
| 181 | C-c C-i & Go to the Gnus online {\bf info}.\\ | ||
| 182 | C-c C-b & Send a Gnus {\bf bug} report.\\ | ||
| 183 | \end{keys} | ||
| 184 | }} | ||
| 185 | |||
| 186 | \newcommand{\GroupLevels}{% | ||
| 187 | The table below assumes that you use the default Gnus levels. | ||
| 188 | Fill your user-specific levels in the blank cells.\\[1\baselineskip] | ||
| 189 | \begin{tabular}{|c|l|l|} | ||
| 190 | \hline | ||
| 191 | Level & Groups & Status \\ | ||
| 192 | \hline | ||
| 193 | 1 & draft/mail groups & \\ | ||
| 194 | 2 & mail groups & \\ | ||
| 195 | 3 & & subscribed \\ | ||
| 196 | 4 & & \\ | ||
| 197 | 5 & default list level & \\ | ||
| 198 | \hline | ||
| 199 | 6 & & unsubscribed \\ | ||
| 200 | 7 & & \\ | ||
| 201 | \hline | ||
| 202 | 8 & & zombies \\ | ||
| 203 | \hline | ||
| 204 | 9 & & killed \\ | ||
| 205 | \hline | ||
| 206 | \end{tabular}} | ||
| 207 | |||
| 208 | \newcommand{\MarkCharacters}{% | ||
| 209 | {\esamepage If a command directly sets a mark, it is shown in parentheses.\\* | ||
| 210 | \newlength{\markcolwidth} | ||
| 211 | \settowidth{\markcolwidth}{` '}% widest character | ||
| 212 | \addtolength{\markcolwidth}{4\tabcolsep} | ||
| 213 | \addtolength{\markcolwidth}{-\columnwidth} | ||
| 214 | \newlength{\markdblcolwidth} | ||
| 215 | \setlength{\markdblcolwidth}{\columnwidth} | ||
| 216 | \addtolength{\markdblcolwidth}{-2\tabcolsep} | ||
| 217 | \begin{tabular}{|c|p{-\markcolwidth}|} | ||
| 218 | \hline | ||
| 219 | \multicolumn{2}{|p{\markdblcolwidth}|}{{\bf ``Read'' Marks.} | ||
| 220 | All these marks appear in the first column of the summary line, and so | ||
| 221 | are mutually exclusive.}\\ | ||
| 222 | \hline | ||
| 223 | ` ' & (M-u, M SPC, M c) Not read.\\ | ||
| 224 | ! & (!, M !, M t) Ticked (interesting).\\ | ||
| 225 | ? & (?, M ?) Dormant (only followups are interesting).\\ | ||
| 226 | E & (E, M e, M x) {\bf Expirable}. Only has effect in mail groups.\\ | ||
| 227 | G & (C, B DEL) Canceled article (or deleted in mailgroups).\\ | ||
| 228 | \$ & (M-d, M s x, S x). Marked as spam.\\ | ||
| 229 | \hline\hline | ||
| 230 | \multicolumn{2}{|p{\markdblcolwidth}|} | ||
| 231 | {The marks below mean that the article | ||
| 232 | is read (killed, uninteresting), and have more or less the same effect. | ||
| 233 | Some commands however explicitly differentiate between them (e.g.\ M | ||
| 234 | M-C-r, adaptive scoring).}\\ | ||
| 235 | \hline | ||
| 236 | r & (d, M d, M r) Deleted (marked as {\bf read}).\\ | ||
| 237 | C & (M C; M C-c; M H; c, Z c; Z n; Z C) Killed by {\bf catch-up}.\\ | ||
| 238 | F & SOUPed article. See the manual.\\ | ||
| 239 | O & {\bf Old} (read in a previous session).\\ | ||
| 240 | K & (k, M k; C-k, M K) {\bf Killed}.\\ | ||
| 241 | M & Article marked as read by duplicate suppression.\\ | ||
| 242 | Q & Article is part of a sparse thread (see ``Threading'' | ||
| 243 | in the manual).\\ | ||
| 244 | R & {\bf Read} (viewed in actuality).\\ | ||
| 245 | X & Killed by a kill file.\\ | ||
| 246 | Y & Killed due to low score.\\ | ||
| 247 | \hline\multicolumn{2}{c}{\vspace{1ex}}\\\hline | ||
| 248 | \multicolumn{2}{|p{\markdblcolwidth}|} | ||
| 249 | {{\bf Marks not affecting visibility}}\\ | ||
| 250 | \hline | ||
| 251 | \# & (\#, M \#, M P p) Processable (will be affected by the next operation). | ||
| 252 | [2]\\ | ||
| 253 | A & {\bf Answered} (followed-up or replied). [2]\\ | ||
| 254 | F & Forwarded. [2]\\ | ||
| 255 | $\ast$ & Cached. [2]\\ | ||
| 256 | S & Saved. [2]\\ | ||
| 257 | N & Recently arrived. [2]\\ | ||
| 258 | . & Unseen. [2]\\ | ||
| 259 | + & Over default score. [3]\\ | ||
| 260 | $-$ & Under default score. [3]\\ | ||
| 261 | $=$ & Has children (thread underneath it). Add `\%e' to | ||
| 262 | `gnus-summary-line-format'. [3]\\ | ||
| 263 | \hline | ||
| 264 | \end{tabular} | ||
| 265 | }} | ||
| 266 | |||
| 267 | \newcommand{\GroupModeGeneral}{% | ||
| 268 | \begin{keys}{C-c M-C-x} | ||
| 269 | RET & (=) Enter this group. [Prefix: how many (read) articles to fetch. | ||
| 270 | Positive: newest articles, negative: oldest ones; non-numerical: | ||
| 271 | view all articles, not just unread]\\ | ||
| 272 | M-RET & Enter group quickly.\\ | ||
| 273 | M-SPC & Same as RET but does not expunge and hide dormants.\\ | ||
| 274 | M-C-RET & Enter group without any processing, changes will not be permanent.\\ | ||
| 275 | SPC & Select this group and display the first (unread) article. [Same | ||
| 276 | prefix as above.]\\ | ||
| 277 | ? & Give a very short help message.\\ | ||
| 278 | $<$ & Go to the beginning of the Group buffer.\\ | ||
| 279 | $>$ & Go to the end of the Group buffer.\\ | ||
| 280 | , & Jump to the lowest-level group with unread articles.\\ | ||
| 281 | . & Jump to the first group with unread articles.\\ | ||
| 282 | \^{} & Enter the Server buffer mode.\\ | ||
| 283 | a & Post an {\bf article} to a group | ||
| 284 | [Prefix: use group under point to find posting-style].\\ | ||
| 285 | b & Find {\bf bogus} groups and delete them.\\ | ||
| 286 | c & Mark all unticked articles in this group as read ({\bf catch-up}). | ||
| 287 | [p/p]\\ | ||
| 288 | g & Check the server for new articles ({\bf get}). [level]\\ | ||
| 289 | M-g & Check the server for new articles in this group ({\bf get}). [p/p]\\ | ||
| 290 | j & {\bf Jump} to a group.\\ | ||
| 291 | m & {\bf Mail} a message to someone | ||
| 292 | [Prefix: use group under point to find posting-style].\\ | ||
| 293 | n & Go to the {\bf next} group with unread articles. [distance]\\ | ||
| 294 | M-n & Go to the {\bf next} group on the same or lower level. | ||
| 295 | [distance]\\ | ||
| 296 | p & (DEL) Go to the {\bf previous} group with unread articles. | ||
| 297 | [distance]\\ | ||
| 298 | M-p & Go to the {\bf previous} group on the same or lower level. [distance]\\ | ||
| 299 | q & {\bf Quit} Gnus.\\ | ||
| 300 | r & Re-read the init file ({\bf reset}).\\ | ||
| 301 | s & {\bf Save} the `.newsrc.eld' file (and `.newsrc' if | ||
| 302 | `gnus-save-newsrc-file').\\ | ||
| 303 | z & Suspend (kill all buffers of) Gnus.\\ | ||
| 304 | B & {\bf Browse} a foreign server.\\ | ||
| 305 | C & Mark all articles in this group as read ({\bf Catch-up}). [p/p]\\ | ||
| 306 | F & {\bf Find} new groups and process them.\\ | ||
| 307 | N & Go to the {\bf next} group. [distance]\\ | ||
| 308 | P & Go to the {\bf previous} group. [distance]\\ | ||
| 309 | Q & {\bf Quit} Gnus without saving any startup (.newsrc) files.\\ | ||
| 310 | R & {\bf Restart} Gnus.\\ | ||
| 311 | Z & Clear the dribble buffer.\\ | ||
| 312 | M-c & Clear data from group (marks and list of read articles). \\ | ||
| 313 | C-c C-s & {\bf Sort} the groups by name, number of unread articles, or level | ||
| 314 | (depending on `gnus-group-sort-function').\\ | ||
| 315 | C-c C-x & Run all expirable articles in this group through the {\bf expiry} | ||
| 316 | process.\\ | ||
| 317 | C-c M-C-x & Run all articles in all groups through the {\bf expiry} process.\\ | ||
| 318 | C-c M-g & Activate all {\bf groups}.\\ | ||
| 319 | C-c C-i & Gnus online-manual ({\bf info}).\\ | ||
| 320 | C-x C-t & {\bf Transpose} two groups.\\ | ||
| 321 | H f & Fetch this group's {\bf FAQ} (using ange-ftp).\\ | ||
| 322 | H c & Display this group's {\bf charter}. [Prefix: query for group]\\ | ||
| 323 | H C & Display this group's {\bf control message} (using | ||
| 324 | ange-ftp). [Prefix: query for group]\\ | ||
| 325 | H v & (V) Display the Gnus {\bf version} number.\\ | ||
| 326 | H d & (C-c C-d) Show the {\bf description} of this group | ||
| 327 | [Prefix: re-read from server].\\ | ||
| 328 | M-d & {\bf Describe} all groups. [Prefix: re-read from server]\\ | ||
| 329 | D g & Regenerate a Sieve script from group parameters.\\ | ||
| 330 | D u & Regenerate Sieve script and {\bf upload} to server.\\ | ||
| 331 | \end{keys} | ||
| 332 | } | ||
| 333 | |||
| 334 | \newcommand{\ListGroups}{% | ||
| 335 | {\esamepage | ||
| 336 | \begin{keys}{A M} | ||
| 337 | A d & (C-c C-M-a) List all groups whose names or {\bf descriptions} match a regexp.\\ | ||
| 338 | A k & (C-c C-l) List all {\bf killed} groups. | ||
| 339 | [Prefix: look at active-file from server]\\ | ||
| 340 | A l & List all groups on a specific level. | ||
| 341 | [Prefix: also list groups with no unread articles]\\ | ||
| 342 | A a & (C-c C-a) List all groups whose names match a regexp | ||
| 343 | ({\bf apropos}).\\ | ||
| 344 | A A & List the server's active-file.\\ | ||
| 345 | A M & List groups that {\bf match} a regexp.\\ | ||
| 346 | A m & List groups that {\bf match} a regexp and have unread articles. | ||
| 347 | [level]\\ | ||
| 348 | A s & (l) List all {\bf subscribed} groups with unread articles. | ||
| 349 | [level; 5 and lower is the default]\\ | ||
| 350 | A u & (L) List all groups (including read and {\bf unsubscribed}). | ||
| 351 | [level; 7 and lower is the default]\\ | ||
| 352 | A z & List all {\bf zombie} groups.\\ | ||
| 353 | A c & List all groups with cached articles. [level]\\ | ||
| 354 | A ? & List all groups with dormant articles. [level]\\ | ||
| 355 | \end{keys} | ||
| 356 | } | ||
| 357 | |||
| 358 | \newcommand{\CreateEditGroups}{% | ||
| 359 | {\esamepage | ||
| 360 | The select methods are indicated in parentheses.\\* | ||
| 361 | \begin{keys}{G DEL} | ||
| 362 | G a & Make the Gnus list {\bf archive} group. (nndir over ange-ftp)\\ | ||
| 363 | G c & {\bf Customize} this group's parameters.\\ | ||
| 364 | G d & Make a {\bf directory} group (every file must be a posting and files | ||
| 365 | must have numeric names). (nndir)\\ | ||
| 366 | G D & Enter a {\bf directory} as a (temporary) group. | ||
| 367 | (nneething without recording articles read)\\ | ||
| 368 | G e & (M-e) {\bf Edit} this group's select method.\\ | ||
| 369 | G E & {\bf Edit} this group's info (select method, articles read, etc).\\ | ||
| 370 | G f & Make a group based on a {\bf file}. (nndoc)\\ | ||
| 371 | G h & Make the Gnus {\bf help} (documentation) group. (nndoc)\\ | ||
| 372 | G k & Make a {\bf kiboze} group. (nnkiboze)\\ | ||
| 373 | G m & {\bf Make} a new group.\\ | ||
| 374 | G p & Edit this group's {\bf parameters}.\\ | ||
| 375 | G r & Rename this group (does not work with read-only groups!).\\ | ||
| 376 | G u & Create one of the groups mentioned in gnus-{\bf useful}-groups.\\ | ||
| 377 | G v & Add this group to a {\bf virtual} group. [p/p]\\ | ||
| 378 | G V & Make a new empty {\bf virtual} group. (nnvirtual)\\ | ||
| 379 | G w & Create ephemeral group based on web-search. [Prefix: make solid group | ||
| 380 | instead]\\ | ||
| 381 | G R & Make an {\bf RSS} group.\\ | ||
| 382 | G DEL & {\bf Delete} group [Prefix: delete all articles as well].\\ | ||
| 383 | G x & Expunge all deleted articles in an nnimap mailbox.\\ | ||
| 384 | G l & Edit ACL (Access Control {\bf List}) for an nnimap mailbox.\\ | ||
| 385 | \end{keys} | ||
| 386 | You can also create mail-groups and read your mail with Gnus (very useful | ||
| 387 | if you are subscribed to mailing lists), using one of the methods | ||
| 388 | nnmbox, nnbabyl, nnml, nnmh, or nnfolder. Read about it in the online info | ||
| 389 | (C-c C-i g Reading Mail RET). | ||
| 390 | }} | ||
| 391 | |||
| 392 | % TODO: | ||
| 393 | \newcommand{\SoupCommands}{% | ||
| 394 | \begin{keys}{G s w} | ||
| 395 | G s b & gnus-group-brew-soup: not documented.\\ | ||
| 396 | G s p & gnus-soup-pack-packet: not documented.\\ | ||
| 397 | G s r & nnsoup-pack-replies: not documented.\\ | ||
| 398 | G s s & gnus-soup-send-replies: not documented.\\ | ||
| 399 | G s w & gnus-soup-save-areas: not documented.\\ | ||
| 400 | \end{keys}} | ||
| 401 | |||
| 402 | \newcommand{\MarkGroups}{% | ||
| 403 | \begin{keys}{M m} | ||
| 404 | M m & (\#) Set the process {\bf mark} on this group. [scope]\\ | ||
| 405 | M r & Mark all groups matching regular expression.\\ | ||
| 406 | M u & (M-\#) Remove the process mark from this group ({\bf unmark}). | ||
| 407 | [scope]\\ | ||
| 408 | M U & Remove the process mark from all groups (\textbf{umark all}).\\ | ||
| 409 | M w & Mark all groups in the current region. [prefix: unmark]\\ | ||
| 410 | M b & Mark all groups in the {\bf buffer}. [prefix: unmark]\\ | ||
| 411 | \end{keys}} | ||
| 412 | |||
| 413 | \newcommand{\GroupTopicsGeneral}{% | ||
| 414 | {\esamepage | ||
| 415 | Topics are ``categories'' for groups. Press t in the group-buffer to | ||
| 416 | toggle gnus-topic-mode (C-c C-i g Group Topics RET).\\* | ||
| 417 | \begin{keys}{C-c C-x} | ||
| 418 | T n & Prompt for topic {\bf name} and create it.\\ | ||
| 419 | T m & {\bf Move} the current group to some other topic [p/p].\\ | ||
| 420 | T j & {\bf Jump} to a topic.\\ | ||
| 421 | T c & {\bf Copy} the current group to some other topic [p/p].\\ | ||
| 422 | T D & Remove (not delete) the current group [p/p].\\ | ||
| 423 | T M & {\bf Move} all groups matching a regexp to a topic.\\ | ||
| 424 | T C & {\bf Copy} all groups matching a regexp to a topic.\\ | ||
| 425 | T H & Toggle {\bf hiding} of empty topics.\\ | ||
| 426 | T r & {\bf Rename} a topic.\\ | ||
| 427 | T DEL & Delete an empty topic.\\ | ||
| 428 | T \# & Mark all groups in the current topic with the process-mark.\\ | ||
| 429 | T M-\# & Remove the process-mark from all groups in the current topic.\\ | ||
| 430 | T TAB & (TAB) Indent current topic [Prefix: unindent].\\ | ||
| 431 | M-TAB & Unindent the current topic.\\ | ||
| 432 | RET & (SPC) Either unfold topic or enter group [level].\\ | ||
| 433 | T s & {\bf Show} the current topic. [Prefix: show permanently]\\ | ||
| 434 | T h & {\bf Hide} the current topic. [Prefix: hide permanently]\\ | ||
| 435 | C-c C-x & Expire all articles in current group or topic.\\ | ||
| 436 | C-k & {\bf Kill} a group or topic.\\ | ||
| 437 | C-y & {\bf Yank} a group or topic.\\ | ||
| 438 | A T & List active-file using {\bf topics}.\\ | ||
| 439 | G p & Edit topic-{\bf parameters}.\\ | ||
| 440 | T M-n & Go to {\bf next} topic. [distance]\\ | ||
| 441 | T M-p & Go to {\bf previous} topic. [distance]\\ | ||
| 442 | \end{keys} | ||
| 443 | } | ||
| 444 | } | ||
| 445 | |||
| 446 | \newcommand{\TopicSorting}{% | ||
| 447 | {\esamepage | ||
| 448 | \begin{keys}{T S m} | ||
| 449 | T S a & Sort {\bf alphabetically}.\\ | ||
| 450 | T S u & Sort by number of {\bf unread} articles.\\ | ||
| 451 | T S l & Sort by group {\bf level}.\\ | ||
| 452 | T S v & Sort by group score ({\bf value}).\\ | ||
| 453 | T S r & Sort by group {\bf rank}.\\ | ||
| 454 | T S m & Sort by {\bf method}.\\ | ||
| 455 | T S e & Sort by {\bf server} name.\\ | ||
| 456 | T S s & Sort according to `gnus-group-sort-function'.\\ | ||
| 457 | \end{keys} | ||
| 458 | With a prefix these commands will sort in reverse order. | ||
| 459 | } | ||
| 460 | } | ||
| 461 | |||
| 462 | \newcommand{\SubscribeKillYankGroups}{% | ||
| 463 | {\esamepage | ||
| 464 | \begin{keys}{S C-k} | ||
| 465 | S k & (C-k) {\bf Kill} this group.\\ | ||
| 466 | S l & Set the {\bf level} of this group. [p/p]\\ | ||
| 467 | S s & (U) Prompt for a group and toggle its {\bf subscription}.\\ | ||
| 468 | S t & (u) {\bf Toggle} subscription to this group. [p/p]\\ | ||
| 469 | S w & (C-w) Kill all groups in the region.\\ | ||
| 470 | S y & (C-y) {\bf Yank} the last killed group.\\ | ||
| 471 | S z & Kill all {\bf zombie} groups.\\ | ||
| 472 | S C-k & Kill all groups on a certain level.\\ | ||
| 473 | \end{keys} | ||
| 474 | } | ||
| 475 | } | ||
| 476 | |||
| 477 | \newcommand{\SummaryModeGeneral}{% | ||
| 478 | {\esamepage | ||
| 479 | \begin{keys}{M-RET} | ||
| 480 | SPC & (A SPC, A n) Select an article, scroll it one page, move to the | ||
| 481 | next one.\\ | ||
| 482 | DEL & (A DEL, A p, b) Scroll this article one page back. [distance]\\ | ||
| 483 | RET & (A RET) Scroll this article one line forward. [distance]\\ | ||
| 484 | M-RET & (A M-RET) Scroll this article one line backward. [distance]\\ | ||
| 485 | = & Expand the Summary window (fullsize). | ||
| 486 | [Prefix: shrink to display article window]\\ | ||
| 487 | % | ||
| 488 | \& & Execute a command on all articles whose header matches a regexp. | ||
| 489 | [Prefix: move backwards]\\ | ||
| 490 | M-\& & Execute a command on all articles having the process mark.\\ | ||
| 491 | % | ||
| 492 | M-n & (G M-n) Go to the {\bf next} summary line of an unread article. | ||
| 493 | [distance]\\ | ||
| 494 | M-p & (G M-p) Go to the {\bf previous} summary line of an unread article. | ||
| 495 | [distance]\\ | ||
| 496 | M-s & {\bf Search} through all subsequent articles for a regexp.\\ | ||
| 497 | M-r & Search through all previous articles for a regexp.\\ | ||
| 498 | % | ||
| 499 | A P & {\bf Postscript}-print current buffer.\\ | ||
| 500 | % | ||
| 501 | M-k & Edit this group's {\bf kill} file.\\ | ||
| 502 | M-K & Edit the general {\bf kill} file.\\ | ||
| 503 | % | ||
| 504 | C-t & Toggle {\bf truncation} of summary lines.\\ | ||
| 505 | Y g & Regenerate the summary-buffer.\\ | ||
| 506 | Y c & Insert all cached articles into the summary-buffer.\\ | ||
| 507 | % | ||
| 508 | M-C-e & {\bf Edit} the group-parameters.\\ | ||
| 509 | M-C-a & Customize the group-parameters.\\ | ||
| 510 | % | ||
| 511 | % article handling | ||
| 512 | % | ||
| 513 | A $<$ & ($<$, A b) Scroll to the beginning of this article.\\ | ||
| 514 | A $>$ & ($>$, A e) Scroll to the end of this article.\\ | ||
| 515 | A s & (s) Perform an i{\bf search} in the article buffer.\\ | ||
| 516 | % | ||
| 517 | A D & (C-d) Un{\bf digestify} this article into a separate group. | ||
| 518 | [Prefix: force digest]\\ | ||
| 519 | M-C-d & Like C-d, but open several documents in nndoc-groups, wrapped | ||
| 520 | in an nnvirtual group [p/p]\\ | ||
| 521 | % | ||
| 522 | A g & (g) (Re)fetch this article ({\bf get}). [Prefix: get raw version]\\ | ||
| 523 | A r & (\^{}, A \^{}) Fetch the parent(s) of this article. | ||
| 524 | [Prefix: if positive fetch \textit{n} ancestors; | ||
| 525 | negative: fetch only the \textit{n}th ancestor]\\ | ||
| 526 | A t & {\bf Translate} this article.\\ | ||
| 527 | A R & Fetch all articles mentioned in the {\bf References}-header.\\ | ||
| 528 | A T & Fetch full \textbf{thread} in which the current article appears.\\ | ||
| 529 | M-\^{} & Fetch the article with a given Message-ID.\\ | ||
| 530 | S y & {\bf Yank} the current article into an existing message-buffer. | ||
| 531 | [p/p]\\ | ||
| 532 | A M & Setup group parameters for {\bf mailing} lists from | ||
| 533 | headers. [Prefix: replace old settings]\\ | ||
| 534 | \end{keys} | ||
| 535 | } | ||
| 536 | } | ||
| 537 | |||
| 538 | \newcommand{\MIMESummary}{% | ||
| 539 | {\esamepage | ||
| 540 | For the commands operating on one MIME part (a subset of gnus-article-*), a | ||
| 541 | prefix selects which part to operate on. If the point is placed over a | ||
| 542 | MIME button in the article buffer, use the corresponding bindings for the | ||
| 543 | article buffer instead. | ||
| 544 | |||
| 545 | \begin{keys}{W M w} | ||
| 546 | K v & (b, W M b) {\bf View} the MIME-part.\\ | ||
| 547 | K o & {\bf Save} the MIME part.\\ | ||
| 548 | K c & {\bf Copy} the MIME part.\\ | ||
| 549 | K e & View the MIME part {\bf externally}.\\ | ||
| 550 | K i & View the MIME part {\bf internally}.\\ | ||
| 551 | K $\mid$ & Pipe the MIME part to an external command.\\ | ||
| 552 | K b & Make all the MIME parts have buttons in front of them.\\ | ||
| 553 | K m & Try to repair {\bf multipart-headers}.\\ | ||
| 554 | K C & View the MIME part using a different {\bf charset}.\\ | ||
| 555 | X m & Save all parts matching a MIME type to a directory. [p/p]\\ | ||
| 556 | M-t & Toggle the buttonized display of the article buffer.\\ | ||
| 557 | W M w & Decode RFC2047-encoded words in the article headers.\\ | ||
| 558 | W M c & Decode encoded article bodies. [Prefix: prompt for charset]\\ | ||
| 559 | W M v & View all MIME parts in the current article.\\ | ||
| 560 | \end{keys} | ||
| 561 | } | ||
| 562 | } | ||
| 563 | |||
| 564 | \newcommand{\SortSummary}{% | ||
| 565 | {\esamepage | ||
| 566 | \begin{keys}{C-c C-s C-a} | ||
| 567 | C-c C-s C-a & Sort the summary-buffer by {\bf author}.\\ | ||
| 568 | % C-c C-s C-t & Sort the summary-buffer by {\bf recipient}.\\ % No Gnus | ||
| 569 | C-c C-s C-d & Sort the summary-buffer by {\bf date}.\\ | ||
| 570 | C-c C-s C-i & Sort the summary-buffer by article score.\\ | ||
| 571 | C-c C-s C-l & Sort the summary-buffer by amount of {\bf lines}.\\ | ||
| 572 | C-c C-s C-c & Sort the summary-buffer by length.\\ | ||
| 573 | C-c C-s C-n & Sort the summary-buffer by article {\bf number}.\\ | ||
| 574 | C-c C-s C-s & Sort the summary-buffer by {\bf subject}.\\ | ||
| 575 | C-c C-s C-r & Sort the summary-buffer {\bf randomly}.\\ | ||
| 576 | C-c C-s C-o & Sort the summary-buffer using the default method.\\ | ||
| 577 | \end{keys} | ||
| 578 | With a prefix these functions sort in reverse order. | ||
| 579 | } | ||
| 580 | } | ||
| 581 | |||
| 582 | \newcommand{\MailGroups}{% formerly \Bsubmap | ||
| 583 | {\esamepage | ||
| 584 | These commands (except `B c') are only valid in a mail group.\\* | ||
| 585 | \begin{keys}{B M-C-e} | ||
| 586 | B DEL & (B backspace, B delete) {\bf Delete} the mail article from disk (!). | ||
| 587 | [p/p]\\ | ||
| 588 | B B & Crosspost this article to another group.\\ | ||
| 589 | B c & {\bf Copy} this article from any group to a mail group. [p/p]\\ | ||
| 590 | B e & {\bf Expire} all expirable articles in this group. [p/p]\\ | ||
| 591 | B i & {\bf Import} a random file into this group.\\ | ||
| 592 | B I & Create an empty article in this group.\\ | ||
| 593 | B m & {\bf Move} the article from one mail group to another. [p/p]\\ | ||
| 594 | B p & Query whether the article was {\bf posted} as well.\\ | ||
| 595 | B q & {\bf Query} where the article will end up after fancy splitting\\ | ||
| 596 | B r & {\bf Respool} this mail article. [p/p]\\ | ||
| 597 | B t & {\bf Trace} the fancy splitting patterns applied to this article.\\ | ||
| 598 | B w & (e) Edit this article.\\ | ||
| 599 | B M-C-e & {\bf Expunge} (delete from disk) all expirable articles in this group | ||
| 600 | (!). [p/p]\\ | ||
| 601 | K E & {\bf Encrypt} article body. [p/p]\\ | ||
| 602 | \end{keys} | ||
| 603 | } | ||
| 604 | } | ||
| 605 | |||
| 606 | \newcommand{\DraftGroup}{% formerly \Dsubmap | ||
| 607 | {\esamepage | ||
| 608 | The ``drafts''-group contains messages that have been saved but not sent | ||
| 609 | and rejected articles. \\* | ||
| 610 | \begin{keys}{B DEL} | ||
| 611 | D e & \textbf{edit} message.\\ | ||
| 612 | D s & \textbf{Send} message. [p/p]\\ | ||
| 613 | D S & \textbf{Send} all messages.\\ | ||
| 614 | D t & \textbf{Toggle} sending (mark as unsendable).\\ | ||
| 615 | B DEL & \textbf{Delete} message (like in mailgroup).\\ | ||
| 616 | \end{keys} | ||
| 617 | } | ||
| 618 | } | ||
| 619 | |||
| 620 | \newcommand{\SelectArticles}{% formerly \Gsubmap | ||
| 621 | {\esamepage | ||
| 622 | These commands select the target article. They do not understand the prefix.\\* | ||
| 623 | \begin{keys}{G C-n} | ||
| 624 | h & Enter article-buffer.\\ | ||
| 625 | G b & (,) Go to the {\bf best} article (the one with highest score).\\ | ||
| 626 | G f & (.) Go to the {\bf first} unread article.\\ | ||
| 627 | G n & (n) Go to the {\bf next} unread article.\\ | ||
| 628 | G p & (p) Go to the {\bf previous} unread article.\\ | ||
| 629 | % | ||
| 630 | G N & (N) Go to {\bf the} next article.\\ | ||
| 631 | G P & (P) Go to the {\bf previous} article.\\ | ||
| 632 | % | ||
| 633 | G C-n & (M-C-n) Go to the {\bf next} article with the same subject.\\ | ||
| 634 | G C-p & (M-C-p) Go to the {\bf previous} article with the same subject.\\ | ||
| 635 | % | ||
| 636 | G l & (l) Go to the previously read article ({\bf last-read-article}).\\ | ||
| 637 | G o & Pop an article off the summary history and go to it.\\ | ||
| 638 | % | ||
| 639 | G g & Search an article via subject.\\ | ||
| 640 | G j & (j) Search an article via Message-Id or subject.\\ | ||
| 641 | \end{keys} | ||
| 642 | } | ||
| 643 | } | ||
| 644 | |||
| 645 | \newcommand{\ArticleModeGeneral}{% | ||
| 646 | {\esamepage | ||
| 647 | The normal navigation keys work in Article mode. Some additional keys are:\\ | ||
| 648 | \begin{keys}{C-c RET} | ||
| 649 | C-c \^{} & Get the article with the Message-ID near point.\\ | ||
| 650 | C-c RET & Send reply to address near point.\\ | ||
| 651 | h & Go to the \textbf{header}-line of the article in the | ||
| 652 | summary-buffer.\\ | ||
| 653 | s & Go to \textbf{summary}-buffer.\\ | ||
| 654 | RET & (middle mouse button) Activate the button at point to follow | ||
| 655 | an URL or Message-ID.\\ | ||
| 656 | TAB & Move the point to the next button.\\ | ||
| 657 | M-TAB & Move point to previous button.\\ | ||
| 658 | \end{keys} | ||
| 659 | } | ||
| 660 | } | ||
| 661 | |||
| 662 | \newcommand{\WashArticle}{% formerly \Wsubmap | ||
| 663 | {\esamepage | ||
| 664 | \begin{keys}{W W H} | ||
| 665 | W 6 & Translate a base64 article.\\ | ||
| 666 | W a & Strip certain {\bf headers} from body.\\ | ||
| 667 | W b & Make Message-IDs and URLs in the article mouse-clickable | ||
| 668 | {\bf buttons}.\\ | ||
| 669 | W c & Translate CRLF-pairs to LF and then the remaining CR's to LF's.\\ | ||
| 670 | W d & Treat {\bf dumbquotes}.\\ | ||
| 671 | W e & Treat {\bf emphasized} text.\\ | ||
| 672 | W h & Treat {\bf HTML}.\\ | ||
| 673 | W l & (w) Remove page breaks ({\bf\^{}L}) from the article.\\ | ||
| 674 | W m & {\bf Morse} decode article.\\ | ||
| 675 | W o & Treat {\bf overstrike} or underline (\^{}H\_) in the article.\\ | ||
| 676 | W p & Verify X-{\bf PGP}-Sig header.\\ | ||
| 677 | W q & Treat {\bf quoted}-printable in the article.\\ | ||
| 678 | W r & (C-c C-r) Do a Caesar {\bf rotate} (rot13) on the article.\\ | ||
| 679 | W s & Verify (and decrypt) a {\bf signed} message.\\ | ||
| 680 | W t & (t) {\bf Toggle} display of all headers.\\ | ||
| 681 | W u & {\bf Unsplit} broken URLs.\\ | ||
| 682 | W v & (v) Toggle permanent {\bf verbose} displaying of all headers.\\ | ||
| 683 | W w & Do word {\bf wrap} in the article.\\ | ||
| 684 | W B & Add clickable {\bf buttons} to the article headers.\\ | ||
| 685 | W C & {\bf Capitalize} first word in each sentence.\\ | ||
| 686 | W Q & Fill long lines.\\ | ||
| 687 | W Z & Translate a HZ-encoded article.\\ | ||
| 688 | % | ||
| 689 | W G u & {\bf Unfold} folded header lines.\\ | ||
| 690 | W G f & {\bf Fold} all header lines.\\ | ||
| 691 | W G n & Unfold {\bf Newsgroups:} and Follow-Up-To:.\\ | ||
| 692 | % | ||
| 693 | W Y c & Repair broken {\bf citations}.\\ | ||
| 694 | W Y a & Repair broken {\bf attribution} lines.\\ | ||
| 695 | W Y u & {\bf Unwrap} broken citation lines.\\ | ||
| 696 | W Y f & Do a {\bf full} deuglification (W Y c, W Y a, W Y u).\\ | ||
| 697 | \end{keys} | ||
| 698 | } | ||
| 699 | } | ||
| 700 | |||
| 701 | \newcommand{\BlankAndWhitespace}{% | ||
| 702 | {\esamepage | ||
| 703 | \begin{keys}{W E w} | ||
| 704 | W E l & Strip blank {\bf lines} from the beginning of the article.\\ | ||
| 705 | W E m & Replace blank lines with empty lines and remove {\bf multiple} | ||
| 706 | blank lines.\\ | ||
| 707 | W E t & Remove {\bf trailing} blank lines.\\ | ||
| 708 | W E a & Strip blank lines at the beginning and the end | ||
| 709 | (W E l, W E m and W E t).\\ | ||
| 710 | W E A & Strip {\bf all} blank lines.\\ | ||
| 711 | W E s & Strip leading blank lines from the article body.\\ | ||
| 712 | W E e & Strip trailing blank lines from the article body.\\ | ||
| 713 | W E w & Remove leading {\bf whitespace} from all headers.\\ | ||
| 714 | \end{keys} | ||
| 715 | } | ||
| 716 | } | ||
| 717 | |||
| 718 | \newcommand{\Picons}{% | ||
| 719 | {\esamepage | ||
| 720 | \begin{keys}{W D D} | ||
| 721 | W D s & (W g) Display {\bf smilies}.\\ | ||
| 722 | W D x & (W f) Look for and display any X-{\bf Face} headers.\\ | ||
| 723 | W D d & Display any Face headers.\\ | ||
| 724 | W D n & Toggle picons in {\bf Newsgroups} and Followup-To.\\ | ||
| 725 | W D m & Toggle picons in {\bf mail} headers (To and Cc).\\ | ||
| 726 | W D f & Toggle picons in {\bf From}.\\ | ||
| 727 | W D D & Remove all images from the article buffer.\\ | ||
| 728 | \end{keys} | ||
| 729 | } | ||
| 730 | } | ||
| 731 | |||
| 732 | \newcommand{\TimeAndDate}{% | ||
| 733 | {\esamepage | ||
| 734 | \begin{keys}{W T u} | ||
| 735 | W T u & (W T z) Display the article timestamp in GMT ({\bf UT, ZULU}).\\ | ||
| 736 | W T i & Display the article timestamp in {\bf ISO} 8601.\\ | ||
| 737 | W T l & Display the article timestamp in the {\bf local} timezone.\\ | ||
| 738 | W T s & Display according to `gnus-article-time-format'.\\ | ||
| 739 | W T e & Display the time {\bf elapsed} since it was sent.\\ | ||
| 740 | W T o & Display the {\bf original} timestamp.\\ | ||
| 741 | W T p & Display the date in format that's {\bf | ||
| 742 | pronounceable} in English.\\ | ||
| 743 | \end{keys} | ||
| 744 | } | ||
| 745 | } | ||
| 746 | |||
| 747 | \newcommand{\HideHighlightArticle}{% | ||
| 748 | {\esamepage | ||
| 749 | \begin{keys}{W W C-c} | ||
| 750 | W W a & Hide {\bf all} unwanted parts. Calls W W h, W W s, W W C-c.\\ | ||
| 751 | W W h & Hide article {\bf headers}.\\ | ||
| 752 | W W b & Hide {\bf boring} headers.\\ | ||
| 753 | W W s & Hide {\bf signature}.\\ | ||
| 754 | W W l & Hide {\bf list} identifiers in subject-header.\\ | ||
| 755 | W W P & Hide {\bf PEM} (privacy enhanced messages).\\ | ||
| 756 | W W B & Hide banner specified by group parameter.\\ | ||
| 757 | W W c & Hide {\bf citation}.\\ | ||
| 758 | W W C-c & Hide {\bf citation} using a more intelligent algorithm.\\ | ||
| 759 | W W C & Hide cited text in articles that aren't roots.\\ | ||
| 760 | W H a & Highlight {\bf all} parts. Calls W b, W H c, W H h, W H s.\\ | ||
| 761 | W H c & Highlight article {\bf citations}.\\ | ||
| 762 | W H h & Highlight article {\bf headers}.\\ | ||
| 763 | W H s & Highlight article {\bf signature}.\\ | ||
| 764 | \end{keys} | ||
| 765 | For all hiding-commands: A positive prefix always hides, and a negative | ||
| 766 | prefix will show what was previously hidden. | ||
| 767 | }} | ||
| 768 | |||
| 769 | \newcommand{\MIMEArticleMode}{% | ||
| 770 | {\esamepage | ||
| 771 | \begin{keys}{RET} | ||
| 772 | RET & (BUTTON-2) Toggle display of the MIME object.\\ | ||
| 773 | v & Prompt for a method and then view object using this method.\\ | ||
| 774 | o & Prompt for a filename and save the MIME object.\\ | ||
| 775 | C-o & Prompt for a filename to save the MIME object to and remove it.\\ | ||
| 776 | d & {\bf Delete} the MIME object.\\ | ||
| 777 | c & {\bf Copy} the MIME object to a new buffer and display this buffer.\\ | ||
| 778 | i & Display the MIME object in this buffer.\\ | ||
| 779 | C & Copy the MIME object to a new buffer and display this buffer using {\bf Charset} \\ | ||
| 780 | E & View internally. \\ | ||
| 781 | e & View {\bf externally}. \\ | ||
| 782 | t & View the MIME object as a different {\bf type}.\\ | ||
| 783 | p & {\bf Print} the MIME object.\\ | ||
| 784 | $\mid$ & Pipe the MIME object to a process.\\ | ||
| 785 | . & Take action on the MIME object.\\ | ||
| 786 | \end{keys} | ||
| 787 | } | ||
| 788 | } | ||
| 789 | |||
| 790 | %% end of article mode for reading .......................................... | ||
| 791 | |||
| 792 | \newcommand{\MarkArticlesGeneral}{% formerly \Msubmap | ||
| 793 | {\esamepage | ||
| 794 | \begin{keys}{M M-C-r} | ||
| 795 | d & (M d, M r) Mark this article as read and move to the next one. | ||
| 796 | [scope]\\ | ||
| 797 | D & Mark this article as read and move to the previous one. [scope]\\ | ||
| 798 | ! & (u, M !, M t) Tick this article (mark it as interesting) and move | ||
| 799 | to the next one. [scope]\\ | ||
| 800 | U & Tick this article and move to the previous one. [scope]\\ | ||
| 801 | M ? & (?) Mark this article as dormant (only followups are | ||
| 802 | interesting). [scope]\\ | ||
| 803 | M D & Show all {\bf dormant} articles (normally they are hidden unless they | ||
| 804 | have any followups).\\ | ||
| 805 | M M-D & Hide all {\bf dormant} articles.\\ | ||
| 806 | C-w & Mark all articles between point and mark as read.\\ | ||
| 807 | M-u & (M SPC, M c) Clear all marks from this article and move to the next | ||
| 808 | one. [scope]\\ | ||
| 809 | M-U & Clear all marks from this article and move to the previous one. | ||
| 810 | [scope]\\ | ||
| 811 | % | ||
| 812 | M e & (E, M x) Mark this article as {\bf expirable}. [scope]\\ | ||
| 813 | % | ||
| 814 | M k & (k) {\bf Kill} all articles with the same subject then select the | ||
| 815 | next unread one.\\ | ||
| 816 | M K & (C-k) {\bf Kill} all articles with the same subject as this one.\\ | ||
| 817 | % | ||
| 818 | M C & {\bf Catch-up} the articles that are not ticked and not dormant.\\ | ||
| 819 | M C-c & {\bf Catch-up} all articles in this group.\\ | ||
| 820 | M H & {\bf Catch-up} (mark read) this group to point (to-{\bf here}).\\ | ||
| 821 | % | ||
| 822 | M b & Set a {\bf bookmark} in this article.\\ | ||
| 823 | M B & Remove the {\bf bookmark} from this article.\\ | ||
| 824 | % | ||
| 825 | M M-r & (x) Expunge all {\bf read} articles from this group.\\ | ||
| 826 | M M-C-r & Expunge all articles having a given mark.\\ | ||
| 827 | M S & (C-c M-C-s) {\bf Show} all expunged articles.\\ | ||
| 828 | M M C-h & Displays some more keys doing ticking slightly differently.\\ | ||
| 829 | \end{keys} | ||
| 830 | The variable `gnus-summary-goto-unread' controls what happens after a mark | ||
| 831 | has been set (C-x C-i g Setting Marks RET) | ||
| 832 | }} | ||
| 833 | |||
| 834 | \newcommand{\MarkByScore}{% | ||
| 835 | \begin{keys}{M V m} | ||
| 836 | M V c & {\bf Clear} all marks from all high-scored articles. [score]\\ | ||
| 837 | M V k & {\bf Kill} all low-scored articles. [score]\\ | ||
| 838 | M V m & Mark all high-scored articles with a given {\bf mark}. [score]\\ | ||
| 839 | M V u & Mark all high-scored articles as interesting (tick them). [score]\\ | ||
| 840 | \end{keys} | ||
| 841 | } | ||
| 842 | } | ||
| 843 | |||
| 844 | \newcommand{\ProcessMark}{% | ||
| 845 | {\esamepage | ||
| 846 | These commands set and remove the process mark (\#). You only need to use | ||
| 847 | it if the set of articles you want to operate on is non-contiguous. Else | ||
| 848 | use a numeric prefix.\\* | ||
| 849 | \begin{keys}{M P R} | ||
| 850 | M P p & (\#, M \#) Mark this article.\\ | ||
| 851 | M P u & (M-\#, M M-\#) \textbf{unmark} this article.\\ | ||
| 852 | M P b & Mark all articles in {\bf buffer}.\\ | ||
| 853 | M P r & Mark all articles in the {\bf region}.\\ | ||
| 854 | M P g & Unmark all articles in the region.\\ | ||
| 855 | M P R & Mark all articles matching a {\bf regexp}.\\ | ||
| 856 | M P G & Unmark all articles matching a regexp.\\ | ||
| 857 | M P t & Mark all articles in this (sub){\bf thread}.\\ | ||
| 858 | M P T & Unmark all articles in this (sub){\bf thread}.\\ | ||
| 859 | M P s & Mark all articles in the current {\bf series}.\\ | ||
| 860 | M P S & Mark all {\bf series} that already contain a marked article.\\ | ||
| 861 | M P a & Mark {\bf all} articles (in series order).\\ | ||
| 862 | M P U & \textbf{unmark} all articles.\\ | ||
| 863 | M P i & {\bf Invert} the list of process-marked articles.\\ | ||
| 864 | M P k & Push the current process-mark set onto stack and unmark | ||
| 865 | all articles.\\ | ||
| 866 | M P y & Pop process-mark set from stack and restore it.\\ | ||
| 867 | M P w & Push process-mark set on the stack.\\ | ||
| 868 | M P v & Mark all articles with score over the default score. [Prefix: score]\\ | ||
| 869 | \end{keys} | ||
| 870 | } | ||
| 871 | } | ||
| 872 | |||
| 873 | \newcommand{\Limiting}{% | ||
| 874 | {\esamepage | ||
| 875 | \begin{keys}{/M} | ||
| 876 | // & (/s) Limit the summary-buffer to articles matching {\bf subject}.\\ | ||
| 877 | /a & Limit the summary-buffer to articles matching {\bf author}.\\ | ||
| 878 | /x & Limit depending on ``extra'' headers.\\ | ||
| 879 | /u & (x) Limit to {\bf unread} articles. | ||
| 880 | [Prefix: also exclude ticked and dormant articles]\\ | ||
| 881 | /. & Limit to unseen articles.\\ | ||
| 882 | /m & Limit to articles marked with specified {\bf mark}.\\ | ||
| 883 | /t & Ask for a number and exclude articles younger than that many days. | ||
| 884 | [Prefix: exclude older articles]\\ | ||
| 885 | /n & Limit to current article. [p/p]\\ | ||
| 886 | /w & Pop the previous limit off the stack and restore it. | ||
| 887 | [Prefix: pop all limits]\\ | ||
| 888 | /v & Limit to score. [score]\\ | ||
| 889 | /E & (M S) Include all expunged articles in the limit.\\ | ||
| 890 | /D & Include all dormant articles in the limit.\\ | ||
| 891 | /* & Limit to cached articles.\\ | ||
| 892 | Y C & Include all cached articles in the limit.\\ | ||
| 893 | /d & Exclude all dormant articles from the limit.\\ | ||
| 894 | /M & Exclude all marked articles.\\ | ||
| 895 | /T & Include all articles from the current thread in the limit.\\ | ||
| 896 | /c & Exclude all dormant articles that have no children from the limit.\\ | ||
| 897 | /C & Mark all excluded unread articles as read. | ||
| 898 | [Prefix: also mark ticked and dormant articles]\\ | ||
| 899 | /o & Insert all {\bf old} articles. [Prefix: how many]\\ | ||
| 900 | /N & Insert all {\bf new} articles.\\ | ||
| 901 | /p & Limit to articles {\bf predicated} in the `display' group parameter.\\ | ||
| 902 | % /r & Limit to {\bf replied} articles. [Prefix: unreplied]\\ % No Gnus | ||
| 903 | \end{keys} | ||
| 904 | } | ||
| 905 | } | ||
| 906 | |||
| 907 | \newcommand{\OutputArticles}{% formerly \Osubmap | ||
| 908 | {\esamepage | ||
| 909 | \begin{keys}{O m} | ||
| 910 | O o & (o, C-o) Save this article using the default article saver. [p/p]\\ | ||
| 911 | O b & Save this article's {\bf body} in plain file format [p/p]\\ | ||
| 912 | O f & Save this article in plain {\bf file} format. [p/p]\\ | ||
| 913 | O F & like O f, but overwrite file's contents. [p/p]\\ | ||
| 914 | O h & Save this article in {\bf mh} folder format. [p/p]\\ | ||
| 915 | O m & Save this article in {\bf mail} format. [p/p]\\ | ||
| 916 | O r & Save this article in {\bf rmail} format. [p/p]\\ | ||
| 917 | O v & Save this article in {\bf vm} format. [p/p]\\ | ||
| 918 | O p & ($\mid$) {\bf Pipe} this article to a shell command. [p/p]\\ | ||
| 919 | O P & \textbf{Print} this article using Muttprint. [p/p]\\ | ||
| 920 | \end{keys} | ||
| 921 | } | ||
| 922 | } | ||
| 923 | |||
| 924 | \newcommand{\PostReplyetc}{% formerly \Ssubmap | ||
| 925 | {\esamepage | ||
| 926 | These commands put you in a separate news or mail buffer. See the section | ||
| 927 | about composing messages for more information.\\* | ||
| 928 | %After | ||
| 929 | %editing the article, send it by pressing C-c C-c. If you are in a | ||
| 930 | %foreign group and want to post the article using the foreign server, give | ||
| 931 | %a prefix to C-c C-c.\\* | ||
| 932 | \begin{keys}{S O m} | ||
| 933 | S p & (a) {\bf Post} an article to this group.\\ | ||
| 934 | S f & (f) Post a {\bf followup} to this article.\\ | ||
| 935 | S F & (F) Post a {\bf followup} and include the original. [p/p]\\ | ||
| 936 | S o p & Forward this article as a {\bf post} to a newsgroup.\\ | ||
| 937 | S M-c & Send a complaint about excessive crossposting to the author of this | ||
| 938 | article. [p/p]\\ | ||
| 939 | % | ||
| 940 | S m & (m) Send a {\bf mail} to some other person.\\ | ||
| 941 | S r & (r) Mail a {\bf reply} to the author of this article.\\ | ||
| 942 | S R & (R) Mail a {\bf reply} and include the original. [p/p]\\ | ||
| 943 | S B r & Like S r but ignore the Reply-To: header.\\ | ||
| 944 | S B R & Like S R but ignore the Reply-To: header.\\ | ||
| 945 | S w & Mail a {\bf wide} reply to this article.\\ | ||
| 946 | S W & Mail a {\bf wide} reply to this article and include | ||
| 947 | the original.\\ | ||
| 948 | S v & Mail a {\bf very} wide reply to this article.\\ | ||
| 949 | S V & Mail a {\bf very} wide reply to this article and include the original.\\ | ||
| 950 | S o m & (C-c C-f) Forward this article by {\bf mail} to a person.\\ | ||
| 951 | S D b & Resend {\bf bounced} mail.\\ | ||
| 952 | S D r & {\bf Resend} mail to a different person.\\ | ||
| 953 | S D e & {\bf Edit} and resend.\\ | ||
| 954 | % | ||
| 955 | S n & Post a followup via {\bf news} even if you got the message | ||
| 956 | through mail.\\ | ||
| 957 | S N & Post a followup via {\bf news} and include the original mail. | ||
| 958 | [p/p]\\ | ||
| 959 | % | ||
| 960 | S c & (C) {\bf Cancel} this article (only works if it is | ||
| 961 | your own). [p/p]\\ | ||
| 962 | S s & {\bf Supersede} this article with a new one (only for own | ||
| 963 | articles).\\ | ||
| 964 | % | ||
| 965 | S O m & Digest these series and forward by {\bf mail}. [p/p]\\ | ||
| 966 | S O p & Digest these series and forward as a {\bf post} to a newsgroup. | ||
| 967 | [p/p]\\ | ||
| 968 | % | ||
| 969 | S u & {\bf Uuencode} a file and post it as a series.\\ | ||
| 970 | \end{keys} | ||
| 971 | If you want to cancel or supersede an article you just posted (before it | ||
| 972 | has appeared on the server), go to the *post-news* buffer, change | ||
| 973 | `Message-ID' to `Cancel' or `Supersedes' and send it again with C-c C-c. | ||
| 974 | }} | ||
| 975 | |||
| 976 | \newcommand{\Threading}{% formerly \Tsubmap | ||
| 977 | {\esamepage | ||
| 978 | \begin{keys}{T M-\#} | ||
| 979 | T \# & Mark this thread with the process mark.\\ | ||
| 980 | T M-\# & Remove process-marks from this thread.\\ | ||
| 981 | % | ||
| 982 | T t & Re-{\bf thread} the current article's thread.\\ | ||
| 983 | T \^{} & Make the current article child of the marked (or previous) article.\\ | ||
| 984 | % movement | ||
| 985 | T n & (M-C-f, M-down) Go to the {\bf next} thread. [distance]\\ | ||
| 986 | T p & (M-C-b, M-up) Go to the {\bf previous} thread. [distance]\\ | ||
| 987 | T d & {\bf Descend} this thread. [distance]\\ | ||
| 988 | T u & Ascend this thread ({\bf up}-thread). [distance]\\ | ||
| 989 | T o & Go to the top of this thread.\\ | ||
| 990 | % | ||
| 991 | T s & {\bf Show} the thread hidden under this article.\\ | ||
| 992 | T h & {\bf Hide} this (sub)thread.\\ | ||
| 993 | % | ||
| 994 | T i & {\bf Increase} the score of this thread.\\ | ||
| 995 | T l & (M-C-l) {\bf Lower} the score of this thread.\\ | ||
| 996 | % | ||
| 997 | T k & (M-C-k) {\bf Kill} the current (sub)thread. [Negative prefix: | ||
| 998 | tick it, positive prefix: unmark it.]\\ | ||
| 999 | % | ||
| 1000 | T H & {\bf Hide} all threads.\\ | ||
| 1001 | T S & {\bf Show} all hidden threads.\\ | ||
| 1002 | T T & (M-C-t) {\bf Toggle} threading.\\ | ||
| 1003 | \end{keys} | ||
| 1004 | } | ||
| 1005 | } | ||
| 1006 | |||
| 1007 | \newcommand{\Scoring}{% formerly \Vsubmap | ||
| 1008 | {\esamepage | ||
| 1009 | Read about Adaptive Scoring in the online info.\\* | ||
| 1010 | \begin{keys}{\bf A p m l} | ||
| 1011 | V a & {\bf Add} a new score entry, specifying all elements.\\ | ||
| 1012 | V c & Specify a new score file as {\bf current}.\\ | ||
| 1013 | V e & {\bf Edit} the current score alist.\\ | ||
| 1014 | V f & Edit a score {\bf file} and make it the current one.\\ | ||
| 1015 | V m & {\bf Mark} all articles below a given score as read.\\ | ||
| 1016 | V s & Set the {\bf score} of this article.\\ | ||
| 1017 | V t & Display all score rules applied to this article ({\bf track}).\\ | ||
| 1018 | W w & List {\bf words} used in scoring.\\ | ||
| 1019 | V x & {\bf Expunge} all low-scored articles. [score]\\ | ||
| 1020 | V C & {\bf Customize} the current score file through a user-friendly | ||
| 1021 | interface.\\ | ||
| 1022 | V F & {\bf Flush} the cache of score files.\\ | ||
| 1023 | V R & {\bf Re-score} the summary buffer.\\ | ||
| 1024 | V S & Display the {\bf score} of this article.\\ | ||
| 1025 | \bf A p m l& Make a scoring entry based on this article.\\ | ||
| 1026 | \end{keys} | ||
| 1027 | The four letters stand for:\\* | ||
| 1028 | \quad \B{A}ction: I)ncrease, L)ower;\\* | ||
| 1029 | \quad \B{p}art: a)uthor (from), s)ubject, x)refs (cross-posting), d)ate, l)ines, | ||
| 1030 | message-i)d, t)references (parent), f)ollowup, b)ody, h)ead (all headers);\\* | ||
| 1031 | \quad \B{m}atch type:\\* | ||
| 1032 | \qquad string: s)ubstring, e)xact, r)egexp, f)uzzy,\\* | ||
| 1033 | \qquad date: b)efore, a)t, n)this,\\* | ||
| 1034 | \qquad number: $<$, =, $>$;\\* | ||
| 1035 | \quad \B{l}ifetime: t)emporary, p)ermanent, i)mmediate. | ||
| 1036 | |||
| 1037 | If you type the second letter in uppercase, the remaining two are assumed | ||
| 1038 | to be s)ubstring and t)emporary. | ||
| 1039 | If you type the third letter in uppercase, the last one is assumed to be | ||
| 1040 | t)emporary. | ||
| 1041 | |||
| 1042 | \quad Extra keys for manual editing of a score file:\\* | ||
| 1043 | \begin{keys}{C-c C-c} | ||
| 1044 | C-c C-c & Finish editing the score file.\\ | ||
| 1045 | C-c C-d & Insert the current {\bf date} as number of days.\\ | ||
| 1046 | \end{keys} | ||
| 1047 | } | ||
| 1048 | } | ||
| 1049 | |||
| 1050 | \newcommand{\ExtractSeries}{% formerly \Xsubmap | ||
| 1051 | {\esamepage | ||
| 1052 | Gnus recognizes if the current article is part of a series (multipart | ||
| 1053 | posting whose parts are identified by numbers in their subjects, e.g.{} | ||
| 1054 | 1/10\dots10/10) and processes the series accordingly. You can mark and | ||
| 1055 | process more than one series at a time. If the posting contains any | ||
| 1056 | archives, they are expanded and gathered in a new group.\\* | ||
| 1057 | \begin{keys}{X p} | ||
| 1058 | X b & Un-{\bf binhex} these series. [p/p]\\ | ||
| 1059 | X o & Simply {\bf output} these series (no decoding). [p/p]\\ | ||
| 1060 | X p & Unpack these {\bf postscript} series. [p/p]\\ | ||
| 1061 | X s & Un-{\bf shar} these series. [p/p]\\ | ||
| 1062 | X u & {\bf Uudecode} these series. [p/p]\\ | ||
| 1063 | \end{keys} | ||
| 1064 | |||
| 1065 | Each one of these commands has four variants:\\* | ||
| 1066 | \begin{keys}{X v \bf Z} | ||
| 1067 | X \bf z & Decode these series. [p/p]\\ | ||
| 1068 | X \bf Z & Decode and save these series. [p/p]\\ | ||
| 1069 | X v \bf z & Decode and view these series. [p/p]\\ | ||
| 1070 | X v \bf Z & Decode, save and view these series. [p/p]\\ | ||
| 1071 | \end{keys} | ||
| 1072 | where {\bf z} or {\bf Z} identifies the decoding method (b, o, p, s, u). | ||
| 1073 | |||
| 1074 | An alternative binding for the most-often used of these commands is\\* | ||
| 1075 | \begin{keys}{C-c C-v C-v} | ||
| 1076 | C-c C-v C-v & (X v u) Uudecode and view these series. [p/p]\\ | ||
| 1077 | \end{keys} | ||
| 1078 | }} | ||
| 1079 | |||
| 1080 | \newcommand{\ExitSummary}{% formerly \Zsubmap | ||
| 1081 | {\esamepage | ||
| 1082 | \begin{keys}{Z G} | ||
| 1083 | Z Z & (q, Z Q) Exit this group.\\ | ||
| 1084 | Z E & (Q) {\bf Exit} without updating the group information.\\ | ||
| 1085 | % | ||
| 1086 | Z c & (c) Mark all unticked articles as read ({\bf catch-up}) and exit.\\ | ||
| 1087 | Z C & Mark all articles as read ({\bf catch-up}) and exit.\\ | ||
| 1088 | % | ||
| 1089 | Z n & Mark all articles as read and go to the {\bf next} group.\\ | ||
| 1090 | Z N & Exit and go to {\bf the} next group.\\ | ||
| 1091 | Z P & Exit and go to the {\bf previous} group.\\ | ||
| 1092 | % | ||
| 1093 | Z G & (M-g) Check for new articles in this group ({\bf get}).\\ | ||
| 1094 | Z R & (C-x C-s) Exit this group, and then enter it again ({\bf reenter}). | ||
| 1095 | [Prefix: select all articles, read and unread.]\\ | ||
| 1096 | Z s & Update and save the dribble buffer. [Prefix: save .newsrc* as well]\\ | ||
| 1097 | \end{keys} | ||
| 1098 | } | ||
| 1099 | } | ||
| 1100 | |||
| 1101 | \newcommand{\MsgCompositionGeneral}{% | ||
| 1102 | Press C-c ? in the composition-buffer to get this information.\\* | ||
| 1103 | {\esamepage | ||
| 1104 | \begin{keys}{C-c C-m} | ||
| 1105 | % sending | ||
| 1106 | C-c C-c & Send message and exit. [Prefix: send via foreign server]\\ | ||
| 1107 | C-c C-s & Send message. [Prefix: send via foreign server]\\ | ||
| 1108 | C-c C-d & Don't send message (save as \textbf{draft}).\\ | ||
| 1109 | C-c C-k & \textbf{Kill} message-buffer.\\ | ||
| 1110 | C-c C-m & {\bf Mail} reply to the address near point. | ||
| 1111 | [Prefix: include the original]\\ | ||
| 1112 | % modify headers/body | ||
| 1113 | C-c C-o & Sort headers.\\ | ||
| 1114 | C-c C-e & \textbf{Elide} region.\\ | ||
| 1115 | C-c C-v & Kill everything outside region.\\ | ||
| 1116 | C-c C-r & Do a \textbf{Rot-13} on the body.\\ | ||
| 1117 | C-c C-w & Insert signature (from `message-signature-file').\\ | ||
| 1118 | C-c C-z & Kill everything up to signature.\\ | ||
| 1119 | C-c C-y & \textbf{Yank} original message.\\ | ||
| 1120 | C-c C-q & Fill the yanked message.\\ | ||
| 1121 | C-c M-C-y & \textbf{Yank} a buffer and quote it.\\ | ||
| 1122 | M-RET & Insert four newlines and format quoted text. [Prefix: | ||
| 1123 | justify as well]\\ | ||
| 1124 | C-c M-r & \textbf{Rename} message buffer. [Prefix: ask for new name]\\ | ||
| 1125 | \end{keys} | ||
| 1126 | } | ||
| 1127 | } | ||
| 1128 | |||
| 1129 | \newcommand{\MsgCompositionMovementArticle}{% | ||
| 1130 | The following functions create the header-field if necessary.\\* | ||
| 1131 | {\esamepage | ||
| 1132 | \begin{keys}{C-c C-f C-u} | ||
| 1133 | C-c TAB & Move to \textbf{signature}.\\ | ||
| 1134 | C-c C-b & Move to \textbf{body}.\\ | ||
| 1135 | C-c C-f C-t & (C-c C-t) Move to \textbf{To:}.\\ | ||
| 1136 | C-c C-f C-c & Move to \textbf{Cc:}.\\ | ||
| 1137 | C-c C-f C-b & Move to \textbf{Bcc:}.\\ | ||
| 1138 | C-c C-f C-w & Move to \textbf{Fcc:}.\\ | ||
| 1139 | C-c C-f C-s & Move to \textbf{Subject:}.\\ | ||
| 1140 | C-c C-f C-r & Move to \textbf{Reply-To:}.\\ | ||
| 1141 | C-c C-f C-f & Move to \textbf{Followup-To:}.\\ | ||
| 1142 | C-c C-f C-n & (C-c C-n) Move to \textbf{Newsgroups:}.\\ | ||
| 1143 | C-c C-f C-u & Move to \textbf{Summary:}.\\ | ||
| 1144 | C-c C-f C-k & Move to \textbf{Keywords:}.\\ | ||
| 1145 | C-c C-f C-d & Move to \textbf{Distribution:}.\\ | ||
| 1146 | C-c C-f C-m & Move to \textbf{Mail-Followup-To:}.\\ | ||
| 1147 | C-c C-f C-o & Move to \textbf{From:}.\\ | ||
| 1148 | C-c C-f C-a & Insert a reasonable \textbf{Mail-Followup-To:} for | ||
| 1149 | an unsubscribed list. [Prefix: include addresses in \textbf{Cc:}]\\ | ||
| 1150 | C-c C-f TAB & (C-c C-u) Move to \textbf{Importance:}.\\ | ||
| 1151 | C-c M-n & Insert \textbf{Disposition-Notification-To:} | ||
| 1152 | (request receipt).\\ | ||
| 1153 | \end{keys} | ||
| 1154 | } | ||
| 1155 | } | ||
| 1156 | |||
| 1157 | \newcommand{\MsgCompositionMML}{% | ||
| 1158 | {\esamepage | ||
| 1159 | \begin{keys}{C-c C-m P} | ||
| 1160 | C-c C-m f & (C-c C-a) Attach \textbf{file}.\\ | ||
| 1161 | C-c C-m b & Attach contents of \textbf{buffer}.\\ | ||
| 1162 | C-c C-m e & Attach \textbf{external} file (ftp..).\\ | ||
| 1163 | C-c C-m P & Create MIME-\textbf{preview} (new | ||
| 1164 | buffer). [Prefix: show raw MIME preview]\\ | ||
| 1165 | C-c C-m v & \textbf{Validate} article.\\ | ||
| 1166 | C-c C-m p & Insert \textbf{part}.\\ | ||
| 1167 | C-c C-m m & Insert \textbf{multi}-part.\\ | ||
| 1168 | C-c C-m q & \textbf{Quote} region.\\ | ||
| 1169 | C-c C-m c s & Encrypt message using \textbf{S/MIME}.\\ | ||
| 1170 | C-c C-m c o & Encrypt message using PGP.\\ | ||
| 1171 | C-c C-m c p & Encrypt message using \textbf{PGP/MIME}.\\ | ||
| 1172 | C-c C-m s s & Sign message using \textbf{S/MIME}.\\ | ||
| 1173 | C-c C-m s o & Sign message using PGP.\\ | ||
| 1174 | C-c C-m s p & Sign message using \textbf{PGP/MIME}.\\ | ||
| 1175 | C-c C-m C-n & Remove security related MML tags from message.\\ | ||
| 1176 | % TODO: narrow headers (C-c C-m n) ? | ||
| 1177 | \end{keys} | ||
| 1178 | } | ||
| 1179 | } | ||
| 1180 | |||
| 1181 | %% TODO: | ||
| 1182 | \newcommand{\ServerMode}{% | ||
| 1183 | {\esamepage | ||
| 1184 | To enter this mode, press \^{} while in Group mode.\\* | ||
| 1185 | \begin{keys}{SPC} | ||
| 1186 | SPC & (RET) Browse this server.\\ | ||
| 1187 | a & {\bf Add} a new server.\\ | ||
| 1188 | c & {\bf Copy} this server.\\ | ||
| 1189 | e & {\bf Edit} a server.\\ | ||
| 1190 | k & {\bf Kill} this server. [scope]\\ | ||
| 1191 | l & {\bf List} all servers.\\ | ||
| 1192 | q & Return to the group buffer ({\bf quit}).\\ | ||
| 1193 | s & Request that the server scan its sources for new articles.\\ | ||
| 1194 | g & Request that the server regenerate its data.\\ | ||
| 1195 | y & {\bf Yank} the previously killed server.\\ | ||
| 1196 | O & Try to {\bf open} a connection to this server.\\ | ||
| 1197 | C & {\bf Close} connection to this server.\\ | ||
| 1198 | D & Mark this server as unreachable ({\bf deny}).\\ | ||
| 1199 | M-o & {\bf Open} the connection to all servers.\\ | ||
| 1200 | M-c & {\bf Close} the connection to all servers.\\ | ||
| 1201 | R & Make all denied servers into closed servers.\\ | ||
| 1202 | L & Set server status to offline.\\ | ||
| 1203 | \end{keys} | ||
| 1204 | } | ||
| 1205 | } | ||
| 1206 | |||
| 1207 | \newcommand{\BrowseServer}{% | ||
| 1208 | {\esamepage | ||
| 1209 | To enter this mode, press `B' while in Group mode.\\* | ||
| 1210 | \begin{keys}{RET} | ||
| 1211 | RET & Enter the current group.\\ | ||
| 1212 | SPC & Enter the current group and display the first article.\\ | ||
| 1213 | ? & Give a very short help message.\\ | ||
| 1214 | n & Go to the {\bf next} group. [distance]\\ | ||
| 1215 | p & Go to the {\bf previous} group. [distance]\\ | ||
| 1216 | q & (l) {\bf Quit} browse mode.\\ | ||
| 1217 | u & Subscribe to the current group. [scope]\\ | ||
| 1218 | \end{keys} | ||
| 1219 | } | ||
| 1220 | } | ||
| 1221 | |||
| 1222 | \newcommand{\GroupUnplugged}{% | ||
| 1223 | {\esamepage | ||
| 1224 | \begin{keys}{J S} | ||
| 1225 | J j & Toggle plugged-state.\\ | ||
| 1226 | J s & Fetch articles from all groups for offline-reading.\\ | ||
| 1227 | J u & Fetch all eligible articles from this group.\\ | ||
| 1228 | J S & \textbf{Send} all sendable messages in the drafts group.\\ | ||
| 1229 | % | ||
| 1230 | J c & Enter \textbf{category} buffer.\\ | ||
| 1231 | J a & \textbf{Add} this group to an Agent category [p/p].\\ | ||
| 1232 | J r & \textbf{Remove} this group from its Agent category [p/p].\\ | ||
| 1233 | J Y & Synchronize flags changed while unplugged with remote server.\\ | ||
| 1234 | \end{keys} | ||
| 1235 | } | ||
| 1236 | } | ||
| 1237 | |||
| 1238 | \newcommand{\SummaryUnplugged}{% | ||
| 1239 | {\esamepage | ||
| 1240 | \begin{keys}{J M-\#} | ||
| 1241 | J \# & \textbf{Mark} the article for downloading.\\ | ||
| 1242 | J M-\# & \textbf{Unmark} the article for downloading.\\ | ||
| 1243 | @ & \textbf{Toggle} whether to download the article.\\ | ||
| 1244 | J c & Mark all undownloaded articles as read (\textbf{catch-up}).\\ | ||
| 1245 | J u & Download all downloadable articles from group.\\ | ||
| 1246 | \end{keys} | ||
| 1247 | } | ||
| 1248 | } | ||
| 1249 | |||
| 1250 | \newcommand{\ServerUnplugged}{% | ||
| 1251 | {\esamepage | ||
| 1252 | \begin{keys}{J a} | ||
| 1253 | J a & \textbf{Add} the current server to the list of servers covered | ||
| 1254 | by the agent.\\ | ||
| 1255 | J r & \textbf{Remove} the current server from the list of servers covered | ||
| 1256 | by the agent.\\ | ||
| 1257 | \end{keys} | ||
| 1258 | } | ||
| 1259 | } | ||
| 1260 | |||
| 1261 | % end {gnusref} % % % % % % % % % % % % % % % % % % % % % % % % % % | ||
| 1262 | |||
| 1263 | |||
| 1264 | % o some things might not be updated: scoring and server modes, maybe more | ||
| 1265 | % o Gnus Unplugged category-buffer commands need to be written | ||
| 1266 | |||
| 1267 | \begin{document} | ||
| 1268 | |||
| 1269 | \def\progver{5.10}\def\refver{5.10-1} % program and refcard versions | ||
| 1270 | \def\date{Jan 10th, 2004} | ||
| 1271 | \def\author{Gnus Bugfixing Girls + Boys $<$bugs@gnus.org$>$} | ||
| 1272 | |||
| 1273 | \ifthenelse{\isundefined{\booklettrue}}{ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 1274 | \raggedbottom\raggedright | ||
| 1275 | \twocolumn | ||
| 1276 | % use \tiny to shrink it to 4 pages (needs a high-resolution printer though) | ||
| 1277 | % \tiny | ||
| 1278 | \scriptsize | ||
| 1279 | \pagestyle{plain} | ||
| 1280 | \Title | ||
| 1281 | \par | ||
| 1282 | \Logo{refcard} | ||
| 1283 | }{ | ||
| 1284 | \setcounter{page}{0} | ||
| 1285 | \thispagestyle{empty} | ||
| 1286 | \vspace*{\fill} | ||
| 1287 | \Title | ||
| 1288 | \vspace{0.4in} | ||
| 1289 | \Logo{booklet} | ||
| 1290 | \vspace*{\fill} | ||
| 1291 | \pagebreak | ||
| 1292 | }%ifbooklet% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 1293 | |||
| 1294 | % TODO: how does this work ? | ||
| 1295 | %\tableofcontents | ||
| 1296 | |||
| 1297 | \Notes | ||
| 1298 | % | ||
| 1299 | |||
| 1300 | \section*{Group-Mode} | ||
| 1301 | \GroupModeGeneral | ||
| 1302 | \subsection*{Group Subscribedness-Levels} | ||
| 1303 | \GroupLevels | ||
| 1304 | \subsection*{List Groups} | ||
| 1305 | \ListGroups | ||
| 1306 | \subsection*{Create/Edit Foreign Groups} | ||
| 1307 | \CreateEditGroups | ||
| 1308 | \subsection*{Unsubscribe, Kill and Yank Groups} | ||
| 1309 | \SubscribeKillYankGroups | ||
| 1310 | \subsection*{Mark Groups} | ||
| 1311 | \MarkGroups | ||
| 1312 | \subsection*{Group-Unplugged} | ||
| 1313 | \GroupUnplugged | ||
| 1314 | % topics in group-mode | ||
| 1315 | \subsection*{Group Topics} | ||
| 1316 | \GroupTopicsGeneral | ||
| 1317 | \subsubsection*{Topic Sorting} | ||
| 1318 | \TopicSorting | ||
| 1319 | |||
| 1320 | % \ifthenelse{\isundefined{\booklettrue}}{}{\pagebreak} | ||
| 1321 | |||
| 1322 | % summary-mode | ||
| 1323 | \section*{Summary Mode} | ||
| 1324 | \SummaryModeGeneral | ||
| 1325 | \subsection*{Select Articles} | ||
| 1326 | \SelectArticles | ||
| 1327 | % | ||
| 1328 | \subsection*{Threading} | ||
| 1329 | \Threading | ||
| 1330 | % | ||
| 1331 | \subsection*{Limiting} | ||
| 1332 | \Limiting | ||
| 1333 | \subsection*{Sort the Summary-Buffer} | ||
| 1334 | \SortSummary | ||
| 1335 | \subsection*{Score (Value) Commands} | ||
| 1336 | \Scoring | ||
| 1337 | |||
| 1338 | \ifthenelse{\isundefined{\booklettrue}}{% ifcard %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 1339 | \subsection*{Output Articles} | ||
| 1340 | \OutputArticles | ||
| 1341 | \subsection*{Extract Series (Uudecode etc)} | ||
| 1342 | \ExtractSeries | ||
| 1343 | }{}%ifcard% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 1344 | |||
| 1345 | \subsection*{MIME operations from the Summary-Buffer} | ||
| 1346 | \MIMESummary | ||
| 1347 | |||
| 1348 | \ifthenelse{\isundefined{\booklettrue}}{}{% ifbooklet %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 1349 | \subsection*{Extract Series (Uudecode etc)} | ||
| 1350 | \ExtractSeries | ||
| 1351 | \subsection*{Output Articles} | ||
| 1352 | \OutputArticles | ||
| 1353 | }%ifbooklet% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| 1354 | |||
| 1355 | % | ||
| 1356 | \subsection*{Post, Followup, Reply, Forward, Cancel} | ||
| 1357 | \PostReplyetc | ||
| 1358 | |||
| 1359 | \ifthenelse{\isundefined{\booklettrue}}{\newpage}{}% newpage ifcard | ||
| 1360 | |||
| 1361 | \subsection*{Message Composition} | ||
| 1362 | |||
| 1363 | \MsgCompositionGeneral | ||
| 1364 | \subsubsection*{Jumping in message-buffer} | ||
| 1365 | \MsgCompositionMovementArticle | ||
| 1366 | \subsubsection*{Attachments/MML} | ||
| 1367 | \MsgCompositionMML | ||
| 1368 | % marking articles | ||
| 1369 | \subsection*{Mark Articles} | ||
| 1370 | \MarkArticlesGeneral | ||
| 1371 | \subsubsection*{Mark Based on Score} | ||
| 1372 | \MarkByScore | ||
| 1373 | \subsubsection*{The Process Mark} | ||
| 1374 | \ProcessMark | ||
| 1375 | \subsubsection*{Mark Indication-Characters} | ||
| 1376 | \MarkCharacters | ||
| 1377 | % | ||
| 1378 | \ifthenelse{\isundefined{\booklettrue}}{\newpage}{}% | ||
| 1379 | |||
| 1380 | \subsection*{Summary-Unplugged} | ||
| 1381 | \SummaryUnplugged | ||
| 1382 | \subsection*{Mail-Group Commands} | ||
| 1383 | \MailGroups | ||
| 1384 | \subsection*{Draft-Group Commands} | ||
| 1385 | \DraftGroup | ||
| 1386 | % exiting | ||
| 1387 | \subsection*{Exit the Summary-Buffer} | ||
| 1388 | \ExitSummary | ||
| 1389 | % | ||
| 1390 | % | ||
| 1391 | \section*{Article Mode (reading)} | ||
| 1392 | \ArticleModeGeneral | ||
| 1393 | \subsection*{Wash the Article-Buffer} | ||
| 1394 | \WashArticle | ||
| 1395 | \subsubsection*{Blank Lines and Whitespace} | ||
| 1396 | \BlankAndWhitespace | ||
| 1397 | \subsubsection*{Picons, X-faces, Smileys} | ||
| 1398 | \Picons | ||
| 1399 | \subsubsection*{Time and Date} | ||
| 1400 | \TimeAndDate | ||
| 1401 | \subsection*{Hide/Highlight Parts of the Article} | ||
| 1402 | \HideHighlightArticle | ||
| 1403 | \subsection*{MIME operations from the Article-Buffer (reading)} | ||
| 1404 | \MIMEArticleMode | ||
| 1405 | % | ||
| 1406 | % | ||
| 1407 | \section*{Server Mode} | ||
| 1408 | \ServerMode | ||
| 1409 | \subsection*{Unplugged-Server} | ||
| 1410 | \ServerUnplugged | ||
| 1411 | % | ||
| 1412 | % | ||
| 1413 | \section*{Browse Server Mode} | ||
| 1414 | \BrowseServer | ||
| 1415 | |||
| 1416 | %\pagebreak | ||
| 1417 | \vspace*{\fill} | ||
| 1418 | \Copyright | ||
| 1419 | |||
| 1420 | \end{document} | ||
| 1421 | |||
| 1422 | %%% Local Variables: | ||
| 1423 | %%% mode: latex | ||
| 1424 | %%% TeX-master: t | ||
| 1425 | %%% End: | ||
| 1426 | |||
| 1427 | % arch-tag: be438b0e-6832-4afb-8c56-5f84743e5cd1 | ||
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 3c7c3d3d5c4..fe2fcab6643 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,94 @@ | |||
| 1 | 2005-03-25 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 2 | |||
| 3 | * message.el (message-resend): Bind rfc2047-encode-encoded-words. | ||
| 4 | |||
| 5 | * mm-util.el (mm-replace-in-string): New function. | ||
| 6 | (mm-xemacs-find-mime-charset-1): Ignore errors while loading | ||
| 7 | latin-unity, which cannot be used with XEmacs 21.1. | ||
| 8 | |||
| 9 | * rfc2047.el (rfc2047-encode-function-alist): Rename from | ||
| 10 | rfc2047-encoding-function-alist in order to avoid conflicting with | ||
| 11 | the old version. | ||
| 12 | (rfc2047-encode-message-header): Remove useless goto-char. | ||
| 13 | (rfc2047-encodable-p): Don't move point. | ||
| 14 | (rfc2047-syntax-table): Treat `(' and `)' as is. | ||
| 15 | (rfc2047-encode-region): Concatenate words containing non-ASCII | ||
| 16 | characters in structured fields; don't encode space-delimited | ||
| 17 | ASCII words even in unstructured fields; don't break words at | ||
| 18 | char-category boundaries; encode encoded words in structured | ||
| 19 | fields; treat text within parentheses as special; show the | ||
| 20 | original text when error has occurred; move point to the end of | ||
| 21 | the region after encoding, suggested by IRIE Tetsuya | ||
| 22 | <irie@t.email.ne.jp>; treat backslash-quoted characters as | ||
| 23 | non-special; check carefully whether to encode special characters; | ||
| 24 | fix some kind of misconfigured headers; signal a real error if | ||
| 25 | debug-on-quit or debug-on-error is non-nil; don't infloop, | ||
| 26 | suggested by Hiroshi Fujishima <pooh@nature.tsukuba.ac.jp>; assume | ||
| 27 | the close parenthesis may be included in the encoded word; encode | ||
| 28 | bogus delimiters. | ||
| 29 | (rfc2047-encode-string): Use mm-with-multibyte-buffer. | ||
| 30 | (rfc2047-encode-max-chars): New variable. | ||
| 31 | (rfc2047-encode-1): New function. | ||
| 32 | (rfc2047-encode): Use it; encode text so that it occupies the | ||
| 33 | maximum width within 76-column; work correctly on Q encoding for | ||
| 34 | iso-2022-* charsets; fold the line before encoding; don't append a | ||
| 35 | space if the encoded word includes close parenthesis. | ||
| 36 | (rfc2047-fold-region): Use existing whitespace for LWSP; make it | ||
| 37 | sure not to break a line just after the header name. | ||
| 38 | (rfc2047-b-encode-region): Remove. | ||
| 39 | (rfc2047-b-encode-string): New function. | ||
| 40 | (rfc2047-q-encode-region): Remove. | ||
| 41 | (rfc2047-q-encode-string): New function. | ||
| 42 | (rfc2047-encode-parameter): New function. | ||
| 43 | (rfc2047-encoded-word-regexp): Don't use shy group. | ||
| 44 | (rfc2047-decode-region): Follow rfc2047-encoded-word-regexp change. | ||
| 45 | (rfc2047-parse-and-decode): Ditto. | ||
| 46 | (rfc2047-decode): Treat the ascii coding-system as raw-text by | ||
| 47 | default. | ||
| 48 | |||
| 49 | 2005-03-25 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 50 | |||
| 51 | * rfc2047.el (rfc2047-encode-encoded-words): New variable. | ||
| 52 | (rfc2047-field-value): Strip props. | ||
| 53 | (rfc2047-encode-message-header): Disabled header folding -- not | ||
| 54 | all headers can be folded, and this should be done by the message | ||
| 55 | composition mode. Probably. I think. | ||
| 56 | (rfc2047-encodable-p): Say that =? needs encoding. | ||
| 57 | (rfc2047-encode-region): Encode =? strings. | ||
| 58 | |||
| 59 | 2005-03-25 Jesper Harder <harder@ifa.au.dk> | ||
| 60 | |||
| 61 | * rfc2047.el (rfc2047-encoded-word-regexp): Support RFC 2231 | ||
| 62 | language tags; remove unnecessary '+'. Reported by Stefan Wiens | ||
| 63 | <s.wi@gmx.net>. | ||
| 64 | (rfc2047-decode-string): Don't cons a string unnecessarily. | ||
| 65 | (rfc2047-parse-and-decode, rfc2047-decode): Use a character for | ||
| 66 | the encoding to avoid consing a string. | ||
| 67 | (rfc2047-decode): Use mm-subst-char-in-string instead of | ||
| 68 | mm-replace-chars-in-string. | ||
| 69 | |||
| 70 | 2005-03-25 TSUCHIYA Masatoshi <tsuchiya@namazu.org> | ||
| 71 | |||
| 72 | * rfc2047.el (rfc2047-encode): Use uppercase letters to specify | ||
| 73 | encodings of MIME-encoded words, in order to improve | ||
| 74 | interoperability with several broken MUAs. | ||
| 75 | |||
| 76 | 2005-03-21 Reiner Steib <Reiner.Steib@gmx.de> | ||
| 77 | |||
| 78 | * gnus-srvr.el (gnus-browse-select-group): Add NUMBER argument and | ||
| 79 | pass it to `gnus-browse-read-group'. | ||
| 80 | (gnus-browse-read-group): Add NUMBER argument and pass it to | ||
| 81 | `gnus-group-read-ephemeral-group'. | ||
| 82 | |||
| 83 | * gnus-group.el (gnus-group-read-ephemeral-group): Add NUMBER | ||
| 84 | argument and pass it to `gnus-group-read-group'. | ||
| 85 | |||
| 86 | 2005-03-19 Aidan Kehoe <kehoea@parhasard.net> | ||
| 87 | |||
| 88 | * mm-util.el (mm-xemacs-find-mime-charset): Only call | ||
| 89 | mm-xemacs-find-mime-charset-1 if we have the mule feature | ||
| 90 | available at runtime. | ||
| 91 | |||
| 1 | 2005-03-25 Werner Lemberg <wl@gnu.org> | 92 | 2005-03-25 Werner Lemberg <wl@gnu.org> |
| 2 | 93 | ||
| 3 | * nnmaildir.el: Replace `illegal' with `invalid'. | 94 | * nnmaildir.el: Replace `illegal' with `invalid'. |
diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el index 767bdacb78e..6d38626998c 100644 --- a/lisp/gnus/gnus-group.el +++ b/lisp/gnus/gnus-group.el | |||
| @@ -1984,7 +1984,8 @@ confirmation is required." | |||
| 1984 | (defun gnus-group-read-ephemeral-group (group method &optional activate | 1984 | (defun gnus-group-read-ephemeral-group (group method &optional activate |
| 1985 | quit-config request-only | 1985 | quit-config request-only |
| 1986 | select-articles | 1986 | select-articles |
| 1987 | parameters) | 1987 | parameters |
| 1988 | number) | ||
| 1988 | "Read GROUP from METHOD as an ephemeral group. | 1989 | "Read GROUP from METHOD as an ephemeral group. |
| 1989 | If ACTIVATE, request the group first. | 1990 | If ACTIVATE, request the group first. |
| 1990 | If QUIT-CONFIG, use that window configuration when exiting from the | 1991 | If QUIT-CONFIG, use that window configuration when exiting from the |
| @@ -1992,6 +1993,7 @@ ephemeral group. | |||
| 1992 | If REQUEST-ONLY, don't actually read the group; just request it. | 1993 | If REQUEST-ONLY, don't actually read the group; just request it. |
| 1993 | If SELECT-ARTICLES, only select those articles. | 1994 | If SELECT-ARTICLES, only select those articles. |
| 1994 | If PARAMETERS, use those as the group parameters. | 1995 | If PARAMETERS, use those as the group parameters. |
| 1996 | If NUMBER, fetch this number of articles. | ||
| 1995 | 1997 | ||
| 1996 | Return the name of the group if selection was successful." | 1998 | Return the name of the group if selection was successful." |
| 1997 | (interactive | 1999 | (interactive |
| @@ -2039,7 +2041,7 @@ Return the name of the group if selection was successful." | |||
| 2039 | (when (let ((gnus-large-newsgroup gnus-large-ephemeral-newsgroup) | 2041 | (when (let ((gnus-large-newsgroup gnus-large-ephemeral-newsgroup) |
| 2040 | (gnus-fetch-old-headers | 2042 | (gnus-fetch-old-headers |
| 2041 | gnus-fetch-old-ephemeral-headers)) | 2043 | gnus-fetch-old-ephemeral-headers)) |
| 2042 | (gnus-group-read-group t t group select-articles)) | 2044 | (gnus-group-read-group (or number t) t group select-articles)) |
| 2043 | group) | 2045 | group) |
| 2044 | ;;(error nil) | 2046 | ;;(error nil) |
| 2045 | (quit | 2047 | (quit |
diff --git a/lisp/gnus/gnus-srvr.el b/lisp/gnus/gnus-srvr.el index e8c7d354145..7b3c033fddb 100644 --- a/lisp/gnus/gnus-srvr.el +++ b/lisp/gnus/gnus-srvr.el | |||
| @@ -851,23 +851,26 @@ buffer. | |||
| 851 | (setq buffer-read-only t) | 851 | (setq buffer-read-only t) |
| 852 | (gnus-run-hooks 'gnus-browse-mode-hook)) | 852 | (gnus-run-hooks 'gnus-browse-mode-hook)) |
| 853 | 853 | ||
| 854 | (defun gnus-browse-read-group (&optional no-article) | 854 | (defun gnus-browse-read-group (&optional no-article number) |
| 855 | "Enter the group at the current line." | 855 | "Enter the group at the current line. |
| 856 | (interactive) | 856 | If NUMBER, fetch this number of articles." |
| 857 | (interactive "P") | ||
| 857 | (let ((group (gnus-browse-group-name))) | 858 | (let ((group (gnus-browse-group-name))) |
| 858 | (if (or (not (gnus-get-info group)) | 859 | (if (or (not (gnus-get-info group)) |
| 859 | (gnus-ephemeral-group-p group)) | 860 | (gnus-ephemeral-group-p group)) |
| 860 | (unless (gnus-group-read-ephemeral-group | 861 | (unless (gnus-group-read-ephemeral-group |
| 861 | group gnus-browse-current-method nil | 862 | group gnus-browse-current-method nil |
| 862 | (cons (current-buffer) 'browse)) | 863 | (cons (current-buffer) 'browse) |
| 864 | nil nil nil number) | ||
| 863 | (error "Couldn't enter %s" group)) | 865 | (error "Couldn't enter %s" group)) |
| 864 | (unless (gnus-group-read-group nil no-article group) | 866 | (unless (gnus-group-read-group nil no-article group) |
| 865 | (error "Couldn't enter %s" group))))) | 867 | (error "Couldn't enter %s" group))))) |
| 866 | 868 | ||
| 867 | (defun gnus-browse-select-group () | 869 | (defun gnus-browse-select-group (&optional number) |
| 868 | "Select the current group." | 870 | "Select the current group. |
| 869 | (interactive) | 871 | If NUMBER, fetch this number of articles." |
| 870 | (gnus-browse-read-group 'no)) | 872 | (interactive "P") |
| 873 | (gnus-browse-read-group 'no number)) | ||
| 871 | 874 | ||
| 872 | (defun gnus-browse-next-group (n) | 875 | (defun gnus-browse-next-group (n) |
| 873 | "Go to the next group." | 876 | "Go to the next group." |
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index de56fe2be96..9edbce2620e 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el | |||
| @@ -6364,7 +6364,8 @@ Optional DIGEST will use digest to forward." | |||
| 6364 | (replace-match "X-From-Line: ")) | 6364 | (replace-match "X-From-Line: ")) |
| 6365 | ;; Send it. | 6365 | ;; Send it. |
| 6366 | (let ((message-inhibit-body-encoding t) | 6366 | (let ((message-inhibit-body-encoding t) |
| 6367 | message-required-mail-headers) | 6367 | message-required-mail-headers |
| 6368 | rfc2047-encode-encoded-words) | ||
| 6368 | (message-send-mail)) | 6369 | (message-send-mail)) |
| 6369 | (kill-buffer (current-buffer))) | 6370 | (kill-buffer (current-buffer))) |
| 6370 | (message "Resending message to %s...done" address))) | 6371 | (message "Resending message to %s...done" address))) |
diff --git a/lisp/gnus/mm-util.el b/lisp/gnus/mm-util.el index 5b4200d6d52..3be6444f18f 100644 --- a/lisp/gnus/mm-util.el +++ b/lisp/gnus/mm-util.el | |||
| @@ -86,6 +86,32 @@ | |||
| 86 | (multibyte-char-to-unibyte . identity)))) | 86 | (multibyte-char-to-unibyte . identity)))) |
| 87 | 87 | ||
| 88 | (eval-and-compile | 88 | (eval-and-compile |
| 89 | (cond | ||
| 90 | ((fboundp 'replace-in-string) | ||
| 91 | (defalias 'mm-replace-in-string 'replace-in-string)) | ||
| 92 | ((fboundp 'replace-regexp-in-string) | ||
| 93 | (defun mm-replace-in-string (string regexp newtext &optional literal) | ||
| 94 | "Replace all matches for REGEXP with NEWTEXT in STRING. | ||
| 95 | If LITERAL is non-nil, insert NEWTEXT literally. Return a new | ||
| 96 | string containing the replacements. | ||
| 97 | |||
| 98 | This is a compatibility function for different Emacsen." | ||
| 99 | (replace-regexp-in-string regexp newtext string nil literal))) | ||
| 100 | (t | ||
| 101 | (defun mm-replace-in-string (string regexp newtext &optional literal) | ||
| 102 | "Replace all matches for REGEXP with NEWTEXT in STRING. | ||
| 103 | If LITERAL is non-nil, insert NEWTEXT literally. Return a new | ||
| 104 | string containing the replacements. | ||
| 105 | |||
| 106 | This is a compatibility function for different Emacsen." | ||
| 107 | (let ((start 0) tail) | ||
| 108 | (while (string-match regexp string start) | ||
| 109 | (setq tail (- (length string) (match-end 0))) | ||
| 110 | (setq string (replace-match newtext nil literal string)) | ||
| 111 | (setq start (- (length string) tail)))) | ||
| 112 | string)))) | ||
| 113 | |||
| 114 | (eval-and-compile | ||
| 89 | (defalias 'mm-char-or-char-int-p | 115 | (defalias 'mm-char-or-char-int-p |
| 90 | (cond | 116 | (cond |
| 91 | ((fboundp 'char-or-char-int-p) 'char-or-char-int-p) | 117 | ((fboundp 'char-or-char-int-p) 'char-or-char-int-p) |
| @@ -606,7 +632,7 @@ But this is very much a corner case, so don't worry about it." | |||
| 606 | 632 | ||
| 607 | ;; Load the Latin Unity library, if available. | 633 | ;; Load the Latin Unity library, if available. |
| 608 | (when (and (not (featurep 'latin-unity)) (locate-library "latin-unity")) | 634 | (when (and (not (featurep 'latin-unity)) (locate-library "latin-unity")) |
| 609 | (require 'latin-unity)) | 635 | (ignore-errors (require 'latin-unity))) |
| 610 | 636 | ||
| 611 | ;; Now, can we use it? | 637 | ;; Now, can we use it? |
| 612 | (if (featurep 'latin-unity) | 638 | (if (featurep 'latin-unity) |
| @@ -651,7 +677,7 @@ But this is very much a corner case, so don't worry about it." | |||
| 651 | 677 | ||
| 652 | (defmacro mm-xemacs-find-mime-charset (begin end) | 678 | (defmacro mm-xemacs-find-mime-charset (begin end) |
| 653 | (when (featurep 'xemacs) | 679 | (when (featurep 'xemacs) |
| 654 | `(mm-xemacs-find-mime-charset-1 ,begin ,end))) | 680 | `(and (featurep 'mule) (mm-xemacs-find-mime-charset-1 ,begin ,end)))) |
| 655 | 681 | ||
| 656 | (defun mm-find-mime-charset-region (b e &optional hack-charsets) | 682 | (defun mm-find-mime-charset-region (b e &optional hack-charsets) |
| 657 | "Return the MIME charsets needed to encode the region between B and E. | 683 | "Return the MIME charsets needed to encode the region between B and E. |
diff --git a/lisp/gnus/rfc2047.el b/lisp/gnus/rfc2047.el index 6086f422abd..538e22e0f88 100644 --- a/lisp/gnus/rfc2047.el +++ b/lisp/gnus/rfc2047.el | |||
| @@ -119,12 +119,15 @@ The values can be: | |||
| 119 | Valid encodings are nil, `Q' and `B'. These indicate binary (no) encoding, | 119 | Valid encodings are nil, `Q' and `B'. These indicate binary (no) encoding, |
| 120 | quoted-printable and base64 respectively.") | 120 | quoted-printable and base64 respectively.") |
| 121 | 121 | ||
| 122 | (defvar rfc2047-encoding-function-alist | 122 | (defvar rfc2047-encode-function-alist |
| 123 | '((Q . rfc2047-q-encode-region) | 123 | '((Q . rfc2047-q-encode-string) |
| 124 | (B . rfc2047-b-encode-region) | 124 | (B . rfc2047-b-encode-string) |
| 125 | (nil . ignore)) | 125 | (nil . identity)) |
| 126 | "Alist of RFC2047 encodings to encoding functions.") | 126 | "Alist of RFC2047 encodings to encoding functions.") |
| 127 | 127 | ||
| 128 | (defvar rfc2047-encode-encoded-words t | ||
| 129 | "Whether encoded words should be encoded again.") | ||
| 130 | |||
| 128 | ;;; | 131 | ;;; |
| 129 | ;;; Functions for encoding RFC2047 messages | 132 | ;;; Functions for encoding RFC2047 messages |
| 130 | ;;; | 133 | ;;; |
| @@ -166,7 +169,7 @@ This is either `base64' or `quoted-printable'." | |||
| 166 | (save-restriction | 169 | (save-restriction |
| 167 | (rfc2047-narrow-to-field) | 170 | (rfc2047-narrow-to-field) |
| 168 | (re-search-forward ":[ \t\n]*" nil t) | 171 | (re-search-forward ":[ \t\n]*" nil t) |
| 169 | (buffer-substring (point) (point-max))))) | 172 | (buffer-substring-no-properties (point) (point-max))))) |
| 170 | 173 | ||
| 171 | (defvar rfc2047-encoding-type 'address-mime | 174 | (defvar rfc2047-encoding-type 'address-mime |
| 172 | "The type of encoding done by `rfc2047-encode-region'. | 175 | "The type of encoding done by `rfc2047-encode-region'. |
| @@ -186,24 +189,25 @@ Should be called narrowed to the head of the message." | |||
| 186 | (rfc2047-narrow-to-field) | 189 | (rfc2047-narrow-to-field) |
| 187 | (if (not (rfc2047-encodable-p)) | 190 | (if (not (rfc2047-encodable-p)) |
| 188 | (prog1 | 191 | (prog1 |
| 189 | (if (and (eq (mm-body-7-or-8) '8bit) | 192 | (if (and (eq (mm-body-7-or-8) '8bit) |
| 190 | (mm-multibyte-p) | 193 | (mm-multibyte-p) |
| 191 | (mm-coding-system-p | 194 | (mm-coding-system-p |
| 192 | (car message-posting-charset))) | 195 | (car message-posting-charset))) |
| 193 | ;; 8 bit must be decoded. | 196 | ;; 8 bit must be decoded. |
| 194 | (mm-encode-coding-region | 197 | (mm-encode-coding-region |
| 195 | (point-min) (point-max) | 198 | (point-min) (point-max) |
| 196 | (mm-charset-to-coding-system | 199 | (mm-charset-to-coding-system |
| 197 | (car message-posting-charset)))) | 200 | (car message-posting-charset)))) |
| 198 | ;; No encoding necessary, but folding is nice | 201 | ;; No encoding necessary, but folding is nice |
| 199 | (rfc2047-fold-region | 202 | (when nil |
| 200 | (save-excursion | 203 | (rfc2047-fold-region |
| 201 | (goto-char (point-min)) | 204 | (save-excursion |
| 202 | (skip-chars-forward "^:") | 205 | (goto-char (point-min)) |
| 203 | (when (looking-at ": ") | 206 | (skip-chars-forward "^:") |
| 204 | (forward-char 2)) | 207 | (when (looking-at ": ") |
| 205 | (point)) | 208 | (forward-char 2)) |
| 206 | (point-max))) | 209 | (point)) |
| 210 | (point-max)))) | ||
| 207 | ;; We found something that may perhaps be encoded. | 211 | ;; We found something that may perhaps be encoded. |
| 208 | (setq method nil | 212 | (setq method nil |
| 209 | alist rfc2047-header-encoding-alist) | 213 | alist rfc2047-header-encoding-alist) |
| @@ -213,7 +217,6 @@ Should be called narrowed to the head of the message." | |||
| 213 | (eq (car elem) t)) | 217 | (eq (car elem) t)) |
| 214 | (setq alist nil | 218 | (setq alist nil |
| 215 | method (cdr elem)))) | 219 | method (cdr elem)))) |
| 216 | (goto-char (point-min)) | ||
| 217 | (re-search-forward "^[^:]+: *" nil t) | 220 | (re-search-forward "^[^:]+: *" nil t) |
| 218 | (cond | 221 | (cond |
| 219 | ((eq method 'address-mime) | 222 | ((eq method 'address-mime) |
| @@ -267,8 +270,13 @@ The buffer may be narrowed." | |||
| 267 | (require 'message) ; for message-posting-charset | 270 | (require 'message) ; for message-posting-charset |
| 268 | (let ((charsets | 271 | (let ((charsets |
| 269 | (mm-find-mime-charset-region (point-min) (point-max)))) | 272 | (mm-find-mime-charset-region (point-min) (point-max)))) |
| 270 | (and charsets | 273 | (goto-char (point-min)) |
| 271 | (not (equal charsets (list (car message-posting-charset))))))) | 274 | (or (and rfc2047-encode-encoded-words |
| 275 | (prog1 | ||
| 276 | (search-forward "=?" nil t) | ||
| 277 | (goto-char (point-min)))) | ||
| 278 | (and charsets | ||
| 279 | (not (equal charsets (list (car message-posting-charset)))))))) | ||
| 272 | 280 | ||
| 273 | ;; Use this syntax table when parsing into regions that may need | 281 | ;; Use this syntax table when parsing into regions that may need |
| 274 | ;; encoding. Double quotes are string delimiters, backslash is | 282 | ;; encoding. Double quotes are string delimiters, backslash is |
| @@ -292,8 +300,8 @@ The buffer may be narrowed." | |||
| 292 | table)))) | 300 | table)))) |
| 293 | (modify-syntax-entry ?\\ "\\" table) | 301 | (modify-syntax-entry ?\\ "\\" table) |
| 294 | (modify-syntax-entry ?\" "\"" table) | 302 | (modify-syntax-entry ?\" "\"" table) |
| 295 | (modify-syntax-entry ?\( "." table) | 303 | (modify-syntax-entry ?\( "(" table) |
| 296 | (modify-syntax-entry ?\) "." table) | 304 | (modify-syntax-entry ?\) ")" table) |
| 297 | (modify-syntax-entry ?\< "." table) | 305 | (modify-syntax-entry ?\< "." table) |
| 298 | (modify-syntax-entry ?\> "." table) | 306 | (modify-syntax-entry ?\> "." table) |
| 299 | (modify-syntax-entry ?\[ "." table) | 307 | (modify-syntax-entry ?\[ "." table) |
| @@ -310,183 +318,341 @@ By default, the region is treated as containing RFC2822 addresses. | |||
| 310 | Dynamically bind `rfc2047-encoding-type' to change that." | 318 | Dynamically bind `rfc2047-encoding-type' to change that." |
| 311 | (save-restriction | 319 | (save-restriction |
| 312 | (narrow-to-region b e) | 320 | (narrow-to-region b e) |
| 313 | (if (eq 'mime rfc2047-encoding-type) | 321 | (let ((encodable-regexp (if rfc2047-encode-encoded-words |
| 314 | ;; Simple case. Treat as single word after any initial ASCII | 322 | "[^\000-\177]+\\|=\\?" |
| 315 | ;; part and before any tailing ASCII part. The leading ASCII | 323 | "[^\000-\177]+")) |
| 316 | ;; is relevant for instance in Subject headers with `Re:' for | 324 | start ; start of current token |
| 317 | ;; interoperability with non-MIME clients, and we might as | 325 | end begin csyntax |
| 318 | ;; well avoid the tail too. | 326 | ;; Whether there's an encoded word before the current token, |
| 319 | (progn | 327 | ;; either immediately or separated by space. |
| 320 | (goto-char (point-min)) | 328 | last-encoded |
| 321 | ;; Does it need encoding? | 329 | (orig-text (buffer-substring-no-properties b e))) |
| 322 | (skip-chars-forward "\000-\177") | 330 | (if (eq 'mime rfc2047-encoding-type) |
| 323 | (unless (eobp) | 331 | ;; Simple case. Continuous words in which all those contain |
| 324 | (skip-chars-backward "^ \n") ; beginning of space-delimited word | 332 | ;; non-ASCII characters are encoded collectively. Encoding |
| 325 | (rfc2047-encode (point) (progn | 333 | ;; ASCII words, including `Re:' used in Subject headers, is |
| 326 | (goto-char e) | 334 | ;; avoided for interoperability with non-MIME clients and |
| 327 | (skip-chars-backward "\000-\177") | 335 | ;; for making it easy to find keywords. |
| 328 | (skip-chars-forward "^ \n") | 336 | (progn |
| 329 | ;; end of space-delimited word | 337 | (goto-char (point-min)) |
| 330 | (point))))) | 338 | (while (progn (skip-chars-forward " \t\n") |
| 331 | ;; `address-mime' case -- take care of quoted words, comments. | 339 | (not (eobp))) |
| 332 | (with-syntax-table rfc2047-syntax-table | 340 | (setq start (point)) |
| 333 | (let ((start) ; start of current token | 341 | (while (and (looking-at "[ \t\n]*\\([^ \t\n]+\\)") |
| 334 | end ; end of current token | 342 | (progn |
| 335 | ;; Whether there's an encoded word before the current | 343 | (setq end (match-end 0)) |
| 336 | ;; token, either immediately or separated by space. | 344 | (re-search-forward encodable-regexp end t))) |
| 337 | last-encoded) | 345 | (goto-char end)) |
| 346 | (if (> (point) start) | ||
| 347 | (rfc2047-encode start (point)) | ||
| 348 | (goto-char end)))) | ||
| 349 | ;; `address-mime' case -- take care of quoted words, comments. | ||
| 350 | (with-syntax-table rfc2047-syntax-table | ||
| 338 | (goto-char (point-min)) | 351 | (goto-char (point-min)) |
| 339 | (condition-case nil ; in case of unbalanced quotes | 352 | (condition-case err ; in case of unbalanced quotes |
| 340 | ;; Look for rfc2822-style: sequences of atoms, quoted | 353 | ;; Look for rfc2822-style: sequences of atoms, quoted |
| 341 | ;; strings, specials, whitespace. (Specials mustn't be | 354 | ;; strings, specials, whitespace. (Specials mustn't be |
| 342 | ;; encoded.) | 355 | ;; encoded.) |
| 343 | (while (not (eobp)) | 356 | (while (not (eobp)) |
| 344 | (setq start (point)) | ||
| 345 | ;; Skip whitespace. | 357 | ;; Skip whitespace. |
| 346 | (unless (= 0 (skip-chars-forward " \t\n")) | 358 | (skip-chars-forward " \t\n") |
| 347 | (setq start (point))) | 359 | (setq start (point)) |
| 348 | (cond | 360 | (cond |
| 349 | ((not (char-after))) ; eob | 361 | ((not (char-after))) ; eob |
| 350 | ;; else token start | 362 | ;; else token start |
| 351 | ((eq ?\" (char-syntax (char-after))) | 363 | ((eq ?\" (setq csyntax (char-syntax (char-after)))) |
| 352 | ;; Quoted word. | 364 | ;; Quoted word. |
| 353 | (forward-sexp) | 365 | (forward-sexp) |
| 354 | (setq end (point)) | 366 | (setq end (point)) |
| 355 | ;; Does it need encoding? | 367 | ;; Does it need encoding? |
| 356 | (goto-char start) | 368 | (goto-char start) |
| 357 | (skip-chars-forward "\000-\177" end) | 369 | (if (re-search-forward encodable-regexp end 'move) |
| 358 | (if (= end (point)) | 370 | ;; It needs encoding. Strip the quotes first, |
| 359 | (setq last-encoded nil) | 371 | ;; since encoded words can't occur in quotes. |
| 360 | ;; It needs encoding. Strip the quotes first, | 372 | (progn |
| 361 | ;; since encoded words can't occur in quotes. | 373 | (goto-char end) |
| 362 | (goto-char end) | 374 | (delete-backward-char 1) |
| 363 | (delete-backward-char 1) | 375 | (goto-char start) |
| 364 | (goto-char start) | 376 | (delete-char 1) |
| 365 | (delete-char 1) | 377 | (when last-encoded |
| 366 | (when last-encoded | 378 | ;; There was a preceding quoted word. We need |
| 367 | ;; There was a preceding quoted word. We need | 379 | ;; to include any separating whitespace in this |
| 368 | ;; to include any separating whitespace in this | 380 | ;; word to avoid it getting lost. |
| 369 | ;; word to avoid it getting lost. | 381 | (skip-chars-backward " \t") |
| 370 | (skip-chars-backward " \t") | 382 | ;; A space is needed between the encoded words. |
| 371 | ;; A space is needed between the encoded words. | 383 | (insert ? ) |
| 372 | (insert ? ) | 384 | (setq start (point) |
| 373 | (setq start (point) | 385 | end (1+ end))) |
| 374 | end (1+ end))) | 386 | ;; Adjust the end position for the deleted quotes. |
| 375 | ;; Adjust the end position for the deleted quotes. | 387 | (rfc2047-encode start (- end 2)) |
| 376 | (rfc2047-encode start (- end 2)) | 388 | (setq last-encoded t)) ; record that it was encoded |
| 377 | (setq last-encoded t))) ; record that it was encoded | 389 | (setq last-encoded nil))) |
| 378 | ((eq ?. (char-syntax (char-after))) | 390 | ((eq ?. csyntax) |
| 379 | ;; Skip other delimiters, but record that they've | 391 | ;; Skip other delimiters, but record that they've |
| 380 | ;; potentially separated quoted words. | 392 | ;; potentially separated quoted words. |
| 381 | (forward-char) | 393 | (forward-char) |
| 382 | (setq last-encoded nil)) | 394 | (setq last-encoded nil)) |
| 395 | ((eq ?\) csyntax) | ||
| 396 | (error "Unbalanced parentheses")) | ||
| 397 | ((eq ?\( csyntax) | ||
| 398 | ;; Look for the end of parentheses. | ||
| 399 | (forward-list) | ||
| 400 | ;; Encode text as an unstructured field. | ||
| 401 | (let ((rfc2047-encoding-type 'mime)) | ||
| 402 | (rfc2047-encode-region (1+ start) (1- (point)))) | ||
| 403 | (skip-chars-forward ")")) | ||
| 383 | (t ; normal token/whitespace sequence | 404 | (t ; normal token/whitespace sequence |
| 384 | ;; Find the end. | 405 | ;; Find the end. |
| 385 | (forward-word 1) | 406 | ;; Skip one ASCII word, or encode continuous words |
| 386 | (skip-chars-backward " \t") | 407 | ;; in which all those contain non-ASCII characters. |
| 408 | (setq end nil) | ||
| 409 | (while (not (or end (eobp))) | ||
| 410 | (when (looking-at "[\000-\177]+") | ||
| 411 | (setq begin (point) | ||
| 412 | end (match-end 0)) | ||
| 413 | (when (progn | ||
| 414 | (while (and (or (re-search-forward | ||
| 415 | "[ \t\n]\\|\\Sw" end 'move) | ||
| 416 | (setq end nil)) | ||
| 417 | (eq ?\\ (char-syntax (char-before)))) | ||
| 418 | ;; Skip backslash-quoted characters. | ||
| 419 | (forward-char)) | ||
| 420 | end) | ||
| 421 | (setq end (match-beginning 0)) | ||
| 422 | (if rfc2047-encode-encoded-words | ||
| 423 | (progn | ||
| 424 | (goto-char begin) | ||
| 425 | (when (search-forward "=?" end 'move) | ||
| 426 | (goto-char (match-beginning 0)) | ||
| 427 | (setq end nil))) | ||
| 428 | (goto-char end)))) | ||
| 429 | ;; Where the value nil of `end' means there may be | ||
| 430 | ;; text to have to be encoded following the point. | ||
| 431 | ;; Otherwise, the point reached to the end of ASCII | ||
| 432 | ;; words separated by whitespace or a special char. | ||
| 433 | (unless end | ||
| 434 | (when (looking-at encodable-regexp) | ||
| 435 | (goto-char (setq begin (match-end 0))) | ||
| 436 | (while (and (looking-at "[ \t\n]+\\([^ \t\n]+\\)") | ||
| 437 | (setq end (match-end 0)) | ||
| 438 | (progn | ||
| 439 | (while (re-search-forward | ||
| 440 | encodable-regexp end t)) | ||
| 441 | (< begin (point))) | ||
| 442 | (goto-char begin) | ||
| 443 | (or (not (re-search-forward "\\Sw" end t)) | ||
| 444 | (progn | ||
| 445 | (goto-char (match-beginning 0)) | ||
| 446 | nil))) | ||
| 447 | (goto-char end)) | ||
| 448 | (when (looking-at "[^ \t\n]+") | ||
| 449 | (setq end (match-end 0)) | ||
| 450 | (if (re-search-forward "\\Sw+" end t) | ||
| 451 | ;; There are special characters better | ||
| 452 | ;; to be encoded so that MTAs may parse | ||
| 453 | ;; them safely. | ||
| 454 | (cond ((= end (point))) | ||
| 455 | ((looking-at (concat "\\sw*\\(" | ||
| 456 | encodable-regexp | ||
| 457 | "\\)")) | ||
| 458 | (setq end nil)) | ||
| 459 | (t | ||
| 460 | (goto-char (1- (match-end 0))) | ||
| 461 | (unless (= (point) (match-beginning 0)) | ||
| 462 | ;; Separate encodable text and | ||
| 463 | ;; delimiter. | ||
| 464 | (insert " ")))) | ||
| 465 | (goto-char end) | ||
| 466 | (skip-chars-forward " \t\n") | ||
| 467 | (if (and (looking-at "[^ \t\n]+") | ||
| 468 | (string-match encodable-regexp | ||
| 469 | (match-string 0))) | ||
| 470 | (setq end nil) | ||
| 471 | (goto-char end))))))) | ||
| 472 | (skip-chars-backward " \t\n") | ||
| 387 | (setq end (point)) | 473 | (setq end (point)) |
| 388 | ;; Deal with encoding and leading space as for | ||
| 389 | ;; quoted words. | ||
| 390 | (goto-char start) | 474 | (goto-char start) |
| 391 | (skip-chars-forward "\000-\177" end) | 475 | (if (re-search-forward encodable-regexp end 'move) |
| 392 | (if (= end (point)) | 476 | (progn |
| 393 | (setq last-encoded nil) | 477 | (unless (memq (char-before start) '(nil ?\t ? )) |
| 394 | (when last-encoded | 478 | (if (progn |
| 395 | (goto-char start) | 479 | (goto-char start) |
| 396 | (skip-chars-backward " \t") | 480 | (skip-chars-backward "^ \t\n") |
| 397 | (insert ? ) | 481 | (and (looking-at "\\Sw+") |
| 398 | (setq start (point) | 482 | (= (match-end 0) start))) |
| 399 | end (1+ end))) | 483 | ;; Also encode bogus delimiters. |
| 400 | (rfc2047-encode start end) | 484 | (setq start (point)) |
| 401 | (setq last-encoded t))))) | 485 | ;; Separate encodable text and delimiter. |
| 486 | (goto-char start) | ||
| 487 | (insert " ") | ||
| 488 | (setq start (1+ start) | ||
| 489 | end (1+ end)))) | ||
| 490 | (rfc2047-encode start end) | ||
| 491 | (setq last-encoded t)) | ||
| 492 | (setq last-encoded nil))))) | ||
| 402 | (error | 493 | (error |
| 403 | (error "Invalid data for rfc2047 encoding: %s" | 494 | (if (or debug-on-quit debug-on-error) |
| 404 | (buffer-substring b e))))))) | 495 | (signal (car err) (cdr err)) |
| 405 | (rfc2047-fold-region b (point)))) | 496 | (error "Invalid data for rfc2047 encoding: %s" |
| 497 | (mm-replace-in-string orig-text "[ \t\n]+" " ")))))))) | ||
| 498 | (rfc2047-fold-region b (point)) | ||
| 499 | (goto-char (point-max)))) | ||
| 406 | 500 | ||
| 407 | (defun rfc2047-encode-string (string) | 501 | (defun rfc2047-encode-string (string) |
| 408 | "Encode words in STRING. | 502 | "Encode words in STRING. |
| 409 | By default, the string is treated as containing addresses (see | 503 | By default, the string is treated as containing addresses (see |
| 410 | `rfc2047-encoding-type')." | 504 | `rfc2047-encoding-type')." |
| 411 | (with-temp-buffer | 505 | (mm-with-multibyte-buffer |
| 412 | (insert string) | 506 | (insert string) |
| 413 | (rfc2047-encode-region (point-min) (point-max)) | 507 | (rfc2047-encode-region (point-min) (point-max)) |
| 414 | (buffer-string))) | 508 | (buffer-string))) |
| 415 | 509 | ||
| 510 | (defvar rfc2047-encode-max-chars 76 | ||
| 511 | "Maximum characters of each header line that contain encoded-words. | ||
| 512 | If it is nil, encoded-words will not be folded. Too small value may | ||
| 513 | cause an error. Don't change this for no particular reason.") | ||
| 514 | |||
| 515 | (defun rfc2047-encode-1 (column string cs encoder start crest tail | ||
| 516 | &optional eword) | ||
| 517 | "Subroutine used by `rfc2047-encode'." | ||
| 518 | (cond ((string-equal string "") | ||
| 519 | (or eword "")) | ||
| 520 | ((not rfc2047-encode-max-chars) | ||
| 521 | (concat start | ||
| 522 | (funcall encoder (if cs | ||
| 523 | (mm-encode-coding-string string cs) | ||
| 524 | string)) | ||
| 525 | "?=")) | ||
| 526 | ((>= column rfc2047-encode-max-chars) | ||
| 527 | (when eword | ||
| 528 | (cond ((string-match "\n[ \t]+\\'" eword) | ||
| 529 | ;; Reomove a superfluous empty line. | ||
| 530 | (setq eword (substring eword 0 (match-beginning 0)))) | ||
| 531 | ((string-match "(+\\'" eword) | ||
| 532 | ;; Break the line before the open parenthesis. | ||
| 533 | (setq crest (concat crest (match-string 0 eword)) | ||
| 534 | eword (substring eword 0 (match-beginning 0)))))) | ||
| 535 | (rfc2047-encode-1 (length crest) string cs encoder start " " tail | ||
| 536 | (concat eword "\n" crest))) | ||
| 537 | (t | ||
| 538 | (let ((index 0) | ||
| 539 | (limit (1- (length string))) | ||
| 540 | (prev "") | ||
| 541 | next len) | ||
| 542 | (while (and prev | ||
| 543 | (<= index limit)) | ||
| 544 | (setq next (concat start | ||
| 545 | (funcall encoder | ||
| 546 | (if cs | ||
| 547 | (mm-encode-coding-string | ||
| 548 | (substring string 0 (1+ index)) | ||
| 549 | cs) | ||
| 550 | (substring string 0 (1+ index)))) | ||
| 551 | "?=") | ||
| 552 | len (+ column (length next))) | ||
| 553 | (if (> len rfc2047-encode-max-chars) | ||
| 554 | (setq next prev | ||
| 555 | prev nil) | ||
| 556 | (if (or (< index limit) | ||
| 557 | (<= (+ len (or (string-match "\n" tail) | ||
| 558 | (length tail))) | ||
| 559 | rfc2047-encode-max-chars)) | ||
| 560 | (setq prev next | ||
| 561 | index (1+ index)) | ||
| 562 | (if (string-match "\\`)+" tail) | ||
| 563 | ;; Break the line after the close parenthesis. | ||
| 564 | (setq tail (concat (substring tail 0 (match-end 0)) | ||
| 565 | "\n " | ||
| 566 | (substring tail (match-end 0))) | ||
| 567 | prev next | ||
| 568 | index (1+ index)) | ||
| 569 | (setq next prev | ||
| 570 | prev nil))))) | ||
| 571 | (if (> index limit) | ||
| 572 | (concat eword next tail) | ||
| 573 | (if (= 0 index) | ||
| 574 | (if (and eword | ||
| 575 | (string-match "(+\\'" eword)) | ||
| 576 | (setq crest (concat crest (match-string 0 eword)) | ||
| 577 | eword (substring eword 0 (match-beginning 0))) | ||
| 578 | (setq eword (concat eword next))) | ||
| 579 | (setq crest " " | ||
| 580 | eword (concat eword next))) | ||
| 581 | (when (string-match "\n[ \t]+\\'" eword) | ||
| 582 | ;; Reomove a superfluous empty line. | ||
| 583 | (setq eword (substring eword 0 (match-beginning 0)))) | ||
| 584 | (rfc2047-encode-1 (length crest) (substring string index) | ||
| 585 | cs encoder start " " tail | ||
| 586 | (concat eword "\n" crest))))))) | ||
| 587 | |||
| 416 | (defun rfc2047-encode (b e) | 588 | (defun rfc2047-encode (b e) |
| 417 | "Encode the word(s) in the region B to E. | 589 | "Encode the word(s) in the region B to E. |
| 418 | By default, the region is treated as containing addresses (see | 590 | Point moves to the end of the region." |
| 419 | `rfc2047-encoding-type')." | 591 | (let ((mime-charset (or (mm-find-mime-charset-region b e) (list 'us-ascii))) |
| 420 | (let* ((mime-charset (mm-find-mime-charset-region b e)) | 592 | cs encoding tail crest eword) |
| 421 | (cs (if (> (length mime-charset) 1) | 593 | (cond ((> (length mime-charset) 1) |
| 422 | ;; Fixme: Instead of this, try to break region into | 594 | (error "Can't rfc2047-encode `%s'" |
| 423 | ;; parts that can be encoded separately. | 595 | (buffer-substring-no-properties b e))) |
| 424 | (error "Can't rfc2047-encode `%s'" | 596 | ((= (length mime-charset) 1) |
| 425 | (buffer-substring b e)) | 597 | (setq mime-charset (car mime-charset) |
| 426 | (setq mime-charset (car mime-charset)) | 598 | cs (mm-charset-to-coding-system mime-charset)) |
| 427 | (mm-charset-to-coding-system mime-charset))) | 599 | (unless (and (mm-multibyte-p) |
| 428 | ;; Fixme: Better, calculate the number of non-ASCII | 600 | (mm-coding-system-p cs)) |
| 429 | ;; characters, at least for 8-bit charsets. | 601 | (setq cs nil)) |
| 430 | (encoding (or (cdr (assq mime-charset | 602 | (save-restriction |
| 603 | (narrow-to-region b e) | ||
| 604 | (setq encoding | ||
| 605 | (or (cdr (assq mime-charset | ||
| 431 | rfc2047-charset-encoding-alist)) | 606 | rfc2047-charset-encoding-alist)) |
| 432 | ;; For the charsets that don't have a preferred | 607 | ;; For the charsets that don't have a preferred |
| 433 | ;; encoding, choose the one that's shorter. | 608 | ;; encoding, choose the one that's shorter. |
| 434 | (save-restriction | 609 | (if (eq (rfc2047-qp-or-base64) 'base64) |
| 435 | (narrow-to-region b e) | 610 | 'B |
| 436 | (if (eq (rfc2047-qp-or-base64) 'base64) | 611 | 'Q))) |
| 437 | 'B | 612 | (widen) |
| 438 | 'Q)))) | 613 | (goto-char e) |
| 439 | (start (concat | 614 | (skip-chars-forward "^ \t\n") |
| 440 | "=?" (downcase (symbol-name mime-charset)) "?" | 615 | ;; `tail' may contain a close parenthesis. |
| 441 | (downcase (symbol-name encoding)) "?")) | 616 | (setq tail (buffer-substring-no-properties e (point))) |
| 442 | (factor (case mime-charset | 617 | (goto-char b) |
| 443 | ((iso-8859-5 iso-8859-7 iso-8859-8 koi8-r) 1) | 618 | (setq b (point-marker) |
| 444 | ((big5 gb2312 euc-kr) 2) | 619 | e (set-marker (make-marker) e)) |
| 445 | (utf-8 4) | 620 | (rfc2047-fold-region (rfc2047-point-at-bol) b) |
| 446 | (t 8))) | 621 | (goto-char b) |
| 447 | (pre (- b (save-restriction | 622 | (skip-chars-backward "^ \t\n") |
| 448 | (widen) | 623 | (unless (= 0 (skip-chars-backward " \t")) |
| 449 | (rfc2047-point-at-bol)))) | 624 | ;; `crest' may contain whitespace and an open parenthesis. |
| 450 | ;; encoded-words must not be longer than 75 characters, | 625 | (setq crest (buffer-substring-no-properties (point) b))) |
| 451 | ;; including charset, encoding etc. This leaves us with | 626 | (setq eword (rfc2047-encode-1 |
| 452 | ;; 75 - (length start) - 2 - 2 characters. The last 2 is for | 627 | (- b (rfc2047-point-at-bol)) |
| 453 | ;; possible base64 padding. In the worst case (iso-2022-*) | 628 | (mm-replace-in-string |
| 454 | ;; each character expands to 8 bytes which is expanded by a | 629 | (buffer-substring-no-properties b e) |
| 455 | ;; factor of 4/3 by base64 encoding. | 630 | "\n\\([ \t]?\\)" "\\1") |
| 456 | (length (floor (- 75 (length start) 4) (* factor (/ 4.0 3.0)))) | 631 | cs |
| 457 | ;; Limit line length to 76 characters. | 632 | (or (cdr (assq encoding |
| 458 | (length1 (max 1 (floor (- 76 (length start) 4 pre) | 633 | rfc2047-encode-function-alist)) |
| 459 | (* factor (/ 4.0 3.0))))) | 634 | 'identity) |
| 460 | (first t)) | 635 | (concat "=?" (downcase (symbol-name mime-charset)) |
| 461 | (if mime-charset | 636 | "?" (upcase (symbol-name encoding)) "?") |
| 462 | (save-restriction | 637 | (or crest " ") |
| 463 | (narrow-to-region b e) | 638 | tail)) |
| 464 | (when (eq encoding 'B) | 639 | (delete-region (if (eq (aref eword 0) ?\n) |
| 465 | ;; break into lines before encoding | 640 | (if (bolp) |
| 466 | (goto-char (point-min)) | 641 | ;; The line was folded before encoding. |
| 467 | (while (not (eobp)) | 642 | (1- (point)) |
| 468 | (if first | 643 | (point)) |
| 469 | (progn | 644 | (goto-char b)) |
| 470 | (goto-char (min (point-max) (+ length1 (point)))) | 645 | (+ e (length tail))) |
| 471 | (setq first nil)) | 646 | ;; `eword' contains `crest' and `tail'. |
| 472 | (goto-char (min (point-max) (+ length (point))))) | 647 | (insert eword) |
| 473 | (unless (eobp) | 648 | (set-marker b nil) |
| 474 | (insert ?\n))) | 649 | (set-marker e nil) |
| 475 | (setq first t)) | 650 | (unless (or (/= 0 (length tail)) |
| 476 | (if (and (mm-multibyte-p) | 651 | (eobp) |
| 477 | (mm-coding-system-p cs)) | 652 | (looking-at "[ \t\n)]")) |
| 478 | (mm-encode-coding-region (point-min) (point-max) cs)) | 653 | (insert " ")))) |
| 479 | (funcall (cdr (assq encoding rfc2047-encoding-function-alist)) | 654 | (t |
| 480 | (point-min) (point-max)) | 655 | (goto-char e))))) |
| 481 | (goto-char (point-min)) | ||
| 482 | (while (not (eobp)) | ||
| 483 | (unless first | ||
| 484 | (insert ? )) | ||
| 485 | (setq first nil) | ||
| 486 | (insert start) | ||
| 487 | (end-of-line) | ||
| 488 | (insert "?=") | ||
| 489 | (forward-line 1)))))) | ||
| 490 | 656 | ||
| 491 | (defun rfc2047-fold-field () | 657 | (defun rfc2047-fold-field () |
| 492 | "Fold the current header field." | 658 | "Fold the current header field." |
| @@ -512,6 +678,7 @@ By default, the region is treated as containing addresses (see | |||
| 512 | (goto-char (or break qword-break)) | 678 | (goto-char (or break qword-break)) |
| 513 | (setq break nil | 679 | (setq break nil |
| 514 | qword-break nil) | 680 | qword-break nil) |
| 681 | (skip-chars-backward " \t") | ||
| 515 | (if (looking-at "[ \t]") | 682 | (if (looking-at "[ \t]") |
| 516 | (insert ?\n) | 683 | (insert ?\n) |
| 517 | (insert "\n ")) | 684 | (insert "\n ")) |
| @@ -533,10 +700,8 @@ By default, the region is treated as containing addresses (see | |||
| 533 | (forward-char 1)) | 700 | (forward-char 1)) |
| 534 | ((memq (char-after) '(? ?\t)) | 701 | ((memq (char-after) '(? ?\t)) |
| 535 | (skip-chars-forward " \t") | 702 | (skip-chars-forward " \t") |
| 536 | (if first | 703 | (unless first ;; Don't break just after the header name. |
| 537 | ;; Don't break just after the header name. | 704 | (setq break (point)))) |
| 538 | (setq first nil) | ||
| 539 | (setq break (1- (point))))) | ||
| 540 | ((not break) | 705 | ((not break) |
| 541 | (if (not (looking-at "=\\?[^=]")) | 706 | (if (not (looking-at "=\\?[^=]")) |
| 542 | (if (eq (char-after) ?=) | 707 | (if (eq (char-after) ?=) |
| @@ -547,15 +712,17 @@ By default, the region is treated as containing addresses (see | |||
| 547 | (setq qword-break (point))) | 712 | (setq qword-break (point))) |
| 548 | (skip-chars-forward "^ \t\n\r"))) | 713 | (skip-chars-forward "^ \t\n\r"))) |
| 549 | (t | 714 | (t |
| 550 | (skip-chars-forward "^ \t\n\r")))) | 715 | (skip-chars-forward "^ \t\n\r"))) |
| 716 | (setq first nil)) | ||
| 551 | (when (and (or break qword-break) | 717 | (when (and (or break qword-break) |
| 552 | (> (- (point) bol) 76)) | 718 | (> (- (point) bol) 76)) |
| 553 | (goto-char (or break qword-break)) | 719 | (goto-char (or break qword-break)) |
| 554 | (setq break nil | 720 | (setq break nil |
| 555 | qword-break nil) | 721 | qword-break nil) |
| 556 | (if (looking-at "[ \t]") | 722 | (if (or (> 0 (skip-chars-backward " \t")) |
| 557 | (insert ?\n) | 723 | (looking-at "[ \t]")) |
| 558 | (insert "\n ")) | 724 | (insert ?\n) |
| 725 | (insert "\n ")) | ||
| 559 | (setq bol (1- (point))) | 726 | (setq bol (1- (point))) |
| 560 | ;; Don't break before the first non-LWSP characters. | 727 | ;; Don't break before the first non-LWSP characters. |
| 561 | (skip-chars-forward " \t") | 728 | (skip-chars-forward " \t") |
| @@ -590,48 +757,48 @@ By default, the region is treated as containing addresses (see | |||
| 590 | (setq eol (rfc2047-point-at-eol)) | 757 | (setq eol (rfc2047-point-at-eol)) |
| 591 | (forward-line 1))))) | 758 | (forward-line 1))))) |
| 592 | 759 | ||
| 593 | (defun rfc2047-b-encode-region (b e) | 760 | (defun rfc2047-b-encode-string (string) |
| 594 | "Base64-encode the header contained in region B to E." | 761 | "Base64-encode the header contained in STRING." |
| 595 | (save-restriction | 762 | (base64-encode-string string t)) |
| 596 | (narrow-to-region (goto-char b) e) | 763 | |
| 597 | (while (not (eobp)) | 764 | (defun rfc2047-q-encode-string (string) |
| 598 | (base64-encode-region (point) (progn (end-of-line) (point)) t) | 765 | "Quoted-printable-encode the header in STRING." |
| 599 | (if (and (bolp) (eolp)) | 766 | (mm-with-unibyte-buffer |
| 600 | (delete-backward-char 1)) | 767 | (insert string) |
| 601 | (forward-line)))) | 768 | (quoted-printable-encode-region |
| 602 | 769 | (point-min) (point-max) nil | |
| 603 | (defun rfc2047-q-encode-region (b e) | 770 | ;; = (\075), _ (\137), ? (\077) are used in the encoded word. |
| 604 | "Quoted-printable-encode the header in region B to E." | 771 | ;; Avoid using 8bit characters. |
| 605 | (save-excursion | 772 | ;; This list excludes `especials' (see the RFC2047 syntax), |
| 606 | (save-restriction | 773 | ;; meaning that some characters in non-structured fields will |
| 607 | (narrow-to-region (goto-char b) e) | 774 | ;; get encoded when they con't need to be. The following is |
| 608 | (let ((bol (save-restriction | 775 | ;; what it used to be. |
| 609 | (widen) | 776 | ;;; ;; Equivalent to "^\000-\007\011\013\015-\037\200-\377=_?" |
| 610 | (rfc2047-point-at-bol)))) | 777 | ;;; "\010\012\014\040-\074\076\100-\136\140-\177") |
| 611 | (quoted-printable-encode-region | 778 | "-\b\n\f !#-'*+0-9A-Z\\^`-~\d") |
| 612 | b e nil | 779 | (subst-char-in-region (point-min) (point-max) ? ?_) |
| 613 | ;; = (\075), _ (\137), ? (\077) are used in the encoded word. | 780 | (buffer-string))) |
| 614 | ;; Avoid using 8bit characters. | 781 | |
| 615 | ;; This list excludes `especials' (see the RFC2047 syntax), | 782 | (defun rfc2047-encode-parameter (param value) |
| 616 | ;; meaning that some characters in non-structured fields will | 783 | "Return and PARAM=VALUE string encoded in the RFC2047-like style. |
| 617 | ;; get encoded when they con't need to be. The following is | 784 | This is a replacement for the `rfc2231-encode-string' function. |
| 618 | ;; what it used to be. | 785 | |
| 619 | ;;; ;; Equivalent to "^\000-\007\011\013\015-\037\200-\377=_?" | 786 | When attaching files as MIME parts, we should use the RFC2231 encoding |
| 620 | ;;; "\010\012\014\040-\074\076\100-\136\140-\177") | 787 | to specify the file names containing non-ASCII characters. However, |
| 621 | "-\b\n\f !#-'*+0-9A-Z\\^`-~\d") | 788 | many mail softwares don't support it in practice and recipients won't |
| 622 | (subst-char-in-region (point-min) (point-max) ? ?_) | 789 | be able to extract files with correct names. Instead, the RFC2047-like |
| 623 | ;; The size of QP encapsulation is about 20, so set limit to | 790 | encoding is acceptable generally. This function provides the very |
| 624 | ;; 56=76-20. | 791 | RFC2047-like encoding, resigning to such a regrettable trend. To use |
| 625 | (unless (< (- (point-max) (point-min)) 56) | 792 | it, put the following line in your ~/.gnus.el file: |
| 626 | ;; Don't break if it could fit in one line. | 793 | |
| 627 | ;; Let rfc2047-encode-region break it later. | 794 | \(defalias 'mail-header-encode-parameter 'rfc2047-encode-parameter) |
| 628 | (goto-char (1+ (point-min))) | 795 | " |
| 629 | (while (and (not (bobp)) (not (eobp))) | 796 | (let* ((rfc2047-encoding-type 'mime) |
| 630 | (goto-char (min (point-max) (+ 56 bol))) | 797 | (rfc2047-encode-max-chars nil) |
| 631 | (search-backward "=" (- (point) 2) t) | 798 | (string (rfc2047-encode-string value))) |
| 632 | (unless (or (bobp) (eobp)) | 799 | (if (string-match (concat "[" ietf-drums-tspecials "]") string) |
| 633 | (insert ?\n) | 800 | (format "%s=%S" param string) |
| 634 | (setq bol (point))))))))) | 801 | (concat param "=" string)))) |
| 635 | 802 | ||
| 636 | ;;; | 803 | ;;; |
| 637 | ;;; Functions for decoding RFC2047 messages | 804 | ;;; Functions for decoding RFC2047 messages |
| @@ -639,8 +806,8 @@ By default, the region is treated as containing addresses (see | |||
| 639 | 806 | ||
| 640 | (eval-and-compile | 807 | (eval-and-compile |
| 641 | (defconst rfc2047-encoded-word-regexp | 808 | (defconst rfc2047-encoded-word-regexp |
| 642 | "=\\?\\([^][\000-\040()<>@,\;:\\\"/?.=]+\\)\\?\\(B\\|Q\\)\ | 809 | "=\\?\\([^][\000-\040()<>@,\;:*\\\"/?.=]+\\)\\(\\*[^?]+\\)?\ |
| 643 | \\?\\([!->@-~ +]*\\)\\?=")) | 810 | \\?\\(B\\|Q\\)\\?\\([!->@-~ ]*\\)\\?=")) |
| 644 | 811 | ||
| 645 | (defvar rfc2047-quote-decoded-words-containing-tspecials nil | 812 | (defvar rfc2047-quote-decoded-words-containing-tspecials nil |
| 646 | "If non-nil, quote decoded words containing special characters.") | 813 | "If non-nil, quote decoded words containing special characters.") |
| @@ -671,7 +838,7 @@ By default, the region is treated as containing addresses (see | |||
| 671 | "\\(\n?[ \t]\\)+" | 838 | "\\(\n?[ \t]\\)+" |
| 672 | "\\(" rfc2047-encoded-word-regexp "\\)")) | 839 | "\\(" rfc2047-encoded-word-regexp "\\)")) |
| 673 | nil t) | 840 | nil t) |
| 674 | (delete-region (goto-char (match-end 1)) (match-beginning 6))) | 841 | (delete-region (goto-char (match-end 1)) (match-beginning 7))) |
| 675 | ;; Decode the encoded words. | 842 | ;; Decode the encoded words. |
| 676 | (setq b (goto-char (point-min))) | 843 | (setq b (goto-char (point-min))) |
| 677 | (while (re-search-forward rfc2047-encoded-word-regexp nil t) | 844 | (while (re-search-forward rfc2047-encoded-word-regexp nil t) |
| @@ -774,7 +941,20 @@ By default, the region is treated as containing addresses (see | |||
| 774 | mail-parse-charset | 941 | mail-parse-charset |
| 775 | (not (eq mail-parse-charset 'us-ascii)) | 942 | (not (eq mail-parse-charset 'us-ascii)) |
| 776 | (not (eq mail-parse-charset 'gnus-decoded))) | 943 | (not (eq mail-parse-charset 'gnus-decoded))) |
| 777 | (mm-decode-coding-string string mail-parse-charset) | 944 | ;; `decode-coding-string' in Emacs offers a third optional |
| 945 | ;; arg NOCOPY to avoid consing a new string if the decoding | ||
| 946 | ;; is "trivial". Unfortunately it currently doesn't | ||
| 947 | ;; consider anything else than a `nil' coding system | ||
| 948 | ;; trivial. | ||
| 949 | ;; `rfc2047-decode-string' is called multiple times for each | ||
| 950 | ;; article during summary buffer generation, and we really | ||
| 951 | ;; want to avoid unnecessary consing. So we bypass | ||
| 952 | ;; `decode-coding-string' if the string is purely ASCII. | ||
| 953 | (if (and (fboundp 'detect-coding-string) | ||
| 954 | ;; string is purely ASCII | ||
| 955 | (eq (detect-coding-string string t) 'undecided)) | ||
| 956 | string | ||
| 957 | (mm-decode-coding-string string mail-parse-charset)) | ||
| 778 | (mm-string-as-multibyte string))))) | 958 | (mm-string-as-multibyte string))))) |
| 779 | 959 | ||
| 780 | (defun rfc2047-parse-and-decode (word) | 960 | (defun rfc2047-parse-and-decode (word) |
| @@ -787,8 +967,8 @@ decodable." | |||
| 787 | (condition-case nil | 967 | (condition-case nil |
| 788 | (rfc2047-decode | 968 | (rfc2047-decode |
| 789 | (match-string 1 word) | 969 | (match-string 1 word) |
| 790 | (upcase (match-string 2 word)) | 970 | (string-to-char (match-string 3 word)) |
| 791 | (match-string 3 word)) | 971 | (match-string 4 word)) |
| 792 | (error word)) | 972 | (error word)) |
| 793 | word))) ; un-decodable | 973 | word))) ; un-decodable |
| 794 | 974 | ||
| @@ -809,7 +989,7 @@ decodable." | |||
| 809 | 989 | ||
| 810 | (defun rfc2047-decode (charset encoding string) | 990 | (defun rfc2047-decode (charset encoding string) |
| 811 | "Decode STRING from the given MIME CHARSET in the given ENCODING. | 991 | "Decode STRING from the given MIME CHARSET in the given ENCODING. |
| 812 | Valid ENCODINGs are \"B\" and \"Q\". | 992 | Valid ENCODINGs are the characters \"B\" and \"Q\". |
| 813 | If your Emacs implementation can't decode CHARSET, return nil." | 993 | If your Emacs implementation can't decode CHARSET, return nil." |
| 814 | (if (stringp charset) | 994 | (if (stringp charset) |
| 815 | (setq charset (intern (downcase charset)))) | 995 | (setq charset (intern (downcase charset)))) |
| @@ -824,18 +1004,17 @@ If your Emacs implementation can't decode CHARSET, return nil." | |||
| 824 | (memq 'gnus-unknown mail-parse-ignored-charsets)) | 1004 | (memq 'gnus-unknown mail-parse-ignored-charsets)) |
| 825 | (setq cs (mm-charset-to-coding-system mail-parse-charset))) | 1005 | (setq cs (mm-charset-to-coding-system mail-parse-charset))) |
| 826 | (when cs | 1006 | (when cs |
| 827 | (when (and (eq cs 'ascii) | 1007 | (when (eq cs 'ascii) |
| 828 | mail-parse-charset) | 1008 | (setq cs (or mail-parse-charset 'raw-text))) |
| 829 | (setq cs mail-parse-charset)) | ||
| 830 | (mm-decode-coding-string | 1009 | (mm-decode-coding-string |
| 831 | (cond | 1010 | (cond |
| 832 | ((equal "B" encoding) | 1011 | ((char-equal ?B encoding) |
| 833 | (base64-decode-string | 1012 | (base64-decode-string |
| 834 | (rfc2047-pad-base64 string))) | 1013 | (rfc2047-pad-base64 string))) |
| 835 | ((equal "Q" encoding) | 1014 | ((char-equal ?Q encoding) |
| 836 | (quoted-printable-decode-string | 1015 | (quoted-printable-decode-string |
| 837 | (mm-replace-chars-in-string string ?_ ? ))) | 1016 | (mm-subst-char-in-string ?_ ? string t))) |
| 838 | (t (error "Invalid encoding: %s" encoding))) | 1017 | (t (error "Invalid encoding: %c" encoding))) |
| 839 | cs)))) | 1018 | cs)))) |
| 840 | 1019 | ||
| 841 | (provide 'rfc2047) | 1020 | (provide 'rfc2047) |
diff --git a/man/ChangeLog b/man/ChangeLog index 6da44c9a8e2..8efe3775953 100644 --- a/man/ChangeLog +++ b/man/ChangeLog | |||
| @@ -1,3 +1,12 @@ | |||
| 1 | 2005-03-25 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 2 | |||
| 3 | * emacs-mime.texi (Display Customization): Markup fixes. | ||
| 4 | (rfc2047): Update. | ||
| 5 | |||
| 6 | 2005-03-23 Reiner Steib <Reiner.Steib@gmx.de> | ||
| 7 | |||
| 8 | * gnus-faq.texi: Replaced with auto-generated version. | ||
| 9 | |||
| 1 | 2005-03-29 Richard M. Stallman <rms@gnu.org> | 10 | 2005-03-29 Richard M. Stallman <rms@gnu.org> |
| 2 | 11 | ||
| 3 | * mule.texi (Single-Byte Character Support): Reinstall the C-x 8 info. | 12 | * mule.texi (Single-Byte Character Support): Reinstall the C-x 8 info. |
diff --git a/man/emacs-mime.texi b/man/emacs-mime.texi index c128ed096c3..11a07df5361 100644 --- a/man/emacs-mime.texi +++ b/man/emacs-mime.texi | |||
| @@ -387,15 +387,15 @@ The program used to start an external terminal. | |||
| 387 | 387 | ||
| 388 | @item mm-enable-external | 388 | @item mm-enable-external |
| 389 | @vindex mm-enable-external | 389 | @vindex mm-enable-external |
| 390 | Indicate whether external MIME handlers should be used. | 390 | Indicate whether external @acronym{MIME} handlers should be used. |
| 391 | 391 | ||
| 392 | If @code{t}, all defined external MIME handlers are used. If | 392 | If @code{t}, all defined external @acronym{MIME} handlers are used. If |
| 393 | @code{nil}, files are saved to disk (@code{mailcap-save-binary-file}). | 393 | @code{nil}, files are saved to disk (@code{mailcap-save-binary-file}). |
| 394 | If it is the symbol @code{ask}, you are prompted before the external | 394 | If it is the symbol @code{ask}, you are prompted before the external |
| 395 | @acronym{MIME} handler is invoked. | 395 | @acronym{MIME} handler is invoked. |
| 396 | 396 | ||
| 397 | When you launch an attachment through mailcap (@pxref{mailcap}) an | 397 | When you launch an attachment through mailcap (@pxref{mailcap}) an |
| 398 | attempt is made to use a safe viewer with the safest options--this isn't | 398 | attempt is made to use a safe viewer with the safest options---this isn't |
| 399 | the case if you save it to disk and launch it in a different way | 399 | the case if you save it to disk and launch it in a different way |
| 400 | (command line or double-clicking). Anyhow, if you want to be sure not | 400 | (command line or double-clicking). Anyhow, if you want to be sure not |
| 401 | to launch any external programs, set this variable to @code{nil} or | 401 | to launch any external programs, set this variable to @code{nil} or |
| @@ -1327,8 +1327,8 @@ RFC2047 specifies two forms of encoding---@code{Q} (a | |||
| 1327 | Quoted-Printable-like encoding) and @code{B} (base64). This alist | 1327 | Quoted-Printable-like encoding) and @code{B} (base64). This alist |
| 1328 | specifies which charset should use which encoding. | 1328 | specifies which charset should use which encoding. |
| 1329 | 1329 | ||
| 1330 | @item rfc2047-encoding-function-alist | 1330 | @item rfc2047-encode-function-alist |
| 1331 | @vindex rfc2047-encoding-function-alist | 1331 | @vindex rfc2047-encode-function-alist |
| 1332 | This is an alist of encoding / function pairs. The encodings are | 1332 | This is an alist of encoding / function pairs. The encodings are |
| 1333 | @code{Q}, @code{B} and @code{nil}. | 1333 | @code{Q}, @code{B} and @code{nil}. |
| 1334 | 1334 | ||
| @@ -1336,6 +1336,11 @@ This is an alist of encoding / function pairs. The encodings are | |||
| 1336 | @vindex rfc2047-encoded-word-regexp | 1336 | @vindex rfc2047-encoded-word-regexp |
| 1337 | When decoding words, this library looks for matches to this regexp. | 1337 | When decoding words, this library looks for matches to this regexp. |
| 1338 | 1338 | ||
| 1339 | @item rfc2047-encode-encoded-words | ||
| 1340 | @vindex rfc2047-encode-encoded-words | ||
| 1341 | The boolean variable specifies whether encoded words | ||
| 1342 | (e.g. @samp{=?hello?=}) should be encoded again. | ||
| 1343 | |||
| 1339 | @end table | 1344 | @end table |
| 1340 | 1345 | ||
| 1341 | Those were the variables, and these are this functions: | 1346 | Those were the variables, and these are this functions: |
| @@ -1366,6 +1371,24 @@ Decode the encoded words in the region. | |||
| 1366 | @findex rfc2047-decode-string | 1371 | @findex rfc2047-decode-string |
| 1367 | Decode a string and return the results. | 1372 | Decode a string and return the results. |
| 1368 | 1373 | ||
| 1374 | @item rfc2047-encode-parameter | ||
| 1375 | @findex rfc2047-encode-parameter | ||
| 1376 | Encode a parameter in the RFC2047-like style. This is a replacement for | ||
| 1377 | the @code{rfc2231-encode-string} function. @xref{rfc2231}. | ||
| 1378 | |||
| 1379 | When attaching files as @acronym{MIME} parts, we should use the RFC2231 | ||
| 1380 | encoding to specify the file names containing non-@acronym{ASCII} | ||
| 1381 | characters. However, many mail softwares don't support it in practice | ||
| 1382 | and recipients won't be able to extract files with correct names. | ||
| 1383 | Instead, the RFC2047-like encoding is acceptable generally. This | ||
| 1384 | function provides the very RFC2047-like encoding, resigning to such a | ||
| 1385 | regrettable trend. To use it, put the following line in your | ||
| 1386 | @file{~/.gnus.el} file: | ||
| 1387 | |||
| 1388 | @lisp | ||
| 1389 | (defalias 'mail-header-encode-parameter 'rfc2047-encode-parameter) | ||
| 1390 | @end lisp | ||
| 1391 | |||
| 1369 | @end table | 1392 | @end table |
| 1370 | 1393 | ||
| 1371 | 1394 | ||
diff --git a/man/gnus-faq.texi b/man/gnus-faq.texi index 42266aa4646..742227b64fc 100644 --- a/man/gnus-faq.texi +++ b/man/gnus-faq.texi | |||
| @@ -1,210 +1,203 @@ | |||
| 1 | @c Insert "\input texinfo" at 1st line before texing this file alone. | 1 | @c \input texinfo @c -*-texinfo-*- |
| 2 | @c -*-texinfo-*- | 2 | @c Uncomment 1st line before texing this file alone. |
| 3 | @c Copyright (C) 1995, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. | 3 | @c %**start of header |
| 4 | @c Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | ||
| 5 | @c | ||
| 6 | @c Do not modify this file, it was generated from gnus-faq.xml, available from | ||
| 7 | @c <URL:http://my.gnus.org/FAQ/>. | ||
| 8 | @c | ||
| 4 | @setfilename gnus-faq.info | 9 | @setfilename gnus-faq.info |
| 5 | 10 | @settitle Frequently Asked Questions | |
| 6 | @c Frequently Asked Questions, FAQ - Introduction, Emacs for Heathens, Top | 11 | @c %**end of header |
| 12 | @c | ||
| 7 | 13 | ||
| 8 | @node Frequently Asked Questions | 14 | @node Frequently Asked Questions |
| 9 | @comment node-name, next, previous, up | ||
| 10 | |||
| 11 | @c @chapter Frequently Asked Questions | ||
| 12 | @section Frequently Asked Questions | 15 | @section Frequently Asked Questions |
| 13 | @cindex FAQ | ||
| 14 | @cindex Frequently Asked Questions | ||
| 15 | |||
| 16 | @c - Uncomment @chapter, comment @section | ||
| 17 | @c - run (texinfo-every-node-update) | ||
| 18 | @c - revert it. | ||
| 19 | 16 | ||
| 20 | @menu | 17 | @menu |
| 21 | * FAQ - Introduction:: About Gnus and this FAQ. | 18 | * FAQ - Changes:: |
| 22 | * FAQ 1 - Installation:: Installation of Gnus. | 19 | * FAQ - Introduction:: About Gnus and this FAQ. |
| 23 | * FAQ 2 - Startup / Group buffer:: Start up questions and the first | 20 | * FAQ 1 - Installation FAQ:: Installation of Gnus. |
| 24 | buffer Gnus shows you. | 21 | * FAQ 2 - Startup / Group buffer:: Start up questions and the |
| 25 | * FAQ 3 - Getting messages:: Making Gnus read your mail and news. | 22 | first buffer Gnus shows you. |
| 26 | * FAQ 4 - Reading messages:: How to efficiently read messages. | 23 | * FAQ 3 - Getting Messages:: Making Gnus read your mail |
| 27 | * FAQ 5 - Composing messages:: Composing mails or Usenet postings. | 24 | and news. |
| 28 | * FAQ 6 - Old messages:: Importing, archiving, searching | 25 | * FAQ 4 - Reading messages:: How to efficiently read |
| 29 | and deleting messages. | 26 | messages. |
| 30 | * FAQ 7 - Gnus in a dial-up environment:: Reading mail and news while offline. | 27 | * FAQ 5 - Composing messages:: Composing mails or Usenet |
| 31 | * FAQ 8 - Getting help:: When this FAQ isn't enough. | 28 | postings. |
| 32 | * FAQ 9 - Tuning Gnus:: How to make Gnus faster. | 29 | * FAQ 6 - Old messages:: Importing, archiving, |
| 33 | * FAQ - Glossary:: Terms used in the FAQ explained. | 30 | searching and deleting messages. |
| 31 | * FAQ 7 - Gnus in a dial-up environment:: Reading mail and news while | ||
| 32 | offline. | ||
| 33 | * FAQ 8 - Getting help:: When this FAQ isn't enough. | ||
| 34 | * FAQ 9 - Tuning Gnus:: How to make Gnus faster. | ||
| 35 | * FAQ - Glossary:: Terms used in the FAQ | ||
| 36 | explained. | ||
| 34 | @end menu | 37 | @end menu |
| 35 | 38 | ||
| 36 | |||
| 37 | @subheading Abstract | 39 | @subheading Abstract |
| 38 | 40 | ||
| 39 | This is the new Gnus Frequently Asked Questions list. If you have a | 41 | This is the new Gnus Frequently Asked Questions list. |
| 40 | Web browser, the official hypertext version is at | 42 | If you have a Web browser, the official hypertext version is at |
| 41 | @uref{http://my.gnus.org/FAQ/}, the Docbook source is available from | 43 | @uref{http://my.gnus.org/FAQ/}, |
| 42 | @uref{http://sourceforge.net/projects/gnus/}. | 44 | the Docbook source is available from |
| 43 | 45 | @uref{http://sourceforge.net/projects/gnus/, http://sourceforge.net}. | |
| 44 | 46 | ||
| 45 | Please submit features and suggestions to the | 47 | Please submit features and suggestions to the |
| 46 | @email{faq-discuss@@my.gnus.org,FAQ discussion list}. | 48 | @email{faq-discuss@@my.gnus.org, FAQ discussion list}. |
| 47 | The list is protected against junk mail with | 49 | The list is protected against junk mail with |
| 48 | @uref{http://smarden.org/qconfirm/index.html,qconfirm, qconfirm}. As | 50 | @uref{http://smarden.org/qconfirm/index.html, qconfirm}. As |
| 49 | a subscriber, your submissions will automatically pass. You can | 51 | a subscriber, your submissions will automatically pass. You can |
| 50 | also subscribe to the list by sending a blank email to | 52 | also subscribe to the list by sending a blank email to |
| 51 | @email{faq-discuss-subscribe@@my.gnus.org} | 53 | @email{faq-discuss-subscribe@@my.gnus.org, faq-discuss-subscribe@@my.gnus.org} |
| 52 | and | 54 | and @uref{http://mail1.kens.com/cgi-bin/ezmlm-browse?command=monthbythread%26list=faq-discuss, browse |
| 53 | @uref{http://mail1.kens.com/cgi-bin/ezmlm-browse?command=monthbythread%26list=faq-discuss,browse | 55 | the archive}. |
| 54 | the archive, browse the archive}. | ||
| 55 | |||
| 56 | @node FAQ - Introduction, FAQ 1 - Installation, Frequently Asked Questions, Frequently Asked Questions | ||
| 57 | @comment node-name, next, previous, up | ||
| 58 | @heading Introduction | ||
| 59 | 56 | ||
| 60 | This is the Gnus Frequently Asked Questions list. | 57 | @node FAQ - Changes |
| 58 | @subheading Changes | ||
| 61 | 59 | ||
| 62 | Gnus is a Usenet Newsreader and Electronic Mail User Agent implemented | ||
| 63 | as a part of Emacs. It's been around in some form for almost a decade | ||
| 64 | now, and has been distributed as a standard part of Emacs for much of | ||
| 65 | that time. Gnus 5 is the latest (and greatest) incarnation. The | ||
| 66 | original version was called GNUS, and was written by Masanobu UMEDA. | ||
| 67 | When autumn crept up in '94, Lars Magne Ingebrigtsen grew bored and | ||
| 68 | decided to rewrite Gnus. | ||
| 69 | |||
| 70 | Its biggest strength is the fact that it is extremely | ||
| 71 | customizable. It is somewhat intimidating at first glance, but | ||
| 72 | most of the complexity can be ignored until you're ready to take | ||
| 73 | advantage of it. If you receive a reasonable volume of e-mail | ||
| 74 | (you're on various mailing lists), or you would like to read | ||
| 75 | high-volume mailing lists but cannot keep up with them, or read | ||
| 76 | high volume newsgroups or are just bored, then Gnus is what you | ||
| 77 | want. | ||
| 78 | |||
| 79 | This FAQ was maintained by Justin Sheehy until March 2002. He | ||
| 80 | would like to thank Steve Baur and Per Abrahamsen for doing a wonderful | ||
| 81 | job with this FAQ before him. We would like to do the same - thanks, | ||
| 82 | Justin! | ||
| 83 | |||
| 84 | 60 | ||
| 85 | If you have a Web browser, the official hypertext version is at:@* | ||
| 86 | @uref{http://my.gnus.org/FAQ/}. | ||
| 87 | This version is much nicer than the unofficial hypertext | ||
| 88 | versions that are archived at Utrecht, Oxford, Smart Pages, Ohio | ||
| 89 | State, and other FAQ archives. See the resources question below | ||
| 90 | if you want information on obtaining it in another format. | ||
| 91 | |||
| 92 | 61 | ||
| 93 | The information contained here was compiled with the assistance | 62 | @itemize @bullet |
| 94 | of the Gnus development mailing list, and any errors or | 63 | |
| 95 | misprints are the my.gnus.org team's fault, sorry. | 64 | @item |
| 65 | Updated FAQ to reflect release of Gnus 5.10 and start of | ||
| 66 | No Gnus development. | ||
| 67 | @end itemize | ||
| 96 | 68 | ||
| 69 | @node FAQ - Introduction | ||
| 70 | @subheading Introduction | ||
| 71 | |||
| 72 | This is the Gnus Frequently Asked Questions list. | ||
| 97 | 73 | ||
| 98 | @ifnottex | 74 | Gnus is a Usenet Newsreader and Electronic Mail User Agent implemented |
| 99 | @node FAQ 1 - Installation, FAQ 2 - Startup / Group buffer, FAQ - Introduction, Frequently Asked Questions | 75 | as a part of Emacs. It's been around in some form for almost a decade |
| 100 | @end ifnottex | 76 | now, and has been distributed as a standard part of Emacs for much of |
| 101 | @subsection Installation | 77 | that time. Gnus 5 is the latest (and greatest) incarnation. The |
| 78 | original version was called GNUS, and was written by Masanobu UMEDA. | ||
| 79 | When autumn crept up in '94, Lars Magne Ingebrigtsen grew bored and | ||
| 80 | decided to rewrite Gnus. | ||
| 81 | |||
| 82 | Its biggest strength is the fact that it is extremely | ||
| 83 | customizable. It is somewhat intimidating at first glance, but | ||
| 84 | most of the complexity can be ignored until you're ready to take | ||
| 85 | advantage of it. If you receive a reasonable volume of e-mail | ||
| 86 | (you're on various mailing lists), or you would like to read | ||
| 87 | high-volume mailing lists but cannot keep up with them, or read | ||
| 88 | high volume newsgroups or are just bored, then Gnus is what you | ||
| 89 | want. | ||
| 90 | |||
| 91 | This FAQ was maintained by Justin Sheehy until March 2002. He | ||
| 92 | would like to thank Steve Baur and Per Abrahamsen for doing a wonderful | ||
| 93 | job with this FAQ before him. We would like to do the same - thanks, | ||
| 94 | Justin! | ||
| 95 | |||
| 96 | If you have a Web browser, the official hypertext version is at: | ||
| 97 | @uref{http://my.gnus.org/FAQ/}. | ||
| 98 | This version is much nicer than the unofficial hypertext | ||
| 99 | versions that are archived at Utrecht, Oxford, Smart Pages, Ohio | ||
| 100 | State, and other FAQ archives. See the resources question below | ||
| 101 | if you want information on obtaining it in another format. | ||
| 102 | |||
| 103 | The information contained here was compiled with the assistance | ||
| 104 | of the Gnus development mailing list, and any errors or | ||
| 105 | misprints are the my.gnus.org team's fault, sorry. | ||
| 106 | |||
| 107 | @node FAQ 1 - Installation FAQ | ||
| 108 | @subsection Installation FAQ | ||
| 102 | 109 | ||
| 103 | @menu | 110 | @menu |
| 104 | * [1.1]:: What is the latest version of Gnus? | 111 | * [1.1]:: What is the latest version of Gnus? |
| 105 | * [1.2]:: What's new in 5.10? | 112 | * [1.2]:: What's new in 5.10? |
| 106 | * [1.3]:: Where and how to get Gnus? | 113 | * [1.3]:: Where and how to get Gnus? |
| 107 | * [1.4]:: What to do with the tarball now? | 114 | * [1.4]:: What to do with the tarball now? |
| 108 | * [1.5]:: Which version of Emacs do I need? | 115 | * [1.5]:: I sometimes read references to No Gnus and Oort Gnus, what |
| 109 | * [1.6]:: How do I run Gnus on both Emacs and XEmacs? | 116 | are those? |
| 117 | * [1.6]:: Which version of Emacs do I need? | ||
| 118 | * [1.7]:: How do I run Gnus on both Emacs and XEmacs? | ||
| 110 | @end menu | 119 | @end menu |
| 111 | 120 | ||
| 112 | 121 | @node [1.1] | |
| 113 | @ifnottex | 122 | @subsubheading Question 1.1 |
| 114 | @node [1.1], [1.2], FAQ 1 - Installation, FAQ 1 - Installation | ||
| 115 | @end ifnottex | ||
| 116 | @subsubheading Question 1.1: | ||
| 117 | 123 | ||
| 118 | What is the latest version of Gnus? | 124 | What is the latest version of Gnus? |
| 119 | 125 | ||
| 120 | Answer: | 126 | @subsubheading Answer |
| 121 | 127 | ||
| 122 | Jingle please: Gnus 5.10 is released, get it while it's | 128 | Jingle please: Gnus 5.10 is released, get it while it's |
| 123 | hot! As well as the step in version number is rather | 129 | hot! As well as the step in version number is rather |
| 124 | small, Gnus 5.10 has tons of new features which you | 130 | small, Gnus 5.10 has tons of new features which you |
| 125 | shouldn't miss, however if you are cautious, you might | 131 | shouldn't miss. The current release (5.10.6) should be at |
| 126 | prefer to stay with 5.8.8 respectively 5.9 (they are | 132 | least as stable as the latest release of the 5.8 series. |
| 127 | basically the same) until some bugfix releases are out. | ||
| 128 | |||
| 129 | @ifnottex | ||
| 130 | @node [1.2], [1.3], [1.1], FAQ 1 - Installation | ||
| 131 | @end ifnottex | ||
| 132 | @subsubheading Question 1.2: | ||
| 133 | 133 | ||
| 134 | What's new in 5.10? | 134 | @node [1.2] |
| 135 | @subsubheading Question 1.2 | ||
| 135 | 136 | ||
| 136 | Answer: | 137 | What's new in 5.10? |
| 137 | 138 | ||
| 138 | First of all, you should have a look into the file | 139 | @subsubheading Answer |
| 139 | GNUS-NEWS in the toplevel directory of the Gnus tarball, | ||
| 140 | there the most important changes are listed. Here's a | ||
| 141 | short list of the changes I find especially | ||
| 142 | important/interesting: | ||
| 143 | |||
| 144 | 140 | ||
| 145 | 141 | First of all, you should have a look into the file | |
| 142 | GNUS-NEWS in the toplevel directory of the Gnus tarball, | ||
| 143 | there the most important changes are listed. Here's a | ||
| 144 | short list of the changes I find especially | ||
| 145 | important/interesting: | ||
| 146 | 146 | ||
| 147 | @itemize @bullet{} | 147 | @itemize @bullet |
| 148 | 148 | ||
| 149 | @item | 149 | @item |
| 150 | Major rewrite of the Gnus agent, Gnus agent is now | 150 | Major rewrite of the Gnus agent, Gnus agent is now |
| 151 | active by default. | 151 | active by default. |
| 152 | 152 | ||
| 153 | @item | 153 | @item |
| 154 | Many new article washing functions for dealing with | 154 | Many new article washing functions for dealing with |
| 155 | ugly formatted articles. | 155 | ugly formatted articles. |
| 156 | 156 | ||
| 157 | @item | 157 | @item |
| 158 | Anti Spam features. | 158 | Anti Spam features. |
| 159 | 159 | ||
| 160 | @item | 160 | @item |
| 161 | message-utils now included in Gnus. | 161 | Message-utils now included in Gnus. |
| 162 | 162 | ||
| 163 | @item | 163 | @item |
| 164 | New format specifiers for summary lines, e.g. %B for | 164 | New format specifiers for summary lines, e.g. %B for |
| 165 | a complex trn-style thread tree. | 165 | a complex trn-style thread tree. |
| 166 | |||
| 167 | @end itemize | 166 | @end itemize |
| 168 | 167 | ||
| 169 | @ifnottex | 168 | @node [1.3] |
| 170 | @node [1.3], [1.4], [1.2], FAQ 1 - Installation | 169 | @subsubheading Question 1.3 |
| 171 | @end ifnottex | ||
| 172 | @subsubheading Question 1.3: | ||
| 173 | 170 | ||
| 174 | Where and how to get Gnus? | 171 | Where and how to get Gnus? |
| 175 | 172 | ||
| 176 | Answer: | 173 | @subsubheading Answer |
| 177 | 174 | ||
| 178 | The latest released version of Gnus isn't included in | 175 | The latest released version of Gnus isn't included in |
| 179 | Emacs 21 and until now it also isn't available through the | 176 | Emacs 21, therefor you should get the Gnus tarball from |
| 180 | package system of XEmacs 21.4, therefor you should get the | 177 | @uref{http://www.gnus.org/dist/gnus.tar.gz} |
| 181 | Gnus tarball from | 178 | or via anonymous FTP from |
| 182 | @uref{http://www.gnus.org/dist/gnus.tar.gz} | 179 | @uref{ftp://ftp.gnus.org/pub/gnus/gnus.tar.gz}. |
| 183 | or via anonymous FTP from | 180 | If you use XEmacs instead of Emacs you can use XEmacs' |
| 184 | @uref{ftp://ftp.gnus.org/pub/gnus/gnus.tar.gz}. | 181 | package system instead. |
| 185 | |||
| 186 | @ifnottex | ||
| 187 | @node [1.4], [1.5], [1.3], FAQ 1 - Installation | ||
| 188 | @end ifnottex | ||
| 189 | @subsubheading Question 1.4: | ||
| 190 | 182 | ||
| 191 | What to do with the tarball now? | 183 | @node [1.4] |
| 192 | 184 | @subsubheading Question 1.4 | |
| 193 | 185 | ||
| 194 | Answer: | 186 | What to do with the tarball now? |
| 195 | 187 | ||
| 196 | Untar it via @samp{tar xvzf gnus.tar.gz} and do the common | 188 | @subsubheading Answer |
| 197 | @samp{./configure; make; make install} circle. | 189 | |
| 198 | (under MS-Windows either get the Cygwin environment from | 190 | Untar it via @samp{tar xvzf gnus.tar.gz} and do the common |
| 199 | @uref{http://www.cygwin.com} | 191 | @samp{./configure; make; make install} circle. |
| 200 | which allows you to do what's described above or unpack the | 192 | (under MS-Windows either get the Cygwin environment from |
| 201 | tarball with some packer (e.g. Winace from | 193 | @uref{http://www.cygwin.com} |
| 202 | @uref{http://www.winace.com}) | 194 | which allows you to do what's described above or unpack the |
| 203 | and use the batch-file make.bat included in the tarball to install | 195 | tarball with some packer (e.g. Winace from |
| 204 | Gnus. If you don't want to (or aren't allowed to) install Gnus | 196 | @uref{http://www.winace.com}) |
| 205 | system-wide, you can install it in your home directory and add the | 197 | and use the batch-file make.bat included in the tarball to install |
| 206 | following lines to your ~/.xemacs/init.el or ~/.emacs: | 198 | Gnus.) If you don't want to (or aren't allowed to) install Gnus |
| 207 | 199 | system-wide, you can install it in your home directory and add the | |
| 200 | following lines to your ~/.xemacs/init.el or ~/.emacs: | ||
| 208 | 201 | ||
| 209 | @example | 202 | @example |
| 210 | (add-to-list 'load-path "/path/to/gnus/lisp") | 203 | (add-to-list 'load-path "/path/to/gnus/lisp") |
| @@ -212,436 +205,395 @@ Answer: | |||
| 212 | (add-to-list 'Info-directory-list "/path/to/gnus/texi/") | 205 | (add-to-list 'Info-directory-list "/path/to/gnus/texi/") |
| 213 | (add-to-list 'Info-default-directory-list "/path/to/gnus/texi/")) | 206 | (add-to-list 'Info-default-directory-list "/path/to/gnus/texi/")) |
| 214 | @end example | 207 | @end example |
| 215 | |||
| 216 | @noindent | 208 | @noindent |
| 217 | Make sure that you don't have any Gnus related stuff | 209 | |
| 218 | before this line, on MS Windows use something like | 210 | Make sure that you don't have any Gnus related stuff |
| 219 | "C:/path/to/lisp" (yes, "/"). | 211 | before this line, on MS Windows use something like |
| 220 | 212 | "C:/path/to/lisp" (yes, "/"). | |
| 221 | @ifnottex | 213 | |
| 222 | @node [1.5], [1.6], [1.4], FAQ 1 - Installation | 214 | @node [1.5] |
| 223 | @end ifnottex | 215 | @subsubheading Question 1.5 |
| 224 | @subsubheading Question 1.5: | 216 | |
| 217 | I sometimes read references to No Gnus and Oort Gnus, | ||
| 218 | what are those? | ||
| 219 | |||
| 220 | @subsubheading Answer | ||
| 221 | |||
| 222 | Oort Gnus was the name of the development version of | ||
| 223 | Gnus, which became Gnus 5.10 in autumn 2003. No Gnus is | ||
| 224 | the name of the current development version which will | ||
| 225 | once become Gnus 5.12 or Gnus 6. (If you're wondering why | ||
| 226 | not 5.11, the odd version numbers are normally used for | ||
| 227 | the Gnus versions bundled with Emacs) | ||
| 228 | |||
| 229 | @node [1.6] | ||
| 230 | @subsubheading Question 1.6 | ||
| 225 | 231 | ||
| 226 | Which version of Emacs do I need? | 232 | Which version of Emacs do I need? |
| 227 | 233 | ||
| 228 | Answer: | 234 | @subsubheading Answer |
| 229 | 235 | ||
| 230 | Gnus 5.10 requires an Emacs version that is greater | 236 | Gnus 5.10 requires an Emacs version that is greater |
| 231 | than or equal to Emacs 20.7 or XEmacs 21.1. | 237 | than or equal to Emacs 20.7 or XEmacs 21.1. The |
| 232 | 238 | development versions of Gnus (aka No Gnus) require Emacs | |
| 233 | @ifnottex | 239 | 21 or XEmacs 21.4. |
| 234 | @node [1.6], , [1.5], FAQ 1 - Installation | 240 | |
| 235 | @end ifnottex | 241 | @node [1.7] |
| 236 | @subsubheading Question 1.6: | 242 | @subsubheading Question 1.7 |
| 237 | 243 | ||
| 238 | How do I run Gnus on both Emacs and XEmacs? | 244 | How do I run Gnus on both Emacs and XEmacs? |
| 239 | 245 | ||
| 240 | Answer: | 246 | @subsubheading Answer |
| 241 | 247 | ||
| 242 | You can't use the same copy of Gnus in both as the Lisp | 248 | You can't use the same copy of Gnus in both as the Lisp |
| 243 | files are byte-compiled to a format which is different | 249 | files are byte-compiled to a format which is different |
| 244 | depending on which Emacs did the compilation. Get one copy | 250 | depending on which Emacs did the compilation. Get one copy |
| 245 | of Gnus for Emacs and one for XEmacs. | 251 | of Gnus for Emacs and one for XEmacs. |
| 246 | 252 | ||
| 247 | @ifnottex | 253 | @node FAQ 2 - Startup / Group buffer |
| 248 | @node FAQ 2 - Startup / Group buffer, FAQ 3 - Getting messages, FAQ 1 - Installation, Frequently Asked Questions | ||
| 249 | @end ifnottex | ||
| 250 | @subsection Startup / Group buffer | 254 | @subsection Startup / Group buffer |
| 251 | 255 | ||
| 252 | @menu | 256 | @menu |
| 253 | * [2.1]:: Every time I start Gnus I get a message | 257 | * [2.1]:: Every time I start Gnus I get a message "Gnus auto-save |
| 254 | "Gnus auto-save file exists. Do you want to read it?", | 258 | file exists. Do you want to read it?", what does this mean and |
| 255 | what does this mean and how to prevent it? | 259 | how to prevent it? |
| 256 | * [2.2]:: Gnus doesn't remember which groups I'm subscribed to, what's this? | 260 | * [2.2]:: Gnus doesn't remember which groups I'm subscribed to, |
| 257 | * [2.3]:: How to change the format of the lines in Group buffer? | 261 | what's this? |
| 258 | * [2.4]:: My group buffer becomes a bit crowded, is there a way to sort my | 262 | * [2.3]:: How to change the format of the lines in Group buffer? |
| 259 | groups into categories so I can easier browse through them? | 263 | * [2.4]:: My group buffer becomes a bit crowded, is there a way to |
| 260 | * [2.5]:: How to manually sort the groups in Group buffer? How to sort the | 264 | sort my groups into categories so I can easier browse through |
| 261 | groups in a topic? | 265 | them? |
| 266 | * [2.5]:: How to manually sort the groups in Group buffer? How to | ||
| 267 | sort the groups in a topic? | ||
| 262 | @end menu | 268 | @end menu |
| 263 | 269 | ||
| 264 | @ifnottex | 270 | @node [2.1] |
| 265 | @node [2.1], [2.2], FAQ 2 - Startup / Group buffer, FAQ 2 - Startup / Group buffer | 271 | @subsubheading Question 2.1 |
| 266 | @end ifnottex | ||
| 267 | @subsubheading Question 2.1: | ||
| 268 | 272 | ||
| 269 | Every time I start Gnus I get a message "Gnus auto-save | 273 | Every time I start Gnus I get a message "Gnus auto-save |
| 270 | file exists. Do you want to read it?", what does this mean | 274 | file exists. Do you want to read it?", what does this mean |
| 271 | and how to prevent it? | 275 | and how to prevent it? |
| 272 | |||
| 273 | 276 | ||
| 274 | Answer: | 277 | @subsubheading Answer |
| 275 | 278 | ||
| 276 | This message means that the last time you used Gnus, it | 279 | This message means that the last time you used Gnus, it |
| 277 | wasn't properly exited and therefor couldn't write its | 280 | wasn't properly exited and therefor couldn't write its |
| 278 | informations to disk (e.g. which messages you read), you | 281 | informations to disk (e.g. which messages you read), you |
| 279 | are now asked if you want to restore those informations | 282 | are now asked if you want to restore those informations |
| 280 | from the auto-save file. | 283 | from the auto-save file. |
| 281 | |||
| 282 | 284 | ||
| 283 | To prevent this message make sure you exit Gnus | 285 | To prevent this message make sure you exit Gnus |
| 284 | via @samp{q} in group buffer instead of | 286 | via @samp{q} in group buffer instead of |
| 285 | just killing Emacs. | 287 | just killing Emacs. |
| 286 | |||
| 287 | @ifnottex | ||
| 288 | @node [2.2], [2.3], [2.1], FAQ 2 - Startup / Group buffer | ||
| 289 | @end ifnottex | ||
| 290 | @subsubheading Question: 2.2 | ||
| 291 | 288 | ||
| 292 | Gnus doesn't remember which groups I'm subscribed to, | 289 | @node [2.2] |
| 293 | what's this? | 290 | @subsubheading Question 2.2 |
| 294 | |||
| 295 | 291 | ||
| 296 | Answer: | 292 | Gnus doesn't remember which groups I'm subscribed to, |
| 293 | what's this? | ||
| 297 | 294 | ||
| 298 | You get the message described in the q/a pair above while | 295 | @subsubheading Answer |
| 299 | starting Gnus, right? It's an other symptom for the same | ||
| 300 | problem, so read the answer above. | ||
| 301 | |||
| 302 | @ifnottex | ||
| 303 | @node [2.3], [2.4], [2.2], FAQ 2 - Startup / Group buffer | ||
| 304 | @end ifnottex | ||
| 305 | @subsubheading Question 2.3: | ||
| 306 | 296 | ||
| 307 | How to change the format of the lines in Group buffer? | 297 | You get the message described in the q/a pair above while |
| 308 | 298 | starting Gnus, right? It's an other symptom for the same | |
| 299 | problem, so read the answer above. | ||
| 309 | 300 | ||
| 310 | Answer: | 301 | @node [2.3] |
| 302 | @subsubheading Question 2.3 | ||
| 311 | 303 | ||
| 312 | You've got to tweak the value of the variable | 304 | How to change the format of the lines in Group buffer? |
| 313 | gnus-group-line-format. See the manual node "Group Line | ||
| 314 | Specification" for information on how to do this. An | ||
| 315 | example for this (guess from whose .gnus :-)): | ||
| 316 | |||
| 317 | 305 | ||
| 318 | @example | 306 | @subsubheading Answer |
| 319 | 307 | ||
| 308 | You've got to tweak the value of the variable | ||
| 309 | gnus-group-line-format. See the manual node "Group Line | ||
| 310 | Specification" for information on how to do this. An | ||
| 311 | example for this (guess from whose .gnus :-)): | ||
| 312 | |||
| 313 | @example | ||
| 320 | (setq gnus-group-line-format "%P%M%S[%5t]%5y : %(%g%)\n") | 314 | (setq gnus-group-line-format "%P%M%S[%5t]%5y : %(%g%)\n") |
| 321 | |||
| 322 | @end example | 315 | @end example |
| 323 | 316 | @noindent | |
| 324 | @ifnottex | ||
| 325 | @node [2.4], [2.5], [2.3], FAQ 2 - Startup / Group buffer | ||
| 326 | @end ifnottex | ||
| 327 | @subsubheading Question 2.4: | ||
| 328 | |||
| 329 | My group buffer becomes a bit crowded, is there a way to | ||
| 330 | sort my groups into categories so I can easier browse | ||
| 331 | through them? | ||
| 332 | |||
| 333 | 317 | ||
| 334 | Answer: | 318 | @node [2.4] |
| 319 | @subsubheading Question 2.4 | ||
| 335 | 320 | ||
| 336 | Gnus offers the topic mode, it allows you to sort your | 321 | My group buffer becomes a bit crowded, is there a way to |
| 337 | groups in, well, topics, e.g. all groups dealing with | 322 | sort my groups into categories so I can easier browse |
| 338 | Linux under the topic linux, all dealing with music under | 323 | through them? |
| 339 | the topic music and all dealing with scottish music under | ||
| 340 | the topic scottish which is a subtopic of music. | ||
| 341 | |||
| 342 | 324 | ||
| 343 | To enter topic mode, just hit t while in Group buffer. Now | 325 | @subsubheading Answer |
| 344 | you can use @samp{T n} to create a topic | ||
| 345 | at point and @samp{T m} to move a group to | ||
| 346 | a specific topic. For more commands see the manual or the | ||
| 347 | menu. You might want to include the %P specifier at the | ||
| 348 | beginning of your gnus-group-line-format variable to have | ||
| 349 | the groups nicely indented. | ||
| 350 | |||
| 351 | @ifnottex | ||
| 352 | @node [2.5], , [2.4], FAQ 2 - Startup / Group buffer | ||
| 353 | @end ifnottex | ||
| 354 | @subsubheading Question 2.5: | ||
| 355 | 326 | ||
| 356 | How to manually sort the groups in Group buffer? How to | 327 | Gnus offers the topic mode, it allows you to sort your |
| 357 | sort the groups in a topic? | 328 | groups in, well, topics, e.g. all groups dealing with |
| 358 | 329 | Linux under the topic linux, all dealing with music under | |
| 330 | the topic music and all dealing with scottish music under | ||
| 331 | the topic scottish which is a subtopic of music. | ||
| 359 | 332 | ||
| 360 | Answer: | 333 | To enter topic mode, just hit t while in Group buffer. Now |
| 334 | you can use @samp{T n} to create a topic | ||
| 335 | at point and @samp{T m} to move a group to | ||
| 336 | a specific topic. For more commands see the manual or the | ||
| 337 | menu. You might want to include the %P specifier at the | ||
| 338 | beginning of your gnus-group-line-format variable to have | ||
| 339 | the groups nicely indented. | ||
| 361 | 340 | ||
| 362 | Move point over the group you want to move and | 341 | @node [2.5] |
| 363 | hit @samp{C-k}, now move point to the | 342 | @subsubheading Question 2.5 |
| 364 | place where you want the group to be and | 343 | |
| 365 | hit @samp{C-y}. | 344 | How to manually sort the groups in Group buffer? How to |
| 366 | 345 | sort the groups in a topic? | |
| 367 | @ifnottex | 346 | |
| 368 | @node FAQ 3 - Getting messages, FAQ 4 - Reading messages, FAQ 2 - Startup / Group buffer, Frequently Asked Questions | 347 | @subsubheading Answer |
| 369 | @end ifnottex | 348 | |
| 370 | @subsection Getting messages | 349 | Move point over the group you want to move and |
| 350 | hit @samp{C-k}, now move point to the | ||
| 351 | place where you want the group to be and | ||
| 352 | hit @samp{C-y}. | ||
| 353 | |||
| 354 | @node FAQ 3 - Getting Messages | ||
| 355 | @subsection Getting Messages | ||
| 371 | 356 | ||
| 372 | @menu | 357 | @menu |
| 373 | * [3.1]:: I just installed Gnus, started it via M-x gnus but it only says | 358 | * [3.1]:: I just installed Gnus, started it via @samp{M-x gnus} |
| 374 | "nntp (news) open error", what to do? | 359 | but it only says "nntp (news) open error", what to do? |
| 375 | * [3.2]:: I'm working under Windows and have no idea what ~/.gnus means. | 360 | * [3.2]:: I'm working under Windows and have no idea what ~/.gnus.el |
| 376 | * [3.3]:: My news server requires authentication, how to store user name | 361 | means. |
| 377 | and password on disk? | 362 | * [3.3]:: My news server requires authentication, how to store user |
| 378 | * [3.4]:: Gnus seems to start up OK, but I can't find out how to | 363 | name and password on disk? |
| 379 | subscribe to a group. | 364 | * [3.4]:: Gnus seems to start up OK, but I can't find out how to |
| 380 | * [3.5]:: Gnus doesn't show all groups / Gnus says I'm not allowed to | 365 | subscribe to a group. |
| 381 | post on this server as well as I am, what's that? | 366 | * [3.5]:: Gnus doesn't show all groups / Gnus says I'm not allowed |
| 382 | * [3.6]:: I want Gnus to fetch news from several servers, is this possible? | 367 | to post on this server as well as I am, what's that? |
| 383 | * [3.7]:: And how about local spool files? | 368 | * [3.6]:: I want Gnus to fetch news from several servers, is this |
| 384 | * [3.8]:: OK, reading news works now, but I want to be able to read my mail | 369 | possible? |
| 385 | with Gnus, too. How to do it? | 370 | * [3.7]:: And how about local spool files? |
| 386 | * [3.9]:: And what about IMAP? | 371 | * [3.8]:: OK, reading news works now, but I want to be able to read |
| 387 | * [3.10]:: At the office we use one of those MS Exchange servers, | 372 | my mail with Gnus, too. How to do it? |
| 388 | can I use Gnus to read my mail from it? | 373 | * [3.9]:: And what about IMAP? |
| 389 | * [3.11]:: Can I tell Gnus not to delete the mails on the server | 374 | * [3.10]:: At the office we use one of those MS Exchange servers, can |
| 390 | it retrieves via POP3? | 375 | I use Gnus to read my mail from it? |
| 376 | * [3.11]:: Can I tell Gnus not to delete the mails on the server it | ||
| 377 | retrieves via POP3? | ||
| 391 | @end menu | 378 | @end menu |
| 392 | 379 | ||
| 393 | @ifnottex | 380 | @node [3.1] |
| 394 | @node [3.1], [3.2], FAQ 3 - Getting messages, FAQ 3 - Getting messages | 381 | @subsubheading Question 3.1 |
| 395 | @end ifnottex | ||
| 396 | @subsubheading Question 3.1: | ||
| 397 | 382 | ||
| 398 | I just installed Gnus, started it via | 383 | I just installed Gnus, started it via |
| 399 | @samp{M-x gnus} | 384 | @samp{M-x gnus} |
| 400 | but it only says "nntp (news) open error", what to do? | 385 | but it only says "nntp (news) open error", what to do? |
| 401 | |||
| 402 | 386 | ||
| 403 | Answer: | 387 | @subsubheading Answer |
| 404 | 388 | ||
| 405 | You've got to tell Gnus where to fetch the news from. Read | 389 | You've got to tell Gnus where to fetch the news from. Read |
| 406 | the documentation for information on how to do this. As a | 390 | the documentation for information on how to do this. As a |
| 407 | first start, put those lines in ~/.gnus: | 391 | first start, put those lines in ~/.gnus.el: |
| 408 | |||
| 409 | 392 | ||
| 410 | @example | 393 | @example |
| 411 | (setq gnus-select-method '(nntp "news.yourprovider.net")) | 394 | (setq gnus-select-method '(nntp "news.yourprovider.net")) |
| 412 | (setq user-mail-address "you@@yourprovider.net") | 395 | (setq user-mail-address "you@@yourprovider.net") |
| 413 | (setq user-full-name "Your Name") | 396 | (setq user-full-name "Your Name") |
| 414 | @end example | 397 | @end example |
| 415 | 398 | @noindent | |
| 416 | @ifnottex | ||
| 417 | @node [3.2], [3.3], [3.1], FAQ 3 - Getting messages | ||
| 418 | @end ifnottex | ||
| 419 | @subsubheading Question 3.2: | ||
| 420 | |||
| 421 | I'm working under Windows and have no idea what ~/.gnus means. | ||
| 422 | |||
| 423 | 399 | ||
| 424 | Answer: | 400 | @node [3.2] |
| 425 | 401 | @subsubheading Question 3.2 | |
| 426 | The ~/ means the home directory where Gnus and Emacs look for the | 402 | |
| 427 | configuration files. However, you don't really need to know what this | 403 | I'm working under Windows and have no idea what ~/.gnus.el means. |
| 428 | means, it suffices that Emacs knows what it means :-) You can type | 404 | |
| 429 | @samp{C-x C-f ~/.gnus RET } (yes, with the forward slash, even on | 405 | @subsubheading Answer |
| 430 | Windows), and Emacs will open the right file for you. (It will most | 406 | |
| 431 | likely be new, and thus empty.) However, I'd discourage you from | 407 | The ~/ means the home directory where Gnus and Emacs look |
| 432 | doing so, since the directory Emacs chooses will most certainly not be | 408 | for the configuration files. However, you don't really |
| 433 | what you want, so let's do it the correct way. The first thing you've | 409 | need to know what this means, it suffices that Emacs knows |
| 434 | got to do is to create a suitable directory (no blanks in directory | 410 | what it means :-) You can type |
| 435 | name please) e.g. @file{c:\myhome}. Then you must set the environment | 411 | @samp{C-x C-f ~/.gnus.el RET } |
| 436 | variable HOME to this directory. To do this under Win9x or Me include | 412 | (yes, with the forward slash, even on Windows), and |
| 437 | the line | 413 | Emacs will open the right file for you. (It will most |
| 438 | 414 | likely be new, and thus empty.) | |
| 415 | However, I'd discourage you from doing so, since the | ||
| 416 | directory Emacs chooses will most certainly not be what | ||
| 417 | you want, so let's do it the correct way. | ||
| 418 | The first thing you've got to do is to | ||
| 419 | create a suitable directory (no blanks in directory name | ||
| 420 | please) e.g. c:\myhome. Then you must set the environment | ||
| 421 | variable HOME to this directory. To do this under Win9x | ||
| 422 | or Me include the line | ||
| 439 | 423 | ||
| 440 | @example | 424 | @example |
| 441 | |||
| 442 | SET HOME=C:\myhome | 425 | SET HOME=C:\myhome |
| 443 | |||
| 444 | @end example | 426 | @end example |
| 445 | |||
| 446 | @noindent | 427 | @noindent |
| 447 | in your autoexec.bat and reboot. Under NT, 2000 and XP, | ||
| 448 | hit Winkey+Pause/Break to enter system options (if it | ||
| 449 | doesn't work, go to Control Panel -> System). There you'll | ||
| 450 | find the possibility to set environment variables, create | ||
| 451 | a new one with name HOME and value @file{c:\myhome}, a reboot is | ||
| 452 | not necessary. | ||
| 453 | |||
| 454 | 428 | ||
| 455 | Now to create ~/.gnus, say | 429 | in your autoexec.bat and reboot. Under NT, 2000 and XP, |
| 456 | @samp{C-x C-f ~/.gnus RET C-x C-s}. | 430 | hit Winkey+Pause/Break to enter system options (if it |
| 457 | in Emacs. | 431 | doesn't work, go to Control Panel -> System). There you'll |
| 458 | 432 | find the possibility to set environment variables, create | |
| 459 | @ifnottex | 433 | a new one with name HOME and value C:\myhome, a reboot is |
| 460 | @node [3.3], [3.4], [3.2], FAQ 3 - Getting messages | 434 | not necessary. |
| 461 | @end ifnottex | ||
| 462 | @subsubheading Question 3.3: | ||
| 463 | 435 | ||
| 464 | My news server requires authentication, how to store | 436 | Now to create ~/.gnus.el, say |
| 465 | user name and password on disk? | 437 | @samp{C-x C-f ~/.gnus.el RET C-x C-s}. |
| 466 | 438 | in Emacs. | |
| 467 | 439 | ||
| 468 | Answer: | 440 | @node [3.3] |
| 441 | @subsubheading Question 3.3 | ||
| 469 | 442 | ||
| 470 | Create a file ~/.authinfo which includes for each server a line like this | 443 | My news server requires authentication, how to store |
| 471 | 444 | user name and password on disk? | |
| 445 | |||
| 446 | @subsubheading Answer | ||
| 447 | |||
| 448 | Create a file ~/.authinfo which includes for each server a line like this | ||
| 472 | 449 | ||
| 473 | @example | 450 | @example |
| 474 | machine news.yourprovider.net login YourUserName password YourPassword | 451 | machine news.yourprovider.net login YourUserName password YourPassword |
| 475 | @end example | 452 | @end example |
| 476 | |||
| 477 | @noindent | 453 | @noindent |
| 478 | . | 454 | . |
| 479 | Make sure that the file isn't readable to others if you | 455 | Make sure that the file isn't readable to others if you |
| 480 | work on a OS which is capable of doing so. (Under Unix | 456 | work on a OS which is capable of doing so. (Under Unix |
| 481 | say | 457 | say |
| 482 | |||
| 483 | @example | 458 | @example |
| 484 | chmod 600 ~/.authinfo | 459 | chmod 600 ~/.authinfo |
| 485 | @end example | 460 | @end example |
| 486 | |||
| 487 | @noindent | 461 | @noindent |
| 488 | in a shell.) | ||
| 489 | |||
| 490 | @ifnottex | ||
| 491 | @node [3.4], [3.5], [3.3], FAQ 3 - Getting messages | ||
| 492 | @end ifnottex | ||
| 493 | @subsubheading Question 3.4: | ||
| 494 | 462 | ||
| 495 | Gnus seems to start up OK, but I can't find out how to | 463 | in a shell.) |
| 496 | subscribe to a group. | ||
| 497 | |||
| 498 | 464 | ||
| 499 | Answer: | 465 | @node [3.4] |
| 466 | @subsubheading Question 3.4 | ||
| 500 | 467 | ||
| 501 | If you know the name of the group say @samp{U | 468 | Gnus seems to start up OK, but I can't find out how to |
| 502 | name.of.group RET} in group buffer (use the | 469 | subscribe to a group. |
| 503 | tab-completion Luke). Otherwise hit ^ in group buffer, | ||
| 504 | this brings you to the server buffer. Now place point (the | ||
| 505 | cursor) over the server which carries the group you want, | ||
| 506 | hit @samp{RET}, move point to the group | ||
| 507 | you want to subscribe to and say @samp{u} | ||
| 508 | to subscribe to it. | ||
| 509 | |||
| 510 | @ifnottex | ||
| 511 | @node [3.5], [3.6], [3.4], FAQ 3 - Getting messages | ||
| 512 | @end ifnottex | ||
| 513 | @subsubheading Question 3.5: | ||
| 514 | 470 | ||
| 515 | Gnus doesn't show all groups / Gnus says I'm not allowed to | 471 | @subsubheading Answer |
| 516 | post on this server as well as I am, what's that? | ||
| 517 | |||
| 518 | 472 | ||
| 519 | Answer: | 473 | If you know the name of the group say @samp{U |
| 474 | name.of.group RET} in group buffer (use the | ||
| 475 | tab-completion Luke). Otherwise hit ^ in group buffer, | ||
| 476 | this brings you to the server buffer. Now place point (the | ||
| 477 | cursor) over the server which carries the group you want, | ||
| 478 | hit @samp{RET}, move point to the group | ||
| 479 | you want to subscribe to and say @samp{u} | ||
| 480 | to subscribe to it. | ||
| 520 | 481 | ||
| 521 | Some providers allow restricted anonymous access and full | 482 | @node [3.5] |
| 522 | access only after authorization. To make Gnus send authinfo | 483 | @subsubheading Question 3.5 |
| 523 | to those servers append | 484 | |
| 524 | 485 | Gnus doesn't show all groups / Gnus says I'm not allowed to | |
| 486 | post on this server as well as I am, what's that? | ||
| 487 | |||
| 488 | @subsubheading Answer | ||
| 489 | |||
| 490 | Some providers allow restricted anonymous access and full | ||
| 491 | access only after authorization. To make Gnus send authinfo | ||
| 492 | to those servers append | ||
| 525 | 493 | ||
| 526 | @example | 494 | @example |
| 527 | force yes | 495 | force yes |
| 528 | @end example | 496 | @end example |
| 529 | |||
| 530 | |||
| 531 | @noindent | 497 | @noindent |
| 532 | to the line for those servers in ~/.authinfo. | ||
| 533 | 498 | ||
| 534 | @ifnottex | 499 | to the line for those servers in ~/.authinfo. |
| 535 | @node [3.6], [3.7], [3.5], FAQ 3 - Getting messages | ||
| 536 | @end ifnottex | ||
| 537 | @subsubheading Question 3.6: | ||
| 538 | 500 | ||
| 539 | I want Gnus to fetch news from several servers, is this possible? | 501 | @node [3.6] |
| 540 | 502 | @subsubheading Question 3.6 | |
| 541 | 503 | ||
| 542 | Answer: | 504 | I want Gnus to fetch news from several servers, is this possible? |
| 543 | 505 | ||
| 544 | Of course. You can specify more sources for articles in the | 506 | @subsubheading Answer |
| 545 | variable gnus-secondary-select-methods. Add something like | 507 | |
| 546 | this in ~/.gnus: | 508 | Of course. You can specify more sources for articles in the |
| 547 | 509 | variable gnus-secondary-select-methods. Add something like | |
| 510 | this in ~/.gnus.el: | ||
| 548 | 511 | ||
| 549 | @example | 512 | @example |
| 550 | (add-to-list 'gnus-secondary-select-methods | 513 | (add-to-list 'gnus-secondary-select-methods |
| 551 | '(nntp "news.yourSecondProvider.net")) | 514 | '(nntp "news.yourSecondProvider.net")) |
| 552 | (add-to-list 'gnus-secondary-select-methods | 515 | (add-to-list 'gnus-secondary-select-methods |
| 553 | '(nntp "news.yourThirdProvider.net")) | 516 | '(nntp "news.yourThirdProvider.net")) |
| 554 | @end example | 517 | @end example |
| 555 | 518 | @noindent | |
| 556 | @ifnottex | ||
| 557 | @node [3.7], [3.8], [3.6], FAQ 3 - Getting messages | ||
| 558 | @end ifnottex | ||
| 559 | @subsubheading Question 3.7: | ||
| 560 | 519 | ||
| 561 | And how about local spool files? | 520 | @node [3.7] |
| 562 | 521 | @subsubheading Question 3.7 | |
| 563 | 522 | ||
| 564 | Answer: | 523 | And how about local spool files? |
| 565 | 524 | ||
| 566 | No problem, this is just one more select method called | 525 | @subsubheading Answer |
| 567 | nnspool, so you want this: | 526 | |
| 568 | 527 | No problem, this is just one more select method called | |
| 528 | nnspool, so you want this: | ||
| 569 | 529 | ||
| 570 | @example | 530 | @example |
| 571 | (add-to-list 'gnus-secondary-select-methods '(nnspool "")) | 531 | (add-to-list 'gnus-secondary-select-methods '(nnspool "")) |
| 572 | @end example | 532 | @end example |
| 573 | |||
| 574 | @noindent | 533 | @noindent |
| 575 | Or this if you don't want an NNTP Server as primary news source: | 534 | |
| 576 | 535 | Or this if you don't want an NNTP Server as primary news source: | |
| 577 | 536 | ||
| 578 | @example | 537 | @example |
| 579 | (setq gnus-select-method '(nnspool "")) | 538 | (setq gnus-select-method '(nnspool "")) |
| 580 | @end example | 539 | @end example |
| 581 | |||
| 582 | @noindent | 540 | @noindent |
| 583 | Gnus will look for the spool file in /usr/spool/news, if you | 541 | |
| 584 | want something different, change the line above to something like this: | 542 | Gnus will look for the spool file in /usr/spool/news, if you |
| 585 | 543 | want something different, change the line above to something like this: | |
| 586 | 544 | ||
| 587 | @example | 545 | @example |
| 588 | (add-to-list 'gnus-secondary-select-methods | 546 | (add-to-list 'gnus-secondary-select-methods |
| 589 | '(nnspool "" (nnspool-directory "/usr/local/myspoolddir"))) | 547 | '(nnspool "" |
| 548 | (nnspool-directory "/usr/local/myspoolddir"))) | ||
| 590 | @end example | 549 | @end example |
| 591 | |||
| 592 | @noindent | 550 | @noindent |
| 593 | This sets the spool directory for this server only. | ||
| 594 | You might have to specify more stuff like the program used | ||
| 595 | to post articles, see the Gnus manual on how to do this. | ||
| 596 | |||
| 597 | @ifnottex | ||
| 598 | @node [3.8], [3.9], [3.7], FAQ 3 - Getting messages | ||
| 599 | @end ifnottex | ||
| 600 | @subsubheading Question 3.8: | ||
| 601 | 551 | ||
| 602 | OK, reading news works now, but I want to be able to read my mail | 552 | This sets the spool directory for this server only. |
| 603 | with Gnus, too. How to do it? | 553 | You might have to specify more stuff like the program used |
| 604 | 554 | to post articles, see the Gnus manual on how to do this. | |
| 605 | 555 | ||
| 606 | Answer: | 556 | @node [3.8] |
| 607 | 557 | @subsubheading Question 3.8 | |
| 608 | That's a bit harder since there are many possible sources | 558 | |
| 609 | for mail, many possible ways for storing mail and many | 559 | OK, reading news works now, but I want to be able to read my mail |
| 610 | different ways for sending mail. The most common cases are | 560 | with Gnus, too. How to do it? |
| 611 | these: 1: You want to read your mail from a pop3 server and | 561 | |
| 612 | send them directly to a SMTP Server 2: Some program like | 562 | @subsubheading Answer |
| 613 | fetchmail retrieves your mail and stores it on disk from | 563 | |
| 614 | where Gnus shall read it. Outgoing mail is sent by | 564 | That's a bit harder since there are many possible sources |
| 615 | Sendmail, Postfix or some other MTA. Sometimes, you even | 565 | for mail, many possible ways for storing mail and many |
| 616 | need a combination of the above cases. | 566 | different ways for sending mail. The most common cases are |
| 617 | 567 | these: 1: You want to read your mail from a pop3 server and | |
| 618 | 568 | send them directly to a SMTP Server 2: Some program like | |
| 619 | However, the first thing to do is to tell Gnus in which way | 569 | fetchmail retrieves your mail and stores it on disk from |
| 620 | it should store the mail, in Gnus terminology which back end | 570 | where Gnus shall read it. Outgoing mail is sent by |
| 621 | to use. Gnus supports many different back ends, the most | 571 | Sendmail, Postfix or some other MTA. Sometimes, you even |
| 622 | commonly used one is nnml. It stores every mail in one file | 572 | need a combination of the above cases. |
| 623 | and is therefor quite fast. However you might prefer a one | 573 | |
| 624 | file per group approach if your file system has problems with | 574 | However, the first thing to do is to tell Gnus in which way |
| 625 | many small files, the nnfolder back end is then probably the | 575 | it should store the mail, in Gnus terminology which back end |
| 626 | choice for you. To use nnml add the following to ~/.gnus: | 576 | to use. Gnus supports many different back ends, the most |
| 627 | 577 | commonly used one is nnml. It stores every mail in one file | |
| 578 | and is therefor quite fast. However you might prefer a one | ||
| 579 | file per group approach if your file system has problems with | ||
| 580 | many small files, the nnfolder back end is then probably the | ||
| 581 | choice for you. To use nnml add the following to ~/.gnus.el: | ||
| 628 | 582 | ||
| 629 | @example | 583 | @example |
| 630 | (add-to-list 'gnus-secondary-select-methods '(nnml "")) | 584 | (add-to-list 'gnus-secondary-select-methods '(nnml "")) |
| 631 | @end example | 585 | @end example |
| 632 | |||
| 633 | @noindent | 586 | @noindent |
| 634 | As you might have guessed, if you want nnfolder, it's | 587 | |
| 635 | 588 | As you might have guessed, if you want nnfolder, it's | |
| 636 | 589 | ||
| 637 | @example | 590 | @example |
| 638 | (add-to-list 'gnus-secondary-select-methods '(nnfolder "")) | 591 | (add-to-list 'gnus-secondary-select-methods '(nnfolder "")) |
| 639 | @end example | 592 | @end example |
| 640 | 593 | @noindent | |
| 641 | 594 | ||
| 642 | Now we need to tell Gnus, where to get it's mail from. If | 595 | Now we need to tell Gnus, where to get it's mail from. If |
| 643 | it's a POP3 server, then you need something like this: | 596 | it's a POP3 server, then you need something like this: |
| 644 | |||
| 645 | 597 | ||
| 646 | @example | 598 | @example |
| 647 | (eval-after-load "mail-source" | 599 | (eval-after-load "mail-source" |
| @@ -649,75 +601,68 @@ Answer: | |||
| 649 | :user "yourUserName" | 601 | :user "yourUserName" |
| 650 | :password "yourPassword"))) | 602 | :password "yourPassword"))) |
| 651 | @end example | 603 | @end example |
| 652 | |||
| 653 | @noindent | 604 | @noindent |
| 654 | Make sure ~/.gnus isn't readable to others if you store | 605 | |
| 655 | your password there. If you want to read your mail from a | 606 | Make sure ~/.gnus.el isn't readable to others if you store |
| 656 | traditional spool file on your local machine, it's | 607 | your password there. If you want to read your mail from a |
| 657 | 608 | traditional spool file on your local machine, it's | |
| 658 | 609 | ||
| 659 | @example | 610 | @example |
| 660 | (eval-after-load "mail-source" | 611 | (eval-after-load "mail-source" |
| 661 | '(add-to-list 'mail-sources '(file :path "/path/to/spool/file"))) | 612 | '(add-to-list 'mail-sources '(file :path "/path/to/spool/file")) |
| 662 | @end example | 613 | @end example |
| 663 | |||
| 664 | @noindent | 614 | @noindent |
| 665 | If it's a Maildir, with one file per message as used by | 615 | |
| 666 | postfix, Qmail and (optionally) fetchmail it's | 616 | If it's a Maildir, with one file per message as used by |
| 667 | 617 | postfix, Qmail and (optionally) fetchmail it's | |
| 668 | 618 | ||
| 669 | @example | 619 | @example |
| 670 | (eval-after-load "mail-source" | 620 | (eval-after-load "mail-source" |
| 671 | '(add-to-list 'mail-sources '(maildir :path "/path/to/Maildir/" | 621 | '(add-to-list 'mail-sources '(maildir :path "/path/to/Maildir/" |
| 672 | :subdirs ("cur" "new"))) | 622 | :subdirs ("cur" "new"))) |
| 673 | @end example | 623 | @end example |
| 674 | |||
| 675 | @noindent | 624 | @noindent |
| 676 | And finally if you want to read your mail from several files | 625 | |
| 677 | in one directory, for example because procmail already split your | 626 | And finally if you want to read your mail from several files |
| 678 | mail, it's | 627 | in one directory, for example because procmail already split your |
| 679 | 628 | mail, it's | |
| 680 | 629 | ||
| 681 | @example | 630 | @example |
| 682 | (eval-after-load "mail-source" | 631 | (eval-after-load "mail-source" |
| 683 | '(add-to-list 'mail-sources '(directory :path "/path/to/procmail-dir/" | 632 | '(add-to-list 'mail-sources |
| 684 | :suffix ".prcml")) | 633 | '(directory :path "/path/to/procmail-dir/" |
| 634 | :suffix ".prcml"))) | ||
| 685 | @end example | 635 | @end example |
| 686 | |||
| 687 | @noindent | 636 | @noindent |
| 688 | Where :suffix ".prcml" tells Gnus only to use files with the | ||
| 689 | suffix .prcml. | ||
| 690 | |||
| 691 | 637 | ||
| 692 | OK, now you only need to tell Gnus how to send mail. If you | 638 | Where :suffix ".prcml" tells Gnus only to use files with the |
| 693 | want to send mail via sendmail (or whichever MTA is playing | 639 | suffix .prcml. |
| 694 | the role of sendmail on your system), you don't need to do | 640 | |
| 695 | anything. However, if you want to send your mail to an | 641 | OK, now you only need to tell Gnus how to send mail. If you |
| 696 | SMTP Server you need the following in your ~/.gnus | 642 | want to send mail via sendmail (or whichever MTA is playing |
| 697 | 643 | the role of sendmail on your system), you don't need to do | |
| 644 | anything. However, if you want to send your mail to an | ||
| 645 | SMTP Server you need the following in your ~/.gnus.el | ||
| 698 | 646 | ||
| 699 | @example | 647 | @example |
| 700 | (setq send-mail-function 'smtpmail-send-it) | 648 | (setq send-mail-function 'smtpmail-send-it) |
| 701 | (setq message-send-mail-function 'smtpmail-send-it) | 649 | (setq message-send-mail-function 'smtpmail-send-it) |
| 702 | (setq smtpmail-default-smtp-server "smtp.yourProvider.net") | 650 | (setq smtpmail-default-smtp-server "smtp.yourProvider.net") |
| 703 | @end example | 651 | @end example |
| 704 | 652 | @noindent | |
| 705 | @ifnottex | ||
| 706 | @node [3.9], [3.10], [3.8], FAQ 3 - Getting messages | ||
| 707 | @end ifnottex | ||
| 708 | @subsubheading Question 3.9: | ||
| 709 | 653 | ||
| 710 | And what about IMAP? | 654 | @node [3.9] |
| 711 | 655 | @subsubheading Question 3.9 | |
| 712 | 656 | ||
| 713 | Answer: | 657 | And what about IMAP? |
| 714 | 658 | ||
| 715 | There are two ways of using IMAP with Gnus. The first one is | 659 | @subsubheading Answer |
| 716 | to use IMAP like POP3, that means Gnus fetches the mail from | 660 | |
| 717 | the IMAP server and stores it on disk. If you want to do | 661 | There are two ways of using IMAP with Gnus. The first one is |
| 718 | this (you don't really want to do this) add the following to | 662 | to use IMAP like POP3, that means Gnus fetches the mail from |
| 719 | ~/.gnus | 663 | the IMAP server and stores it on disk. If you want to do |
| 720 | 664 | this (you don't really want to do this) add the following to | |
| 665 | ~/.gnus.el | ||
| 721 | 666 | ||
| 722 | @example | 667 | @example |
| 723 | (add-to-list 'mail-sources '(imap :server "mail.mycorp.com" | 668 | (add-to-list 'mail-sources '(imap :server "mail.mycorp.com" |
| @@ -728,249 +673,215 @@ Answer: | |||
| 728 | :mailbox "INBOX" | 673 | :mailbox "INBOX" |
| 729 | :fetchflag "\\Seen")) | 674 | :fetchflag "\\Seen")) |
| 730 | @end example | 675 | @end example |
| 731 | |||
| 732 | @noindent | 676 | @noindent |
| 733 | You might have to tweak the values for stream and/or | ||
| 734 | authentification, see the Gnus manual node "Mail Source | ||
| 735 | Specifiers" for possible values. | ||
| 736 | |||
| 737 | 677 | ||
| 738 | If you want to use IMAP the way it's intended, you've got to | 678 | You might have to tweak the values for stream and/or |
| 739 | follow a different approach. You've got to add the nnimap | 679 | authentification, see the Gnus manual node "Mail Source |
| 740 | back end to your select method and give the information | 680 | Specifiers" for possible values. |
| 741 | about the server there. | 681 | |
| 742 | 682 | If you want to use IMAP the way it's intended, you've got to | |
| 683 | follow a different approach. You've got to add the nnimap | ||
| 684 | back end to your select method and give the information | ||
| 685 | about the server there. | ||
| 743 | 686 | ||
| 744 | @example | 687 | @example |
| 745 | (add-to-list | 688 | (add-to-list 'gnus-secondary-select-methods |
| 746 | 'gnus-secondary-select-methods | 689 | '(nnimap "Give the baby a name" |
| 747 | '(nnimap "Give the baby a name" | 690 | (nnimap-address "imap.yourProvider.net") |
| 748 | (nnimap-address "imap.yourProvider.net") | 691 | (nnimap-port 143) |
| 749 | (nnimap-port 143) | 692 | (nnimap-list-pattern "archive.*"))) |
| 750 | (nnimap-list-pattern "archive.*"))) | ||
| 751 | @end example | 693 | @end example |
| 752 | |||
| 753 | @noindent | 694 | @noindent |
| 754 | Again, you might have to specify how to authenticate to the | ||
| 755 | server if Gnus can't guess the correct way, see the Manual | ||
| 756 | Node "IMAP" for detailed information. | ||
| 757 | |||
| 758 | @ifnottex | ||
| 759 | @node [3.10], [3.11], [3.9], FAQ 3 - Getting messages | ||
| 760 | @end ifnottex | ||
| 761 | @subsubheading Question 3.10: | ||
| 762 | |||
| 763 | At the office we use one of those MS Exchange servers, can I use | ||
| 764 | Gnus to read my mail from it? | ||
| 765 | |||
| 766 | |||
| 767 | Answer: | ||
| 768 | 695 | ||
| 769 | Offer your administrator a pair of new running shoes for | 696 | Again, you might have to specify how to authenticate to the |
| 770 | activating IMAP on the server and follow the instructions | 697 | server if Gnus can't guess the correct way, see the Manual |
| 771 | above. | 698 | Node "IMAP" for detailed information. |
| 772 | 699 | ||
| 773 | @ifnottex | 700 | @node [3.10] |
| 774 | @node [3.11], , [3.10], FAQ 3 - Getting messages | 701 | @subsubheading Question 3.10 |
| 775 | @end ifnottex | 702 | |
| 776 | @subsubheading Question 3.11: | 703 | At the office we use one of those MS Exchange servers, can I use |
| 777 | 704 | Gnus to read my mail from it? | |
| 778 | Can I tell Gnus not to delete the mails on the server it | 705 | |
| 779 | retrieves via POP3? | 706 | @subsubheading Answer |
| 780 | 707 | ||
| 781 | 708 | Offer your administrator a pair of new running shoes for | |
| 782 | Answer: | 709 | activating IMAP on the server and follow the instructions |
| 783 | 710 | above. | |
| 784 | First of all, that's not the way POP3 is intended to work, | 711 | |
| 785 | if you have the possibility, you should use the IMAP | 712 | @node [3.11] |
| 786 | Protocol if you want your messages to stay on the | 713 | @subsubheading Question 3.11 |
| 787 | server. Nevertheless there might be situations where you | 714 | |
| 788 | need the feature, but sadly Gnus itself has no predefined | 715 | Can I tell Gnus not to delete the mails on the server it |
| 789 | functionality to do so. | 716 | retrieves via POP3? |
| 790 | 717 | ||
| 791 | 718 | @subsubheading Answer | |
| 792 | However this is Gnus county so there are possibilities to | 719 | |
| 793 | achieve what you want. The easiest way is to get an external | 720 | First of all, that's not the way POP3 is intended to work, |
| 794 | program which retrieves copies of the mail and stores them | 721 | if you have the possibility, you should use the IMAP |
| 795 | on disk, so Gnus can read it from there. On Unix systems you | 722 | Protocol if you want your messages to stay on the |
| 796 | could use e.g. fetchmail for this, on MS Windows you can use | 723 | server. Nevertheless there might be situations where you |
| 797 | Hamster, an excellent local news and mail server. | 724 | need the feature, but sadly Gnus itself has no predefined |
| 798 | 725 | functionality to do so. | |
| 799 | 726 | ||
| 800 | The other solution would be, to replace the method Gnus | 727 | However this is Gnus county so there are possibilities to |
| 801 | uses to get mail from POP3 servers by one which is capable | 728 | achieve what you want. The easiest way is to get an external |
| 802 | of leaving the mail on the server. If you use XEmacs, get | 729 | program which retrieves copies of the mail and stores them |
| 803 | the package mail-lib, it includes an enhanced pop3.el, | 730 | on disk, so Gnus can read it from there. On Unix systems you |
| 804 | look in the file, there's documentation on how to tell | 731 | could use e.g. fetchmail for this, on MS Windows you can use |
| 805 | Gnus to use it and not to delete the retrieved mail. For | 732 | Hamster, an excellent local news and mail server. |
| 806 | GNU Emacs look for the file epop3.el which can do the same | 733 | |
| 807 | (If you know the home of this file, please send me an | 734 | The other solution would be, to replace the method Gnus |
| 808 | e-mail). You can also tell Gnus to use an external program | 735 | uses to get mail from POP3 servers by one which is capable |
| 809 | (e.g. fetchmail) to fetch your mail, see the info node | 736 | of leaving the mail on the server. If you use XEmacs, get |
| 810 | "Mail Source Specifiers" in the Gnus manual on how to do | 737 | the package mail-lib, it includes an enhanced pop3.el, |
| 811 | it. | 738 | look in the file, there's documentation on how to tell |
| 812 | 739 | Gnus to use it and not to delete the retrieved mail. For | |
| 813 | 740 | GNU Emacs look for the file epop3.el which can do the same | |
| 814 | @ifnottex | 741 | (If you know the home of this file, please send me an |
| 815 | @node FAQ 4 - Reading messages, FAQ 5 - Composing messages, FAQ 3 - Getting messages, Frequently Asked Questions | 742 | e-mail). You can also tell Gnus to use an external program |
| 816 | @end ifnottex | 743 | (e.g. fetchmail) to fetch your mail, see the info node |
| 744 | "Mail Source Specifiers" in the Gnus manual on how to do | ||
| 745 | it. | ||
| 746 | |||
| 747 | @node FAQ 4 - Reading messages | ||
| 817 | @subsection Reading messages | 748 | @subsection Reading messages |
| 818 | 749 | ||
| 819 | @menu | 750 | @menu |
| 820 | * [4.1]:: When I enter a group, all read messages are gone. | 751 | * [4.1]:: When I enter a group, all read messages are gone. How to |
| 821 | How to view them again? | 752 | view them again? |
| 822 | * [4.2]:: How to tell Gnus to show an important message every time | 753 | * [4.2]:: How to tell Gnus to show an important message every time I |
| 823 | I enter a group, even when it's read? | 754 | enter a group, even when it's read? |
| 824 | * [4.3]:: How to view the headers of a message? | 755 | * [4.3]:: How to view the headers of a message? |
| 825 | * [4.4]:: How to view the raw unformatted message? | 756 | * [4.4]:: How to view the raw unformatted message? |
| 826 | * [4.5]:: How can I change the headers Gnus displays by default at the | 757 | * [4.5]:: How can I change the headers Gnus displays by default at |
| 827 | top of the article buffer? | 758 | the top of the article buffer? |
| 828 | * [4.6]:: I'd like Gnus NOT to render HTML-mails but show me the | 759 | * [4.6]:: I'd like Gnus NOT to render HTML-mails but show me the |
| 829 | text part if it's available. How to do it? | 760 | text part if it's available. How to do it? |
| 830 | * [4.7]:: Can I use some other browser than w3 to render my HTML-mails? | 761 | * [4.7]:: Can I use some other browser than w3 to render my |
| 831 | * [4.8]:: Is there anything I can do to make poorly formatted mails | 762 | HTML-mails? |
| 832 | more readable? | 763 | * [4.8]:: Is there anything I can do to make poorly formatted mails |
| 833 | * [4.9]:: Is there a way to automatically ignore posts by specific authors | 764 | more readable? |
| 834 | or with specific words in the subject? And can I highlight more | 765 | * [4.9]:: Is there a way to automatically ignore posts by specific |
| 835 | interesting ones in some way? | 766 | authors or with specific words in the subject? And can I highlight |
| 836 | * [4.10]:: How can I disable threading in some (e.g. mail-) groups, or set | 767 | more interesting ones in some way? |
| 837 | other variables specific for some groups? | 768 | * [4.10]:: How can I disable threading in some (e.g. mail-) groups, |
| 838 | * [4.11]:: Can I highlight messages written by me and follow-ups to those? | 769 | or set other variables specific for some groups? |
| 839 | * [4.12]:: The number of total messages in a group which Gnus displays in | 770 | * [4.11]:: Can I highlight messages written by me and follow-ups to |
| 840 | group buffer is by far to high, especially in mail groups. | 771 | those? |
| 841 | Is this a bug? | 772 | * [4.12]:: The number of total messages in a group which Gnus |
| 842 | * [4.13]:: I don't like the layout of summary and article buffer, | 773 | displays in group buffer is by far to high, especially in mail |
| 843 | how to change it? Perhaps even a three pane display? | 774 | groups. Is this a bug? |
| 844 | * [4.14]:: I don't like the way the Summary buffer looks, how to tweak it? | 775 | * [4.13]:: I don't like the layout of summary and article buffer, how |
| 845 | * [4.15]:: How to split incoming mails in several groups? | 776 | to change it? Perhaps even a three pane display? |
| 777 | * [4.14]:: I don't like the way the Summary buffer looks, how to | ||
| 778 | tweak it? | ||
| 779 | * [4.15]:: How to split incoming mails in several groups? | ||
| 846 | @end menu | 780 | @end menu |
| 847 | 781 | ||
| 848 | @ifnottex | 782 | @node [4.1] |
| 849 | @node [4.1], [4.2], FAQ 4 - Reading messages, FAQ 4 - Reading messages | 783 | @subsubheading Question 4.1 |
| 850 | @end ifnottex | ||
| 851 | @subsubheading Question 4.1: | ||
| 852 | 784 | ||
| 853 | When I enter a group, all read messages are gone. How to view them again? | 785 | When I enter a group, all read messages are gone. How to view them again? |
| 854 | |||
| 855 | 786 | ||
| 856 | Answer: | 787 | @subsubheading Answer |
| 857 | 788 | ||
| 858 | If you enter the group by saying | 789 | If you enter the group by saying |
| 859 | @samp{RET} | 790 | @samp{RET} |
| 860 | in group buffer with point over the group, only unread and ticked messages are loaded. Say | 791 | in group buffer with point over the group, only unread and ticked messages are loaded. Say |
| 861 | @samp{C-u RET} | 792 | @samp{C-u RET} |
| 862 | instead to load all available messages. If you want only the e.g. 300 newest say | 793 | instead to load all available messages. If you want only the e.g. 300 newest say |
| 863 | @samp{C-u 300 RET} | 794 | @samp{C-u 300 RET} |
| 864 | |||
| 865 | 795 | ||
| 866 | Loading only unread messages can be annoying if you have threaded view enabled, say | 796 | Loading only unread messages can be annoying if you have threaded view enabled, say |
| 867 | |||
| 868 | 797 | ||
| 869 | @example | 798 | @example |
| 870 | (setq gnus-fetch-old-headers 'some) | 799 | (setq gnus-fetch-old-headers 'some) |
| 871 | @end example | 800 | @end example |
| 872 | |||
| 873 | |||
| 874 | @noindent | 801 | @noindent |
| 875 | in ~/.gnus to load enough old articles to prevent teared threads, replace 'some with t to load | ||
| 876 | all articles (Warning: Both settings enlarge the amount of data which is | ||
| 877 | fetched when you enter a group and slow down the process of entering a group). | ||
| 878 | 802 | ||
| 803 | in ~/.gnus.el to load enough old articles to prevent teared threads, replace 'some with t to load | ||
| 804 | all articles (Warning: Both settings enlarge the amount of data which is | ||
| 805 | fetched when you enter a group and slow down the process of entering a group). | ||
| 879 | 806 | ||
| 880 | If you already use Gnus 5.10, you can say | 807 | If you already use Gnus 5.10, you can say |
| 881 | @samp{/o N} | 808 | @samp{/o N} |
| 882 | In summary buffer to load the last N messages, this feature is not available in 5.8.8 | 809 | In summary buffer to load the last N messages, this feature is not available in 5.8.8 |
| 883 | |||
| 884 | 810 | ||
| 885 | If you don't want all old messages, but the parent of the message you're just reading, | 811 | If you don't want all old messages, but the parent of the message you're just reading, |
| 886 | you can say @samp{^}, if you want to retrieve the whole thread | 812 | you can say @samp{^}, if you want to retrieve the whole thread |
| 887 | the message you're just reading belongs to, @samp{A T} is your friend. | 813 | the message you're just reading belongs to, @samp{A T} is your friend. |
| 888 | |||
| 889 | @ifnottex | ||
| 890 | @node [4.2], [4.3], [4.1], FAQ 4 - Reading messages | ||
| 891 | @end ifnottex | ||
| 892 | @subsubheading Question 4.2: | ||
| 893 | 814 | ||
| 894 | How to tell Gnus to show an important message every time I | 815 | @node [4.2] |
| 895 | enter a group, even when it's read? | 816 | @subsubheading Question 4.2 |
| 896 | |||
| 897 | 817 | ||
| 898 | Answer: | 818 | How to tell Gnus to show an important message every time I |
| 819 | enter a group, even when it's read? | ||
| 899 | 820 | ||
| 900 | You can tick important messages. To do this hit | 821 | @subsubheading Answer |
| 901 | @samp{u} while point is in summary buffer | ||
| 902 | over the message. When you want to remove the mark, hit | ||
| 903 | either @samp{d} (this deletes the tick | ||
| 904 | mark and set's unread mark) or @samp{M c} | ||
| 905 | (which deletes all marks for the message). | ||
| 906 | |||
| 907 | @ifnottex | ||
| 908 | @node [4.3], [4.4], [4.2], FAQ 4 - Reading messages | ||
| 909 | @end ifnottex | ||
| 910 | @subsubheading Question 4.3: | ||
| 911 | 822 | ||
| 912 | How to view the headers of a message? | 823 | You can tick important messages. To do this hit |
| 913 | 824 | @samp{u} while point is in summary buffer | |
| 825 | over the message. When you want to remove the mark, hit | ||
| 826 | either @samp{d} (this deletes the tick | ||
| 827 | mark and set's unread mark) or @samp{M c} | ||
| 828 | (which deletes all marks for the message). | ||
| 914 | 829 | ||
| 915 | Answer: | 830 | @node [4.3] |
| 831 | @subsubheading Question 4.3 | ||
| 916 | 832 | ||
| 917 | Say @samp{t} | 833 | How to view the headers of a message? |
| 918 | to show all headers, one more | ||
| 919 | @samp{t} | ||
| 920 | hides them again. | ||
| 921 | |||
| 922 | @ifnottex | ||
| 923 | @node [4.4], [4.5], [4.3], FAQ 4 - Reading messages | ||
| 924 | @end ifnottex | ||
| 925 | @subsubheading Question 4.4: | ||
| 926 | 834 | ||
| 927 | How to view the raw unformatted message? | 835 | @subsubheading Answer |
| 928 | |||
| 929 | 836 | ||
| 930 | Answer: | 837 | Say @samp{t} |
| 838 | to show all headers, one more | ||
| 839 | @samp{t} | ||
| 840 | hides them again. | ||
| 931 | 841 | ||
| 932 | Say | 842 | @node [4.4] |
| 933 | @samp{C-u g} | 843 | @subsubheading Question 4.4 |
| 934 | to show the raw message | ||
| 935 | @samp{g} | ||
| 936 | returns to normal view. | ||
| 937 | |||
| 938 | @ifnottex | ||
| 939 | @node [4.5], [4.6], [4.4], FAQ 4 - Reading messages | ||
| 940 | @end ifnottex | ||
| 941 | @subsubheading Question 4.5: | ||
| 942 | 844 | ||
| 943 | How can I change the headers Gnus displays by default at | 845 | How to view the raw unformatted message? |
| 944 | the top of the article buffer? | ||
| 945 | |||
| 946 | 846 | ||
| 947 | Answer: | 847 | @subsubheading Answer |
| 848 | |||
| 849 | Say | ||
| 850 | @samp{C-u g} | ||
| 851 | to show the raw message | ||
| 852 | @samp{g} | ||
| 853 | returns to normal view. | ||
| 854 | |||
| 855 | @node [4.5] | ||
| 856 | @subsubheading Question 4.5 | ||
| 857 | |||
| 858 | How can I change the headers Gnus displays by default at | ||
| 859 | the top of the article buffer? | ||
| 860 | |||
| 861 | @subsubheading Answer | ||
| 862 | |||
| 863 | The variable gnus-visible-headers controls which headers | ||
| 864 | are shown, its value is a regular expression, header lines | ||
| 865 | which match it are shown. So if you want author, subject, | ||
| 866 | date, and if the header exists, Followup-To and MUA / NUA | ||
| 867 | say this in ~/.gnus.el: | ||
| 948 | 868 | ||
| 949 | The variable gnus-visible-headers controls which headers | ||
| 950 | are shown, its value is a regular expression, header lines | ||
| 951 | which match it are shown. So if you want author, subject, | ||
| 952 | date, and if the header exists, Followup-To and MUA / NUA | ||
| 953 | say this in ~/.gnus: | ||
| 954 | |||
| 955 | @example | 869 | @example |
| 956 | (setq gnus-visible-headers | 870 | (setq gnus-visible-headers |
| 957 | "^\\(From:\\|Subject:\\|Date:\\|Followup-To:\ | 871 | '("^From" "^Subject" "^Date" "^Newsgroups" "^Followup-To" |
| 958 | \\|X-Newsreader:\\|User-Agent:\\|X-Mailer:\\)") | 872 | "^User-Agent" "^X-Newsreader" "^X-Mailer")) |
| 959 | @end example | 873 | @end example |
| 960 | 874 | @noindent | |
| 961 | @ifnottex | ||
| 962 | @node [4.6], [4.7], [4.5], FAQ 4 - Reading messages | ||
| 963 | @end ifnottex | ||
| 964 | @subsubheading Question 4.6: | ||
| 965 | 875 | ||
| 966 | I'd like Gnus NOT to render HTML-mails but show me the | 876 | @node [4.6] |
| 967 | text part if it's available. How to do it? | 877 | @subsubheading Question 4.6 |
| 968 | |||
| 969 | 878 | ||
| 970 | Answer: | 879 | I'd like Gnus NOT to render HTML-mails but show me the |
| 880 | text part if it's available. How to do it? | ||
| 971 | 881 | ||
| 972 | Say | 882 | @subsubheading Answer |
| 973 | 883 | ||
| 884 | Say | ||
| 974 | 885 | ||
| 975 | @example | 886 | @example |
| 976 | (eval-after-load "mm-decode" | 887 | (eval-after-load "mm-decode" |
| @@ -978,240 +889,206 @@ Answer: | |||
| 978 | (add-to-list 'mm-discouraged-alternatives "text/html") | 889 | (add-to-list 'mm-discouraged-alternatives "text/html") |
| 979 | (add-to-list 'mm-discouraged-alternatives "text/richtext"))) | 890 | (add-to-list 'mm-discouraged-alternatives "text/richtext"))) |
| 980 | @end example | 891 | @end example |
| 981 | |||
| 982 | @noindent | 892 | @noindent |
| 983 | in ~/.gnus. If you don't want HTML rendered, even if there's no text alternative add | 893 | |
| 984 | 894 | in ~/.gnus.el. If you don't want HTML rendered, even if there's no text alternative add | |
| 985 | 895 | ||
| 986 | @example | 896 | @example |
| 987 | (setq mm-automatic-display (remove "text/html" mm-automatic-display)) | 897 | (setq mm-automatic-display (remove "text/html" mm-automatic-display)) |
| 988 | @end example | 898 | @end example |
| 989 | |||
| 990 | @noindent | 899 | @noindent |
| 991 | too. | ||
| 992 | |||
| 993 | @ifnottex | ||
| 994 | @node [4.7], [4.8], [4.6], FAQ 4 - Reading messages | ||
| 995 | @end ifnottex | ||
| 996 | @subsubheading Question 4.7: | ||
| 997 | 900 | ||
| 998 | Can I use some other browser than w3 to render my HTML-mails? | 901 | too. |
| 999 | |||
| 1000 | 902 | ||
| 1001 | Answer: | 903 | @node [4.7] |
| 904 | @subsubheading Question 4.7 | ||
| 1002 | 905 | ||
| 1003 | Only if you use Gnus 5.10 or younger. In this case you've got the | 906 | Can I use some other browser than w3 to render my HTML-mails? |
| 1004 | choice between w3, w3m, links, lynx and html2text, which | 907 | |
| 1005 | one is used can be specified in the variable | 908 | @subsubheading Answer |
| 1006 | mm-text-html-renderer, so if you want links to render your | 909 | |
| 1007 | mail say | 910 | Only if you use Gnus 5.10 or younger. In this case you've got the |
| 1008 | 911 | choice between w3, w3m, links, lynx and html2text, which | |
| 912 | one is used can be specified in the variable | ||
| 913 | mm-text-html-renderer, so if you want links to render your | ||
| 914 | mail say | ||
| 1009 | 915 | ||
| 1010 | @example | 916 | @example |
| 1011 | (setq mm-text-html-renderer 'links) | 917 | (setq mm-text-html-renderer 'links) |
| 1012 | @end example | 918 | @end example |
| 1013 | 919 | @noindent | |
| 1014 | @ifnottex | ||
| 1015 | @node [4.8], [4.9], [4.7], FAQ 4 - Reading messages | ||
| 1016 | @end ifnottex | ||
| 1017 | @subsubheading Question 4.8: | ||
| 1018 | |||
| 1019 | Is there anything I can do to make poorly formatted mails | ||
| 1020 | more readable? | ||
| 1021 | |||
| 1022 | |||
| 1023 | Answer: | ||
| 1024 | |||
| 1025 | Gnus offers you several functions to "wash" incoming mail, | ||
| 1026 | you can find them if you browse through the menu, item Article->Washing. The most | ||
| 1027 | interesting ones are probably "Wrap long lines" ( | ||
| 1028 | @samp{W w} | ||
| 1029 | ), "Decode ROT13" ( | ||
| 1030 | @samp{W r} | ||
| 1031 | ) and "Outlook Deuglify" which repairs the dumb quoting used | ||
| 1032 | by many users of Microsoft products ( | ||
| 1033 | @samp{W Y f} gives you full deuglify. | ||
| 1034 | See @samp{W Y C-h} or | ||
| 1035 | have a look at the menus for other deuglifications). | ||
| 1036 | Outlook deuglify is only available since Gnus 5.10. | ||
| 1037 | |||
| 1038 | @ifnottex | ||
| 1039 | @node [4.9], [4.10], [4.8], FAQ 4 - Reading messages | ||
| 1040 | @end ifnottex | ||
| 1041 | @subsubheading Question 4.9: | ||
| 1042 | |||
| 1043 | Is there a way to automatically ignore posts by specific | ||
| 1044 | authors or with specific words in the subject? And can I | ||
| 1045 | highlight more interesting ones in some way? | ||
| 1046 | |||
| 1047 | |||
| 1048 | Answer: | ||
| 1049 | |||
| 1050 | You want Scoring. Scoring means, that you define rules | ||
| 1051 | which assign each message an integer value. Depending on | ||
| 1052 | the value the message is highlighted in summary buffer (if | ||
| 1053 | it's high, say +2000) or automatically marked read (if the | ||
| 1054 | value is low, say -800) or some other action happens. | ||
| 1055 | |||
| 1056 | |||
| 1057 | There are basically three ways of setting up rules which assign | ||
| 1058 | the scoring-value to messages. The first and easiest way is to set | ||
| 1059 | up rules based on the article you are just reading. Say you're | ||
| 1060 | reading a message by a guy who always writes nonsense and you want | ||
| 1061 | to ignore his messages in the future. Hit | ||
| 1062 | @samp{L}, to set up a rule which lowers the score. | ||
| 1063 | Now Gnus asks you which the criteria for lowering the Score shall | ||
| 1064 | be. Hit @samp{?} twice to see all possibilities, | ||
| 1065 | we want @samp{a} which means the author (the from | ||
| 1066 | header). Now Gnus wants to know which kind of matching we want. | ||
| 1067 | Hit either @samp{e} for an exact match or | ||
| 1068 | @samp{s} for substring-match and delete afterwards | ||
| 1069 | everything but the name to score down all authors with the given | ||
| 1070 | name no matter which email address is used. Now you need to tell | ||
| 1071 | Gnus when to apply the rule and how long it should last, hit e.g. | ||
| 1072 | @samp{p} to apply the rule now and let it last | ||
| 1073 | forever. If you want to raise the score instead of lowering it say | ||
| 1074 | @samp{I} instead of @samp{L}. | ||
| 1075 | |||
| 1076 | 920 | ||
| 1077 | You can also set up rules by hand. To do this say @samp{V | 921 | @node [4.8] |
| 1078 | f} in summary buffer. Then you are asked for the name | 922 | @subsubheading Question 4.8 |
| 1079 | of the score file, it's name.of.group.SCORE for rules valid in | 923 | |
| 1080 | only one group or all.Score for rules valid in all groups. See the | 924 | Is there anything I can do to make poorly formatted mails |
| 1081 | Gnus manual for the exact syntax, basically it's one big list | 925 | more readable? |
| 1082 | whose elements are lists again. the first element of those lists | 926 | |
| 1083 | is the header to score on, then one more list with what to match, | 927 | @subsubheading Answer |
| 1084 | which score to assign, when to expire the rule and how to do the | 928 | |
| 1085 | matching. If you find me very interesting, you could e.g. add the | 929 | Gnus offers you several functions to "wash" incoming mail, you can |
| 1086 | following to your all.Score: | 930 | find them if you browse through the menu, item |
| 1087 | 931 | Article->Washing. The most interesting ones are probably "Wrap | |
| 932 | long lines" (@samp{W w}), "Decode ROT13" | ||
| 933 | (@samp{W r}) and "Outlook Deuglify" which repairs | ||
| 934 | the dumb quoting used by many users of Microsoft products | ||
| 935 | (@samp{W Y f} gives you full deuglify. | ||
| 936 | See @samp{W Y C-h} or have a look at the menus for | ||
| 937 | other deuglifications). Outlook deuglify is only available since | ||
| 938 | Gnus 5.10. | ||
| 939 | |||
| 940 | @node [4.9] | ||
| 941 | @subsubheading Question 4.9 | ||
| 942 | |||
| 943 | Is there a way to automatically ignore posts by specific | ||
| 944 | authors or with specific words in the subject? And can I | ||
| 945 | highlight more interesting ones in some way? | ||
| 946 | |||
| 947 | @subsubheading Answer | ||
| 948 | |||
| 949 | You want Scoring. Scoring means, that you define rules | ||
| 950 | which assign each message an integer value. Depending on | ||
| 951 | the value the message is highlighted in summary buffer (if | ||
| 952 | it's high, say +2000) or automatically marked read (if the | ||
| 953 | value is low, say -800) or some other action happens. | ||
| 954 | |||
| 955 | There are basically three ways of setting up rules which assign | ||
| 956 | the scoring-value to messages. The first and easiest way is to set | ||
| 957 | up rules based on the article you are just reading. Say you're | ||
| 958 | reading a message by a guy who always writes nonsense and you want | ||
| 959 | to ignore his messages in the future. Hit | ||
| 960 | @samp{L}, to set up a rule which lowers the score. | ||
| 961 | Now Gnus asks you which the criteria for lowering the Score shall | ||
| 962 | be. Hit @samp{?} twice to see all possibilities, | ||
| 963 | we want @samp{a} which means the author (the from | ||
| 964 | header). Now Gnus wants to know which kind of matching we want. | ||
| 965 | Hit either @samp{e} for an exact match or | ||
| 966 | @samp{s} for substring-match and delete afterwards | ||
| 967 | everything but the name to score down all authors with the given | ||
| 968 | name no matter which email address is used. Now you need to tell | ||
| 969 | Gnus when to apply the rule and how long it should last, hit e.g. | ||
| 970 | @samp{p} to apply the rule now and let it last | ||
| 971 | forever. If you want to raise the score instead of lowering it say | ||
| 972 | @samp{I} instead of @samp{L}. | ||
| 973 | |||
| 974 | You can also set up rules by hand. To do this say @samp{V | ||
| 975 | f} in summary buffer. Then you are asked for the name | ||
| 976 | of the score file, it's name.of.group.SCORE for rules valid in | ||
| 977 | only one group or all.Score for rules valid in all groups. See the | ||
| 978 | Gnus manual for the exact syntax, basically it's one big list | ||
| 979 | whose elements are lists again. the first element of those lists | ||
| 980 | is the header to score on, then one more list with what to match, | ||
| 981 | which score to assign, when to expire the rule and how to do the | ||
| 982 | matching. If you find me very interesting, you could e.g. add the | ||
| 983 | following to your all.Score: | ||
| 1088 | 984 | ||
| 1089 | @example | 985 | @example |
| 1090 | (("references" ("hschmi22.userfqdn.rz-online.de" 500 nil s)) | 986 | (("references" ("hschmi22.userfqdn.rz-online.de" 500 nil s)) |
| 1091 | ("message-id" ("hschmi22.userfqdn.rz-online.de" 999 nil s))) | 987 | ("message-id" ("hschmi22.userfqdn.rz-online.de" 999 nil s))) |
| 1092 | @end example | 988 | @end example |
| 1093 | |||
| 1094 | @noindent | 989 | @noindent |
| 1095 | This would add 999 to the score of messages written by me | ||
| 1096 | and 500 to the score of messages which are a (possibly | ||
| 1097 | indirect) answer to a message written by me. Of course | ||
| 1098 | nobody with a sane mind would do this :-) | ||
| 1099 | |||
| 1100 | 990 | ||
| 1101 | The third alternative is adaptive scoring. This means Gnus | 991 | This would add 999 to the score of messages written by me |
| 1102 | watches you and tries to find out what you find | 992 | and 500 to the score of messages which are a (possibly |
| 1103 | interesting and what annoying and sets up rules | 993 | indirect) answer to a message written by me. Of course |
| 1104 | which reflect this. Adaptive scoring can be a huge help | 994 | nobody with a sane mind would do this :-) |
| 1105 | when reading high traffic groups. If you want to activate | 995 | |
| 1106 | adaptive scoring say | 996 | The third alternative is adaptive scoring. This means Gnus |
| 1107 | 997 | watches you and tries to find out what you find | |
| 998 | interesting and what annoying and sets up rules | ||
| 999 | which reflect this. Adaptive scoring can be a huge help | ||
| 1000 | when reading high traffic groups. If you want to activate | ||
| 1001 | adaptive scoring say | ||
| 1108 | 1002 | ||
| 1109 | @example | 1003 | @example |
| 1110 | (setq gnus-use-adaptive-scoring t) | 1004 | (setq gnus-use-adaptive-scoring t) |
| 1111 | @end example | 1005 | @end example |
| 1112 | |||
| 1113 | @noindent | 1006 | @noindent |
| 1114 | in ~/.gnus. | ||
| 1115 | |||
| 1116 | @ifnottex | ||
| 1117 | @node [4.10], [4.11], [4.9], FAQ 4 - Reading messages | ||
| 1118 | @end ifnottex | ||
| 1119 | @subsubheading Question 4.10: | ||
| 1120 | 1007 | ||
| 1121 | How can I disable threading in some (e.g. mail-) groups, or | 1008 | in ~/.gnus.el. |
| 1122 | set other variables specific for some groups? | ||
| 1123 | |||
| 1124 | 1009 | ||
| 1125 | Answer: | 1010 | @node [4.10] |
| 1011 | @subsubheading Question 4.10 | ||
| 1126 | 1012 | ||
| 1127 | While in group buffer move point over the group and hit | 1013 | How can I disable threading in some (e.g. mail-) groups, or |
| 1128 | @samp{G c}, this opens a buffer where you | 1014 | set other variables specific for some groups? |
| 1129 | can set options for the group. At the bottom of the buffer | ||
| 1130 | you'll find an item that allows you to set variables | ||
| 1131 | locally for the group. To disable threading enter | ||
| 1132 | gnus-show-threads as name of variable and nil as | ||
| 1133 | value. Hit button done at the top of the buffer when | ||
| 1134 | you're ready. | ||
| 1135 | |||
| 1136 | @ifnottex | ||
| 1137 | @node [4.11], [4.12], [4.10], FAQ 4 - Reading messages | ||
| 1138 | @end ifnottex | ||
| 1139 | @subsubheading Question 4.11: | ||
| 1140 | 1015 | ||
| 1141 | Can I highlight messages written by me and follow-ups to | 1016 | @subsubheading Answer |
| 1142 | those? | ||
| 1143 | |||
| 1144 | 1017 | ||
| 1145 | Answer: | 1018 | While in group buffer move point over the group and hit |
| 1019 | @samp{G c}, this opens a buffer where you | ||
| 1020 | can set options for the group. At the bottom of the buffer | ||
| 1021 | you'll find an item that allows you to set variables | ||
| 1022 | locally for the group. To disable threading enter | ||
| 1023 | gnus-show-threads as name of variable and nil as | ||
| 1024 | value. Hit button done at the top of the buffer when | ||
| 1025 | you're ready. | ||
| 1146 | 1026 | ||
| 1147 | Stop those "Can I ..." questions, the answer is always yes | 1027 | @node [4.11] |
| 1148 | in Gnus Country :-). It's a three step process: First we | 1028 | @subsubheading Question 4.11 |
| 1149 | make faces (specifications of how summary-line shall look | ||
| 1150 | like) for those postings, then we'll give them some | ||
| 1151 | special score and finally we'll tell Gnus to use the new | ||
| 1152 | faces. You can find detailed instructions on how to do it on | ||
| 1153 | @uref{http://my.gnus.org/Members/dzimmerm/HowTo%2C2002-07-25%2C1027619165012198456/view,my.gnus.org} | ||
| 1154 | |||
| 1155 | @ifnottex | ||
| 1156 | @node [4.12], [4.13], [4.11], FAQ 4 - Reading messages | ||
| 1157 | @end ifnottex | ||
| 1158 | @subsubheading Question 4.12: | ||
| 1159 | |||
| 1160 | The number of total messages in a group which Gnus | ||
| 1161 | displays in group buffer is by far to high, especially in | ||
| 1162 | mail groups. Is this a bug? | ||
| 1163 | |||
| 1164 | 1029 | ||
| 1165 | Answer: | 1030 | Can I highlight messages written by me and follow-ups to |
| 1166 | 1031 | those? | |
| 1167 | No, that's a matter of design of Gnus, fixing this would | ||
| 1168 | mean reimplementation of major parts of Gnus' | ||
| 1169 | back ends. Gnus thinks "highest-article-number - | ||
| 1170 | lowest-article-number = total-number-of-articles". This | ||
| 1171 | works OK for Usenet groups, but if you delete and move | ||
| 1172 | many messages in mail groups, this fails. To cure the | ||
| 1173 | symptom, enter the group via @samp{C-u RET} | ||
| 1174 | (this makes Gnus get all messages), then | ||
| 1175 | hit @samp{M P b} to mark all messages and | ||
| 1176 | then say @samp{B m name.of.group} to move | ||
| 1177 | all messages to the group they have been in before, they | ||
| 1178 | get new message numbers in this process and the count is | ||
| 1179 | right again (until you delete and move your mail to other | ||
| 1180 | groups again). | ||
| 1181 | |||
| 1182 | @ifnottex | ||
| 1183 | @node [4.13], [4.14], [4.12], FAQ 4 - Reading messages | ||
| 1184 | @end ifnottex | ||
| 1185 | @subsubheading Question 4.13: | ||
| 1186 | 1032 | ||
| 1187 | I don't like the layout of summary and article buffer, how | 1033 | @subsubheading Answer |
| 1188 | to change it? Perhaps even a three pane display? | ||
| 1189 | |||
| 1190 | 1034 | ||
| 1191 | Answer: | 1035 | Stop those "Can I ..." questions, the answer is always yes |
| 1036 | in Gnus Country :-). It's a three step process: First we | ||
| 1037 | make faces (specifications of how summary-line shall look | ||
| 1038 | like) for those postings, then we'll give them some | ||
| 1039 | special score and finally we'll tell Gnus to use the new | ||
| 1040 | faces. You can find detailed instructions on how to do it on | ||
| 1041 | @uref{http://my.gnus.org/node/view/224, my.gnus.org} | ||
| 1192 | 1042 | ||
| 1193 | You can control the windows configuration by calling the | 1043 | @node [4.12] |
| 1194 | function gnus-add-configuration. The syntax is a bit | 1044 | @subsubheading Question 4.12 |
| 1195 | complicated but explained very well in the manual node | ||
| 1196 | "Window Layout". Some popular examples: | ||
| 1197 | |||
| 1198 | 1045 | ||
| 1199 | Instead 25% summary 75% article buffer 35% summary and 65% | 1046 | The number of total messages in a group which Gnus |
| 1200 | article (the 1.0 for article means "take the remaining | 1047 | displays in group buffer is by far to high, especially in |
| 1201 | space"): | 1048 | mail groups. Is this a bug? |
| 1202 | 1049 | ||
| 1050 | @subsubheading Answer | ||
| 1051 | |||
| 1052 | No, that's a matter of design of Gnus, fixing this would | ||
| 1053 | mean reimplementation of major parts of Gnus' | ||
| 1054 | back ends. Gnus thinks "highest-article-number - | ||
| 1055 | lowest-article-number = total-number-of-articles". This | ||
| 1056 | works OK for Usenet groups, but if you delete and move | ||
| 1057 | many messages in mail groups, this fails. To cure the | ||
| 1058 | symptom, enter the group via @samp{C-u RET} | ||
| 1059 | (this makes Gnus get all messages), then | ||
| 1060 | hit @samp{M P b} to mark all messages and | ||
| 1061 | then say @samp{B m name.of.group} to move | ||
| 1062 | all messages to the group they have been in before, they | ||
| 1063 | get new message numbers in this process and the count is | ||
| 1064 | right again (until you delete and move your mail to other | ||
| 1065 | groups again). | ||
| 1066 | |||
| 1067 | @node [4.13] | ||
| 1068 | @subsubheading Question 4.13 | ||
| 1069 | |||
| 1070 | I don't like the layout of summary and article buffer, how | ||
| 1071 | to change it? Perhaps even a three pane display? | ||
| 1072 | |||
| 1073 | @subsubheading Answer | ||
| 1074 | |||
| 1075 | You can control the windows configuration by calling the | ||
| 1076 | function gnus-add-configuration. The syntax is a bit | ||
| 1077 | complicated but explained very well in the manual node | ||
| 1078 | "Window Layout". Some popular examples: | ||
| 1079 | |||
| 1080 | Instead 25% summary 75% article buffer 35% summary and 65% | ||
| 1081 | article (the 1.0 for article means "take the remaining | ||
| 1082 | space"): | ||
| 1203 | 1083 | ||
| 1204 | @example | 1084 | @example |
| 1205 | (gnus-add-configuration | 1085 | (gnus-add-configuration |
| 1206 | '(article (vertical 1.0 | 1086 | '(article (vertical 1.0 (summary .35 point) (article 1.0)))) |
| 1207 | (summary .35 point) | ||
| 1208 | (article 1.0)))) | ||
| 1209 | @end example | 1087 | @end example |
| 1210 | 1088 | @noindent | |
| 1211 | 1089 | ||
| 1212 | A three pane layout, Group buffer on the left, summary | 1090 | A three pane layout, Group buffer on the left, summary |
| 1213 | buffer top-right, article buffer bottom-right: | 1091 | buffer top-right, article buffer bottom-right: |
| 1214 | |||
| 1215 | 1092 | ||
| 1216 | @example | 1093 | @example |
| 1217 | (gnus-add-configuration | 1094 | (gnus-add-configuration |
| @@ -1228,46 +1105,40 @@ Answer: | |||
| 1228 | (vertical 25 | 1105 | (vertical 25 |
| 1229 | (group 1.0)) | 1106 | (group 1.0)) |
| 1230 | (vertical 1.0 | 1107 | (vertical 1.0 |
| 1231 | (summary 1.0 point))))) | 1108 | (summary 1.0 point))))) |
| 1232 | @end example | 1109 | @end example |
| 1233 | 1110 | @noindent | |
| 1234 | @ifnottex | ||
| 1235 | @node [4.14], [4.15], [4.13], FAQ 4 - Reading messages | ||
| 1236 | @end ifnottex | ||
| 1237 | @subsubheading Question 4.14: | ||
| 1238 | 1111 | ||
| 1239 | I don't like the way the Summary buffer looks, how to tweak it? | 1112 | @node [4.14] |
| 1240 | 1113 | @subsubheading Question 4.14 | |
| 1241 | 1114 | ||
| 1242 | Answer: | 1115 | I don't like the way the Summary buffer looks, how to tweak it? |
| 1243 | |||
| 1244 | You've got to play around with the variable | ||
| 1245 | gnus-summary-line-format. It's value is a string of | ||
| 1246 | symbols which stand for things like author, date, subject | ||
| 1247 | etc. A list of the available specifiers can be found in the | ||
| 1248 | manual node "Summary Buffer Lines" and the often forgotten | ||
| 1249 | node "Formatting Variables" and it's sub-nodes. There | ||
| 1250 | you'll find useful things like positioning the cursor and | ||
| 1251 | tabulators which allow you a summary in table form, but | ||
| 1252 | sadly hard tabulators are broken in 5.8.8. | ||
| 1253 | |||
| 1254 | 1116 | ||
| 1255 | Since 5.10, Gnus offers you some very nice new specifiers, | 1117 | @subsubheading Answer |
| 1256 | e.g. %B which draws a thread-tree and %&user-date which | 1118 | |
| 1257 | gives you a date where the details are dependent of the | 1119 | You've got to play around with the variable |
| 1258 | articles age. Here's an example which uses both: | 1120 | gnus-summary-line-format. It's value is a string of |
| 1259 | 1121 | symbols which stand for things like author, date, subject | |
| 1122 | etc. A list of the available specifiers can be found in the | ||
| 1123 | manual node "Summary Buffer Lines" and the often forgotten | ||
| 1124 | node "Formatting Variables" and it's sub-nodes. There | ||
| 1125 | you'll find useful things like positioning the cursor and | ||
| 1126 | tabulators which allow you a summary in table form, but | ||
| 1127 | sadly hard tabulators are broken in 5.8.8. | ||
| 1128 | |||
| 1129 | Since 5.10, Gnus offers you some very nice new specifiers, | ||
| 1130 | e.g. %B which draws a thread-tree and %&user-date which | ||
| 1131 | gives you a date where the details are dependent of the | ||
| 1132 | articles age. Here's an example which uses both: | ||
| 1260 | 1133 | ||
| 1261 | @example | 1134 | @example |
| 1262 | (setq gnus-summary-line-format | 1135 | (setq gnus-summary-line-format ":%U%R %B %s %-60=|%4L |%-20,20f |%&user-date; \n") |
| 1263 | ":%U%R %B %s %-60=|%4L |%-20,20f |%&user-date; \n") | ||
| 1264 | @end example | 1136 | @end example |
| 1265 | |||
| 1266 | @noindent | 1137 | @noindent |
| 1267 | resulting in: | ||
| 1268 | |||
| 1269 | 1138 | ||
| 1270 | @smallexample | 1139 | resulting in: |
| 1140 | |||
| 1141 | @example | ||
| 1271 | :O Re: [Richard Stallman] rfc2047.el | 13 |Lars Magne Ingebrigt |Sat 23:06 | 1142 | :O Re: [Richard Stallman] rfc2047.el | 13 |Lars Magne Ingebrigt |Sat 23:06 |
| 1272 | :O Re: Revival of the ding-patches list | 13 |Lars Magne Ingebrigt |Sat 23:12 | 1143 | :O Re: Revival of the ding-patches list | 13 |Lars Magne Ingebrigt |Sat 23:12 |
| 1273 | :R > Re: Find correct list of articles for a gro| 25 |Lars Magne Ingebrigt |Sat 23:16 | 1144 | :R > Re: Find correct list of articles for a gro| 25 |Lars Magne Ingebrigt |Sat 23:16 |
| @@ -1280,54 +1151,48 @@ Answer: | |||
| 1280 | :R > Re: Gnus still doesn't count messages prope| 23 |Lars Magne Ingebrigt |Sat 23:57 | 1151 | :R > Re: Gnus still doesn't count messages prope| 23 |Lars Magne Ingebrigt |Sat 23:57 |
| 1281 | :O \-> ... | 18 |Kai Grossjohann | 0:35 | 1152 | :O \-> ... | 18 |Kai Grossjohann | 0:35 |
| 1282 | :O \-> ... | 13 |Lars Magne Ingebrigt | 0:56 | 1153 | :O \-> ... | 13 |Lars Magne Ingebrigt | 0:56 |
| 1283 | @end smallexample | 1154 | @end example |
| 1284 | 1155 | @noindent | |
| 1285 | @ifnottex | ||
| 1286 | @node [4.15], , [4.14], FAQ 4 - Reading messages | ||
| 1287 | @end ifnottex | ||
| 1288 | @subsubheading Question 4.15: | ||
| 1289 | 1156 | ||
| 1290 | How to split incoming mails in several groups? | 1157 | @node [4.15] |
| 1291 | 1158 | @subsubheading Question 4.15 | |
| 1292 | 1159 | ||
| 1293 | Answer: | 1160 | How to split incoming mails in several groups? |
| 1294 | 1161 | ||
| 1295 | Gnus offers two possibilities for splitting mail, the easy | 1162 | @subsubheading Answer |
| 1296 | nnmail-split-methods and the more powerful Fancy Mail | ||
| 1297 | Splitting. I'll only talk about the first one, refer to | ||
| 1298 | the manual, node "Fancy Mail Splitting" for the latter. | ||
| 1299 | |||
| 1300 | 1163 | ||
| 1301 | The value of nnmail-split-methods is a list, each element | 1164 | Gnus offers two possibilities for splitting mail, the easy |
| 1302 | is a list which stands for a splitting rule. Each rule has | 1165 | nnmail-split-methods and the more powerful Fancy Mail |
| 1303 | the form "group where matching articles should go to", | 1166 | Splitting. I'll only talk about the first one, refer to |
| 1304 | "regular expression which has to be matched", the first | 1167 | the manual, node "Fancy Mail Splitting" for the latter. |
| 1305 | rule which matches wins. The last rule must always be a | 1168 | |
| 1306 | general rule (regular expression .*) which denotes where | 1169 | The value of nnmail-split-methods is a list, each element |
| 1307 | articles should go which don't match any other rule. If | 1170 | is a list which stands for a splitting rule. Each rule has |
| 1308 | the folder doesn't exist yet, it will be created as soon | 1171 | the form "group where matching articles should go to", |
| 1309 | as an article lands there. By default the mail will be | 1172 | "regular expression which has to be matched", the first |
| 1310 | send to all groups whose rules match. If you | 1173 | rule which matches wins. The last rule must always be a |
| 1311 | don't want that (you probably don't want), say | 1174 | general rule (regular expression .*) which denotes where |
| 1312 | 1175 | articles should go which don't match any other rule. If | |
| 1176 | the folder doesn't exist yet, it will be created as soon | ||
| 1177 | as an article lands there. By default the mail will be | ||
| 1178 | send to all groups whose rules match. If you | ||
| 1179 | don't want that (you probably don't want), say | ||
| 1313 | 1180 | ||
| 1314 | @example | 1181 | @example |
| 1315 | (setq nnmail-crosspost nil) | 1182 | (setq nnmail-crosspost nil) |
| 1316 | @end example | 1183 | @end example |
| 1317 | |||
| 1318 | @noindent | 1184 | @noindent |
| 1319 | in ~/.gnus. | ||
| 1320 | |||
| 1321 | 1185 | ||
| 1322 | An example might be better than thousand words, so here's | 1186 | in ~/.gnus.el. |
| 1323 | my nnmail-split-methods. Note that I send duplicates in a | 1187 | |
| 1324 | special group and that the default group is spam, since I | 1188 | An example might be better than thousand words, so here's |
| 1325 | filter all mails out which are from some list I'm | 1189 | my nnmail-split-methods. Note that I send duplicates in a |
| 1326 | subscribed to or which are addressed directly to me | 1190 | special group and that the default group is spam, since I |
| 1327 | before. Those rules kill about 80% of the Spam which | 1191 | filter all mails out which are from some list I'm |
| 1328 | reaches me (Email addresses are changed to prevent spammers | 1192 | subscribed to or which are addressed directly to me |
| 1329 | from using them): | 1193 | before. Those rules kill about 80% of the Spam which |
| 1330 | 1194 | reaches me (Email addresses are changed to prevent spammers | |
| 1195 | from using them): | ||
| 1331 | 1196 | ||
| 1332 | @example | 1197 | @example |
| 1333 | (setq nnmail-split-methods | 1198 | (setq nnmail-split-methods |
| @@ -1336,133 +1201,114 @@ Answer: | |||
| 1336 | ("Gnus-Tut" "^\\(To:\\|CC:\\).*localpart@@socha.bla.*") | 1201 | ("Gnus-Tut" "^\\(To:\\|CC:\\).*localpart@@socha.bla.*") |
| 1337 | ("tcsh" "^\\(To:\\|CC:\\).*localpart@@mx.gw.bla.*") | 1202 | ("tcsh" "^\\(To:\\|CC:\\).*localpart@@mx.gw.bla.*") |
| 1338 | ("BAfH" "^\\(To:\\|CC:\\).*localpart@@.*uni-muenchen.bla.*") | 1203 | ("BAfH" "^\\(To:\\|CC:\\).*localpart@@.*uni-muenchen.bla.*") |
| 1339 | ("Hamster-src" | 1204 | ("Hamster-src" "^\\(CC:\\|To:\\).*hamster-sourcen@@yahoogroups.\\(de\\|com\\).*") |
| 1340 | "^\\(CC:\\|To:\\).*hamster-sourcen@@yahoogroups.\\(de\\|com\\).*") | ||
| 1341 | ("Tagesschau" "^From: tagesschau <localpart@@www.tagesschau.bla>$") | 1205 | ("Tagesschau" "^From: tagesschau <localpart@@www.tagesschau.bla>$") |
| 1342 | ("Replies" "^\\(CC:\\|To:\\).*localpart@@Frank-Schmitt.bla.*") | 1206 | ("Replies" "^\\(CC:\\|To:\\).*localpart@@Frank-Schmitt.bla.*") |
| 1343 | ("EK" | 1207 | ("EK" "^From:.*\\(localpart@@privateprovider.bla\\|localpart@@workplace.bla\\).*") |
| 1344 | "^From:.*\\(localpart@@privateprovider.bla\\|localpart@@workplace.bla\\).*") | 1208 | ("Spam" "^Content-Type:.*\\(ks_c_5601-1987\\|EUC-KR\\|big5\\|iso-2022-jp\\).*") |
| 1345 | ("Spam" | 1209 | ("Spam" "^Subject:.*\\(This really work\\|XINGA\\|ADV:\\|XXX\\|adult\\|sex\\).*") |
| 1346 | "^Content-Type:.*\\(ks_c_5601-1987\\|EUC-KR\\|big5\\|iso-2022-jp\\).*") | 1210 | ("Spam" "^Subject:.*\\(\=\?ks_c_5601-1987\?\\|\=\?euc-kr\?\\|\=\?big5\?\\).*") |
| 1347 | ("Spam" | ||
| 1348 | "^Subject:.*\\(This really work\\|XINGA\\|ADV:\\|XXX\\|adult\\|sex\\).*") | ||
| 1349 | ("Spam" | ||
| 1350 | "^Subject:.*\\(\=\?ks_c_5601-1987\?\\|\=\?euc-kr\?\\|\=\?big5\?\\).*") | ||
| 1351 | ("Spam" "^X-Mailer:\\(.*BulkMailer.*\\|.*MIME::Lite.*\\|\\)") | 1211 | ("Spam" "^X-Mailer:\\(.*BulkMailer.*\\|.*MIME::Lite.*\\|\\)") |
| 1352 | ("Spam" | 1212 | ("Spam" "^X-Mailer:\\(.*CyberCreek Avalanche\\|.*http\:\/\/GetResponse\.com\\)") |
| 1353 | "^X-Mailer:\\(.*CyberCreek Avalanche\\|.*http\:\/\/GetResponse\.com\\)") | 1213 | ("Spam" "^From:.*\\(verizon\.net\\|prontomail\.com\\|money\\|ConsumerDirect\\).*") |
| 1354 | ("Spam" | ||
| 1355 | "^From:.*\\(verizon\.net\\|prontomail\.com\\|money\\|ConsumerDirect\\).*") | ||
| 1356 | ("Spam" "^Delivered-To: GMX delivery to spamtrap@@gmx.bla$") | 1214 | ("Spam" "^Delivered-To: GMX delivery to spamtrap@@gmx.bla$") |
| 1357 | ("Spam" "^Received: from link2buy.com") | 1215 | ("Spam" "^Received: from link2buy.com") |
| 1358 | ("Spam" "^CC: .*azzrael@@t-online.bla") | 1216 | ("Spam" "^CC: .*azzrael@@t-online.bla") |
| 1359 | ("Spam" "^X-Mailer-Version: 1.50 BETA") | 1217 | ("Spam" "^X-Mailer-Version: 1.50 BETA") |
| 1360 | ("Uni" "^\\(CC:\\|To:\\).*localpart@@uni-koblenz.bla.*") | 1218 | ("Uni" "^\\(CC:\\|To:\\).*localpart@@uni-koblenz.bla.*") |
| 1361 | ("Inbox" | 1219 | ("Inbox" "^\\(CC:\\|To:\\).*\\(my\ name\\|address@@one.bla\\|adress@@two.bla\\)") |
| 1362 | "^\\(CC:\\|To:\\).*\\(my\ name\\|address@@one.bla\\|adress@@two.bla\\)") | ||
| 1363 | ("Spam" ""))) | 1220 | ("Spam" ""))) |
| 1364 | @end example | 1221 | @end example |
| 1365 | 1222 | @noindent | |
| 1366 | 1223 | ||
| 1367 | @ifnottex | 1224 | @node FAQ 5 - Composing messages |
| 1368 | @node FAQ 5 - Composing messages, FAQ 6 - Old messages, FAQ 4 - Reading messages, Frequently Asked Questions | ||
| 1369 | @end ifnottex | ||
| 1370 | @subsection Composing messages | 1225 | @subsection Composing messages |
| 1371 | 1226 | ||
| 1372 | @menu | 1227 | @menu |
| 1373 | * [5.1]:: What are the basic commands I need to know for sending mail and | 1228 | * [5.1]:: What are the basic commands I need to know for sending |
| 1374 | postings? | 1229 | mail and postings? |
| 1375 | * [5.2]:: How to enable automatic word-wrap when composing messages? | 1230 | * [5.2]:: How to enable automatic word-wrap when composing messages? |
| 1376 | * [5.3]:: How to set stuff like From, Organization, Reply-To, signature...? | 1231 | * [5.3]:: How to set stuff like From, Organization, Reply-To, |
| 1377 | * [5.4]:: Can I set things like From, Signature etc group based on the | 1232 | signature...? |
| 1378 | group I post too? | 1233 | * [5.4]:: Can I set things like From, Signature etc group based on |
| 1379 | * [5.5]:: Is there a spell-checker? Perhaps even on-the-fly spell-checking? | 1234 | the group I post too? |
| 1380 | * [5.6]:: Can I set the dictionary based on the group I'm posting to? | 1235 | * [5.5]:: Is there a spell-checker? Perhaps even on-the-fly |
| 1381 | * [5.7]:: Is there some kind of address-book, so I needn't remember all | 1236 | spell-checking? |
| 1382 | those email addresses? | 1237 | * [5.6]:: Can I set the dictionary based on the group I'm posting |
| 1383 | * [5.8]:: Sometimes I see little images at the top of article buffer. | 1238 | to? |
| 1384 | What's that and how can I send one with my postings, too? | 1239 | * [5.7]:: Is there some kind of address-book, so I needn't remember |
| 1385 | * [5.9]:: Sometimes I accidentally hit r instead of f in newsgroups. | 1240 | all those email addresses? |
| 1386 | Can Gnus warn me, when I'm replying by mail in newsgroups? | 1241 | * [5.8]:: Sometimes I see little images at the top of article |
| 1387 | * [5.10]:: How to tell Gnus not to generate a sender header? | 1242 | buffer. What's that and how can I send one with my postings, too? |
| 1388 | * [5.11]:: I want Gnus to locally store copies of my send mail and news, | 1243 | * [5.9]:: Sometimes I accidentally hit r instead of f in newsgroups. |
| 1389 | how to do it? | 1244 | Can Gnus warn me, when I'm replying by mail in newsgroups? |
| 1390 | * [5.12]:: People tell me my Message-IDs are not correct, | 1245 | * [5.10]:: How to tell Gnus not to generate a sender header? |
| 1391 | why aren't they and how to fix it? | 1246 | * [5.11]:: I want Gnus to locally store copies of my send mail and |
| 1247 | news, how to do it? | ||
| 1248 | * [5.12]:: People tell me my Message-IDs are not correct, why aren't | ||
| 1249 | they and how to fix it? | ||
| 1392 | @end menu | 1250 | @end menu |
| 1393 | 1251 | ||
| 1394 | @ifnottex | 1252 | @node [5.1] |
| 1395 | @node [5.1], [5.2], FAQ 5 - Composing messages, FAQ 5 - Composing messages | 1253 | @subsubheading Question 5.1 |
| 1396 | @end ifnottex | ||
| 1397 | @subsubheading Question 5.1: | ||
| 1398 | 1254 | ||
| 1399 | What are the basic commands I need to know for sending mail and postings? | 1255 | What are the basic commands I need to know for sending mail and postings? |
| 1400 | |||
| 1401 | 1256 | ||
| 1402 | Answer: | 1257 | @subsubheading Answer |
| 1403 | |||
| 1404 | To start composing a new mail hit @samp{m} | ||
| 1405 | either in Group or Summary buffer, for a posting, it's | ||
| 1406 | either @samp{a} in Group buffer and | ||
| 1407 | filling the Newsgroups header manually | ||
| 1408 | or @samp{a} in the Summary buffer of the | ||
| 1409 | group where the posting shall be send to. Replying by mail | ||
| 1410 | is | ||
| 1411 | @samp{r} if you don't want to cite the | ||
| 1412 | author, or import the cited text manually and | ||
| 1413 | @samp{R} to cite the text of the original | ||
| 1414 | message. For a follow up to a newsgroup, it's | ||
| 1415 | @samp{f} and @samp{F} | ||
| 1416 | (analog to @samp{r} and | ||
| 1417 | @samp{R}). | ||
| 1418 | |||
| 1419 | 1258 | ||
| 1420 | Enter new headers above the line saying "--text follows | 1259 | To start composing a new mail hit @samp{m} |
| 1421 | this line--", enter the text below the line. When ready | 1260 | either in Group or Summary buffer, for a posting, it's |
| 1422 | hit @samp{C-c C-c}, to send the message, | 1261 | either @samp{a} in Group buffer and |
| 1423 | if you want to finish it later hit @samp{C-c | 1262 | filling the Newsgroups header manually |
| 1424 | C-d} to save it in the drafts group, where you | 1263 | or @samp{a} in the Summary buffer of the |
| 1425 | can start editing it again by saying @samp{D | 1264 | group where the posting shall be send to. Replying by mail |
| 1426 | e}. | 1265 | is |
| 1427 | 1266 | @samp{r} if you don't want to cite the | |
| 1428 | @ifnottex | 1267 | author, or import the cited text manually and |
| 1429 | @node [5.2], [5.3], [5.1], FAQ 5 - Composing messages | 1268 | @samp{R} to cite the text of the original |
| 1430 | @end ifnottex | 1269 | message. For a follow up to a newsgroup, it's |
| 1431 | @subsubheading Question 5.2: | 1270 | @samp{f} and @samp{F} |
| 1271 | (analogously to @samp{r} and | ||
| 1272 | @samp{R}). | ||
| 1432 | 1273 | ||
| 1433 | How to enable automatic word-wrap when composing messages? | 1274 | Enter new headers above the line saying "--text follows |
| 1434 | 1275 | this line--", enter the text below the line. When ready | |
| 1276 | hit @samp{C-c C-c}, to send the message, | ||
| 1277 | if you want to finish it later hit @samp{C-c | ||
| 1278 | C-d} to save it in the drafts group, where you | ||
| 1279 | can start editing it again by saying @samp{D | ||
| 1280 | e}. | ||
| 1435 | 1281 | ||
| 1436 | Answer: | 1282 | @node [5.2] |
| 1283 | @subsubheading Question 5.2 | ||
| 1437 | 1284 | ||
| 1438 | Say | 1285 | How to enable automatic word-wrap when composing messages? |
| 1439 | 1286 | ||
| 1287 | @subsubheading Answer | ||
| 1288 | |||
| 1289 | Say | ||
| 1440 | 1290 | ||
| 1441 | @example | 1291 | @example |
| 1442 | (add-hook 'message-mode-hook | 1292 | (add-hook 'message-mode-hook |
| 1443 | (lambda () | 1293 | (lambda () |
| 1444 | (setq fill-column 72) | 1294 | (setq fill-column 72) |
| 1445 | (turn-on-auto-fill))) | 1295 | (turn-on-auto-fill))) |
| 1446 | @end example | 1296 | @end example |
| 1447 | |||
| 1448 | @noindent | 1297 | @noindent |
| 1449 | in ~/.gnus. You can reformat a paragraph by hitting | ||
| 1450 | @samp{M-q} (as usual) | ||
| 1451 | |||
| 1452 | @ifnottex | ||
| 1453 | @node [5.3], [5.4], [5.2], FAQ 5 - Composing messages | ||
| 1454 | @end ifnottex | ||
| 1455 | @subsubheading Question 5.3: | ||
| 1456 | 1298 | ||
| 1457 | How to set stuff like From, Organization, Reply-To, signature...? | 1299 | in ~/.gnus.el. You can reformat a paragraph by hitting |
| 1458 | 1300 | @samp{M-q} (as usual) | |
| 1459 | 1301 | ||
| 1460 | Answer: | 1302 | @node [5.3] |
| 1303 | @subsubheading Question 5.3 | ||
| 1461 | 1304 | ||
| 1462 | There are other ways, but you should use posting styles | 1305 | How to set stuff like From, Organization, Reply-To, signature...? |
| 1463 | for this. (See below why). | 1306 | |
| 1464 | This example should make the syntax clear: | 1307 | @subsubheading Answer |
| 1465 | 1308 | ||
| 1309 | There are other ways, but you should use posting styles | ||
| 1310 | for this. (See below why). | ||
| 1311 | This example should make the syntax clear: | ||
| 1466 | 1312 | ||
| 1467 | @example | 1313 | @example |
| 1468 | (setq gnus-posting-styles | 1314 | (setq gnus-posting-styles |
| @@ -1474,146 +1320,121 @@ Answer: | |||
| 1474 | ("X-SampleHeader" "foobar") | 1320 | ("X-SampleHeader" "foobar") |
| 1475 | (eval (setq some-variable "Foo bar"))))) | 1321 | (eval (setq some-variable "Foo bar"))))) |
| 1476 | @end example | 1322 | @end example |
| 1477 | |||
| 1478 | @noindent | 1323 | @noindent |
| 1479 | The ".*" means that this settings are the default ones | ||
| 1480 | (see below), valid values for the first element of the | ||
| 1481 | following lists are signature, signature-file, | ||
| 1482 | organization, address, name or body. The attribute name | ||
| 1483 | can also be a string. In that case, this will be used as | ||
| 1484 | a header name, and the value will be inserted in the | ||
| 1485 | headers of the article; if the value is `nil', the header | ||
| 1486 | name will be removed. You can also say (eval (foo bar)), | ||
| 1487 | then the function foo will be evaluated with argument bar | ||
| 1488 | and the result will be thrown away. | ||
| 1489 | |||
| 1490 | @ifnottex | ||
| 1491 | @node [5.4], [5.5], [5.3], FAQ 5 - Composing messages | ||
| 1492 | @end ifnottex | ||
| 1493 | @subsubheading Question 5.4: | ||
| 1494 | |||
| 1495 | Can I set things like From, Signature etc group based on the group I post too? | ||
| 1496 | |||
| 1497 | 1324 | ||
| 1498 | Answer: | 1325 | The ".*" means that this settings are the default ones |
| 1499 | 1326 | (see below), valid values for the first element of the | |
| 1500 | That's the strength of posting styles. Before, we used ".*" | 1327 | following lists are signature, signature-file, |
| 1501 | to set the default for all groups. You can use a regexp | 1328 | organization, address, name or body. The attribute name |
| 1502 | like "^gmane" and the following settings are only applied | 1329 | can also be a string. In that case, this will be used as |
| 1503 | to postings you send to the gmane hierarchy, use | 1330 | a header name, and the value will be inserted in the |
| 1504 | ".*binaries" instead and they will be applied to postings | 1331 | headers of the article; if the value is `nil', the header |
| 1505 | send to groups containing the string binaries in their | 1332 | name will be removed. You can also say (eval (foo bar)), |
| 1506 | name etc. | 1333 | then the function foo will be evaluated with argument bar |
| 1507 | 1334 | and the result will be thrown away. | |
| 1508 | 1335 | ||
| 1509 | You can instead of specifying a regexp specify a function | 1336 | @node [5.4] |
| 1510 | which is evaluated, only if it returns true, the | 1337 | @subsubheading Question 5.4 |
| 1511 | corresponding settings take effect. Two interesting | 1338 | |
| 1512 | candidates for this are message-news-p which returns t if | 1339 | Can I set things like From, Signature etc group based on the group I post too? |
| 1513 | the current Group is a newsgroup and the corresponding | 1340 | |
| 1514 | message-mail-p. | 1341 | @subsubheading Answer |
| 1515 | 1342 | ||
| 1516 | 1343 | That's the strength of posting styles. Before, we used ".*" | |
| 1517 | Note that all forms that match are applied, that means in | 1344 | to set the default for all groups. You can use a regexp |
| 1518 | the example below, when I post to | 1345 | like "^gmane" and the following settings are only applied |
| 1519 | gmane.mail.spam.spamassassin.general, the settings under | 1346 | to postings you send to the gmane hierarchy, use |
| 1520 | ".*" are applied and the settings under message-news-p and | 1347 | ".*binaries" instead and they will be applied to postings |
| 1521 | those under "^gmane" and those under | 1348 | send to groups containing the string binaries in their |
| 1522 | "^gmane\\.mail\\.spam\\.spamassassin\\.general$". Because | 1349 | name etc. |
| 1523 | of this put general settings at the top and specific ones | 1350 | |
| 1524 | at the bottom. | 1351 | You can instead of specifying a regexp specify a function |
| 1525 | 1352 | which is evaluated, only if it returns true, the | |
| 1353 | corresponding settings take effect. Two interesting | ||
| 1354 | candidates for this are message-news-p which returns t if | ||
| 1355 | the current Group is a newsgroup and the corresponding | ||
| 1356 | message-mail-p. | ||
| 1357 | |||
| 1358 | Note that all forms that match are applied, that means in | ||
| 1359 | the example below, when I post to | ||
| 1360 | gmane.mail.spam.spamassassin.general, the settings under | ||
| 1361 | ".*" are applied and the settings under message-news-p and | ||
| 1362 | those under "^gmane" and those under | ||
| 1363 | "^gmane\\.mail\\.spam\\.spamassassin\\.general$". Because | ||
| 1364 | of this put general settings at the top and specific ones | ||
| 1365 | at the bottom. | ||
| 1526 | 1366 | ||
| 1527 | @example | 1367 | @example |
| 1528 | (setq gnus-posting-styles | 1368 | (setq gnus-posting-styles |
| 1529 | '((".*" ;;default | 1369 | '((".*" ;;default |
| 1530 | (name "Frank Schmitt") | 1370 | (name "Frank Schmitt") |
| 1531 | (organization "Hamme net, kren mer och nimmi") | 1371 | (organization "Hamme net, kren mer och nimmi") |
| 1532 | (signature-file "~/.signature")) | 1372 | (signature-file "~/.signature") ) |
| 1533 | ((message-news-p) ;;Usenet news? | 1373 | ((message-news-p) ;;Usenet news? |
| 1534 | (address "mySpamTrap@@Frank-Schmitt.bla") | 1374 | (address "mySpamTrap@@Frank-Schmitt.bla") |
| 1535 | ("Reply-To" "hereRealRepliesOnlyPlease@@Frank-Schmitt.bla")) | 1375 | ("Reply-To" "hereRealRepliesOnlyPlease@@Frank-Schmitt.bla") ) |
| 1536 | ((message-mail-p) ;;mail? | 1376 | ((message-mail-p) ;;mail? |
| 1537 | (address "usedForMails@@Frank-Schmitt.bla")) | 1377 | (address "usedForMails@@Frank-Schmitt.bla") ) |
| 1538 | ("^gmane" ;;this is mail, too in fact | 1378 | ("^gmane" ;;this is mail, too in fact |
| 1539 | (address "usedForMails@@Frank-Schmitt.net") | 1379 | (address "usedForMails@@Frank-Schmitt.net") |
| 1540 | ("Reply-To" nil)) | 1380 | ("Reply-To" nil) ) |
| 1541 | ("^gmane.mail.spam.spamassassin.general$" | 1381 | ("^gmane.mail.spam.spamassassin.general$" |
| 1542 | (eval (setq mail-envelope-from "Azzrael@@rz-online.de")) | 1382 | (eval (setq mail-envelope-from "Azzrael@@rz-online.de")) |
| 1543 | (address "Azzrael@@rz-online.de")))) | 1383 | (address "Azzrael@@rz-online.de")) )) |
| 1544 | @end example | 1384 | @end example |
| 1545 | 1385 | @noindent | |
| 1546 | @ifnottex | ||
| 1547 | @node [5.5], [5.6], [5.4], FAQ 5 - Composing messages | ||
| 1548 | @end ifnottex | ||
| 1549 | @subsubheading Question 5.5: | ||
| 1550 | 1386 | ||
| 1551 | Is there a spell-checker? Perhaps even on-the-fly spell-checking? | 1387 | @node [5.5] |
| 1552 | 1388 | @subsubheading Question 5.5 | |
| 1553 | 1389 | ||
| 1554 | Answer: | 1390 | Is there a spell-checker? Perhaps even on-the-fly spell-checking? |
| 1555 | 1391 | ||
| 1556 | You can use ispell.el to spell-check stuff in Emacs. So the first | 1392 | @subsubheading Answer |
| 1557 | thing to do is to make sure that you've got either | ||
| 1558 | @itemize @bullet | ||
| 1559 | @item | ||
| 1560 | @uref{http://fmg-www.cs.ucla.edu/fmg-members/geoff/ispell.html,ispell} | ||
| 1561 | or | ||
| 1562 | @item | ||
| 1563 | @uref{http://aspell.sourceforge.net/,aspell} | ||
| 1564 | @end itemize | ||
| 1565 | @noindent | ||
| 1566 | installed and in your Path. | ||
| 1567 | |||
| 1568 | Then you need | ||
| 1569 | @uref{http://www.kdstevens.com/~stevens/ispell-page.html,ispell.el,ispell.el} | ||
| 1570 | and for on-the-fly spell-checking | ||
| 1571 | @uref{http://www-sop.inria.fr/mimosa/personnel/Manuel.Serrano/flyspell/flyspell.html,flyspell.el,flyspell.el}. | ||
| 1572 | Ispell.el is shipped with Gnus Emacs and available through the Emacs | ||
| 1573 | package system, flyspell.el is shipped with Emacs and part of XEmacs | ||
| 1574 | text-modes package which is available through the package system, so | ||
| 1575 | there should be no need to install them manually. | ||
| 1576 | |||
| 1577 | 1393 | ||
| 1578 | Ispell.el assumes you use ispell, if you choose aspell say | 1394 | You can use ispell.el to spell-check stuff in Emacs. So the |
| 1579 | 1395 | first thing to do is to make sure that you've got either | |
| 1396 | @uref{http://fmg-www.cs.ucla.edu/fmg-members/geoff/ispell.html, ispell} | ||
| 1397 | or @uref{http://aspell.sourceforge.net/, aspell} | ||
| 1398 | installed and in your Path. Then you need | ||
| 1399 | @uref{http://www.kdstevens.com/~stevens/ispell-page.html, ispell.el} | ||
| 1400 | and for on-the-fly spell-checking | ||
| 1401 | @uref{http://www-sop.inria.fr/mimosa/personnel/Manuel.Serrano/flyspell/flyspell.html, flyspell.el}. | ||
| 1402 | Ispell.el is shipped with Emacs and available through the XEmacs package system, | ||
| 1403 | flyspell.el is shipped with Emacs and part of XEmacs text-modes package which is | ||
| 1404 | available through the package system, so there should be no need to install them | ||
| 1405 | manually. | ||
| 1406 | |||
| 1407 | Ispell.el assumes you use ispell, if you choose aspell say | ||
| 1580 | 1408 | ||
| 1581 | @example | 1409 | @example |
| 1582 | (setq ispell-program-name "aspell") | 1410 | (setq ispell-program-name "aspell") |
| 1583 | @end example | 1411 | @end example |
| 1584 | |||
| 1585 | |||
| 1586 | @noindent | 1412 | @noindent |
| 1587 | in your Emacs configuration file. | ||
| 1588 | 1413 | ||
| 1414 | in your Emacs configuration file. | ||
| 1589 | 1415 | ||
| 1590 | If you want your outgoing messages to be spell-checked, say | 1416 | If you want your outgoing messages to be spell-checked, say |
| 1591 | |||
| 1592 | 1417 | ||
| 1593 | @example | 1418 | @example |
| 1594 | (add-hook 'message-send-hook 'ispell-message) | 1419 | (add-hook 'message-send-hook 'ispell-message) |
| 1595 | @end example | 1420 | @end example |
| 1596 | |||
| 1597 | @noindent | 1421 | @noindent |
| 1598 | In your ~/.gnus, if you prefer on-the-fly spell-checking say | 1422 | |
| 1599 | 1423 | In your ~/.gnus.el, if you prefer on-the-fly spell-checking say | |
| 1600 | 1424 | ||
| 1601 | @example | 1425 | @example |
| 1602 | (add-hook 'message-mode-hook (lambda () (flyspell-mode 1))) | 1426 | (add-hook 'message-mode-hook (lambda () (flyspell-mode 1))) |
| 1603 | @end example | 1427 | @end example |
| 1604 | 1428 | @noindent | |
| 1605 | @ifnottex | ||
| 1606 | @node [5.6], [5.7], [5.5], FAQ 5 - Composing messages | ||
| 1607 | @end ifnottex | ||
| 1608 | @subsubheading Question 5.6: | ||
| 1609 | 1429 | ||
| 1610 | Can I set the dictionary based on the group I'm posting to? | 1430 | @node [5.6] |
| 1611 | 1431 | @subsubheading Question 5.6 | |
| 1612 | 1432 | ||
| 1613 | Answer: | 1433 | Can I set the dictionary based on the group I'm posting to? |
| 1614 | 1434 | ||
| 1615 | Yes, say something like | 1435 | @subsubheading Answer |
| 1616 | 1436 | ||
| 1437 | Yes, say something like | ||
| 1617 | 1438 | ||
| 1618 | @example | 1439 | @example |
| 1619 | (add-hook 'gnus-select-group-hook | 1440 | (add-hook 'gnus-select-group-hook |
| @@ -1625,55 +1446,47 @@ Answer: | |||
| 1625 | (t | 1446 | (t |
| 1626 | (ispell-change-dictionary "english"))))) | 1447 | (ispell-change-dictionary "english"))))) |
| 1627 | @end example | 1448 | @end example |
| 1628 | |||
| 1629 | |||
| 1630 | @noindent | 1449 | @noindent |
| 1631 | in ~/.gnus. Change "^de\\." and "deutsch8" to something | ||
| 1632 | that suits your needs. | ||
| 1633 | 1450 | ||
| 1634 | @ifnottex | 1451 | in ~/.gnus.el. Change "^de\\." and "deutsch8" to something |
| 1635 | @node [5.7], [5.8], [5.6], FAQ 5 - Composing messages | 1452 | that suits your needs. |
| 1636 | @end ifnottex | ||
| 1637 | @subsubheading Question 5.7: | ||
| 1638 | 1453 | ||
| 1639 | Is there some kind of address-book, so I needn't remember | 1454 | @node [5.7] |
| 1640 | all those email addresses? | 1455 | @subsubheading Question 5.7 |
| 1641 | |||
| 1642 | 1456 | ||
| 1643 | Answer: | 1457 | Is there some kind of address-book, so I needn't remember |
| 1458 | all those email addresses? | ||
| 1644 | 1459 | ||
| 1645 | There's an very basic solution for this, mail aliases. | 1460 | @subsubheading Answer |
| 1646 | You can store your mail addresses in a ~/.mailrc file using a simple | 1461 | |
| 1647 | alias syntax: | 1462 | There's an very basic solution for this, mail aliases. |
| 1648 | 1463 | You can store your mail addresses in a ~/.mailrc file using a simple | |
| 1464 | alias syntax: | ||
| 1649 | 1465 | ||
| 1650 | @example | 1466 | @example |
| 1651 | alias al "Al <al@@english-heritage.bla>" | 1467 | alias al "Al <al@@english-heritage.bla>" |
| 1652 | @end example | 1468 | @end example |
| 1653 | |||
| 1654 | @noindent | 1469 | @noindent |
| 1655 | Then typing your alias (followed by a space or punctuation | ||
| 1656 | character) on a To: or Cc: line in the message buffer will | ||
| 1657 | cause Gnus to insert the full address for you. See the | ||
| 1658 | node "Mail Aliases" in Message (not Gnus) manual for | ||
| 1659 | details. | ||
| 1660 | |||
| 1661 | 1470 | ||
| 1662 | However, what you really want is the Insidious Big Brother | 1471 | Then typing your alias (followed by a space or punctuation |
| 1663 | Database bbdb. Get it through the XEmacs package system or from | 1472 | character) on a To: or Cc: line in the message buffer will |
| 1664 | @uref{http://bbdb.sourceforge.net/,bbdb's homepage}. | 1473 | cause Gnus to insert the full address for you. See the |
| 1665 | Now place the following in ~/.gnus, to activate bbdb for Gnus: | 1474 | node "Mail Aliases" in Message (not Gnus) manual for |
| 1666 | 1475 | details. | |
| 1476 | |||
| 1477 | However, what you really want is the Insidious Big Brother | ||
| 1478 | Database bbdb. Get it through the XEmacs package system or from | ||
| 1479 | @uref{http://bbdb.sourceforge.net/, bbdb's homepage}. | ||
| 1480 | Now place the following in ~/.gnus.el, to activate bbdb for Gnus: | ||
| 1667 | 1481 | ||
| 1668 | @example | 1482 | @example |
| 1669 | (require 'bbdb) | 1483 | (require 'bbdb) |
| 1670 | (bbdb-initialize 'gnus 'message) | 1484 | (bbdb-initialize 'gnus 'message) |
| 1671 | @end example | 1485 | @end example |
| 1672 | |||
| 1673 | @noindent | 1486 | @noindent |
| 1674 | Now you probably want some general bbdb configuration, | 1487 | |
| 1675 | place them in ~/.emacs: | 1488 | Now you probably want some general bbdb configuration, |
| 1676 | 1489 | place them in ~/.emacs: | |
| 1677 | 1490 | ||
| 1678 | @example | 1491 | @example |
| 1679 | (require 'bbdb) | 1492 | (require 'bbdb) |
| @@ -1689,56 +1502,50 @@ alias al "Al <al@@english-heritage.bla>" | |||
| 1689 | ;;No popup-buffers | 1502 | ;;No popup-buffers |
| 1690 | (setq bbdb-use-pop-up nil) | 1503 | (setq bbdb-use-pop-up nil) |
| 1691 | @end example | 1504 | @end example |
| 1692 | |||
| 1693 | @noindent | 1505 | @noindent |
| 1694 | Now you should be ready to go. Say @samp{M-x bbdb RET | ||
| 1695 | RET} to open a bbdb buffer showing all | ||
| 1696 | entries. Say @samp{c} to create a new | ||
| 1697 | entry, @samp{b} to search your BBDB and | ||
| 1698 | @samp{C-o} to add a new field to an | ||
| 1699 | entry. If you want to add a sender to the BBDB you can | ||
| 1700 | also just hit `:' on the posting in the summary buffer and | ||
| 1701 | you are done. When you now compose a new mail, | ||
| 1702 | hit @samp{TAB} to cycle through know | ||
| 1703 | recipients. | ||
| 1704 | |||
| 1705 | @ifnottex | ||
| 1706 | @node [5.8], [5.9], [5.7], FAQ 5 - Composing messages | ||
| 1707 | @end ifnottex | ||
| 1708 | @subsubheading Question 5.8: | ||
| 1709 | |||
| 1710 | Sometimes I see little images at the top of article | ||
| 1711 | buffer. What's that and how can I send one with my | ||
| 1712 | postings, too? | ||
| 1713 | |||
| 1714 | 1506 | ||
| 1715 | Answer: | 1507 | Now you should be ready to go. Say @samp{M-x bbdb RET |
| 1716 | 1508 | RET} to open a bbdb buffer showing all | |
| 1717 | Those images are called X-Faces. They are 48*48 pixel b/w | 1509 | entries. Say @samp{c} to create a new |
| 1718 | pictures, encoded in a header line. If you want to include | 1510 | entry, @samp{b} to search your BBDB and |
| 1719 | one in your posts, you've got to convert some image to a | 1511 | @samp{C-o} to add a new field to an |
| 1720 | X-Face. So fire up some image manipulation program (say | 1512 | entry. If you want to add a sender to the BBDB you can |
| 1721 | Gimp), open the image you want to include, cut out the | 1513 | also just hit `:' on the posting in the summary buffer and |
| 1722 | relevant part, reduce color depth to 1 bit, resize to | 1514 | you are done. When you now compose a new mail, |
| 1723 | 48*48 and save as bitmap. Now you should get the compface | 1515 | hit @samp{TAB} to cycle through know |
| 1724 | package from | 1516 | recipients. |
| 1725 | @uref{ftp://ftp.cs.indiana.edu:/pub/faces/,this site}. | 1517 | |
| 1726 | and create the actual X-face by saying | 1518 | @node [5.8] |
| 1727 | 1519 | @subsubheading Question 5.8 | |
| 1520 | |||
| 1521 | Sometimes I see little images at the top of article | ||
| 1522 | buffer. What's that and how can I send one with my | ||
| 1523 | postings, too? | ||
| 1524 | |||
| 1525 | @subsubheading Answer | ||
| 1526 | |||
| 1527 | Those images are called X-Faces. They are 48*48 pixel b/w | ||
| 1528 | pictures, encoded in a header line. If you want to include | ||
| 1529 | one in your posts, you've got to convert some image to a | ||
| 1530 | X-Face. So fire up some image manipulation program (say | ||
| 1531 | Gimp), open the image you want to include, cut out the | ||
| 1532 | relevant part, reduce color depth to 1 bit, resize to | ||
| 1533 | 48*48 and save as bitmap. Now you should get the compface | ||
| 1534 | package from | ||
| 1535 | @uref{ftp://ftp.cs.indiana.edu:/pub/faces/, this site}. | ||
| 1536 | and create the actual X-face by saying | ||
| 1728 | 1537 | ||
| 1729 | @example | 1538 | @example |
| 1730 | cat file.xbm | xbm2ikon |compface > file.face | 1539 | cat file.xbm | xbm2ikon | compface > file.face |
| 1731 | cat ./file.face | sed 's/\\/\\\\/g' | sed 's/\"/\\\"/g' > ./file.face.quoted | 1540 | cat file.face | sed 's/\\/\\\\/g;s/\"/\\\"/g;' > file.face.quoted |
| 1732 | @end example | 1541 | @end example |
| 1733 | |||
| 1734 | @noindent | 1542 | @noindent |
| 1735 | If you can't use compface, there's an online X-face converter at@* | ||
| 1736 | @uref{http://www.dairiki.org/xface/}. If you use MS Windows, you | ||
| 1737 | could also use the WinFace program from | ||
| 1738 | @uref{http://www.xs4all.nl/~walterln/winface/}. | ||
| 1739 | 1543 | ||
| 1740 | Now you only have to tell Gnus to include the X-face in your postings | 1544 | If you can't use compface, there's an online X-face converter at |
| 1741 | by saying | 1545 | @uref{http://www.dairiki.org/xface/}. |
| 1546 | If you use MS Windows, you could also use the WinFace program from | ||
| 1547 | @uref{http://www.xs4all.nl/~walterln/winface/}. | ||
| 1548 | Now you only have to tell Gnus to include the X-face in your postings by saying | ||
| 1742 | 1549 | ||
| 1743 | @example | 1550 | @example |
| 1744 | (setq message-default-headers | 1551 | (setq message-default-headers |
| @@ -1747,33 +1554,28 @@ by saying | |||
| 1747 | (insert-file-contents "~/.xemacs/xface") | 1554 | (insert-file-contents "~/.xemacs/xface") |
| 1748 | (buffer-string))) | 1555 | (buffer-string))) |
| 1749 | @end example | 1556 | @end example |
| 1750 | |||
| 1751 | @noindent | 1557 | @noindent |
| 1752 | in ~/.gnus. | ||
| 1753 | |||
| 1754 | @ifnottex | ||
| 1755 | @node [5.9], [5.10], [5.8], FAQ 5 - Composing messages | ||
| 1756 | @end ifnottex | ||
| 1757 | @subsubheading Question 5.9: | ||
| 1758 | |||
| 1759 | Sometimes I accidentally hit r instead of f in | ||
| 1760 | newsgroups. Can Gnus warn me, when I'm replying by mail in | ||
| 1761 | newsgroups? | ||
| 1762 | |||
| 1763 | 1558 | ||
| 1764 | Answer: | 1559 | in ~/.gnus.el. |
| 1765 | 1560 | ||
| 1766 | Put this in ~/.gnus: | 1561 | @node [5.9] |
| 1767 | 1562 | @subsubheading Question 5.9 | |
| 1563 | |||
| 1564 | Sometimes I accidentally hit r instead of f in | ||
| 1565 | newsgroups. Can Gnus warn me, when I'm replying by mail in | ||
| 1566 | newsgroups? | ||
| 1567 | |||
| 1568 | @subsubheading Answer | ||
| 1569 | |||
| 1570 | Put this in ~/.gnus.el: | ||
| 1768 | 1571 | ||
| 1769 | @example | 1572 | @example |
| 1770 | (setq gnus-confirm-mail-reply-to-news t) | 1573 | (setq gnus-confirm-mail-reply-to-news t) |
| 1771 | @end example | 1574 | @end example |
| 1772 | |||
| 1773 | @noindent | 1575 | @noindent |
| 1774 | if you already use Gnus 5.10, if you still use 5.8.8 or | 1576 | |
| 1775 | 5.9 try this instead: | 1577 | if you already use Gnus 5.10, if you still use 5.8.8 or |
| 1776 | 1578 | 5.9 try this instead: | |
| 1777 | 1579 | ||
| 1778 | @example | 1580 | @example |
| 1779 | (eval-after-load "gnus-msg" | 1581 | (eval-after-load "gnus-msg" |
| @@ -1785,44 +1587,37 @@ Answer: | |||
| 1785 | (y-or-n-p "Really reply by mail to article author? ")) | 1587 | (y-or-n-p "Really reply by mail to article author? ")) |
| 1786 | ad-do-it)))) | 1588 | ad-do-it)))) |
| 1787 | @end example | 1589 | @end example |
| 1788 | 1590 | @noindent | |
| 1789 | @ifnottex | ||
| 1790 | @node [5.10], [5.11], [5.9], FAQ 5 - Composing messages | ||
| 1791 | @end ifnottex | ||
| 1792 | @subsubheading Question 5.10: | ||
| 1793 | 1591 | ||
| 1794 | How to tell Gnus not to generate a sender header? | 1592 | @node [5.10] |
| 1795 | 1593 | @subsubheading Question 5.10 | |
| 1796 | 1594 | ||
| 1797 | Answer: | 1595 | How to tell Gnus not to generate a sender header? |
| 1798 | 1596 | ||
| 1799 | Since 5.10 Gnus doesn't generate a sender header by | 1597 | @subsubheading Answer |
| 1800 | default. For older Gnus' try this in ~/.gnus: | 1598 | |
| 1801 | 1599 | Since 5.10 Gnus doesn't generate a sender header by | |
| 1600 | default. For older Gnus' try this in ~/.gnus.el: | ||
| 1802 | 1601 | ||
| 1803 | @example | 1602 | @example |
| 1804 | (eval-after-load "message" | 1603 | (eval-after-load "message" |
| 1805 | '(add-to-list 'message-syntax-checks '(sender . disabled))) | 1604 | '(add-to-list 'message-syntax-checks '(sender . disabled))) |
| 1806 | @end example | 1605 | @end example |
| 1807 | 1606 | @noindent | |
| 1808 | |||
| 1809 | @ifnottex | ||
| 1810 | @node [5.11], [5.12], [5.10], FAQ 5 - Composing messages | ||
| 1811 | @end ifnottex | ||
| 1812 | @subsubheading Question 5.11: | ||
| 1813 | 1607 | ||
| 1814 | I want gnus to locally store copies of my send mail and | 1608 | @node [5.11] |
| 1815 | news, how to do it? | 1609 | @subsubheading Question 5.11 |
| 1816 | |||
| 1817 | 1610 | ||
| 1818 | Answer: | 1611 | I want Gnus to locally store copies of my send mail and |
| 1612 | news, how to do it? | ||
| 1819 | 1613 | ||
| 1820 | You must set the variable gnus-message-archive-group to do | 1614 | @subsubheading Answer |
| 1821 | this. You can set it to a string giving the name of the | 1615 | |
| 1822 | group where the copies shall go or like in the example | 1616 | You must set the variable gnus-message-archive-group to do |
| 1823 | below use a function which is evaluated and which returns | 1617 | this. You can set it to a string giving the name of the |
| 1824 | the group to use. | 1618 | group where the copies shall go or like in the example |
| 1825 | 1619 | below use a function which is evaluated and which returns | |
| 1620 | the group to use. | ||
| 1826 | 1621 | ||
| 1827 | @example | 1622 | @example |
| 1828 | (setq gnus-message-archive-group | 1623 | (setq gnus-message-archive-group |
| @@ -1830,31 +1625,31 @@ Answer: | |||
| 1830 | "nnml:Send-News" | 1625 | "nnml:Send-News" |
| 1831 | "nnml:Send-Mail"))) | 1626 | "nnml:Send-Mail"))) |
| 1832 | @end example | 1627 | @end example |
| 1833 | 1628 | @noindent | |
| 1834 | |||
| 1835 | @ifnottex | ||
| 1836 | @node [5.12], , [5.11], FAQ 5 - Composing messages | ||
| 1837 | @end ifnottex | ||
| 1838 | @subsubheading Question 5.12: | ||
| 1839 | 1629 | ||
| 1840 | People tell me my Message-IDs are not correct, why | 1630 | @node [5.12] |
| 1841 | aren't they and how to fix it? | 1631 | @subsubheading Question 5.12 |
| 1842 | 1632 | ||
| 1633 | People tell me my Message-IDs are not correct, why | ||
| 1634 | aren't they and how to fix it? | ||
| 1843 | 1635 | ||
| 1844 | Answer: | 1636 | @subsubheading Answer |
| 1637 | |||
| 1638 | The message-ID is an unique identifier for messages you | ||
| 1639 | send. To make it unique, Gnus need to know which machine | ||
| 1640 | name to put after the "@@". If the name of the machine | ||
| 1641 | where Gnus is running isn't suitable (it probably isn't | ||
| 1642 | at most private machines) you can tell Gnus what to use | ||
| 1643 | by saying: | ||
| 1845 | 1644 | ||
| 1846 | The message-ID is an unique identifier for messages you | ||
| 1847 | send. To make it unique, Gnus need to know which machine | ||
| 1848 | name to put after the "@@". If the name of the machine | ||
| 1849 | where Gnus is running isn't suitable (it probably isn't | ||
| 1850 | at most private machines) you can tell Gnus what to use | ||
| 1851 | by saying | ||
| 1852 | @example | 1645 | @example |
| 1853 | (setq message-user-fqdn "yourmachine.yourdomain.tld") | 1646 | (setq message-user-fqdn "yourmachine.yourdomain.tld") |
| 1854 | @end example | 1647 | @end example |
| 1855 | @noindent | 1648 | @noindent |
| 1856 | in ~/.gnus. If you use Gnus 5.9 or ealier, you can use this | 1649 | |
| 1857 | instead (works for newer versions a well): | 1650 | in ~/.gnus.el. If you use Gnus 5.9 or ealier, you can use this |
| 1651 | instead (works for newer versions a well): | ||
| 1652 | |||
| 1858 | @example | 1653 | @example |
| 1859 | (eval-after-load "message" | 1654 | (eval-after-load "message" |
| 1860 | '(let ((fqdn "yourmachine.yourdomain.tld"));; <-- Edit this! | 1655 | '(let ((fqdn "yourmachine.yourdomain.tld"));; <-- Edit this! |
| @@ -1865,110 +1660,97 @@ instead (works for newer versions a well): | |||
| 1865 | "Return user's fully qualified domain name." | 1660 | "Return user's fully qualified domain name." |
| 1866 | fqdn)))) | 1661 | fqdn)))) |
| 1867 | @end example | 1662 | @end example |
| 1663 | @noindent | ||
| 1868 | 1664 | ||
| 1869 | If you have no idea what to insert for | 1665 | If you have no idea what to insert for |
| 1870 | "yourmachine.yourdomain.tld", you've got several | 1666 | "yourmachine.yourdomain.tld", you've got several |
| 1871 | choices. You can either ask your provider if he allows | 1667 | choices. You can either ask your provider if he allows |
| 1872 | you to use something like | 1668 | you to use something like |
| 1873 | yourUserName.userfqdn.provider.net, or you can use | 1669 | yourUserName.userfqdn.provider.net, or you can use |
| 1874 | somethingUnique.yourdomain.tld if you own the domain | 1670 | somethingUnique.yourdomain.tld if you own the domain |
| 1875 | yourdomain.tld, or you can register at a service which | 1671 | yourdomain.tld, or you can register at a service which |
| 1876 | gives private users a FQDN for free, e.g. | 1672 | gives private users a FQDN for free, e.g. |
| 1877 | @uref{http://www.stura.tu-freiberg.de/~dlx/addfqdn.html}. | 1673 | @uref{http://www.stura.tu-freiberg.de/~dlx/addfqdn.html}. |
| 1878 | (Sorry but this website is in German, if you know of an | 1674 | (Sorry but this website is in German, if you know of an |
| 1879 | English one offering the same, drop me a note). | 1675 | English one offering the same, drop me a note). |
| 1880 | 1676 | ||
| 1881 | 1677 | Finally you can tell Gnus not to generate a Message-ID | |
| 1882 | Finally you can tell Gnus not to generate a Message-ID | 1678 | for News at all (and letting the server do the job) by saying |
| 1883 | for News at all (and letting the server do the job) by saying | ||
| 1884 | |||
| 1885 | 1679 | ||
| 1886 | @example | 1680 | @example |
| 1887 | (setq message-required-news-headers | 1681 | (setq message-required-news-headers |
| 1888 | (remove' Message-ID message-required-news-headers)) | 1682 | (remove' Message-ID message-required-news-headers)) |
| 1889 | @end example | 1683 | @end example |
| 1890 | |||
| 1891 | @noindent | 1684 | @noindent |
| 1892 | you can also tell Gnus not to generate Message-IDs for mail by saying | 1685 | |
| 1893 | 1686 | you can also tell Gnus not to generate Message-IDs for mail by saying | |
| 1894 | 1687 | ||
| 1895 | @example | 1688 | @example |
| 1896 | (setq message-required-mail-headers | 1689 | (setq message-required-mail-headers |
| 1897 | (remove' Message-ID message-required-mail-headers)) | 1690 | (remove' Message-ID message-required-mail-headers)) |
| 1898 | @end example | 1691 | @end example |
| 1899 | |||
| 1900 | @noindent | 1692 | @noindent |
| 1901 | , however some mail servers don't generate proper | ||
| 1902 | Message-IDs, too, so test if your Mail Server behaves | ||
| 1903 | correctly by sending yourself a Mail and looking at the Message-ID. | ||
| 1904 | |||
| 1905 | 1693 | ||
| 1906 | @ifnottex | 1694 | , however some mail servers don't generate proper |
| 1907 | @node FAQ 6 - Old messages, FAQ 7 - Gnus in a dial-up environment, FAQ 5 - Composing messages, Frequently Asked Questions | 1695 | Message-IDs, too, so test if your Mail Server behaves |
| 1908 | @end ifnottex | 1696 | correctly by sending yourself a Mail and looking at the Message-ID. |
| 1697 | |||
| 1698 | @node FAQ 6 - Old messages | ||
| 1909 | @subsection Old messages | 1699 | @subsection Old messages |
| 1910 | 1700 | ||
| 1911 | @menu | 1701 | @menu |
| 1912 | * [6.1]:: How to import my old mail into Gnus? | 1702 | * [6.1]:: How to import my old mail into Gnus? |
| 1913 | * [6.2]:: How to archive interesting messages? | 1703 | * [6.2]:: How to archive interesting messages? |
| 1914 | * [6.3]:: How to search for a specific message? | 1704 | * [6.3]:: How to search for a specific message? |
| 1915 | * [6.4]:: How to get rid of old unwanted mail? | 1705 | * [6.4]:: How to get rid of old unwanted mail? |
| 1916 | * [6.5]:: I want that all read messages are expired (at least in some | 1706 | * [6.5]:: I want that all read messages are expired (at least in some |
| 1917 | groups). How to do it? | 1707 | groups). How to do it? |
| 1918 | * [6.6]:: I don't want expiration to delete my mails but to move them | 1708 | * [6.6]:: I don't want expiration to delete my mails but to move them |
| 1919 | to another group. | 1709 | to another group. |
| 1920 | @end menu | 1710 | @end menu |
| 1921 | 1711 | ||
| 1922 | @ifnottex | 1712 | @node [6.1] |
| 1923 | @node [6.1], [6.2], FAQ 6 - Old messages, FAQ 6 - Old messages | 1713 | @subsubheading Question 6.1 |
| 1924 | @end ifnottex | 1714 | |
| 1925 | @subsubheading Question 6.1: | 1715 | How to import my old mail into Gnus? |
| 1926 | 1716 | ||
| 1927 | How to import my old mail into Gnus? | 1717 | @subsubheading Answer |
| 1928 | 1718 | ||
| 1929 | 1719 | The easiest way is to tell your old mail program to | |
| 1930 | Answer: | 1720 | export the messages in mbox format. Most Unix mailers |
| 1931 | 1721 | are able to do this, if you come from the MS Windows | |
| 1932 | The easiest way is to tell your old mail program to | 1722 | world, you may find tools at |
| 1933 | export the messages in mbox format. Most Unix mailers | 1723 | @uref{http://mbx2mbox.sourceforge.net/}. |
| 1934 | are able to do this, if you come from the MS Windows | 1724 | |
| 1935 | world, you may find tools at | 1725 | Now you've got to import this mbox file into Gnus. To do |
| 1936 | @uref{http://mbx2mbox.sourceforge.net/}. | 1726 | this, create a nndoc group based on the mbox file by |
| 1937 | 1727 | saying @samp{G f /path/file.mbox RET} in | |
| 1938 | 1728 | Group buffer. You now have read-only access to your | |
| 1939 | Now you've got to import this mbox file into Gnus. To do | 1729 | mail. If you want to import the messages to your normal |
| 1940 | this, create a nndoc group based on the mbox file by | 1730 | Gnus mail groups hierarchy, enter the nndoc group you've |
| 1941 | saying @samp{G f /path/file.mbox RET} in | 1731 | just created by saying @samp{C-u RET} |
| 1942 | Group buffer. You now have read-only access to your | 1732 | (thus making sure all messages are retrieved), mark all |
| 1943 | mail. If you want to import the messages to your normal | 1733 | messages by saying @samp{M P b} and |
| 1944 | Gnus mail groups hierarchy, enter the nndoc group you've | 1734 | either copy them to the desired group by saying |
| 1945 | just created by saying @samp{C-u RET} | 1735 | @samp{B c name.of.group RET} or send them |
| 1946 | (thus making sure all messages are retrieved), mark all | 1736 | through nnmail-split-methods (respool them) by saying |
| 1947 | messages by saying @samp{M P b} and | 1737 | @samp{B r}. |
| 1948 | either copy them to the desired group by saying | 1738 | |
| 1949 | @samp{B c name.of.group RET} or send them | 1739 | @node [6.2] |
| 1950 | through nnmail-split-methods (respool them) by saying | 1740 | @subsubheading Question 6.2 |
| 1951 | @samp{B r}. | 1741 | |
| 1952 | 1742 | How to archive interesting messages? | |
| 1953 | @ifnottex | 1743 | |
| 1954 | @node [6.2], [6.3], [6.1], FAQ 6 - Old messages | 1744 | @subsubheading Answer |
| 1955 | @end ifnottex | 1745 | |
| 1956 | @subsubheading Question 6.2: | 1746 | If you stumble across an interesting message, say in |
| 1957 | 1747 | gnu.emacs.gnus and want to archive it there are several | |
| 1958 | How to archive interesting messages? | 1748 | solutions. The first and easiest is to save it to a file |
| 1959 | 1749 | by saying @samp{O f}. However, wouldn't | |
| 1960 | 1750 | it be much more convenient to have more direct access to | |
| 1961 | Answer: | 1751 | the archived message from Gnus? If you say yes, put this |
| 1962 | 1752 | snippet by Frank Haun <pille3003@@fhaun.de> in | |
| 1963 | If you stumble across an interesting message, say in | 1753 | ~/.gnus.el: |
| 1964 | gnu.emacs.gnus and want to archive it there are several | ||
| 1965 | solutions. The first and easiest is to save it to a file | ||
| 1966 | by saying @samp{O f}. However, wouldn't | ||
| 1967 | it be much more convenient to have more direct access to | ||
| 1968 | the archived message from Gnus? If you say yes, put this | ||
| 1969 | snippet by Frank Haun <pille3003@@fhaun.de> in | ||
| 1970 | ~/.gnus: | ||
| 1971 | |||
| 1972 | 1754 | ||
| 1973 | @example | 1755 | @example |
| 1974 | (defun my-archive-article (&optional n) | 1756 | (defun my-archive-article (&optional n) |
| @@ -1987,624 +1769,531 @@ more then one article." | |||
| 1987 | (replace-regexp-in-string "^.*:" "" gnus-newsgroup-name))))) | 1769 | (replace-regexp-in-string "^.*:" "" gnus-newsgroup-name))))) |
| 1988 | (gnus-summary-copy-article n archive-name))) | 1770 | (gnus-summary-copy-article n archive-name))) |
| 1989 | @end example | 1771 | @end example |
| 1990 | |||
| 1991 | @noindent | 1772 | @noindent |
| 1992 | You can now say @samp{M-x | ||
| 1993 | my-archive-article} in summary buffer to | ||
| 1994 | archive the article under the cursor in a nnml | ||
| 1995 | group. (Change nnml to your preferred back end) | ||
| 1996 | |||
| 1997 | 1773 | ||
| 1998 | Of course you can also make sure the cache is enabled by saying | 1774 | You can now say @samp{M-x |
| 1999 | 1775 | my-archive-article} in summary buffer to | |
| 1776 | archive the article under the cursor in a nnml | ||
| 1777 | group. (Change nnml to your preferred back end) | ||
| 1778 | |||
| 1779 | Of course you can also make sure the cache is enabled by saying | ||
| 2000 | 1780 | ||
| 2001 | @example | 1781 | @example |
| 2002 | (setq gnus-use-cache t) | 1782 | (setq gnus-use-cache t) |
| 2003 | @end example | 1783 | @end example |
| 2004 | |||
| 2005 | @noindent | 1784 | @noindent |
| 2006 | then you only have to set either the tick or the dormant | ||
| 2007 | mark for articles you want to keep, setting the read | ||
| 2008 | mark will remove them from cache. | ||
| 2009 | |||
| 2010 | @ifnottex | ||
| 2011 | @node [6.3], [6.4], [6.2], FAQ 6 - Old messages | ||
| 2012 | @end ifnottex | ||
| 2013 | @subsubheading Question 6.3: | ||
| 2014 | |||
| 2015 | How to search for a specific message? | ||
| 2016 | |||
| 2017 | |||
| 2018 | Answer: | ||
| 2019 | |||
| 2020 | There are several ways for this, too. For a posting from | ||
| 2021 | a Usenet group the easiest solution is probably to ask | ||
| 2022 | @uref{http://groups.google.com,groups.google.com}, | ||
| 2023 | if you found the posting there, tell Google to display | ||
| 2024 | the raw message, look for the message-id, and say | ||
| 2025 | @samp{M-^ the@@message.id RET} in a | ||
| 2026 | summary buffer. | ||
| 2027 | Since Gnus 5.10 there's also a Gnus interface for | ||
| 2028 | groups.google.com which you can call with | ||
| 2029 | @samp{G W}) in group buffer. | ||
| 2030 | |||
| 2031 | |||
| 2032 | Another idea which works for both mail and news groups | ||
| 2033 | is to enter the group where the message you are | ||
| 2034 | searching is and use the standard Emacs search | ||
| 2035 | @samp{C-s}, it's smart enough to look at | ||
| 2036 | articles in collapsed threads, too. If you want to | ||
| 2037 | search bodies, too try @samp{M-s} | ||
| 2038 | instead. Further on there are the | ||
| 2039 | gnus-summary-limit-to-foo functions, which can help you, | ||
| 2040 | too. | ||
| 2041 | |||
| 2042 | 1785 | ||
| 2043 | Of course you can also use grep to search through your | 1786 | then you only have to set either the tick or the dormant |
| 2044 | local mail, but this is both slow for big archives and | 1787 | mark for articles you want to keep, setting the read |
| 2045 | inconvenient since you are not displaying the found mail | 1788 | mark will remove them from cache. |
| 2046 | in Gnus. Here comes nnir into action. Nnir is a front end | 1789 | |
| 2047 | to search engines like swish-e or swish++ and | 1790 | @node [6.3] |
| 2048 | others. You index your mail with one of those search | 1791 | @subsubheading Question 6.3 |
| 2049 | engines and with the help of nnir you can search trough | 1792 | |
| 2050 | the indexed mail and generate a temporary group with all | 1793 | How to search for a specific message? |
| 2051 | messages which met your search criteria. If this sound | 1794 | |
| 2052 | cool to you get nnir.el from the contrib directory of the Gnus | 1795 | @subsubheading Answer |
| 2053 | distribution or | 1796 | |
| 2054 | @uref{http://quimby.gnus.org/cgi-bin/cvsweb.cgi/~checkout~/gnus/contrib/nnir.el?rev=HEAD&content-type=text/plain} | 1797 | There are several ways for this, too. For a posting from |
| 2055 | Instructions on how to use it are at the top of the file. | 1798 | a Usenet group the easiest solution is probably to ask |
| 2056 | 1799 | @uref{http://groups.google.com, groups.google.com}, | |
| 2057 | @ifnottex | 1800 | if you found the posting there, tell Google to display |
| 2058 | @node [6.4], [6.5], [6.3], FAQ 6 - Old messages | 1801 | the raw message, look for the message-id, and say |
| 2059 | @end ifnottex | 1802 | @samp{M-^ the@@message.id RET} in a |
| 2060 | @subsubheading Question 6.4: | 1803 | summary buffer. |
| 2061 | 1804 | Since Gnus 5.10 there's also a Gnus interface for | |
| 2062 | How to get rid of old unwanted mail? | 1805 | groups.google.com which you can call with |
| 2063 | 1806 | @samp{G W}) in group buffer. | |
| 2064 | 1807 | ||
| 2065 | Answer: | 1808 | Another idea which works for both mail and news groups |
| 2066 | 1809 | is to enter the group where the message you are | |
| 2067 | You can of course just mark the mail you don't need | 1810 | searching is and use the standard Emacs search |
| 2068 | anymore by saying @samp{#} with point | 1811 | @samp{C-s}, it's smart enough to look at |
| 2069 | over the mail and then say @samp{B DEL} | 1812 | articles in collapsed threads, too. If you want to |
| 2070 | to get rid of them forever. You could also instead of | 1813 | search bodies, too try @samp{M-s} |
| 2071 | actually deleting them, send them to a junk-group by | 1814 | instead. Further on there are the |
| 2072 | saying @samp{B m nnml:trash-bin} which | 1815 | gnus-summary-limit-to-foo functions, which can help you, |
| 2073 | you clear from time to time, but both are not the intended | 1816 | too. |
| 2074 | way in Gnus. | 1817 | |
| 2075 | 1818 | Of course you can also use grep to search through your | |
| 2076 | 1819 | local mail, but this is both slow for big archives and | |
| 2077 | In Gnus, we let mail expire like news expires on a news | 1820 | inconvenient since you are not displaying the found mail |
| 2078 | server. That means you tell Gnus the message is | 1821 | in Gnus. Here comes nnir into action. Nnir is a front end |
| 2079 | expirable (you tell Gnus "I don't need this mail | 1822 | to search engines like swish-e or swish++ and |
| 2080 | anymore") by saying @samp{E} with point | 1823 | others. You index your mail with one of those search |
| 2081 | over the mail in summary buffer. Now when you leave the | 1824 | engines and with the help of nnir you can search trough |
| 2082 | group, Gnus looks at all messages which you marked as | 1825 | the indexed mail and generate a temporary group with all |
| 2083 | expirable before and if they are old enough (default is | 1826 | messages which met your search criteria. If this sound |
| 2084 | older than a week) they are deleted. | 1827 | cool to you get nnir.el from |
| 2085 | 1828 | @uref{ftp://ls6-ftp.cs.uni-dortmund.de/pub/src/emacs/} | |
| 2086 | @ifnottex | 1829 | or @uref{ftp://ftp.is.informatik.uni-duisburg.de/pub/src/emacs/}. |
| 2087 | @node [6.5], [6.6], [6.4], FAQ 6 - Old messages | 1830 | Instructions on how to use it are at the top of the file. |
| 2088 | @end ifnottex | 1831 | |
| 2089 | @subsubheading Question 6.5: | 1832 | @node [6.4] |
| 2090 | 1833 | @subsubheading Question 6.4 | |
| 2091 | I want that all read messages are expired (at least in | 1834 | |
| 2092 | some groups). How to do it? | 1835 | How to get rid of old unwanted mail? |
| 2093 | 1836 | ||
| 2094 | 1837 | @subsubheading Answer | |
| 2095 | Answer: | 1838 | |
| 2096 | 1839 | You can of course just mark the mail you don't need | |
| 2097 | If you want all read messages to be expired (e.g. in | 1840 | anymore by saying @samp{#} with point |
| 2098 | mailing lists where there's an online archive), you've | 1841 | over the mail and then say @samp{B DEL} |
| 2099 | got two choices: auto-expire and | 1842 | to get rid of them forever. You could also instead of |
| 2100 | total-expire. Auto-expire means, that every article | 1843 | actually deleting them, send them to a junk-group by |
| 2101 | which has no marks set and is selected for reading is | 1844 | saying @samp{B m nnml:trash-bin} which |
| 2102 | marked as expirable, Gnus hits @samp{E} | 1845 | you clear from time to time, but both are not the intended |
| 2103 | for you every time you read a message. Total-expire | 1846 | way in Gnus. |
| 2104 | follows a slightly different approach, here all article | 1847 | |
| 2105 | where the read mark is set are expirable. | 1848 | In Gnus, we let mail expire like news expires on a news |
| 2106 | 1849 | server. That means you tell Gnus the message is | |
| 2107 | 1850 | expirable (you tell Gnus "I don't need this mail | |
| 2108 | To activate auto-expire, include auto-expire in the | 1851 | anymore") by saying @samp{E} with point |
| 2109 | Group parameters for the group. (Hit @samp{G | 1852 | over the mail in summary buffer. Now when you leave the |
| 2110 | c} in summary buffer with point over the | 1853 | group, Gnus looks at all messages which you marked as |
| 2111 | group to change group parameters). For total-expire add | 1854 | expirable before and if they are old enough (default is |
| 2112 | total-expire to the group-parameters. | 1855 | older than a week) they are deleted. |
| 2113 | 1856 | ||
| 2114 | 1857 | @node [6.5] | |
| 2115 | Which method you choose is merely a matter of taste: | 1858 | @subsubheading Question 6.5 |
| 2116 | Auto-expire is faster, but it doesn't play together with | 1859 | |
| 2117 | Adaptive Scoring, so if you want to use this feature, | 1860 | I want that all read messages are expired (at least in |
| 2118 | you should use total-expire. | 1861 | some groups). How to do it? |
| 2119 | 1862 | ||
| 2120 | 1863 | @subsubheading Answer | |
| 2121 | If you want a message to be excluded from expiration in | 1864 | |
| 2122 | a group where total or auto expire is active, set either | 1865 | If you want all read messages to be expired (e.g. in |
| 2123 | tick (hit @samp{u}) or dormant mark (hit | 1866 | mailing lists where there's an online archive), you've |
| 2124 | @samp{u}), when you use auto-expire, you | 1867 | got two choices: auto-expire and |
| 2125 | can also set the read mark (hit | 1868 | total-expire. Auto-expire means, that every article |
| 2126 | @samp{d}). | 1869 | which has no marks set and is selected for reading is |
| 2127 | 1870 | marked as expirable, Gnus hits @samp{E} | |
| 2128 | @ifnottex | 1871 | for you every time you read a message. Total-expire |
| 2129 | @node [6.6], , [6.5], FAQ 6 - Old messages | 1872 | follows a slightly different approach, here all article |
| 2130 | @end ifnottex | 1873 | where the read mark is set are expirable. |
| 2131 | @subsubheading Question 6.6: | 1874 | |
| 2132 | 1875 | To activate auto-expire, include auto-expire in the | |
| 2133 | I don't want expiration to delete my mails but to move them | 1876 | Group parameters for the group. (Hit @samp{G |
| 2134 | to another group. | 1877 | c} in summary buffer with point over the |
| 2135 | 1878 | group to change group parameters). For total-expire add | |
| 2136 | 1879 | total-expire to the group-parameters. | |
| 2137 | Answer: | 1880 | |
| 2138 | 1881 | Which method you choose is merely a matter of taste: | |
| 2139 | Say something like this in ~/.gnus: | 1882 | Auto-expire is faster, but it doesn't play together with |
| 2140 | 1883 | Adaptive Scoring, so if you want to use this feature, | |
| 1884 | you should use total-expire. | ||
| 1885 | |||
| 1886 | If you want a message to be excluded from expiration in | ||
| 1887 | a group where total or auto expire is active, set either | ||
| 1888 | tick (hit @samp{u}) or dormant mark (hit | ||
| 1889 | @samp{u}), when you use auto-expire, you | ||
| 1890 | can also set the read mark (hit | ||
| 1891 | @samp{d}). | ||
| 1892 | |||
| 1893 | @node [6.6] | ||
| 1894 | @subsubheading Question 6.6 | ||
| 1895 | |||
| 1896 | I don't want expiration to delete my mails but to move them | ||
| 1897 | to another group. | ||
| 1898 | |||
| 1899 | @subsubheading Answer | ||
| 1900 | |||
| 1901 | Say something like this in ~/.gnus.el: | ||
| 2141 | 1902 | ||
| 2142 | @example | 1903 | @example |
| 2143 | (setq nnmail-expiry-target "nnml:expired") | 1904 | (setq nnmail-expiry-target "nnml:expired") |
| 2144 | @end example | 1905 | @end example |
| 2145 | |||
| 2146 | @noindent | 1906 | @noindent |
| 2147 | (If you want to change the value of nnmail-expiry-target | ||
| 2148 | on a per group basis see the question "How can I disable | ||
| 2149 | threading in some (e.g. mail-) groups, or set other | ||
| 2150 | variables specific for some groups?") | ||
| 2151 | |||
| 2152 | 1907 | ||
| 2153 | @ifnottex | 1908 | (If you want to change the value of nnmail-expiry-target |
| 2154 | @node FAQ 7 - Gnus in a dial-up environment, FAQ 8 - Getting help, FAQ 6 - Old messages, Frequently Asked Questions | 1909 | on a per group basis see the question "How can I disable |
| 2155 | @end ifnottex | 1910 | threading in some (e.g. mail-) groups, or set other |
| 1911 | variables specific for some groups?") | ||
| 1912 | |||
| 1913 | @node FAQ 7 - Gnus in a dial-up environment | ||
| 2156 | @subsection Gnus in a dial-up environment | 1914 | @subsection Gnus in a dial-up environment |
| 2157 | 1915 | ||
| 2158 | @menu | 1916 | @menu |
| 2159 | * [7.1]:: I don't have a permanent connection to the net, how can I | 1917 | * [7.1]:: I don't have a permanent connection to the net, how can I |
| 2160 | minimize the time I've got to be connected? | 1918 | minimize the time I've got to be connected? |
| 2161 | * [7.2]:: So what was this thing about the Agent? | 1919 | * [7.2]:: So what was this thing about the Agent? |
| 2162 | * [7.3]:: I want to store article bodies on disk, too. How to do it? | 1920 | * [7.3]:: I want to store article bodies on disk, too. How to do it? |
| 2163 | * [7.4]:: How to tell Gnus not to try to send mails / postings while | 1921 | * [7.4]:: How to tell Gnus not to try to send mails / postings while |
| 2164 | I'm offline? | 1922 | I'm offline? |
| 2165 | @end menu | 1923 | @end menu |
| 2166 | 1924 | ||
| 2167 | 1925 | @node [7.1] | |
| 2168 | @ifnottex | 1926 | @subsubheading Question 7.1 |
| 2169 | @node [7.1], [7.2], FAQ 7 - Gnus in a dial-up environment, FAQ 7 - Gnus in a dial-up environment | 1927 | |
| 2170 | @end ifnottex | 1928 | I don't have a permanent connection to the net, how can |
| 2171 | @subsubheading Question 7.1: | 1929 | I minimize the time I've got to be connected? |
| 2172 | 1930 | ||
| 2173 | I don't have a permanent connection to the net, how can | 1931 | @subsubheading Answer |
| 2174 | I minimize the time I've got to be connected? | 1932 | |
| 2175 | 1933 | You've got basically two options: Either you use the | |
| 2176 | 1934 | Gnus Agent (see below) for this, or you can install | |
| 2177 | Answer: | 1935 | programs which fetch your news and mail to your local |
| 2178 | 1936 | disk and Gnus reads the stuff from your local | |
| 2179 | You've got basically two options: Either you use the | 1937 | machine. |
| 2180 | Gnus Agent (see below) for this, or you can install | 1938 | |
| 2181 | programs which fetch your news and mail to your local | 1939 | If you want to follow the second approach, you need a |
| 2182 | disk and Gnus reads the stuff from your local | 1940 | program which fetches news and offers them to Gnus, a |
| 2183 | machine. | 1941 | program which does the same for mail and a program which |
| 2184 | 1942 | receives the mail you write from Gnus and sends them | |
| 2185 | 1943 | when you're online. | |
| 2186 | If you want to follow the second approach, you need a | 1944 | |
| 2187 | program which fetches news and offers them to Gnus, a | 1945 | Let's talk about Unix systems first: For the news part, |
| 2188 | program which does the same for mail and a program which | 1946 | the easiest solution is a small nntp server like |
| 2189 | receives the mail you write from Gnus and sends them | 1947 | @uref{http://www.leafnode.org/, Leafnode} or |
| 2190 | when you're online. | 1948 | @uref{http://infa.abo.fi/~patrik/sn/, sn}, |
| 2191 | 1949 | of course you can also install a full featured news | |
| 2192 | 1950 | server like | |
| 2193 | Let's talk about Unix systems first: For the news part, the easiest | 1951 | @uref{http://www.isc.org/products/INN/, inn}. |
| 2194 | solution is a small nntp server like | 1952 | Then you want to fetch your Mail, popular choices |
| 2195 | @uref{http://www.leafnode.org/,Leafnode} or | 1953 | are @uref{http://www.catb.org/~esr/fetchmail/, fetchmail} |
| 2196 | @uref{http://infa.abo.fi/~patrik/sn/,sn}, of course you can also | 1954 | and @uref{http://www.qcc.ca/~charlesc/software/getmail-3.0/, getmail}. |
| 2197 | install a full featured news server like | 1955 | You should tell those to write the mail to your disk and |
| 2198 | @uref{http://www.isc.org/products/INN/,inn}. | 1956 | Gnus to read it from there. Last but not least the mail |
| 2199 | 1957 | sending part: This can be done with every MTA like | |
| 2200 | Then you want to fetch your Mail, popular choices are | 1958 | @uref{http://www.sendmail.org/, sendmail}, |
| 2201 | @itemize @bullet | 1959 | @uref{http://www.qmail.org/, postfix}, |
| 2202 | @item | 1960 | @uref{http://www.exim.org/, exim} or |
| 2203 | @uref{http://www.catb.org/~esr/fetchmail/,fetchmail} and | 1961 | @uref{http://www.qmail.org/, qmail}. |
| 2204 | @item | 1962 | |
| 2205 | @uref{http://www.qcc.ca/~charlesc/software/getmail-3.0/,getmail}. | 1963 | On windows boxes I'd vote for |
| 2206 | @end itemize | 1964 | @uref{http://www.tglsoft.de/, Hamster}, |
| 2207 | You should tell those to write the mail to your disk and Gnus to read | 1965 | it's a small freeware, open-source program which fetches |
| 2208 | it from there. Last but not least the mail sending part: This can be | 1966 | your mail and news from remote servers and offers them |
| 2209 | done with every MTA like @uref{http://www.sendmail.org/,sendmail}, | 1967 | to Gnus (or any other mail and/or news reader) via nntp |
| 2210 | @uref{http://www.qmail.org/,postfix}, @uref{http://www.exim.org/,exim} | 1968 | respectively POP3 or IMAP. It also includes a smtp |
| 2211 | or @uref{http://www.qmail.org/,qmail}. | 1969 | server for receiving mails from Gnus. |
| 2212 | 1970 | ||
| 2213 | 1971 | @node [7.2] | |
| 2214 | On windows boxes I'd vote for | 1972 | @subsubheading Question 7.2 |
| 2215 | @uref{http://www.tglsoft.de/,Hamster}, | 1973 | |
| 2216 | it's a small freeware, open-source program which fetches | 1974 | So what was this thing about the Agent? |
| 2217 | your mail and news from remote servers and offers them | 1975 | |
| 2218 | to Gnus (or any other mail and/or news reader) via nntp | 1976 | @subsubheading Answer |
| 2219 | respectively POP3 or IMAP. It also includes a smtp | 1977 | |
| 2220 | server for receiving mails from Gnus. | 1978 | The Gnus agent is part of Gnus, it allows you to fetch |
| 2221 | 1979 | mail and news and store them on disk for reading them | |
| 2222 | @ifnottex | 1980 | later when you're offline. It kind of mimics offline |
| 2223 | @node [7.2], [7.3], [7.1], FAQ 7 - Gnus in a dial-up environment | 1981 | newsreaders like e.g. Forte Agent. If you want to use |
| 2224 | @end ifnottex | 1982 | the Agent place the following in ~/.gnus.el if you are |
| 2225 | @subsubheading Question 7.2: | 1983 | still using 5.8.8 or 5.9 (it's the default since 5.10): |
| 2226 | |||
| 2227 | So what was this thing about the Agent? | ||
| 2228 | |||
| 2229 | |||
| 2230 | Answer: | ||
| 2231 | |||
| 2232 | The Gnus agent is part of Gnus, it allows you to fetch | ||
| 2233 | mail and news and store them on disk for reading them | ||
| 2234 | later when you're offline. It kind of mimics offline | ||
| 2235 | newsreaders like e.g. Forte Agent. If you want to use | ||
| 2236 | the Agent place the following in ~/.gnus if you are | ||
| 2237 | still using 5.8.8 or 5.9 (it's the default since 5.10): | ||
| 2238 | |||
| 2239 | 1984 | ||
| 2240 | @example | 1985 | @example |
| 2241 | (setq gnus-agent t) | 1986 | (setq gnus-agent t) |
| 2242 | @end example | 1987 | @end example |
| 2243 | 1988 | @noindent | |
| 2244 | 1989 | ||
| 2245 | Now you've got to select the servers whose groups can be | 1990 | Now you've got to select the servers whose groups can be |
| 2246 | stored locally. To do this, open the server buffer | 1991 | stored locally. To do this, open the server buffer |
| 2247 | (that is press @samp{^} while in the | 1992 | (that is press @samp{^} while in the |
| 2248 | group buffer). Now select a server by moving point to | 1993 | group buffer). Now select a server by moving point to |
| 2249 | the line naming that server. Finally, agentize the | 1994 | the line naming that server. Finally, agentize the |
| 2250 | server by typing @samp{J a}. If you | 1995 | server by typing @samp{J a}. If you |
| 2251 | make a mistake, or change your mind, you can undo this | 1996 | make a mistake, or change your mind, you can undo this |
| 2252 | action by typing @samp{J r}. When | 1997 | action by typing @samp{J r}. When |
| 2253 | you're done, type 'q' to return to the group buffer. | 1998 | you're done, type 'q' to return to the group buffer. |
| 2254 | Now the next time you enter a group on a agentized | 1999 | Now the next time you enter a group on a agentized |
| 2255 | server, the headers will be stored on disk and read from | 2000 | server, the headers will be stored on disk and read from |
| 2256 | there the next time you enter the group. | 2001 | there the next time you enter the group. |
| 2257 | 2002 | ||
| 2258 | @ifnottex | 2003 | @node [7.3] |
| 2259 | @node [7.3], [7.4], [7.2], FAQ 7 - Gnus in a dial-up environment | 2004 | @subsubheading Question 7.3 |
| 2260 | @end ifnottex | 2005 | |
| 2261 | @subsubheading Question 7.3: | 2006 | I want to store article bodies on disk, too. How to do it? |
| 2007 | |||
| 2008 | @subsubheading Answer | ||
| 2009 | |||
| 2010 | You can tell the agent to automatically fetch the bodies | ||
| 2011 | of articles which fulfill certain predicates, this is | ||
| 2012 | done in a special buffer which can be reached by | ||
| 2013 | saying @samp{J c} in group | ||
| 2014 | buffer. Please refer to the documentation for | ||
| 2015 | information which predicates are possible and how | ||
| 2016 | exactly to do it. | ||
| 2017 | |||
| 2018 | Further on you can tell the agent manually which | ||
| 2019 | articles to store on disk. There are two ways to do | ||
| 2020 | this: Number one: In the summary buffer, process mark a | ||
| 2021 | set of articles that shall be stored in the agent by | ||
| 2022 | saying @samp{#} with point over the | ||
| 2023 | article and then type @samp{J s}. The | ||
| 2024 | other possibility is to set, again in the summary | ||
| 2025 | buffer, downloadable (%) marks for the articles you | ||
| 2026 | want by typing @samp{@@} with point over | ||
| 2027 | the article and then typing @samp{J u}. | ||
| 2028 | What's the difference? Well, process marks are erased as | ||
| 2029 | soon as you exit the summary buffer while downloadable | ||
| 2030 | marks are permanent. You can actually set downloadable | ||
| 2031 | marks in several groups then use fetch session ('J s' in | ||
| 2032 | the GROUP buffer) to fetch all of those articles. The | ||
| 2033 | only downside is that fetch session also fetches all of | ||
| 2034 | the headers for every selected group on an agentized | ||
| 2035 | server. Depending on the volume of headers, the initial | ||
| 2036 | fetch session could take hours. | ||
| 2037 | |||
| 2038 | @node [7.4] | ||
| 2039 | @subsubheading Question 7.4 | ||
| 2040 | |||
| 2041 | How to tell Gnus not to try to send mails / postings | ||
| 2042 | while I'm offline? | ||
| 2043 | |||
| 2044 | @subsubheading Answer | ||
| 2045 | |||
| 2046 | All you've got to do is to tell Gnus when you are online | ||
| 2047 | (plugged) and when you are offline (unplugged), the rest | ||
| 2048 | works automatically. You can toggle plugged/unplugged | ||
| 2049 | state by saying @samp{J j} in group | ||
| 2050 | buffer. To start Gnus unplugged say @samp{M-x | ||
| 2051 | gnus-unplugged} instead of | ||
| 2052 | @samp{M-x gnus}. Note that for this to | ||
| 2053 | work, the agent must be active. | ||
| 2054 | |||
| 2055 | @node FAQ 8 - Getting help | ||
| 2056 | @subsection Getting help | ||
| 2262 | 2057 | ||
| 2263 | I want to store article bodies on disk, too. How to do it? | 2058 | @menu |
| 2264 | 2059 | * [8.1]:: How to find information and help inside Emacs? | |
| 2060 | * [8.2]:: I can't find anything in the Gnus manual about X (e.g. | ||
| 2061 | attachments, PGP, MIME...), is it not documented? | ||
| 2062 | * [8.3]:: Which websites should I know? | ||
| 2063 | * [8.4]:: Which mailing lists and newsgroups are there? | ||
| 2064 | * [8.5]:: Where to report bugs? | ||
| 2065 | * [8.6]:: I need real-time help, where to find it? | ||
| 2066 | @end menu | ||
| 2265 | 2067 | ||
| 2266 | Answer: | 2068 | @node [8.1] |
| 2069 | @subsubheading Question 8.1 | ||
| 2267 | 2070 | ||
| 2268 | You can tell the agent to automatically fetch the bodies | 2071 | How to find information and help inside Emacs? |
| 2269 | of articles which fulfill certain predicates, this is | ||
| 2270 | done in a special buffer which can be reached by | ||
| 2271 | saying @samp{J c} in group | ||
| 2272 | buffer. Please refer to the documentation for | ||
| 2273 | information which predicates are possible and how | ||
| 2274 | exactly to do it. | ||
| 2275 | |||
| 2276 | 2072 | ||
| 2277 | Further on you can tell the agent manually which | 2073 | @subsubheading Answer |
| 2278 | articles to store on disk. There are two ways to do | ||
| 2279 | this: Number one: In the summary buffer, process mark a | ||
| 2280 | set of articles that shall be stored in the agent by | ||
| 2281 | saying @samp{#} with point over the | ||
| 2282 | article and then type @samp{J s}. The | ||
| 2283 | other possibility is to set, again in the summary | ||
| 2284 | buffer, downloadable (%) marks for the articles you | ||
| 2285 | want by typing @samp{@@} with point over | ||
| 2286 | the article and then typing @samp{J u}. | ||
| 2287 | What's the difference? Well, process marks are erased as | ||
| 2288 | soon as you exit the summary buffer while downloadable | ||
| 2289 | marks are permanent. You can actually set downloadable | ||
| 2290 | marks in several groups then use fetch session ('J s' in | ||
| 2291 | the GROUP buffer) to fetch all of those articles. The | ||
| 2292 | only downside is that fetch session also fetches all of | ||
| 2293 | the headers for every selected group on an agentized | ||
| 2294 | server. Depending on the volume of headers, the initial | ||
| 2295 | fetch session could take hours. | ||
| 2296 | |||
| 2297 | @ifnottex | ||
| 2298 | @node [7.4], , [7.3], FAQ 7 - Gnus in a dial-up environment | ||
| 2299 | @end ifnottex | ||
| 2300 | @subsubheading Question 7.4: | ||
| 2301 | 2074 | ||
| 2302 | How to tell Gnus not to try to send mails / postings | 2075 | The first stop should be the Gnus manual (Say |
| 2303 | while I'm offline? | 2076 | @samp{C-h i d m Gnus RET} to start the |
| 2304 | 2077 | Gnus manual, then walk through the menus or do a | |
| 2078 | full-text search with @samp{s}). Then | ||
| 2079 | there are the general Emacs help commands starting with | ||
| 2080 | C-h, type @samp{C-h ? ?} to get a list | ||
| 2081 | of all available help commands and their meaning. Finally | ||
| 2082 | @samp{M-x apropos-command} lets you | ||
| 2083 | search through all available functions and @samp{M-x | ||
| 2084 | apropos} searches the bound variables. | ||
| 2305 | 2085 | ||
| 2306 | Answer: | 2086 | @node [8.2] |
| 2087 | @subsubheading Question 8.2 | ||
| 2307 | 2088 | ||
| 2308 | All you've got to do is to tell Gnus when you are online | 2089 | I can't find anything in the Gnus manual about X |
| 2309 | (plugged) and when you are offline (unplugged), the rest | 2090 | (e.g. attachments, PGP, MIME...), is it not documented? |
| 2310 | works automatically. You can toggle plugged/unplugged | ||
| 2311 | state by saying @samp{J j} in group | ||
| 2312 | buffer. To start Gnus unplugged say @samp{M-x | ||
| 2313 | gnus-unplugged} instead of | ||
| 2314 | @samp{M-x gnus}. Note that for this to | ||
| 2315 | work, the agent must be active. | ||
| 2316 | |||
| 2317 | 2091 | ||
| 2318 | @ifnottex | 2092 | @subsubheading Answer |
| 2319 | @node FAQ 8 - Getting help, FAQ 9 - Tuning Gnus, FAQ 7 - Gnus in a dial-up environment, Frequently Asked Questions | ||
| 2320 | @end ifnottex | ||
| 2321 | @subsection Getting help | ||
| 2322 | 2093 | ||
| 2323 | @menu | 2094 | There's not only the Gnus manual but also the manuals |
| 2324 | * [8.1]:: How to find information and help inside Emacs? | 2095 | for message, emacs-mime, sieve and pgg. Those packages |
| 2325 | * [8.2]:: I can't find anything in the Gnus manual about X | 2096 | are distributed with Gnus and used by Gnus but aren't |
| 2326 | (e.g. attachments, PGP, MIME...), is it not documented? | 2097 | really part of core Gnus, so they are documented in |
| 2327 | * [8.3]:: Which websites should I know? | 2098 | different info files, you should have a look in those |
| 2328 | * [8.4]:: Which mailing lists and newsgroups are there? | 2099 | manuals, too. |
| 2329 | * [8.5]:: Where to report bugs? | ||
| 2330 | * [8.6]:: I need real-time help, where to find it? | ||
| 2331 | @end menu | ||
| 2332 | 2100 | ||
| 2333 | @ifnottex | 2101 | @node [8.3] |
| 2334 | @node [8.1], [8.2], FAQ 8 - Getting help, FAQ 8 - Getting help | 2102 | @subsubheading Question 8.3 |
| 2335 | @end ifnottex | ||
| 2336 | @subsubheading Question 8.1: | ||
| 2337 | 2103 | ||
| 2338 | How to find information and help inside Emacs? | 2104 | Which websites should I know? |
| 2339 | |||
| 2340 | 2105 | ||
| 2341 | Answer: | 2106 | @subsubheading Answer |
| 2342 | |||
| 2343 | The first stop should be the Gnus manual (Say | ||
| 2344 | @samp{C-h i d m Gnus RET} to start the | ||
| 2345 | Gnus manual, then walk through the menus or do a | ||
| 2346 | full-text search with @samp{s}). Then | ||
| 2347 | there are the general Emacs help commands starting with | ||
| 2348 | C-h, type @samp{C-h ? ?} to get a list | ||
| 2349 | of all available help commands and their meaning. Finally | ||
| 2350 | @samp{M-x apropos-command} lets you | ||
| 2351 | search through all available functions and @samp{M-x | ||
| 2352 | apropos} searches the bound variables. | ||
| 2353 | |||
| 2354 | @ifnottex | ||
| 2355 | @node [8.2], [8.3], [8.1], FAQ 8 - Getting help | ||
| 2356 | @end ifnottex | ||
| 2357 | @subsubheading Question 8.2: | ||
| 2358 | 2107 | ||
| 2359 | I can't find anything in the Gnus manual about X | 2108 | The two most important ones are the |
| 2360 | (e.g. attachments, PGP, MIME...), is it not documented? | 2109 | @uref{http://www.gnus.org, official Gnus website}. |
| 2361 | 2110 | and it's sister site | |
| 2111 | @uref{http://my.gnus.org, my.gnus.org (MGO)}, | ||
| 2112 | hosting an archive of lisp snippets, howtos, a (not | ||
| 2113 | really finished) tutorial and this FAQ. | ||
| 2362 | 2114 | ||
| 2363 | Answer: | 2115 | Tell me about other sites which are interesting. |
| 2364 | 2116 | ||
| 2365 | There's not only the Gnus manual but also the manuals | 2117 | @node [8.4] |
| 2366 | for message, emacs-mime, sieve and pgg. Those packages | 2118 | @subsubheading Question 8.4 |
| 2367 | are distributed with Gnus and used by Gnus but aren't | ||
| 2368 | really part of core Gnus, so they are documented in | ||
| 2369 | different info files, you should have a look in those | ||
| 2370 | manuals, too. | ||
| 2371 | |||
| 2372 | @ifnottex | ||
| 2373 | @node [8.3], [8.4], [8.2], FAQ 8 - Getting help | ||
| 2374 | @end ifnottex | ||
| 2375 | @subsubheading Question 8.3: | ||
| 2376 | 2119 | ||
| 2377 | Which websites should I know? | 2120 | Which mailing lists and newsgroups are there? |
| 2378 | |||
| 2379 | 2121 | ||
| 2380 | Answer: | 2122 | @subsubheading Answer |
| 2381 | 2123 | ||
| 2382 | The two most important ones are the | 2124 | There's the newsgroup gnu.emacs.gnus (pull it from |
| 2383 | @uref{http://www.gnus.org,official Gnus website}. | 2125 | e.g. news.gnus.org) which deals with general questions and the |
| 2384 | and it's sister site | 2126 | ding mailing list (ding@@gnus.org) dealing with development of |
| 2385 | @uref{http://my.gnus.org,my.gnus.org (MGO)}, | 2127 | Gnus. You can read the ding list via NNTP, too under the name |
| 2386 | hosting an archive of lisp snippets, howtos, a (not | 2128 | gmane.emacs.gnus.general from news.gmane.org. |
| 2387 | really finished) tutorial and this FAQ. | ||
| 2388 | |||
| 2389 | 2129 | ||
| 2390 | Tell me about other sites which are interesting. | 2130 | If you want to stay in the big8, |
| 2391 | 2131 | news.software.newssreaders is also read by some Gnus | |
| 2392 | @ifnottex | 2132 | users (but chances for qualified help are much better in |
| 2393 | @node [8.4], [8.5], [8.3], FAQ 8 - Getting help | 2133 | the above groups) and if you speak German, there's |
| 2394 | @end ifnottex | 2134 | de.comm.software.gnus. |
| 2395 | @subsubheading Question 8.4: | ||
| 2396 | 2135 | ||
| 2397 | Which mailing lists and newsgroups are there? | 2136 | @node [8.5] |
| 2398 | 2137 | @subsubheading Question 8.5 | |
| 2399 | 2138 | ||
| 2400 | Answer: | 2139 | Where to report bugs? |
| 2401 | 2140 | ||
| 2402 | There's the newsgroup gnu.emacs.gnus (pull it from | 2141 | @subsubheading Answer |
| 2403 | e.g. news.gnus.org) which deals with general questions | ||
| 2404 | and the ding mailing list (ding@@gnus.org) dealing with | ||
| 2405 | development of Gnus. You can read the ding list via | ||
| 2406 | NNTP, too under the name gnus.ding from news.gnus.org. | ||
| 2407 | |||
| 2408 | 2142 | ||
| 2409 | If you want to stay in the big8, | 2143 | Say @samp{M-x gnus-bug}, this will start |
| 2410 | news.software.newssreaders is also read by some Gnus | 2144 | a message to the |
| 2411 | users (but chances for qualified help are much better in | 2145 | @email{bugs@@gnus.org, gnus bug mailing list} |
| 2412 | the above groups) and if you speak German, there's | 2146 | including information about your environment which make |
| 2413 | de.comm.software.gnus. | 2147 | it easier to help you. |
| 2414 | |||
| 2415 | @ifnottex | ||
| 2416 | @node [8.5], [8.6], [8.4], FAQ 8 - Getting help | ||
| 2417 | @end ifnottex | ||
| 2418 | @subsubheading Question 8.5: | ||
| 2419 | 2148 | ||
| 2420 | Where to report bugs? | 2149 | @node [8.6] |
| 2421 | 2150 | @subsubheading Question 8.6 | |
| 2422 | 2151 | ||
| 2423 | Answer: | 2152 | I need real-time help, where to find it? |
| 2424 | 2153 | ||
| 2425 | Say @samp{M-x gnus-bug}, this will start a message to the | 2154 | @subsubheading Answer |
| 2426 | @email{bugs@@gnus.org,gnus bug mailing list} including information | ||
| 2427 | about your environment which make it easier to help you. | ||
| 2428 | |||
| 2429 | @ifnottex | ||
| 2430 | @node [8.6], , [8.5], FAQ 8 - Getting help | ||
| 2431 | @end ifnottex | ||
| 2432 | @subsubheading Question 8.6: | ||
| 2433 | 2155 | ||
| 2434 | I need real-time help, where to find it? | 2156 | Point your IRC client to irc.my.gnus.org channel |
| 2435 | 2157 | #mygnus. Don't be afraid if people there speak German, | |
| 2436 | 2158 | they are willing and capable of switching to | |
| 2437 | Answer: | 2159 | English when people from outside Germany enter. |
| 2438 | |||
| 2439 | Point your IRC client to irc.my.gnus.org channel | ||
| 2440 | #mygnus. Don't be afraid if people there speak German, | ||
| 2441 | they are willing and capable of switching to | ||
| 2442 | English when people from outside Germany enter. | ||
| 2443 | |||
| 2444 | 2160 | ||
| 2445 | @ifnottex | 2161 | @node FAQ 9 - Tuning Gnus |
| 2446 | @node FAQ 9 - Tuning Gnus, FAQ - Glossary, FAQ 8 - Getting help, Frequently Asked Questions | ||
| 2447 | @end ifnottex | ||
| 2448 | @subsection Tuning Gnus | 2162 | @subsection Tuning Gnus |
| 2449 | 2163 | ||
| 2450 | @menu | 2164 | @menu |
| 2451 | * [9.1]:: Starting Gnus is really slow, how to speed it up? | 2165 | * [9.1]:: Starting Gnus is really slow, how to speed it up? |
| 2452 | * [9.2]:: How to speed up the process of entering a group? | 2166 | * [9.2]:: How to speed up the process of entering a group? |
| 2453 | * [9.3]:: Sending mail becomes slower and slower, what's up? | 2167 | * [9.3]:: Sending mail becomes slower and slower, what's up? |
| 2454 | @end menu | 2168 | @end menu |
| 2455 | 2169 | ||
| 2456 | @ifnottex | 2170 | @node [9.1] |
| 2457 | @node [9.1], [9.2], FAQ 9 - Tuning Gnus, FAQ 9 - Tuning Gnus | 2171 | @subsubheading Question 9.1 |
| 2458 | @end ifnottex | ||
| 2459 | @subsubheading Question 9.1: | ||
| 2460 | 2172 | ||
| 2461 | Starting Gnus is really slow, how to speed it up? | 2173 | Starting Gnus is really slow, how to speed it up? |
| 2462 | |||
| 2463 | 2174 | ||
| 2464 | Answer: | 2175 | @subsubheading Answer |
| 2465 | 2176 | ||
| 2466 | The reason for this could be the way Gnus reads it's | 2177 | The reason for this could be the way Gnus reads it's |
| 2467 | active file, see the node "The Active File" in the Gnus | 2178 | active file, see the node "The Active File" in the Gnus |
| 2468 | manual for things you might try to speed the process up. | 2179 | manual for things you might try to speed the process up. |
| 2469 | An other idea would be to byte compile your ~/.gnus (say | 2180 | An other idea would be to byte compile your ~/.gnus.el (say |
| 2470 | @samp{M-x byte-compile-file RET ~/.gnus | 2181 | @samp{M-x byte-compile-file RET ~/.gnus.el |
| 2471 | RET} to do it). Finally, if you have require | 2182 | RET} to do it). Finally, if you have require |
| 2472 | statements in your .gnus, you could replace them with | 2183 | statements in your .gnus, you could replace them with |
| 2473 | eval-after-load, which loads the stuff not at startup | 2184 | eval-after-load, which loads the stuff not at startup |
| 2474 | time, but when it's needed. Say you've got this in your | 2185 | time, but when it's needed. Say you've got this in your |
| 2475 | ~/.gnus: | 2186 | ~/.gnus.el: |
| 2476 | |||
| 2477 | 2187 | ||
| 2478 | @example | 2188 | @example |
| 2479 | (require 'message) | 2189 | (require 'message) |
| 2480 | (add-to-list 'message-syntax-checks '(sender . disabled)) | 2190 | (add-to-list 'message-syntax-checks '(sender . disabled)) |
| 2481 | @end example | 2191 | @end example |
| 2482 | |||
| 2483 | @noindent | 2192 | @noindent |
| 2484 | then as soon as you start Gnus, message.el is loaded. If | 2193 | |
| 2485 | you replace it with | 2194 | then as soon as you start Gnus, message.el is loaded. If |
| 2486 | 2195 | you replace it with | |
| 2487 | 2196 | ||
| 2488 | @example | 2197 | @example |
| 2489 | (eval-after-load "message" | 2198 | (eval-after-load "message" |
| 2490 | '(add-to-list 'message-syntax-checks '(sender . disabled))) | 2199 | '(add-to-list 'message-syntax-checks '(sender . disabled))) |
| 2491 | @end example | 2200 | @end example |
| 2492 | |||
| 2493 | @noindent | 2201 | @noindent |
| 2494 | it's loaded when it's needed. | ||
| 2495 | |||
| 2496 | @ifnottex | ||
| 2497 | @node [9.2], [9.3], [9.1], FAQ 9 - Tuning Gnus | ||
| 2498 | @end ifnottex | ||
| 2499 | @subsubheading Question 9.2: | ||
| 2500 | 2202 | ||
| 2501 | How to speed up the process of entering a group? | 2203 | it's loaded when it's needed. |
| 2502 | |||
| 2503 | 2204 | ||
| 2504 | Answer: | 2205 | @node [9.2] |
| 2206 | @subsubheading Question 9.2 | ||
| 2505 | 2207 | ||
| 2506 | A speed killer is setting the variable | 2208 | How to speed up the process of entering a group? |
| 2507 | gnus-fetch-old-headers to anything different from nil, | 2209 | |
| 2508 | so don't do this if speed is an issue. To speed up | 2210 | @subsubheading Answer |
| 2509 | building of summary say | 2211 | |
| 2510 | 2212 | A speed killer is setting the variable | |
| 2213 | gnus-fetch-old-headers to anything different from nil, | ||
| 2214 | so don't do this if speed is an issue. To speed up | ||
| 2215 | building of summary say | ||
| 2511 | 2216 | ||
| 2512 | @example | 2217 | @example |
| 2513 | (gnus-compile) | 2218 | (gnus-compile) |
| 2514 | @end example | 2219 | @end example |
| 2515 | |||
| 2516 | @noindent | 2220 | @noindent |
| 2517 | at the bottom of your ~/.gnus, this will make gnus | 2221 | |
| 2518 | byte-compile things like | 2222 | at the bottom of your ~/.gnus.el, this will make gnus |
| 2519 | gnus-summary-line-format. | 2223 | byte-compile things like |
| 2520 | then you could increase the value of gc-cons-threshold | 2224 | gnus-summary-line-format. |
| 2521 | by saying something like | 2225 | then you could increase the value of gc-cons-threshold |
| 2522 | 2226 | by saying something like | |
| 2523 | 2227 | ||
| 2524 | @example | 2228 | @example |
| 2525 | (setq gc-cons-threshold 3500000) | 2229 | (setq gc-cons-threshold 3500000) |
| 2526 | @end example | 2230 | @end example |
| 2527 | |||
| 2528 | @noindent | 2231 | @noindent |
| 2529 | in ~/.emacs. If you don't care about width of CJK | 2232 | |
| 2530 | characters or use Gnus 5.10 or younger together with a | 2233 | in ~/.emacs. If you don't care about width of CJK |
| 2531 | recent GNU Emacs, you should say | 2234 | characters or use Gnus 5.10 or younger together with a |
| 2532 | 2235 | recent GNU Emacs, you should say | |
| 2533 | 2236 | ||
| 2534 | @example | 2237 | @example |
| 2535 | (setq gnus-use-correct-string-widths nil) | 2238 | (setq gnus-use-correct-string-widths nil) |
| 2536 | @end example | 2239 | @end example |
| 2537 | |||
| 2538 | |||
| 2539 | @noindent | 2240 | @noindent |
| 2540 | in ~/.gnus (thanks to Jesper harder for the last | ||
| 2541 | two suggestions). Finally if you are still using 5.8.8 | ||
| 2542 | or 5.9 and experience speed problems with summary | ||
| 2543 | buffer generation, you definitely should update to | ||
| 2544 | 5.10 since there quite some work on improving it has | ||
| 2545 | been done. | ||
| 2546 | 2241 | ||
| 2547 | @ifnottex | 2242 | in ~/.gnus.el (thanks to Jesper harder for the last |
| 2548 | @node [9.3], , [9.2], FAQ 9 - Tuning Gnus | 2243 | two suggestions). Finally if you are still using 5.8.8 |
| 2549 | @end ifnottex | 2244 | or 5.9 and experience speed problems with summary |
| 2550 | @subsubheading Question 9.3: | 2245 | buffer generation, you definitely should update to |
| 2246 | 5.10 since there quite some work on improving it has | ||
| 2247 | been done. | ||
| 2551 | 2248 | ||
| 2552 | Sending mail becomes slower and slower, what's up? | 2249 | @node [9.3] |
| 2553 | 2250 | @subsubheading Question 9.3 | |
| 2554 | 2251 | ||
| 2555 | Answer: | 2252 | Sending mail becomes slower and slower, what's up? |
| 2556 | 2253 | ||
| 2557 | The reason could be that you told Gnus to archive the | 2254 | @subsubheading Answer |
| 2558 | messages you wrote by setting | ||
| 2559 | gnus-message-archive-group. Try to use a nnml group | ||
| 2560 | instead of an archive group, this should bring you back | ||
| 2561 | to normal speed. | ||
| 2562 | |||
| 2563 | 2255 | ||
| 2564 | @ifnottex | 2256 | The reason could be that you told Gnus to archive the |
| 2565 | @node FAQ - Glossary, , FAQ 9 - Tuning Gnus, Frequently Asked Questions | 2257 | messages you wrote by setting |
| 2566 | @end ifnottex | 2258 | gnus-message-archive-group. Try to use a nnml group |
| 2259 | instead of an archive group, this should bring you back | ||
| 2260 | to normal speed. | ||
| 2261 | |||
| 2262 | @node FAQ - Glossary | ||
| 2567 | @subsection Glossary | 2263 | @subsection Glossary |
| 2568 | 2264 | ||
| 2569 | @table @dfn | 2265 | @table @dfn |
| 2570 | 2266 | ||
| 2571 | @item ~/.gnus | 2267 | @item ~/.gnus.el |
| 2572 | When the term ~/.gnus is used it just means your Gnus | 2268 | When the term ~/.gnus.el is used it just means your Gnus |
| 2573 | configuration file. You might as well call it ~/.gnus.el or | 2269 | configuration file. You might as well call it ~/.gnus or |
| 2574 | specify another name. | 2270 | specify another name. |
| 2575 | |||
| 2576 | 2271 | ||
| 2577 | @item Back End | 2272 | @item Back End |
| 2578 | In Gnus terminology a back end is a virtual server, a layer | 2273 | In Gnus terminology a back end is a virtual server, a layer |
| 2579 | between core Gnus and the real NNTP-, POP3-, IMAP- or | 2274 | between core Gnus and the real NNTP-, POP3-, IMAP- or |
| 2580 | whatever-server which offers Gnus a standardized interface | 2275 | whatever-server which offers Gnus a standardized interface |
| 2581 | to functions like "get message", "get Headers" etc. | 2276 | to functions like "get message", "get Headers" etc. |
| 2582 | |||
| 2583 | 2277 | ||
| 2584 | @item Emacs | 2278 | @item Emacs |
| 2585 | When the term Emacs is used in this FAQ, it means either GNU | 2279 | When the term Emacs is used in this FAQ, it means either GNU |
| 2586 | Emacs or XEmacs. | 2280 | Emacs or XEmacs. |
| 2587 | |||
| 2588 | 2281 | ||
| 2589 | @item Message | 2282 | @item Message |
| 2590 | In this FAQ message means a either a mail or a posting to a | 2283 | In this FAQ message means a either a mail or a posting to a |
| 2591 | Usenet Newsgroup or to some other fancy back end, no matter | 2284 | Usenet Newsgroup or to some other fancy back end, no matter |
| 2592 | of which kind it is. | 2285 | of which kind it is. |
| 2593 | |||
| 2594 | 2286 | ||
| 2595 | @item MUA | 2287 | @item MUA |
| 2596 | MUA is an acronym for Mail User Agent, it's the program you | 2288 | MUA is an acronym for Mail User Agent, it's the program you |
| 2597 | use to read and write e-mails. | 2289 | use to read and write e-mails. |
| 2598 | |||
| 2599 | 2290 | ||
| 2600 | @item NUA | 2291 | @item NUA |
| 2601 | NUA is an acronym for News User Agent, it's the program you | 2292 | NUA is an acronym for News User Agent, it's the program you |
| 2602 | use to read and write Usenet news. | 2293 | use to read and write Usenet news. |
| 2603 | |||
| 2604 | @end table | ||
| 2605 | 2294 | ||
| 2606 | @c @bye | 2295 | @end table |
| 2607 | 2296 | ||
| 2608 | @ignore | 2297 | @ignore |
| 2609 | arch-tag: 64dc5692-edb4-4848-a965-7aa0181acbb8 | 2298 | arch-tag: 64dc5692-edb4-4848-a965-7aa0181acbb8 |
| 2610 | @end ignore | 2299 | @end ignore |
diff --git a/man/message.texi b/man/message.texi index 5e488b0e7cf..8a10ea2445d 100644 --- a/man/message.texi +++ b/man/message.texi | |||
| @@ -8,7 +8,7 @@ | |||
| 8 | @copying | 8 | @copying |
| 9 | This file documents Message, the Emacs message composition mode. | 9 | This file documents Message, the Emacs message composition mode. |
| 10 | 10 | ||
| 11 | Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 | 11 | Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 |
| 12 | Free Software Foundation, Inc. | 12 | Free Software Foundation, Inc. |
| 13 | 13 | ||
| 14 | @quotation | 14 | @quotation |