[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3. 概略バッファー

概略バッファー (summary buffer) ではそれぞれの記事が一行で表示されます。 その中を動き回り、記事を読み、投稿し、返答をすることができます。

概略バッファーに移る一番普通の方法は、グループバッファーでグループを選択 することです (see section グループの選択)。

好きなだけたくさんの概略バッファーを開いておくことができます。

概略モードのツールバーをカスタマイズすることができます。M-x customize-apropos RET gnus-summary-tool-bar を試してみてください。この 機能を利用できるのは Emacs だけですが。

v キーはユーザー用に予約されています。そのまま何かのコマンドに割り 当てても構いませんが、接頭キーとして使う方が良いでしょう。例です:

 
;; 副スレッドのスコアを下げる。
(define-key gnus-summary-mode-map (kbd "v -") "LrS")

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.1 概略バッファーの様式

Gnus は変数 gnus-extract-address-components の値を From ヘッ ダーの名前とアドレスの部分を抽出するための関数として使います。すでに定義 されている関数が二つ存在します: ディフォルト は gnus-extract-address-components で、とても簡単に割り切った解決 法ですが非常に速く動作します。mail-extract-address-components は 良く動作しますが遅いです。ディフォルトの関数は 5% の割合で間違った答を返 します。もしこれに我慢ならないのであれば、代わりに他の関数を使ってくださ い:

 
(setq gnus-extract-address-components
      'mail-extract-address-components)

gnus-summary-same-subject は今読んでいる記事が、その前の記事と同 じ表題 (subject) であることを示す文字列です。この文字列は、それを要求す る書法仕様で使われます。ディフォルトでは "" です。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.1.1 概略バッファーの行

変数 gnus-summary-line-format の値を変えることによって、概略バッ ファーの行の様式 (format) を変更することができます。いくつかの拡 張 (see section 書法仕様変数) とともに、普通の format 文字列 と同じように動作します。

行には常にコロンかポイント位置のマーカーが存在していなければなりません。 操作した後に、カーソルはいつもコロンかポイント位置のマーカーの場所に移動 します。(もちろん、この動作を変えることができないとしたら Gnus にはある まじきことです。関数 gnus-goto-colon を、あなたが好きなカーソルの 動きになるように、新たに書けば良いのです。) See section ポイントの移動.

ディフォルトの文字列は ‘%U%R%z%I%(%[%4L: %-23,23f%]%) %s\n’ です。

以下の様式指示文字と拡張様式指示を使うことができます:

N

記事数。

S

表題の文字列。gnus-list-identifiers の設定によってメーリングリス トの標識が削除されます。See section 記事を隠す.

s

スレッド (thread) の元記事であるときか直前の記事が違う表題のときはその表 題で、それ以外は gnus-summary-same-subject。 (gnus-summary-same-subject はディフォルトで ""。)

F

完全な From 欄。

n

名前 (From 欄より)。

f

名前、To 欄の内容、または Newsgroups 欄の内容のどれかで す (see section To From Newsgroups)。

a

名前 (From 欄より)。これと n との違いは、これは変 数 gnus-extract-address-components で指定されている関数を使って名 前を取得することです。この方が遅いですが、おそらくより完全に近いでしょう。

A

名前 (From 欄より)。これは a と同じように動作します。

L

記事の行数。

c

記事の文字数。この名前指定子は (nnfolder のような) いくつかの選択方法を サポートしません。

k

整形された記事の文字数; 例えば ‘1.2k’ や ‘0.4M’。

I

スレッドのレベルによる字下げ (see section スレッドをカスタマイズする)。

B

複雑な trn 様式のスレッド木 (tree)。どのような応答が行なわれたかの記録を 表示します。スレッドはこのように描かれるでしょう:

 
>
+->
| +->
| | \->
| |   \->
| \->
+->
\->

以下のオプションで見栄えをカスタマイズすることができます。ディフォルト の ASCII 文字を線描画用の図案で置き換えることによって、スレッ ド表示を実に巧妙に見せることができることに気付いてください。

gnus-sum-thread-tree-root

スレッドの根 (root) に使われます。nil だったら、代わりに表題を使 います。ディフォルトは ‘> ’ です。

gnus-sum-thread-tree-false-root

スレッドのにせの根に使われます (see section 無束縛スレッド)。nil だっ たら、代わりに表題を使います。ディフォルトは ‘> ’ です。

gnus-sum-thread-tree-single-indent

単一のメッセージのスレッドに使われます。nil だったら、代わりに表 題を使います。ディフォルトは ‘’ です。

gnus-sum-thread-tree-vertical

縦線の描画に使われます。ディフォルトは ‘| ’ です。

gnus-sum-thread-tree-indent

行下げ (indenting) に使われます。ディフォルトは ‘ ’ です。

gnus-sum-thread-tree-leaf-with-other

兄弟がいる葉っぱに使われます。ディフォルトは ‘+-> ’ です。

gnus-sum-thread-tree-single-leaf

兄弟がいない葉っぱに使われます。ディフォルトは ‘\-> ’ です。

T

記事が元記事であれば何も表示せず、そうでない場合はたくさんの空白です (そ れより後のものをすべて画面の外に追い出してしまいます)。

[

開き括弧。普通は ‘[’ ですが、養子記事には ‘<’ にすることができ ます (see section スレッドをカスタマイズする)。

]

閉じ括弧。普通は ‘]’ ですが、養子記事には ‘>’ にすることができ ます。

>

それぞれのスレッドのレベルに対して一つの空白。

<

(20 - スレッドレベル) 個の空白。

U

未読。See section 既読記事.

R

この紛らわしい名前指定子は「第二の印」(the secondary mark) です。この印 は記事がすでに返答済みのものか、キャッシュされたものか、あるいは保存され たものかを表します。See section 他の印.

i

数値としてのスコア (see section スコア)。

z

これは、zcore でディフォルトのレベルよりも上であれば ‘+’ で、ディフォ ルトのレベルよりも下であれば ‘-’ です。 gnus-summary-default-score との差 が gnus-summary-zcore-fuzz よりも小さいと、この仕様は使われません。

V

スレッド全体のスコア。

x

Xref.

D

Date.

d

DD-MM 様式による Date

o

YYYYMMDDTHHMMSS 様式による Date

M

Message-ID.

r

References.

t

現在の副スレッドの記事の数。この仕様を使うと概略バッファーの生成が幾分遅 くなります。

e

記事に子記事があると、‘=’ (gnus-not-empty-thread-mark) が表 示されます。

P

行数。

O

ダウンロードの印。

*

カーソルを (最初のコロンの後ろの代わりに) 置く場所。

&user-date;

経過時間の様式。いろいろな様式 が gnus-summary-user-date-format-alist で定義されています。

u

利用者定義指定子。フォーマット文字列の中の次の文字は英字でなければなりま せん。これにより Gnus は関数 gnus-user-format-function-x を 呼び出しますが、ここで x は ‘%u’ の次の文字です。関数には現在 の記事のヘッダーが引数として渡されます。関数は文字列を返さなければなりま せん。それは他の概略指定と同様に概略に挿入されます。

%(’ と ‘%)’ の間にあるテキストは、そこにマウスがあるとき に gnus-mouse-face でハイライトされます。そういう領域は一つだけで す。

%U’ (状態), ‘%R’ (返答済み), ‘%z’ (zcore) の扱いには気を 付ける必要があります。効率のために、Gnus はこれらの文字がどの桁に現れる かを計算し、『ハード・コード』します。これは、可変長の仕様の後では、これ らは意味を持たないということです。まぁ、さすがに逮捕はされないでしょうが、 概略バッファーは変になります。それでも十分悲しいでしょうけど。

賢い選択はこれらの指定をできるだけ左に持ってくることです。(でも、そうい うことはすべてに当てはまるのではないでしょうか。閑話休題。)

この制限は将来の版では無くなるかもしれません。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.1.2 To From Newsgroups

いくつかのグループ (特にアーカイブグループ) では From ヘッダーは あまり興味を引きません。そこのすべての記事はあなたによって書かれたもので すから。代わりに、ToNewsgroups ヘッダーの情報を表示す るためには、三つのことを決める必要があります: どの情報を集めるか, どこに 表示するか, いつ表示するか。

  1. 追加のヘッダーの情報は gnus-extra-headers により制御されます。こ れはヘッダーのシンボルのリストです。例えば:
     
    (setq gnus-extra-headers
          '(To Newsgroups X-Newsreader))
    

    これによって Gnus はこれらの三つのヘッダーを取得しようとし、後の容易な取 得のためにヘッダー構造に保存します。

  2. これらの追加のヘッダーの値は gnus-extra-function 関数を通じて取得 することができます。これは X-Newsreader ヘッダーを使う書式行の仕 様です:
     
    "%~(form (gnus-extra-header 'X-Newsreader))@"
    
  3. gnus-ignored-from-addresses 変数はいつ ‘%f’ 概略行仕様 が To, NewsreaderFrom ヘッダーを返せば良いかを 決めます。この正規表現が From ヘッダーの内容と合致すると、 ToNewsreader ヘッダーの値が代わりに使用されます。

    それらの From フィールドが入れ替わっている記事と、普通の記事を区 別するために、概略行の To または Newsgroups ヘッダーに、あ る文字列が前置されます。その文字列はディフォルトで、To に は ‘-> ’ が、Newsgroups には ‘=> ’ が使われますが、 gnus-summary-to-prefixgnus-summary-newsgroup-prefix に よって、それらの文字列をカスタマイズすることができます。

関連する変数は nnmail-extra-headers で、 overview (NOV) ファイルを作る際にいつ追加のヘッダーを含めるか を制御します。古い overview ファイルがある場合は、この変数を変更した後に サーバーバッファーに ^ で入って適切なメールサーバー (例え ば nnml) で g を押し、再生成する必要があります。

さらに gnus-summary-line-format 変数の %n 仕様 を %f 仕様に変更することによってデータを表示するように、Gnus に指 示する必要があります。

要約すると、普通は以下のようなものを ‘~/.gnus.el’ に置くことになり ます:

 
(setq gnus-extra-headers
      '(To Newsgroups))
(setq nnmail-extra-headers gnus-extra-headers)
(setq gnus-summary-line-format
      "%U%R%z%I%(%[%4L: %-23,23f%]%) %s\n")
(setq gnus-ignored-from-addresses
      "Your Name Here")

(上記の値は Gnus のディフォルト値です。あなたの役に立つように変えてくだ さい。)

ニュース管理人、またはニュース管理人を説得してサポートの追加をしてもらお うと思っている利用者のみなさんへのご注意:

NOV ファイルの生成を制御できるメールグループでは、上記のことは たいていの場合役立ちます。しかし、管理人を説得して (特に INN の普通の実 装において) 以下のものを ‘overview.fmt’ ファイルの最後に追加しても うらうことができれば、メールグループでの追加ヘッダーのようにそれを使うこ とができます。

 
Newsgroups:full

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.1.3 概略バッファーのモード行

概略のモード行の様式も変更することができます (see section モード行書法仕様)。gnus-summary-mode-line-format を何でも好きなものに 設定してください。ディフォルトは ‘Gnus: %%b [%A] %Z’ です。

以下はあなたが遊ぶことのできる要素たちです:

G

グループ名。

p

接頭語を取り除いた名前。

A

現在の記事番号。

z

現在の記事スコア。

V

Gnus バージョン。

U

そのグループでの未読記事の数。

e

概略バッファーに表示されていない未読記事の数。

Z

未読と未選択の記事の数とともに表される文字列で、未読かつ未選択の記事があ る場合の ‘<%U(+%e) more>’、および未読記事のみの場合 の ‘<%U more>’ のどちらかです。

g

短縮グループ名。例えば、‘rec.arts.anime’ は ‘r.a.anime’ に短縮 されます。

S

現在の記事の表題。

u

利用者定義の仕様 (see section 利用者定義の指定)。

s

現在のスコアファイルの名前 (see section スコア)。

d

保留記事の数 (see section 未読記事)。

t

可視印付き記事の数 (see section 未読記事)。

r

その概略バッファーで記事を読んだ結果、既読の印が付いた記事の数。

E

スコアファイルによって抹消された記事の数。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.1.4 概略のハイライト

gnus-visual-mark-article-hook

このフックは記事を選択した後に実行されます。これは何らかの方法で記事をハ イライトするように意図されています。gnus-visualnil だっ たら実行されません。

gnus-summary-update-hook

このフックは概略行が変化したときに呼ばれます。 gnus-visualnil だったら実行されません。

gnus-summary-selected-face

これは概略バッファーでの現在の記事をハイライトするために使われるフェー ス (もしくは、ある人たちが「フォント」と呼ぶようなもの) です。

gnus-summary-highlight

概略行はこの変数にしたがってハイライトされます。この変数は要素 が (form . face) の形式のリストです。例えば、印付きの 記事を斜体、高いスコアの記事を太字にしたければ、この変数を次のように設定 することができます。

 
(((eq mark gnus-ticked-mark) . italic)
 ((> score default) . bold))

ご想像のとおり、formnil でない値を返すと、face が その行に適用されます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.2 概略間の移動

すべての直接移動命令は数値接頭引数を受け付け、かなり期待どおりに動作する でしょう。

これらの命令はどれも記事を選択しません。

G M-n
M-n

概略行の次の未読記事に移ります (gnus-summary-next-unread-subject)。

G M-p
M-p

概略行の前の未読記事に移ります (gnus-summary-prev-unread-subject)。

G g

記事番号を尋ね、その記事を表示せずに、その概略行に行きま す (gnus-summary-goto-subject)。

Gnus が次のグループ移動することを確認するためにキー入力を求めた場合、 C-n キーと C-p キーを使うことによって、実際にグループバッファー に戻らなくても、次に読むグループを探すことができます。

概略の移動に関連した変数:

gnus-auto-select-next

移動命令の一つ (n のような) を発したときに現在の記事の後に未読記事 が無いと、Gnus は次のグループに移動することをうながします。この変数 が t で次のグループが空っぽだったら、Gnus は概略モードを抜けてグ ループバッファーに戻ります。この変数が t でも nil でもなけ れば、Gnus はさらに次の未読記事があるグループを選択します。特別な場合と して、この変数が quietly だったら、Gnus は確認をせずに次のグルー プを選択します。この変数が almost-quietly だった場合は、グループ の一番最後の記事を読んでいたときに限って同じことが起こります。最後に、も しこの変数が slightly-quietly だったら、Z n 命令は確認をせ ずに次のグループに移ります。グループレベル も参照してください。

gnus-auto-select-same

nil でないと、すべての移動命令は現在の記事と同じ表題の記事に移動 しようとします。(「同じ」はここでは「大体同じ」という意味かもしれません。 詳細は gnus-summary-gather-subject-limit を見てくださ い (see section スレッドをカスタマイズする)。) 同じ表題の記事が無いときは、最初の 未読記事に移動します。

この変数は、スレッド表示を行なっているときはあまり役に立たないでしょう。

gnus-summary-check-current

これが nil ではない場合、すべての『未読』移動命令は、現在の記事が 未読だったら次 (もしくは前) の記事に移動しません。代わりに、それらは現在 の記事を選びます。

gnus-auto-center-summary

nil でないと、Gnus は概略バッファーでのポイントを常に真中に保ちま す。これをすると、とてもこぎれいになりますが、遅いネットワークに接続して いたり、この Emacs らしくない流儀が好きになれないのであれば、この変数 を nil にすることによって、普通の Emacs のスクロールにすることが できます。これは概略バッファーの水平方向でポイントが真ん中になるようにす る操作 (horizontal re-centering) も禁止してしまうので、非常に長いスレッ ドを読むときは不便かもしれません。

この変数は数値でも構いません。その場合は、ウィンドウの先頭からその数の行 だけ下がった位置に常にポイントがあるように制御されます。

gnus-summary-stop-at-end-of-message

もし nil でなければ、SPC を叩いても次の記事に行かずに、その 記事の最後にとどまります。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.3 記事の選択


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.3.1 選択命令

以下の移動コマンドはどれも数値接頭引数を受け付けません。それらはすべて、 記事を選択して表示します。

新しい記事を取り込んだり、グループを再表示したいときは 概略バッファーを抜ける を参照してください。

SPACE

現在の記事、またはそれが既読だった場合は次の未読記事を選択しま す (gnus-summary-next-page)。

すでに記事ウィンドウを開いているときに再び SPACE を押すと、その記 事はスクロールされます。これによって、ニュースグループ全体 を SPACE だけで便利に通読することができます。 See section 記事のスクロール.

G n
n

次の未読記事に移動します (gnus-summary-next-unread-article)。

G p
p

前の未読記事に移動します (gnus-summary-prev-unread-article)。

G N
N

次の記事に移動します (gnus-summary-next-article)。

G P
P

前の記事に移動します (gnus-summary-prev-article)。

G C-n

同じ表題の次の記事に移動します (gnus-summary-next-same-subject)。

G C-p

同じ表題の前の記事に移動します (gnus-summary-prev-same-subject)。

G f
.

最初の未読記事に移動します (gnus-summary-first-unread-article)。

G b
,

最高スコアの未読記事に移動しま す (gnus-summary-best-unread-article)。接頭引数が与えられると、ディ フォルトのスコアより大きいスコアを持つ最初の未読記事に移動します。

G l
l

直前に読んだ記事に移動します (gnus-summary-goto-last-article)。

G o

概略の履歴 (history) から最後の記事を一つ取り出して選択しま す (gnus-summary-pop-article)。この命令が上の命令と違うのは、 l が最後の二つの記事の間を移動するだけなのに対して、これは好きなだ け前の記事を履歴から選び出すことができる点です。これに多少関係することに ついて、記事のバックログ を参照してください (これらの命令をたくさん 使うのであれば)。

G j
j

記事番号か Message-ID を尋ね、それからその記事に行きま す (gnus-summary-goto-article)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.3.2 選ぶための変数

記事の移動と選択に関連するいくつかの変数:

gnus-auto-extend-newsgroup

この変数が nil でないと、すべての移動命令は、記事が概略バッファー に表示されていない場合でも、前 (もしくは次) の記事に移動しようとします。 その際 Gnus はサーバーから記事を取得して、記事バッファーに表示します。

gnus-select-article-hook

このフックは記事が選択されたときに常に呼ばれます。ディフォルト は nil です。講読するそれぞれの記事をエージェントに保存させたい場 合は、このフックに gnus-agent-fetch-selected-article を追加すれば 良いでしょう。

gnus-mark-article-hook

このフックは記事が選択されたときに常に呼ばれます。これは記事に既読の印を 付けるために使われることを意図しています。ディフォルト値 は gnus-summary-mark-read-and-unread-as-read で、ほとんどすべての 読んだ記事の印を gnus-read-mark に変更します。この関数に影響され ない記事は、可視、保留、期限切れ消去可能記事だけです。未読記事に既読の印 を付けたいだけであれば、代わり に gnus-summary-mark-unread-as-read を使うことができます。 gnus-low-score-markgnus-del-mark (など) の印はそのまま 残します。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.4 記事のスクロール

SPACE

SPACE を押すと、現在の記事を一ページ先にスクロールします。記事の最 後に行き着いた場合は次の記事を選択します (gnus-summary-next-page)。

gnus-article-skip-boring が非-nil で、かつ記事の残りに引用 と署名しか無い場合、それはスキップされ、代わりに次の記事が表示されます。 gnus-article-boring-faces で、つまらないと思うものをカスタマイズ することができます。どんなにうんざりするものでも、C-M-v を使うこと によって、手動で記事のページを見ることはできます。

DEL

現在の記事を一ページ前にスクロールします (gnus-summary-prev-page)。

RET

現在の記事を一行先にスクロールします (gnus-summary-scroll-up)。

M-RET

現在の記事を一行後ろへスクロールします (gnus-summary-scroll-down)。

A g
g

現在の記事を (再) 取得します (gnus-summary-show-article)。もし接 頭引数が一つ与えられると、サーバーから来たままの完全な『生の』記事を表示 します。もし接頭引数が 2回与えられると (つまり C-u C-u g')、現在の 記事を取得しますが、記事をトリートメントする関数は実行しません。

接頭引数を与えると、手動で文字セットの操作を行なうことができます。 C-u 0 g cn-gb-2312 RET により、メッセージはあたか も cn-gb-2312 文字セットでエンコードされたかのようにデコードされ ます。以下のような設定を用意しておくと、C-u 1 g で同じ効果を得るこ とができます。

 
(setq gnus-summary-show-article-charset-alist
      '((1 . cn-gb-2312)
        (2 . big5)))
A <
<

記事の最初までスクロールします。 (gnus-summary-beginning-of-article)。

A >
>

記事の最後までスクロールします (gnus-summary-end-of-article)。

A s
s

記事バッファーでインクリメンタルサーチ (isearch) を行ないま す (gnus-summary-isearch-article)。

h

記事バッファーを選択します (gnus-summary-select-article-buffer)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.5 返答、フォローアップ、投稿


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.5.1 概略でのメールの命令

メールメッセージを作成するための命令:

S r
r

現在の記事を書いた人に返答のメールを送ります (gnus-summary-reply)。

S R
R

現在の記事を書いた人に、元記事を含んだ返答のメールを出しま す (gnus-summary-reply-with-original)。この命令はプロセス/接頭引 数の習慣を使います。

S w

現在の記事を書いた人に対して、広い返答 (wide reply) をしま す (gnus-summary-wide-reply)。「広い返答」とはヘッダー の To, From, (もしくは Reply-to) と Cc) のす べての人に返答をすることです。Mail-Followup-To があれば、代わりに それが使われます。

S W

現在の記事に元記事を含んだ広い返答のメールを送りま す (gnus-summary-wide-reply-with-original)。この命令はプロセス/接 頭引数の習慣を使います。ただし、受取人の決定には最初の記事のヘッダーだけ を使います。

S v

現在の記事を書いた人に対して、非常に広い返答 (very wide reply) をしま す (gnus-summary-very-wide-reply)。「非常に広い返答」とは、プロセ ス/接頭引数で指定されたすべての記事のヘッダーの To, From, (もしくは Reply-to) と Cc) のすべての人に返答をすることで す。この命令はプロセス/接頭引数の習慣を使います。

S V

現在の記事に元記事を含んだ非常に広い返答のメールを送りま す (gnus-summary-very-wide-reply-with-original)。この命令はプロセ ス/接頭引数の習慣を使います。

S B r

現在の記事を書いた人に対して返答をしますが Reply-To フィールドは 無視します (gnus-summary-reply-broken-reply-to)。メーリングリスト がそのリストを指す Reply-To を過って設定するためにこれが必要なの であれば、おそらくあなたは代わりに broken-reply-to グループパラメー ターを設定する必要があります。そうすれば、ものごとは正しく働くようになる でしょう。See section グループパラメーター.

S B R

現在の記事を書いた人に対して元記事を含んだ返答をします が Reply-To フィールドは無視しま す (gnus-summary-reply-broken-reply-to-with-original)。

S o m
C-c C-f

誰か他の人に現在の記事を転送します (gnus-summary-mail-forward)。 接頭引数が与えられない場合、メッセージ は message-forward-as-mime およ び message-forward-show-mml の値に従ったやり方で転送されます。接 頭引数が 1 だったら、デコードされたメッセージが直接埋め込まれた転送用の バッファーが作られます。2 だったら rfc822 形式の MIME パートが 挿入されます。この場合、元のメッセージはデコードされません。3 ではデコー ドされた rfc822 形式の MIME パートが挿入されます (実際に送信す る際に再びエンコードされます)。接頭引数 4 では、1 の場合と同じ動作になり ます。接頭引数がこれら以外の場合には、message-forward-as-mime の 値を一時的に反転して、接頭引数が与えられなかった場合と同じ動作を行ないま す。ディフォルトでは、デコードされたメッセージが rfc822 形式 の MIME パートとして生成されます。

S m
m

メールを作成します (gnus-summary-mail-other-window)。ディフォルト では現在のグループの投稿様式 (posting style) を使います。接頭引数が与え られると、それは使いません。もし接頭引数が 1 だったら、どのグループの投 稿様式を使うかを尋ねます。

S i

ニュースを作成します (gnus-summary-news-other-window)。ディフォル トでは現在のグループに投稿します。接頭引数が与えられると、現在のグループ 名は使われません。もし接頭引数が 1 だったら、どのグループに投稿するかを 尋ねます。

この関数は、たとえメールグループで使われたとしても、実際にはニュースの様 式を用意します。これは、メッセージを実際にはネットワーク経由で送らずに、 メールグループに「投稿」するのに便利です; それらは当のグループに単に直接 セーブされます。対応するバックエンドが投稿のためのメソッド (request-post method) を持っていなければなりませんが。

S D b

メールを送ったのに、何らかの理由 (アドレスの間違い、転送の不調) で戻って きたときに、この命令を使って戻ってきたメールをもう一回送ることができま す (gnus-summary-resend-bonced-mail)。メールバッファーにそのメー ルが現れて、そこでもう一度メールを送る前にヘッダーを編集することができま す。この命令に接頭引数を与えると、戻ってきたメールが何か他のメールへの返 答であった場合に、Gnus はそのメールを取得して、それのヘッダーの精密調査 ができるように画面に表示しようとします。ま、これはとてもよく失敗しますけ ど。

S D r

上の命令と混同しないでください。gnus-summary-resend-message は現 在のメッセージを送る宛先のアドレスの入力を促して、その場所にメールを送り ます。メッセージのヘッダーは変更されません—しかし Resent-To, Resent-From などの、たくさんのヘッダーが付け加えます。これは、(お そらく) あなた自身を To 欄に書いた本人にもメールを送ってしまうと いうことです。これは混乱を招くでしょう。ですから当然、あなたが本当に邪悪 な人でなければ、これは使わないでしょう。

この命令は主に、あなたがいくつかのメールアカウントを持っていて、自分自身 の違ったアカウントにメールを転送したいときに用いられます。(もしあなた が root であり、postmaster でもあり、root 宛て に postmaster へのメールを受け取った場合は、それ を postmaster にも再送する必要があるかもしれません。秩序がなけれ ばなりません! (Ordnung muss sein!))

この命令はプロセス/接頭引数の習慣に従います (see section プロセス/接頭引数)。

S D e

一つ前のコマンドに似ていますが、再送する前にあたかも新しいメッセージのよ うに編集することができます。

S O m

現在の一連の記事 (see section 記事のデコード) の要約を作り、メールでその 結果を送ります (gnus-uu-digest-mail-forward)。この命令はプロセ ス/接頭引数の習慣に従います (see section プロセス/接頭引数)。

S M-c

現在の記事の書き手に、過剰なクロスポストへの苦情のメールを送りま す (gnus-summary-mail-crosspost-complaint)。

この命令は、現在 Usenet に横行しているクロスポストの世界的流行に対して反 撃を行なう手段として提供されています。これは変 数 gnus-crosspost-complaint を序文にして返答を作成します。この命 令はプロセス/接頭引数の習慣 (see section プロセス/接頭引数) に従い、それぞれの メールを送る前に送信するかどうかの確認をします。

また See (message-ja)Header Commands section ‘ヘッダー命令’ in The Message Manual, にさらなる情報があります。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.5.2 概略の投稿命令

ニュースの記事を投稿するための命令:

S p
a

投稿するための記事を作成します (gnus-summary-post-news)。ディフォ ルトでは現在のグループに投稿します。接頭引数が与えられると、現在のグルー プ名は使われません。もし接頭引数が 1 だったら、代わりに別のどのグループ に投稿するかを尋ねます。

S f
f

現在の記事のフォローアップを投稿します (gnus-summary-followup)。

S F
F

元記事を取り込んで、現在の記事にフォローアップをしま す (gnus-summary-followup-with-original)。この命令はプロセス/接頭 引数の習慣を用います。

S n

メールのメッセージを受け取っていたとしても、現在の記事のフォローアップを ニュースに投稿しま す (gnus-summary-followup-to-mail)。この命令はプロセス/接頭引数の 習慣を用います。

S N

メールのメッセージを受け取っていたとしても、元記事を引用して、現在の記事 のフォローアップをニュースに投稿しま す (gnus-summary-followup-to-mail-with-original). この命令はプロ セス/接頭引数の習慣を用います。

S o p

現在の記事をニュースグループに転送しま す (gnus-summary-post-forward)。接頭引数が与えられない場合、メッ セージは message-forward-as-mime およ び message-forward-show-mml の値に従ったやり方で転送されます。接 頭引数が 1 だったら、デコードされたメッセージが直接埋め込まれた転送用の バッファーが作られます。2 だったら rfc822 形式の MIME パートが 挿入されます。この場合、元のメッセージはデコードされません。3 ではデコー ドされた rfc822 形式の MIME パートが挿入されます (実際に送信す る際に再びエンコードされます)。接頭引数 4 では、1 の場合と同じ動作になり ます。接頭引数がこれら以外の場合には、message-forward-as-mime の 値を一時的に反転して、接頭引数が与えられなかった場合と同じ動作を行ないま す。ディフォルトでは、デコードされたメッセージが rfc822 形式 の MIME パートとして生成されます。

S O p

現在の一連の記事を要約して、その結果をニュースグループに送りま す (gnus-uu-digest-post-forward)。この命令はプロセス/接頭引数の習 慣を用います。

S u

ファイルを uuencode して分割し、それらを連続して投稿しま す (gnus-uu-post-news)。(see section uuencode と投稿)。

また See (message-ja)Header Commands section ‘ヘッダー命令’ in The Message Manual, にさらなる情報があります。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.5.3 概略メッセージ命令

S y

現在の記事を、すでに存在するメッセージ作成バッファーに貼り付けま す (gnus-summaryyank-message)。この命令は貼り付けたいメッセージバッ ファーの入力を促し、プロセス/接頭引数の習慣を理解しま す (see section プロセス/接頭引数)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.5.4 記事を取り消す

何かを書いた後で、本当に、本当に、ほ ん と う にそれを投稿していなければ なぁと思ったことはありませんか。

えーと、メールは取り消すことはできないのですが、ニュースの投稿は取り消す ことができます。

取り消したい記事を見つけてください (取り消すことができるのは自分の記事だ けです。変なことは試さないでください)。そして CS c を押 してください (gnus-summary-cancel-article)。あなたの記事が取り消 されます—世界中の機械があなたの記事を取り消します。この命令はプロセ ス/接頭引数の習慣を用います (see section プロセス/接頭引数)。

しかし注意して欲しいのは、すべてのサイトが取り消しを扱っているわけではな いことです。ですから、たいていのサイトが問題の記事を取り消しても、あちこ ちであなたの記事は生き残るかもしれません。

Gnus は取り消すときに『現在』の選択方法を使います。標準の投稿方法を使い たいのであれば、文字接頭引数 ‘a’ を使ってくださ い (see section シンボルの接頭引数)。

Gnus は Cancel-Lock ヘッダー (see (message-ja)Canceling News section ‘ニュースを取り消す’ in The Message Manual) を使って、あなただ けがあなたのメッセージをキャンセルできるようにします。

もし何か間違いをしたのに気付いて、訂正をしたいのであれば、「代替」 (superseding) 記事を投稿して元記事を置き換えることができます。

元記事のところへ移動して、S s を押してくださ い (gnus-summary-supersede-article)。それを普通に送信する前に、記 事を好きなように編集することができます。

代替に関しても、取り消しと同じことが当てはまります。こちらの方がもっとよ く当てはまるかもしれません: いくつかのサイトは代替を受け付けません。これ らのサイトでは、ほとんど同じ記事を二回投稿したようになってしまいます。

もしさっき記事を投稿したばかりですぐに変更したくなった場合、記事が最初に あなたのサイトに現れる前に取り消し/代替をするための巧妙な手段があります。 まず、投稿バッファー (*sent ... * のようになっています) に戻って ください。そこにはあなたがちょうど投稿した記事があり、すべてのヘッダーが そのままあります。Message-ID ヘッダーを Cancel もしく は Supersedes に変更してください。そして、いつもやっているように 単に C-c C-c を押して記事を送信してください。前の記事は取り消され るか置き換えられるでしょう。

ちょっと覚えておいてください: ’supersede’ (代替) という語の中に ’c’ は無 いということを。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.6 遅延記事

ときとして、あなたはメッセージの送信を先延ばしにしたいと思うことはありま せんか。例えば、あなたが大切なだれかの誕生日を思い出すために、ちょうどそ の日に届くメッセージを用意したいと思ったとしましょう。 gnus-delay パッケージはこれにうってつけです。設定は簡単です:

 
(gnus-delay-initialize)

普段はメッセージを送信するのに Message モードで C-c C-c コマンドを 使いますよね。先延ばしにするには、代わりに C-c C-j (gnus-delay-article) を使ってください。そうすると、どのくらい遅ら せるかを尋ねてきます。可能な返事は次の通りです:

gnus-delay-article の動作は、以下の数個の変数に影響されます:

gnus-delay-default-hour

特定の日付を指定した場合に、メッセージがその日の何時に送信されるかを与え ます。可能な値は 0 から 23 までの整数です。

gnus-delay-default-delay

ディフォルトの遅延を与える文字列です。前述のどんな形式でも可能です。

gnus-delay-group

遅延記事は、ドラフトサーバーのこのグループに期限が来るまで保管されます。 たぶんあなたはこれを変更する必要は無いでしょう。ディフォルトの値 は "delayed" です。

gnus-delay-header

それぞれの記事が送信される日時はヘッダーに記録されます。この変数はヘッダー 名の文字列です。たぶんあなたはこれを変更する必要は無いでしょう。ディフォ ルトの値は "X-Gnus-Delayed" です。

送信の先延ばしはこんなふうに行なわれます: gnus-delay-article コマ ンドで、あなたはどのくらい遅らせるかを指定します。Gnus はメッセージを送 信する日時を計算して X-Gnus-Delayed ヘッダーに記録し、そのメッセー ジを nndraft:delayed グループに納めます。

そして、あなたが新着ニュースを取得しようとするときはいつも、Gnus は送信 する期限に達した記事をそのグループで探して、それらを送信します。これには 関数 gnus-delay-send-queue が使われます。ディフォルトではこの関数 は gnus-get-new-news-hook に追加されますが、もちろんあなたはこれ を変更することができます。おそらくあなたは、ドラフトの送信にデーモンを使 いたいと思うのではないでしょうか? それには、デーモンに関 数 gnus-delay-send-queue を実行せよ、と言うだけで良いのです。

gnus-delay-initialize

ディフォルトではこの関数 は gnus-delay-send-queuegnus-get-new-news-hook への追 加を行ないます。ですが、これは第二オプション引数 no-check を受け 付けます。もしそれが非-nil だった ら gnus-get-new-news-hook は変更されません。第一オプション引数は 無視されます。

例えば (gnus-delay-initialize nil t) は何もしないことを意味します。 あなたは遅延記事の送信にデーモンを使いたいのでしょうね。でも、それを設定 することを忘れないでくださいね。:-)

C-c C-j で記事を遅延させると Message モードは自動的に現在時刻 で "Date" ヘッダーを付加します。おそらく多くの場合、代わりにその メッセージを送信した時刻を "Date" ヘッダーに反映させたいでしょう。 そのためには message-draft-headers から Date を削除してく ださい。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.7 記事に印を付ける

記事に付けられる印はいくつかあります。

記事の「購読度」(うひょーっ、何てすらばやしい造語だ!) を決定する印があり ます。英字でない文字が一般に「未読」を意味するのに対して、英字の印は一般 に「既読」を意味します。

加えて、購読度に影響しない印もあります。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.7.1 未読記事

以下の印は何らかの方法で記事に未読の (ような) 印を付けます。

!

可視記事 (ticked) として印を付けます (gnus-ticked-mark)。

「可視記事」とは常に可視状態である記事のことです。おもしろいと思う記事が あった場合や、読むのを先に延ばしたいときや、後で返答をしたいときに、普通 は可視印を付けます。しかし、記事は期限切れ消去されることもあります (ニュー スサーバー上の記事を消去するのはニュースサーバーのソフトウェアで、 Gnus 自体は可視記事を期限切れ消去しません) ので、永遠に記事を保存してお きたい場合は、その記事を永続にする必要があります (see section 永続記事)。

?

保留として印を付けます (gnus-dormant-mark)。

「保留記事」はフォローアップがあったときにだけ概略バッファーに現れます。 フォローアップが無いときも表示させたいときは、/ D 命令を使ってくだ さい (see section 制限をする)。それ以外は (見えるかどうかは別にして)、可視記 事 (ticked) と似たようなものです。

SPACE

未読として印を付けます (gnus-unread-mark)。

「未読記事」は今までまったく読まれていない記事のことです。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.7.2 既読記事

以下のすべての印は記事に既読の印を付けます。

r

利用者が手動で d 命令もしくはそれに類する手段を使って、既読の印を 付けた記事です (gnus-del-mark)。

R

実際に読まれた記事 (gnus-read-mark)。

O

前回のセッションで既読の印を付けて、今は「古く」なってしまった記事。

K

削除された印 (gnus-killed-mark)。

X

削除ファイルによって削除の印が付いた記 事 (gnus-kill-file-mark)。

Y

低すぎるスコアのために既読の印が付いた記 事 (gnus-low-score-mark)。

C

キャッチアップによって既読の印が付いた記 事 (gnus-catchup-mark)。

G

取り消された記事 (gnus-canceled-mark)。

Q

まばらに参照された記事 (gnus-sparse-mark)。 See section スレッドをカスタマイズする.

M

重複抑制により既読の印の付いた記事 (gnus-duplicate-mark)。 See section 重複の抑制.

これらのすべての印は、本当にただ記事が既読として印が付いていることを意味 するだけです。適応スコアリングをしたときには違ったように解釈されますけれ ど。

もう一つ、特別な印があります:

E

期限切れ消去可能として印の付いた記事 (gnus-expirable-mark)。

記事を「期限切れ消去可能」として印を付ける (もしくは、自動的にそのように 印を付ける) ことは、普通のグループではあまり意味がありません—利用者は ニュース記事の期限による削除を制御していません。しかし、例えばメールグルー プでは、「期限切れ消去可能」として印の付いた記事は、いつでも Gnus によっ て削除されることがあります。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.7.3 他の印

記事が読まれたかどうかには関係しない印がいくつかあります。

たいていのこれら『購読度と関係無い』印は、ディフォルトでは二桁目に現れる ことに気付いたでしょう。では、キャッシュされていて、保存されていて、返答 した記事にプロセス印を付けた場合は、どうなるのでしょう?

たいしたことはありません。優先順位は次のようになっています: プロセ ス → キャッシュ → 返答済み → 保存。ですから、ある記事がキャッシュに入っ ていて返答されていた場合、キャッシュ印が見えるだけで、返答済み印は見えま せん。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.7.4 印を付ける

すべての印を付けるための命令は、数値接頭引数を受け付けます。

M c
M-u

現在の記事から、すべての購読度に関する印を消去しま す (gnus-summary-clear-mark-forward)。要するに、記事に未読の印を 付けます。

M t
!

現在の記事に可視記事の印を付けま す (gnus-summary-tick-article-forward)。See section 記事のキャッシュ.

M ?
?

現在の記事に保留記事の印を付けま す (gnus-summary-mark-as-read-forward)。See section 記事のキャッシュ.

M d
d

現在の記事に既読の印を付けま す (gnus-summary-mark-as-read-forward)。

D

現在の記事に既読の印を付け、前の行にポイントを移動しま す (gnus-summary-mark-as-read-backward)。

M k
k

現在の記事と同じ表題を持つすべての記事を既読として印を付け、次の未読記事 を選択します (gnus-summary-kill-same-subject-and-select)。

M K
C-k

現在の記事と同じ表題を持つすべての記事を既読として印を付けま す (gnus-summary-kill-same-subject)。

M C

すべての未読記事に既読の印を付けます (gnus-summary-catchup)。

M C-c

グループのすべての記事に—可視記事や保留記事でさえも、既読の印を付けま す (gnus-summary-catchup-all)。

M H

現在のグループの、現在位置とそれ以前の記事を既読として印を付けま す (gnus-summary-catchup-to-here)。

M h

現在のグループの、現在位置とそれ以降の記事を既読として印を付けま す (gnus-summary-catchup-from-here)。

C-w

ポイントとマークの間の記事に既読の印を付けま す (gnus-summary-mark-region-as-read)。

M V k

ディフォルトのスコア (もしくは数値接頭引数) よりも低いスコアの記事を削除 します。

M e
E

現在の記事を期限切れ消去可能として印を付けま す (gnus-summary-mark-as-expirable)。

M b

現在の記事にしおりを設定します (gnus-summary-set-bookmark)。

M B

現在の記事のしおりを削除します (gnus-summary-remobe-bookmark)。

M V c

ディフォルトのスコア (もしくは数値接頭引数) よりも大きいスコアを持つ記事 のすべての印を消去します (gnus-summary-clar-above)。

M V u

ディフォルトのスコア (もしくは数値接頭引数) よりも大きいスコアを持つすべ ての記事に可視印を付けます (gnus-summary-tick-above)。

M V m

印の入力を促し、ディフォルトのスコア (もしくは数値接頭引数) よりも大きな スコアを持つすべての記事にその印を付けま す (gnus-summary-mark-above)。

変数 gnus-summary-goto-unread は印が付けられた後にどのような動作 がなされるかを決定します。もし nil でないと、ポイントは次/前の未 読記事に移動します。もし nil であると、ポイントは一行上か下に行く だけです。特別な場合として、この変数が never であると、すべての印 を付ける命令と (SPACE のような) 他の命令は次の記事が未読であろうが 無かろうが次の記事に移動します。ディフォルトは t です。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.7.5 Generic Marking Commands

記事に可視の印を付ける命令 (!) に、次の記事に移動してもらいたい人 がいます。次の未読記事に移動してもらいたい人もいます。さらに、現在の記事 に留まっていてもらいたい人もいるでしょう。そして、前の (未読の) 記事に行っ て欲しい人がいるとはまだ聞いたことはありませんが、そうしたいと思う人も間 違いなくいると思います。

この五つの動作を五つの違った印付け命令と掛け算すると、どの命令が何をすべ きかの非常に複雑な変数の組を持つことになります。

この窮地を脱するために、Gnus はこれらすべての違ったことをする命令を提供 します。これらは概略バッファーの M M マップにあります。すべてを見 るためには M M C-h を入力してください—このマニュアルで一覧を出す には多過ぎます。

これらの命令を直接使うことはできますが、ほとんどの利用者は概略モードのキー マップを交換する方を好むでしょう。例えば、! 命令に次の未読記事の代 わりに次の記事に移動して欲しいとすると、このようなことができます:

 
(add-hook 'gnus-summary-mode-hook 'my-alter-summary-map)
(defun my-alter-summary-map ()
  (local-set-key "!" 'gnus-summary-put-mark-as-ticked-next))

もしくは、

 
(defun my-alter-summary-map ()
  (local-set-key "!" "MM!n"))

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.7.6 プロセス印を付ける

プロセス印は概略バッファーに # として表示され、他のコマンドで処理 させる記事に印を付けるために使われます。例えば、四つの記事に印を付けてか ら * コマンドを使うと、Gnus はそれら四つの記事をキャッシュに入れま す。詳しくは プロセス/接頭引数 をどうぞ。

M P p
#

現在の記事にプロセス印を付けま す (gnus-summary-mark-as-processable)。

M P u
M-#

もし現在の記事にプロセス印があれば取り除きま す (gnus-summary-unmark-as-processable)。

M P U

すべての記事からプロセス印を取り除きま す (gnus-summary-unmark-all-processable)。

M P i

プロセス印の付いている記事とそうでない記事を逆にしま す (gnus-uu-mark-by-regexp)。

M P R

正規表現に合致する Subject ヘッダーを持つ記事に印を付けま す (gnus-uu-mark-by-regexp)。

M P G

正規表現に合致する Subject ヘッダーを持つ記事から印を削除しま す (gnus-uu-unmark-by-regexp)。

M P r

領域にある記事に印を付けます (gnus-uu-mark-region)。

M P g

領域にある記事から印を削除します (gnus-uu-unmark-region)。

M P t

現在のスレッド (または副スレッド) のすべての記事に印を付けま す (gnus-uu-mark-thread)。

M P T

現在のスレッド (または副スレッド) のすべての記事から印を取り除きま す (gnus-uu-unamrk-thread)。

M P v

接頭引数よりも大きなスコアを持つすべての記事に印を付けま す (gnus-uu-mark-over)。

M P s

現在の一連の記事に印を付けます (gnus-uu-mark-series)。

M P S

すでにいくつか印の付いた記事を持つ一連の記事群すべてに印を付けま す (gnus-uu-mark-sparse)。

M P a

一連の記事が出てくる順番にそれに属するすべての記事に印を付けま す (gnus-uu-mark-all)。

M P b

バッファーのすべての記事を現れている順番に印を付けま す (gnus-uu-mark-buffer)。

M P k

現在のプロセス印をスタックに積んで、すべての記事を無印にしま す (gnus-summary-kill-process-mark)。

M P y

スタックから前回のプロセス印を取り出して、それを復元しま す (gnus-summary-yank-process-mark)。

M P w

現在のプロセス印をスタックに積みま す (gnus-summary-save-process-mark)。

そして、記事の本文の内容に基づいてプロセス印を付けるやり方については、 記事を探す& 命令を参照してください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.8 制限をする

現在グループにある記事の一部だけを表示するように概略バッファーを制限でき れば便利なことがあります。多くの制限命令が持つ効果は、概略バッファーから 少し (もしくは多く) の記事を削除することです。

制限命令はサーバーからすでに取得された記事の一部分に作用します。これらの 命令はサーバーに追加の記事を要求しません。

/ /
/ s

概略バッファーをいくつかの表題と合致するものだけに制限しま す (gnus-summary-limit-to-subject)。接頭引数が与えられると、合致 する記事を除外します。

/ a

概略バッファーを何人かの著者に合致するものだけに制限しま す (gnus-summary-limit-to-author)。接頭引数が与えられると、合致す る記事を除外します。

/ R

概略バッファーをいくつかの受信者に合致する記事だけに制限しま す (gnus-summary-limit-to-recipient)。接頭引数が与えられると、合 致する記事を除外します。

/ A

概略バッファーを、その From、To または Cc ヘッダーの内容が与えられたアド レスと合致する記事に制限します (gnus-summary-limit-to-address)。 接頭引数が与えられると、合致する記事を除外します。

/ S

概略バッファーを表示されているスレッドに属さない記事だけに制限しま す (gnus-summary-limit-to-singletons)。接頭引数が与えられると、表 示されているスレッドに属する記事だけに制限します。

/ x

「追加」のヘッダーの一つに合致する記事に概略バッファーを制限しま す (see section To From Newsgroups) (gnus-summary-limit-to-extra)。接 頭引数が与えられると、合致する記事を除外します。

/ u
x

概略バッファーを既読の印が付いていない記事に制限しま す (gnus-summary-limit-to-unread)。接頭引数が与えられると、バッ ファーを完全に未読記事のみに制限します。これは、可視と保留の記事は含まれ ないということです。

/ m

印を尋ねて、その印が付いている記事に制限しま す (gnus-summary-limit-to-marks)。

/ t

数値を尋ねて、概略バッファーをその日数より古い (もしくは同じ) 記事に制限 します (gnus-summary-limit-to-age)。接頭引数が与えられると、その 数値の日よりも新しい記事に制限します。

/ n

概略バッファーを、接頭引数 ‘n’ で指定された次の ‘n’ 個の記事に 制限します。接頭引数が与えられないと、代わりにプロセス印が付いている記事 に制限します。(gnus-summary-limit-to-articles)。

/ w

前の制限をスタックから取り出して、復元しま す (gnus-summary-pop-limit)。接頭引数を与えられると、すべての制限 をスタックから取り出します。

/ .

概略バッファーをまだ読まれたことが無い記事に制限しま す (gnus-summary-limit-to-unseen)。

/ v

概略バッファーをあるスコアと同じか、それより大きなスコアを持つ記事に制限 します (gnus-summary-limit-to-score)。

/ p

概略バッファーを display グループパラメーターの述語を満足させるよ うに制限します (gnus-summary-limit-to-display-predicate)。この述 語に関する詳細は グループパラメーター を参照してください。

/ r

概略バッファーを返信した記事だけに制限しま す (gnus-summary-limit-to-replied)。接頭引数が与えられると、返信 した記事以外の記事に制限します。

/ E
M S

すべての消去された記事を制限に含めま す (gnus-summary-limit-include-expunged)。

/ D

すべての保留記事を制限に含めま す (gnus-summary-limit-include-dormant)。

/ *

すべてのキャッシュに入っている記事を制限に含めま す (gnus-summary-limit-include-cached)。

/ d

すべての保留記事を制限から除外しま す (gnus-summary-limit-exclude-dormant)。

/ M

すべての印付き記事を除外します (gnus-summary-limit-exclude-marks)。

/ T

現在のスレッドのすべての記事を制限に含めま す (gnus-summary-limit-include-thread)。

/ c

子記事の無いすべての保留記事を制限から除外しま す (gnus-summary-limit-exclude-childless-dormant)。

/ C

すべての除外された未読の記事に既読の印を付けま す (gnus-summary-limit-mark-excluded-as-read)。接頭引数が与えられ ると、可視と保留のみの印の記事も既読として印を付けます。

/ b

概略バッファーを、ある正規表現に本文が合致する記事だけに制限しま す (gnus-summary-limit-to-bodies)。接頭引数が与えられると、制限を 逆にします (訳注: 合致しない記事だけに制限します)。合致するものを探すた めにそれぞれの記事を取り込まなければならないので、このコマンドはとても遅 いです。

/ h

この前のコマンドに似ていますが、代わりにこれは、ある正規表現にヘッダーが 合致する記事だけに制限します (gnus-summary-limit-to-headers)。

以下は制限命令ではありませんが、同様に接頭キー / を使います。

/ N

すべての新しい記事を概略バッファーに挿入します。 back-end-get-new-mail が非-nil だったら、新しいメー ルの到来を調べるということです。

/ o

すべての古い記事を概略バッファーに挿入します。数値の接頭引数が与えられる と、その個数の記事を取り込みます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.9 スレッド

Gnus はディフォルトで記事をスレッド表示します。「スレッドにする」とは、 ある記事への応答を応答した記事の直後に置く—階層的流儀で、ということで す。

スレッドは記事の References 欄を調べることによって行なわれます。 理想的な世界では、これだけで木を完成させるのに十分なのですが、不運なこと に References 欄はしばしば壊れているか、時には単に無いことがあり ます。怪しげなニュースの伝搬は問題を悪化させるので、満足な結果を得るため には他の検出法を採用しなければなりません。過剰な対策法は存在していて、そ の恐るべき詳細は スレッドをカスタマイズする に詳しく書いてあります。

まず、概念の概観です:

根本 (root)

スレッドで一番頂点にある記事です;スレッドの最初の記事です。

スレッド (thread)

木のような記事の構成です。

副スレッド (sub-thread)

木のような構造の (より) 小さな部分です。

無束縛スレッド (loose threads)

記事の期限切れ消去や、根本がすでに前回のセッションで読まれたことにより概 略バッファーに表示されない、等の理由により、スレッドはしばしば根本を失い ます。そのようなときには、普通は多くの副スレッドがあって、本当は一つのス レッドに属しているのですが、根本にはつながっていない、ということになりま す。こういうスレッドが無束縛スレッドと呼ばれています。

スレッド集め (thread gathering)

副スレッドを大きなスレッドに集めようとする試みです。

まばらスレッド (sparse threads)

そこではたぶんいくつかの記事が失われてしまったのだろうと『推測された』ス レッドのことで、概略バッファーでは空行で表示されます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.9.1 スレッドをカスタマイズする


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.9.1.1 無束縛スレッド

gnus-summary-make-false-root

もし nil でないと、Gnus はすべてのつながっていない部分木を一つの 大きな木にして、頂上にみせかけの根本を作ります。(ちょっと待ってください。 頂上に根元 (root) ですって? ええ、そうなのです。) つながっていない部分木 は本当の根本が期限切れ消去されたか、前回のセッションで根本を読んだり削除 したときにできます。

本当のスレッドが無いときは、Gnus は何かでっち上げをする必要があります。 この変数は Gnus が使うべきごまかしの方法を示しています。値としてとること ができる四つの候補があります。

養子 (adopt)

Gnus は孤児になった記事群の最初のものを親にします。この親はすべての他の 記事を養子にします。それらの養子記事は、標準の角括弧 (‘[]’) の代わ りに、先の尖った括弧 (‘<>’) で印が付けられます。これがディフォルト の手段です。

みせかけ (dummy)

Gnus は親のふりをするみせかけの概略行を作ります。このみせか けの行はどの本当の記事にも対応しないので、それを選択することは、 みせかけの記事の後の最初の本当の記事を選択をするだけになります。 みせかけの根本の様式を指定するために、 gnus-summary-dummy-line-format が使われます。これはたっ た一つだけのフォーマットの仕様を受け付けます: それは ‘S’ で、 記事の表題です (see section 書法仕様変数)。たとえ集めるもの が無くても、すべてのスレッドにみせかけの根本を持たせたい場合は、 gnus-summary-make-false-root-alwayst に設定し てください。

空 (empty)

Gnus は実際にはどの記事も親にはせず、最初の孤児を除いてすべての孤児の表 題欄を単に空のままにします。(実際は gnus-summary-same-subject を 表題として使います (see section 概略バッファーの様式)。)

none

まったくどの記事も親にしません。スレッドを集めて、単に順繰りに表示するだ けです。

nil

無束縛スレッドを集めません。

gnus-summary-gather-subject-limit

無束縛スレッドは記事の表題を比較することによって集められます。もしこの変 数が nil であると、Gnus は無束縛スレッドを一つの大きな超スレッド に集める前に、無束縛スレッドの表題が完全に一致することを要求します。これ は、長い表題の行を切り落としてしまう間抜けなニュースリーダーが存在する現 状では、あまりに厳しい要求かもしれません。そう思うのなら、この変数を例え ば 20 に設定して、表題の最初の 20 文字だけが一致することを要求するように してください。この変数を本当に低い数値に設定すると、目についたもののすべ てを Gnus が一つのスレッドに集めるのを見ることになるでしょう。それはあま り有用ではありません。

この変数を特別な値 fuzzy に設定すると、Gnus は表題の文字列を大雑 把に比較するアルゴリズムを使います (see section ファジーな一致)。

gnus-simplify-subject-fuzzy-regexp

正規表現または正規表現のリストのどちらかです。表題の大雑把な比較を行なう ときに、それらに合致する文字列を表題から取り除きます。

gnus-simplify-ignored-prefixes

もし gnus-summary-gather-subject-limit を 10 くらいに低く設定した ならば、この変数を何か意味のあるものに設定することを考えるでしょう:

 
(setq gnus-simplify-ignored-prefixes
      (concat
       "\\`\\[?\\("
       (mapconcat
        'identity
        '("looking"
          "wanted" "followup" "summary\\( of\\)?"
          "help" "query" "problem" "question"
          "answer" "reference" "announce"
          "How can I" "How to" "Comparison of"
          ;; ...
          )
        "\\|")
       "\\)\\s *\\("
       (mapconcat 'identity
                  '("for" "for reference" "with" "about")
                  "\\|")
       "\\)?\\]?:?[ \t]*"))

この正規表現に合致するすべての語は、二つの表題を比較する前に取り除かれま す。

gnus-simplify-subject-functions

nil でないと、この変数 は gnus-summary-gather-subject-limit よりも優先されます。この変数 は Subject の文字列に反復して作用させて簡単にするための、関数のリ ストである必要があります。

このリストに入れて役に立つような関数は次のようなものです:

gnus-simplify-subject-re

前の方にある ‘Re:’ を取り除きます。

gnus-simplify-subject-fuzzy

大雑把な比較ができるように簡単にします。

gnus-simplify-whitespace

余分な空白 (whitespace) を取り除きます。

gnus-simplify-all-whitespace

すべての空白 (whitespace) を取り除きます。

もちろん、あなた自身の関数を書くこともできます。

gnus-summary-gather-exclude-subject

無束縛スレッド集めは表題だけで行なわれるので、特 に ‘’ や ‘(none)’ のような良くある表題のときは、多くの間違いを 起こす可能性があります。この状況を少し良くするために、正規表 現 gnus-summary-gather-exclude-subject を使うことによって、集める 過程においてどんな表題を除外するかを指示することができます。ディフォルト は ‘^ *$\\|^(none)$’ です。

gnus-summary-thread-gathering-function

Gnus は Subject 欄を調べることによってスレッドを集めます。これは、 結果的にまったく関係の無い記事が同じ『スレッド』に含まれるかもしれないこ とを意味し、混乱の元です。代替手段は、合致するものを見つけるため に References 欄にある Message-ID をすべて調べることです。 これは集められたスレッドが関係の無い記事をまったく含まないことを保証しま すが、いかれたニュースリーダーで投稿した記事は適切に集められないというこ とでもあります。ペストかコレラかの選択権はあなたにあります。

gnus-gather-threads-by-subject

この関数はディフォルトの収集関数で、排他的に Subject を調べます。

gnus-gather-threads-by-references

この関数は排他的に References 欄を調べます。

References によって集めることを試してみたいのであれば、次のように することができます:

 
(setq gnus-summary-thread-gathering-function
      'gnus-gather-threads-by-references)

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.9.1.2 スレッドを埋める

gnus-fetch-old-headers

もし nil でないと、Gnus は古いスレッドをもっと古いヘッダー、すな わち既読の印が付いている記事のヘッダー、を取得することで構築しようとしま す。できるだけ少ない概略行を表示したいけれど、できるだけたくさんの無束縛 スレッドをつなげておきたいときは、この変数を some か数値に設定し てください。もし数値に設定したときは、それより多い追加のヘッダーは取得さ れません。どちらの場合でも、古いヘッダーの取得は、使っているバックエンド が overview ファイルを使っている場合だけ動作します。それらのバックエンド は、普通は nntp, nnspool, nnml およ び nnmaildir です。スレッドの根本がサーバーによって期限切れ消去さ れてしまったら、Gnus はどうしようもないことも覚えておいてください。

この変数は invisible に設定することもできます。これは視覚的な効果 は何もありませんが、A T 命令をよく使うのであれば役に立つでしょ う (see section 親記事を探す)。

サーバーは、このいずれをも機能させるために NOV をサポートしな ければなりません。

この機能は性能に深刻な影響を与え得ます。すべてのローカルにキャッシュされ たヘッダーを無視するからです。記事を期限切れ消去しないサー バー (例えば news.gmane.org) の、あるグループのためにそれを t に 設定すると、概略の生成がとても遅くなってしまいます。

gnus-fetch-old-ephemeral-headers

gnus-fetch-old-headers と同じですが、一時ニュースグループのために だけ使われます。

gnus-build-sparse-threads

古いヘッダーを取得すると遅くなることがあります。この変数 を some に設定することによって、同じような低賃金の効果を得ること ができます。そうすると、Gnus はすべての記事の完全な References 欄 を見て、同じスレッドに属する記事をつなごうとします。これは、記事がそのス レッドから失われていると Gnus が推測したスレッド表示に「ずれ」を残すでしょ う。(これらのずれは普通の概略行のように見えます。もしずれを選択すると、 Gnus はその当の記事を取得しようとします。) この変数が t であると、 Gnus はスレッドを補完するのに役立つかどうかを考慮せずに、すべての「ずれ」 を表示します。最後に、この変数が more であると、Gnus はどこにもつ ながっていない枝葉のまばらな節を切り落としません。この変数はディフォルト では nil です。

gnus-read-all-available-headers

これはあまり役に立たない、いささかはっきりしない変数です。ニュースではな いグループにおいて、概略バッファーを作るためにバックエンドが極めて多くの ものを取り込まなければならず、しかも親記事を辿ることができない場合に使う ことを想定しています。それは主にウェブに基づいたグループでの場合です。

そんなグループを使わない場合はディフォルトの nil のままにしておく のが無難です。使いたい場合はグループ名に合致する正規表現か、すべてのグルー プが対象になる t にしてください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.9.1.3 もっとスレッドを

gnus-show-threads

この変数が nil であると、スレッドは作られず、ここにある残りのすべ ての変数はまったく効果が無くなります。スレッド作りを止めるとグループの選 択が少し速くなりますが、記事を読むのがもっと遅く、不便になることは確実で す。

gnus-thread-hide-subtree

これが nil でないと、すべてのスレッドは概略バッファーが生成された ときに隠れます。

これは述語指示子であることもできます (see section 述語指示子)。利 用できる述語 は gnus-article-unread-pgnus-article-unseen-p です。

これは例です:

 
(setq gnus-thread-hide-subtree
      '(or gnus-article-unread-p
           gnus-article-unseen-p))

(これはかなりばかげた例です。なぜならすべてのまだ読まれたことが無い記事 は未読でもあるからなのですが、趣旨は汲み取ってください。)

gnus-thread-expunge-below

この数値より少ない総スコア (gnus-thread-score-function で定義され た関数を使って算出されます) を持つすべてのスレッドは消去されます。この変 数はディフォルトでは nil で、これはどのスレッドも消去されないとい うことです。

gnus-thread-hide-killed

スレッドを削除すると、この変数が nil でない場合、部分木は隠されま す。

gnus-thread-ignore-subject

ときどき誰かがスレッドの途中で表題を変更することがあります。この変数 が nil でないと (これがディフォルトですが)、表題の変更は無視され ます。もし nil だと、表題の変更をすると別のスレッドになります。

gnus-thread-indent-level

これは、それぞれの副スレッドがどれくらい字下げ (indent) されるべきかを決 める数値です。ディフォルトは 4 です。

gnus-sort-gathered-threads-function

とりわけメーリングリストでは、ときとして手元にメールが到着する順番は必ず しもメーリングリストに到着した順番と同じでは無いことがあります。その結果、 副スレッドをディフォルトの gnus-thread-sort-by-number で並べ換え ると、応答の方がそれの元記事より先に現れてしまうことがあります。グルー プパラメーターや適切なフッ ク (例えば gnus-summary-generate-hook) でこの変数を代わりの値 (例 えば gnus-thread-sort-by-date) に設定することによって、そのような 場合に、より論理的な副スレッドの順番を生成することができます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.9.1.4 低レベルにおけるスレッド作成

gnus-parse-headers-hook

すべてのヘッダーを解析する前に実行されるフックです。

gnus-alter-header-function

この変数の値が nil ではなくて関数であると、ヘッダー構造 (訳注: 記 事の主要なヘッダーの内容を効率良く保持するための Lisp オブジェクト) を変 更するために呼ばれます。関数は記事ヘッダーのベクトル (訳注: すなわちヘッ ダー構造) とともに呼ばれ、それが何らかの方法で変更されます。例え ば Message-ID を体系的な方法で (接頭語などを付け加えることによっ て) 変更してしまうメールからニュースへのゲートウェイがある場合、この変数 を設定することによって、その Message-ID を元の意味のあるものに戻 すことができます。これは一つの例です:

 
(setq gnus-alter-header-function 'my-alter-message-id)

(defun my-alter-message-id (header)
  (let ((id (mail-header-id header)))
    (when (string-match
           "\\(<[^<>@]*\\)\\.?cygnus\\..*@\\([^<>@]*>\\)" id)
      (mail-header-set-id
       (concat (match-string 1 id) "@" (match-string 2 id))
       header))))

訳注: 取得した記事の Message-ID 欄から、‘@’ の前に付加され た ‘cygnus.’ で始まる文字列を取り除きます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.9.2 スレッドの命令

T k
C-M-k

現在のスレッド (または副スレッド) のすべての記事に既読の印を付けま す (gnus-summary-kill-thread)。もし接頭引数が正であると、代わりに すべての印を取り除きます。接頭引数が負であると、代わりに記事を可視にしま す。

T l
C-M-l

現在のスレッド (または副スレッド) のスコアを下げま す (gnus-summary-lower-thread)。

T i

現在のスレッド (または副スレッド) のスコアを上げま す (gnus-summary-raise-thread)。

T #

プロセス印を現在のスレッド (または副スレッド) に付けま す (gnus-uu-mark-thread)。

T M-#

現在のスレッド (または副スレッド) からプロセス印を取り除きま す (gnus-uu-unmark-thread)。

T T

スレッド表示を切り替えます (gnus-summary-toggle-threads)。

T s

もしあれば、現在の記事の下に隠れているスレッドを表示しま す (gnus-summary-show-thread)。

T h

現在のスレッド (または副スレッド) を隠しま す (gnus-summary-hide-thread)。

T S

すべての隠されているスレッドを表示しま す (gnus-summary-show-all-threads)。

T H

すべてのスレッドを隠します (gnus-summary-hide-all-threads)。

T t

現在の記事のスレッドをもう一度作り直しま す (gnus-summary-rethread-current)。これは概略バッファーがスレッ ド表示されていないときでも動作します。

T ^

現在の記事を印付きの (もしくは前の) 記事の子記事にしま す (gnus-summary-reparent-thread)。

T M-^

現在の記事を印付きの記事の親記事にしま す (gnus-summary-reparent-children)。

以下の命令はスレッド移動命令です。これらはすべて数値接頭引数を受け付けま す。

T n
C-M-f
M-down

次のスレッドに移動します (gnus-summary-next-thread)。

T p
C-M-b
M-up

前のスレッドに移動します (gnus-summary-prev-thread)。

T d

スレッドを下ります (gnus-summary-down-thread)。

T u

スレッドを登ります (gnus-summary-up-thread)。

T o

スレッドの頂上に移動します (gnus-summary-top-thread)。

スレッドを作成するときに表題を無視すると、当然ながらいくつかの違った表題 があるスレッドが出来上がります。そし て T k (gnus-summary-kill-thread) のような命令を発するとき に、全体のスレッドを削除するのではなく、現在の記事と同じ表題を持つ部分だ けを削除したいときがあるかもしれません。もしこの発想が良いと思うのであれ ば、gnus-thread-operation-ignore-subject をいじってみてください。 これが nil でないと (それがディフォルトですが)、スレッドの命令を 実行しているときに表題は無視されます。これが nil だったら、同じス レッドにある異なる表題を持つ記事は、そのとき行なう操作の対象に含まれませ ん。この変数が fuzzy であると、大雑把な比較によって等しいと判定さ れる表題を持つ記事だけが対象に含まれます (see section ファジーな一致)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.10 並べ替え

概略でスレッドの表示を使っているのであれば、 gnus-thread-sort-functions を設定することによってスレッドを並べ替 えることができます。この変数の値は単独の関数、関数のリスト、または関数 と (関数でないもの) の要素を含むリストであることができます。

ディフォルトでは並べ替えは記事番号に基づいて行なわれます。すでに用意され ている並べ替え述語関数は gnus-thread-sort-by-number, gnus-thread-sort-by-author, gnus-thread-sort-by-recipient, gnus-thread-sort-by-subject, gnus-thread-sort-by-date, gnus-thread-sort-by-score, gnus-thread-sort-by-most-recent-number, gnus-thread-sort-by-most-recent-date, gnus-thread-sort-by-random およ び gnus-thread-sort-by-total-score です。

それぞれの関数は二つのスレッドをとり、最初のスレッドがもう一方より先に並 べ替えられるべきであれば nil でない値を返します。実際の並べ替えは、 普通それぞれのスレッドの根本だけを調べることによって行なわれることに気を 付けてください。

二つ以上の関数を使う場合、並べ替えの第一の鍵はリストの最後の関数でなけれ ばなりません。並べ替え関数のリストのなるべく先頭に、おそらく常 に gnus-thread-sort-by-number を含めておくべきでしょう。これは、 他の並べ替えの基準が等しいスレッドが、記事番号の登り順に表示されることを 保証します。

スコアの逆順、表題、そして最後に番号、の順に並べ替えたいのであれば、次の ようにできます:

 
(setq gnus-thread-sort-functions
      '(gnus-thread-sort-by-number
        gnus-thread-sort-by-subject
        (not gnus-thread-sort-by-total-score)))

最大のスコアを持つスレッドが、最初に概略バッファーに表示されます。スレッ ドが同じスコアの場合は、英字順に並び替えられます。同じスコアと表題を持つ スレッドは番号で並べ替えられ、(普通は) 記事が到着した順番になります。

スコア、到着の逆順に並べ替えたいのであれば、次のようにできます:

 
(setq gnus-thread-sort-functions
      '((not gnus-thread-sort-by-number)
        gnus-thread-sort-by-score))

変数 gnus-thread-score-function (ディフォルトは +) に設定 されている関数は、スレッドの総スコアを計算するために用いられます。役立つ 関数は max, min, もしくは二乗、もしくはあなたの好奇心をく すぐるような何かでしょう。

何か変な理由でスレッド表示を使っていないのなら、変 数 gnus-article-sort-functions をいじくる必要があります。これ は gnus-thread-sort-functions と非常に似ていますが、記事の比較に は少々違った関数を使います。使用可能な並べ替え述語関数 は gnus-article-sort-by-number, gnus-article-sort-by-author, gnus-article-sort-by-subject, gnus-article-sort-by-date, gnus-article-sort-by-random およ び gnus-article-sort-by-score です。

スレッドを使っていない概略の表示を表題で並べ替えたいのであれば、次のよう なことをすることができます:

 
(setq gnus-article-sort-functions
      '(gnus-article-sort-by-number
        gnus-article-sort-by-subject))

gnus-parameters を介することによって、グループによって異なる並べ 替えを定義することができます。See section グループパラメーター.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.11 非同期記事取得

遠くにある NNTP サーバーからニュースを取得していると、ネットワー クの遅延が記事を読むことを嫌な仕事にしてしまうかもしれません。n を 押してから次の記事が現れるまで、しばらく待たなければなりませんものね。ど うして前の記事を読んでいる間に Gnus が先行して記事を取得してくれないので しょうか? なぜできないんでしょう、本当に。

まず警告しておきましょう。非同期で記事を取得、特に Gnus がそれを行なう場 合には、いくつかの落とし穴があります。

例えば、あなたは短い記事 1 を読んでいて、記事 2 はとても長くて、あなたは それを読むことには興味が無いとしましょう。Gnus はこのことはわからないの で、先行して記事 2 を取得します。あなたは記事 3 を読むことにしますが、 Gnus は記事 2 を取得している最中なので、接続は封鎖されています。

この状況を避けるために、Gnus はサーバーに二つ (二まで数えてください) の 接続を張ります。これはあまり良いことではないと考える人もいるでしょうが、 私には実際の代替手段が見つからないのです。余分な接続を立ち上げるためには いくばくかの時間がかかるので、Gnus の起動は遅くなります。

Gnus はあなたが読むであろう記事よりもたくさんの記事を取得します。これは 記事の先行取得を使わないときよりも、あなたのマシンと NNTP サー バー間の接続にもっと負荷をかけることになるでしょう。サーバー自身にももっ と負荷がかかるようになります—余分な記事の要求と、余分な接続によって。

はい、本当はこのようなことをすべきで無いことがこれで分かったでしょ う… 本当にそうしたいと思わない限りは。

やり方です: gnus-asynchronoust に設定してください。そ れ以外の諸々のことは自動的に行なわれます。

gnus-use-article-prefetch を設定することによって、どれくらいの記 事を先に取得するべきかを操作することができます。これはディフォルトで は 30 で、グループの記事を読んでいるときに、バックエンドが次の 30 通の記 事を先行取得するということです。この変数が t であると、バックエン ドは取得できるすべての記事を際限なく先行取得しようとします。これ が nil であると、先行取得は行なわれません。

おそらく先行取得をしたくない記事がいくつかあるでしょう—例えば既読記事 です。変数 gnus-async-prefetch-article-p は記事が先に取得されるか どうかを制御します。この変数に設定される関数は、問題の記事を先行取得する のであれば nil でない値を返さなければなりません。ディフォルトの関 数は gnus-async-unread-p で、これは既読記事には nil を返し ます。この関数は記事のデータ構造を唯一の引数として呼ばれます。

例えば、100 行よりも短い未読記事だけを先に取得したいのであれば、次のよう にできます:

 
(defun my-async-short-unread-p (data)
  "Return non-nil for short, unread articles."
  (and (gnus-data-unread-p data)
       (< (mail-header-lines (gnus-data-header data))
          100)))

(setq gnus-async-prefetch-article-p 'my-async-short-unread-p)

これらの関数は何度も何度も呼ばれるので、Gnus を遅くしすぎないように、短 く簡潔であるのが好ましいです。このようなものをバイトコンパイルするのは、 おそらく良い着想でしょう。

記事を先行取得した後に、この gnus-async-post-fetch-function が呼 ばれます。そのときバッファーは取り込んだ記事の領域に狭められています。有 用な値は gnus-html-prefetch-images で、これはその記事が参照する画 像を先行取得および保存して、その記事を読むときにそれらの取得を待たなくて も良いようにします。HTML メッセージが外部参照の画像を持ってい るときに便利です。

記事は非同期バッファーから遅かれ早かれ削除されなければなりません。 gnus-prefetched-article-deletion-strategy はいつ記事を削除するか を指定します。これは以下の要素を含むリストです:

read

記事が読まれたときに削除します。

exit

グループを抜けたときに記事を削除します。

ディフォルトの値は (read exit) です。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.12 記事のキャッシュ

非常に 遅い NNTP 接続を使っているのならば、記事をキャッ シュすることを考えても良いでしょう。それをすると、それぞれの記事はあなた のホームディレクトリーの下にローカルに溜められます。もう感付いたかもしれ ませんが、これは i ノードを非常に速く食いつぶすだけでなく、 巨大な ディスクスペースを食う可能性があります。それはあなたにウォッ カの中で泳ぐようなめまいを起こさせるでしょう。

でも注意深く使われれば、それは記事を保存する、より楽な方法になり得ます。

キャッシュを実行させるには gnus-use-cachet に設定して ください。ディフォルトでは、すべての可視または保留として印の付いている記 事はローカルのキャッシュ (gnus-cache-directory) に複写されます。 このキャッシュが平らな構造か階層的であるかは、通常通り、変 数 gnus-use-long-file-name で制御されます。

可視記事か保留記事を再選択した場合は、サーバーの代わりにキャッシュから取 得されます。キャッシュにある記事は期限切れ消去されないので、記事をそれら が属するところに居続けさせている間、それらを保存する方法としてこれは役立 つかもしれません。保存したいすべての記事に保留の印を付けるだけで、後は心 配無用です。

記事に既読の印が付いたときに、それはキャッシュから削除されるのでしょうか。

記事をキャッシュに入れたりキャッシュから削除することは、変 数 gnus-cache-enter-articles およ び gnus-cache-remove-articles によって制御されます。これらは両方 ともシンボルのリストです。前者はディフォルトで は (ticked dormant) で、可視記事と保留記事はキャッシュに入れられ ます。後者はディフォルトでは (read) で、既読の印が付いた記事はキャッ シュから削除されます。おそらくこれら二つのリストに含まれるシンボル は ticked, dormant, unread および read でしょ う。

それでは、大規模な記事の取得と格納は、どこで関係してくるのでしょうか。 gnus-jog-cache 命令は、すべての購読グループに対して、すべての未読 記事を要求し、スコアを付け、キャッシュに保存します。この命令をいつもいつ もいつもいつも使うのは、1) NNTP サーバーとの接続が本当に本当に 本当に遅くて、2) 本当に本当に本当に巨大なディスクを持っているときだけに するべきです。これは真面目に言っています。ダウンロードされる記事の数を控 える一つの方法は、欲しくない記事のスコアを低くして、それらに既読の印を付 けることです。そうすれば、それらはこの命令ではダウンロードされません。

すべてのグループではキャッシュをしたくないというのは良くあることです。例 えば nnml のメールがホームディレクトリーにあるのなら、それをホー ムディレクトリーの別の場所にキャッシュするのは意味がありません。二倍の容 量を使う方が良いと思うのでなければ。

キャッシュを制限するには、gnus-cacheable-groups を例え ば ‘^nntp’ のようなキャッシュするグループの正規表現に設定するか、ま たは正規表現 gnus-uncacheable-groups を例えば ‘^nnml’ に設定 してください。両方の変数ともにディフォルトは nil です。もしグルー プが両方の変数に合致すると、そのグループはキャッシュされません。

キャッシュは、それがどの記事を含んでいるかの情報を、そのアクティブファイ ル (gnus-cache-active-file) に格納します。このファイル (もしくは キャッシュの他の部分) が何らかの理由でぐちゃぐちゃになってしまった場合、 Gnus はものごとを正しくするための二つのコマンドを提供します。 M-x gnus-cache-generate-nov-databases はすべての NOV ファ イルを (再) 作成し、M-x gnus-cache-generate-active はアクティブファ イルを (再) 作成します。

gnus-cache-move-cache コマンドは、すべて の gnus-cache-directory をどこか別の場所に移動します。あなたはど こに移動させるかを尋ねられます。それってかっこいいでしょ?


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.13 永続記事

記事のキャッシュと近い関係にあるものに「永続記事」があります。実際それは キャッシュを見るための別の方法で、私に言わせればはるかに役に立ちます。

例えば、ニュースグループを読んでいて、永久に秘蔵しておく価値のある宝石に 出会ったとしましょう。普通はそれをファイルに保存します (多くの保存命令の 一つを使って)。問題は、単にあの、嫌なだけです。理想的には、記事はグルー プで見つけた場所に永遠に残っていることが好ましいでしょう。ニュースサーバー における期限切れ消去には影響されないで。

これが「永続記事」です—記事は削除されません。それは普通のキャッシュ命 令を使って実装されていますが、永続記事の管理をするために二つの明示的な命 令を使います:

*

現在の記事を永続にします (gnus-cache-enter-article)。

M-*

現在の記事を永続記事から取り除きます (gnus-cache-remove-articles)。 これは普通は記事を削除します。

これらの命令は両方ともプロセス/接頭引数の習慣を理解します。

永続記事にだけ興味があるのなら、可視記事 (やその他のもの) がキャッシュに 入るのを避けるために、gnus-use-cachepassive に設定する のが良いでしょう:

 
(setq gnus-use-cache 'passive)

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.14 粘着記事

記事を選択するとき、変数 gnus-single-article-buffer の値によって は現在の記事バッファーが再利用されます。それが nil 以外の値だと、 すべての記事が同じ記事バッファーを再利用しますが、nil だった場合 はグループ毎に独自の記事バッファーを持ちます。

このことは、あるグループで同時に一つより多い記事バッファーを持つことはで きないことを意味します。でも、時には今度のクリスマス・パーティーの段取り のために、お母さん、お父さん、叔母さん、叔父さん、さらに 17 人のいとこか ら最近届いたすべての電子メールを表示したいこともあるでしょう。

こんなときに粘着記事が役に立ちます。粘着記事バッファーは原理的には普通の 記事バッファーなのですが、他の記事を選択しても再利用されません。記事を粘 着質にするには、このコマンドを使ってください:

A S

現在の記事を粘着質にします。接頭引数付きで呼ぶと、この粘着記事バッファー の名前を尋ねます。

粘着記事バッファーを閉じるには、次のコマンドを使ってください:

q

この粘着記事バッファーを、すべてのバッファーのリストの最後尾に置きます。

k

この粘着記事バッファーを削除します。

すべての粘着記事バッファーを削除するには、このコマンドを使えば良いでしょ う:

Function: gnus-kill-sticky-article-buffers ARG

すべての粘着記事バッファーを削除します。接頭引数を与えると、確認を求めま す。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.15 記事のバックログ

回線が遅いために、キャッシュを使うという発想があまり魅力的ではないと き (実際そうなのですが)、「バックログ」に切り替えることによって状況を何 とかすることができます。これはすでに読んだ記事を再取得しなくても良いよう に、すでに読んだ記事を Gnus が一時保存しておくところです。これはもちろん、 あなたに最近読んだ記事を再び選択する癖があるときだけ役立ちます。絶対にそ れをしない人にとっては、バックログを on にすることは Gnus を少し遅くし、 メモリーの使用量をいくらか増やすだけのことです。

gnus-keep-backlog を数値 n に設定すると、Gnus は最大 で n 個の古い記事を後の再取得のためにバッファーに溜めておきます。 この変数が nil ではなく、数値でもない場合、 Gnus は すべて の既読記事を蓄えます。それは Emacs が爆発するまで 際限なく膨れ上がって、マシンがあなたもろとも落ちてしまうということです。 私はみなさんがいつも注意を怠らないようにするために、ここに書き加えました。

ディフォルト値は 20 です。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.16 記事の保存

Gnus はたくさんの方法で記事を保存することができます。以下のものは非常に 率直な方法 (すなわち記事が保存する前にほとんど何もなされない) で記事を保 存するための説明です。異なる手続き (uudecode, unshar) のために は gnus-uu を使うのが良いでしょう (see section 記事のデコード)。

ここに列挙されているコマンドは対象がファイルです。グループに保存したい場 合は B c (gnus-summary-copy-article) コマンドを参照してくだ さい (see section メールグループ命令)。

gnus-save-all-headersnil でないと、Gnus は記事を保存す る前に不要なヘッダーを消去しません。

もし上記の変数が nil であると、正規表 現 gnus-saved-headers に合致するすべてのヘッダーが残される一方、 残りのものは保存する前に削除されます。

O o
o

ディフォルトの記事を保存する手段を用いて現在の記事を保存しま す (gnus-summary-save-article)。

O m

現在の記事を Unix メール (mbox) ファイルに保存しま す (gnus-summary-save-article-mail)。

O r

現在の記事を Rmail の様式で保存しま す (gnus-summary-save-article-rmail)。これは Emacs 23 から mbox になります。旧バージョンでは Babyl でした。

O f

現在の記事を普通のファイル (plain file) 様式で保存しま す (gnus-summary-save-article-file)。

O F

現在の記事を普通のファイル様式で保存し、以前のファイルの内容を上書きしま す (gnus-summary-write-article-file)。

O b

現在の記事の本文を普通のファイル様式で保存しま す (gnus-summary-save-article-body-file)。

O h

現在の記事を mh のフォルダーの様式で保存しま す (gnus-summary-save-article-folder)。

O v

現在の記事を VM フォルダーに保存しま す (gnus-summary-save-article-vm)。

O p
|

現在の記事をパイプに保存します。うーんと、あのぉ、私が言おうとしているこ とは—現在の記事をプロセスにパイプするということで す (gnus-summary-pipe-output)。シンボル接頭引数 (see section シンボルの接頭引数) が与えられると、パイプへの出力に完全なヘッダーを含めます。シ ンボル接頭引数 r は特別で、それはすべてのヘッダーを含む生の (デコー ドされていない) 記事をパイプに送ります。 gnus-summary-pipe-output-default-command 変数をディフォルトのコマ ンドと引数を含む文字列に設定することができます (ディフォルト は nil)。

O P

現在の記事を muttprint に保存します。つまり、外部プログラ ム Muttprint を使って記事を印 刷するということです。プログラム名と使用するオプションは、変 数 gnus-summary-muttprint-program で指定されます。 (gnus-summary-muttprint)。

すべてのこれらの命令はプロセス/接頭引数の習慣を使いま す (see section プロセス/接頭引数)。もしこれらの関数を使ってたくさんの記事を保 存した場合、それぞれのすべての記事に対してファイル名の入力を要求されるこ とに飽き飽きするでしょう。入力を求める動作は変 数 gnus-prompt-before-saving によって制御されます。これはディフォ ルトでは always で、あなたが嫌な思いを味わっている、過剰な入力要 求をします。代わりにこの変数を t に設定すると、保存するそれぞれの 一連の記事に対して一回だけ入力を要求します。本当に Gnus にすべての判断を 任せてしまいたいのであれば、この変数を nil にすることさえできます。 そうすれば、記事を保存するためのファイルを促されることはありません。 Gnus は単純にすべての記事をディフォルトのファイルに保存します。

Gnus を思い通りに動作させるために、変 数 gnus-default-article-saver をカスタマイズすることができます。 下の八つの既製の関数を使うことができ、また自分自身の関数を作ることもでき ます。

gnus-summary-save-in-rmail

これがディフォルトで、Rmail パッケージで使われているものです。Emacs 23 から Rmail は標準の mbox 様式を使うようになりました。それ以前に は Babyl 様式というものが使われていました。そのため、既存 の Babyl ファイルに追加するのでなければ、Emacs 23 からこのコマンド は mbox 様式で書きます。古いバージョンの Emacs では、常に Babyl 様式を使 います。変数 gnus-ramil-save-name に設定されている関数を、記事を 保存するファイルの名前を取得するために使います。ディフォルト は gnus-plain-save-name です。

gnus-summary-save-in-mail

Unix メール (mbox) ファイルに保存します。変 数 gnus-mail-save-name に設定されている関数を、記事を保存するファ イルの名前を取得するために使います。ディフォルト は gnus-plain-save-name です。

gnus-summary-save-in-file

記事を通常のファイルの後に追加します。変数 gnus-file-save-name に 設定されている関数を、記事を保存するファイルの名前を取得するために使いま す。ディフォルトは gnus-numeric-save-name です。

gnus-summary-write-to-file

記事をストレートに通常のファイルに保存します。そのファイルが存在していた ら上書きされます。変数 gnus-file-save-name に設定されている関数を、 記事を保存するファイルの名前を取得するために使います。ディフォルト は gnus-numeric-save-name です。

gnus-summary-save-body-in-file

記事の本文を通常のファイルの後に追加します。変 数 gnus-file-save-name に設定されている関数を、記事を保存するファ イルの名前を取得するために使います。ディフォルト は gnus-numeric-save-name です。

gnus-summary-write-body-to-file

記事の本文をストレートに通常のファイルに保存します。そのファイルが存在し ていたら上書きされます。変数 gnus-file-save-name に設定されている 関数を、記事を保存するファイルの名前を取得するために使います。ディフォル トは gnus-numeric-save-name です。

gnus-summary-save-in-folder

MH ライブラリーの rcvstore を使って、記事を MH フォルダーに保存し ます。変数 gnus-folder-save-name に設定されている関数を、記事を保 存するファイルの名前を取得するために使います。ディフォルト は gnus-folder-save-name ですが、gnus-Folder-save-name も 使うことができて、こちらは先頭が大文字、残りが小文字になった名前を作りま す。

gnus-summary-save-in-vm

記事を VM フォルダーに保存します。この設定を使うためには VM メールリーダー が必要です。

gnus-summary-save-in-pipe

記事をシェルコマンドにパイプします。この関数は二つの引数 COMMAND およ び RAW を受け付けます (無くても構いません)。有効な COMMAND の値は次の通 りです:

RAW に nil 以外の値を与えると :decode およ び :headers 属性 (後述) が無視され、すべてのヘッダーを含む生 の (デコードされていない) 記事がパイプに渡されます。

それぞれの関数シンボルは以下の属性 (property) を持つことができます:

:decode

nil ではない値が設定されているとデコードした記事を保存します。 gnus-summary-save-in-filegnus-summary-save-body-in-filegnus-summary-write-to-filegnus-summary-write-body-to-file およ び gnus-summary-save-in-pipe でだけ、これを設定する意義があります。

:function

記事をファイルに上書するのではなく、追加するための代わりの関数を指定しま す。これを設定すると、複数の記事を一度に保存するとき に gnus-prompt-before-savingt に束縛され、すべての記事 が単一のファイルに保存されます。gnus-summary-write-to-file およ び gnus-summary-write-body-to-file でだけ、これを設定する意義があ ります。

:headers

保存されるヘッダーを指定する変数のシンボルをこれで設定します。省略された 場合は gnus-save-all-headersgnus-saved-headers が、ど のヘッダーを保存するかを制御します。

これらのすべての関数は最後の一つを除いて、環境変数 SAVEDIR によっ て初期化される gnus-article-save-directory に記事を保存します。こ れはディフォルトでは ‘~/News/’ です。

上で述べたように、記事を保存するためのファイルの適切な名前を見つけるため に、それらは違った関数を用います。以下は名前を生成するために使うことがで きる関数のリストです:

gnus-Numeric-save-name

~/News/Alt.andera-dworkin/45’ のようなファイル名。

gnus-numeric-save-name

~/News/alt.andera-dworkin/45’ のようなファイル名。

gnus-Plain-save-name

~/News/Alt.andera-dworkin’ のようなファイル名。

gnus-plain-save-name

~/News/alt.andera-dworkin’ のようなファイル名。

gnus-sender-save-name

~/News/larsi’ のようなファイル名。

連想リスト gnus-split-methods に正規表現を放り込むことによって、 Gnus に記事を保存する場所をほのめかすことができます。例えば Gnus に関連 する記事を ‘gnus-stuff’ ファイルに、VM に関連する記事 を ‘vm-stuff’ ファイルに保存したければ、この変数を以下のようにすれ ば良いでしょう:

 
(("^Subject:.*gnus\\|^Newsgroups:.*gnus" "gnus-stuff")
 ("^Subject:.*vm\\|^Xref:.*vm" "vm-stuff")
 (my-choosing-function "../other-dir/my-stuff")
 ((equal gnus-newsgroup-name "mail.misc") "mail-stuff"))

これはそれぞれの要素が、二つの要素—「合致」と「ファイル」を持つリスト であるリストであるということがわかります。合致は文字列 (この場合は記事の ヘッダーに合致する正規表現として使われます)、シンボル (グループ名を引数 として、関数として呼ばれます) およびリスト (これは評価 (eval) さ れます) のどれかであることができます。これらの動作の一つで も nil でない結果を返すと、入力を求めるときのディフォルトとして 「ファイル」が使われます。加えて、呼ばれた関数か式が文字列か文字列のリス トを返したときは、演算の結果自体が使われます。

基本的には、現在の記事を保存するのに使われる可能性のあるファイル名のリス トを手に入れることになります。(すべての『合致』が使われます。) そして、 実際に名前として使いたいものの入力を促されますが、その際、この変数を適用 して得られた結果が、ファイル名を補完するときの候補になります。

この変数はディフォルトでは ((gnus-article-archive-name)) で、これ は Gnus が保存する記事の Archive-name 行を調べて、それをファイル 名の候補として使います。

これはファイル名を多少きれいにする関数の例です。 ‘nnml:mail.whatever’ のようなメールグループがたくさんあるとすると、 保存するためのファイル名を作る前にそれらのグループ名の最初の方を切り落と す必要があるかもしれません。次の物はまさにそれをします:

 
(defun my-save-name (group)
  (when (string-match "^nnml:mail." group)
    (substring group (match-end 0))))

(setq gnus-split-methods
      '((gnus-article-archive-name)
        (my-save-name)))

最後に、gnus-use-long-file-name という変数があります。これ が nil であると、すべての上記の関数はグループ名のすべてのピリオ ド (‘.’) をスラッシュ (‘/’) で置き換えます—つまり、すべての ファイルを一番上のディレクトリーに置くのではなく、それらの関数が階層的な ディレクトリーを生成するということで す (‘~/News/alt.andrea-dworkin’ ではな く ‘~/News/alt/andrea-dworkin’ のように)。たいていのシステムにおい て、この変数のディフォルトは t です。しかし、歴史的な理由によっ て Xenix と usg-unix-v マシンでは nil がディフォルトになります。

この関数は削除とスコアのファイル名にも影響します。この変数がリストで、そ のリストが not-score という要素を含んでいると、長いファイル名はス コアファイルには使われません。そのリストが not-save という要素を 含んでいると、保存するときに長いファイル名は使われません。また、そのリス トが not-kill という要素を含んでいると、長いファイル名は削除ファ イルには使われません。

記事をスプールのような階層に保存したい場合は、次のようにしてください。

 
(setq gnus-use-long-file-name '(not-save)) ; 階層にする
(setq gnus-default-article-saver
      'gnus-summary-save-in-file) ; エンコードしない

そうしたならば、o で記事を保存するだけです。すると、階層 を nneething 一時グループによって読むことができます—グループバッ ファーで G D をタイプして、一番上のディレクト リー (‘~/News/’) を引数として渡してください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17 記事のデコード

ときどき利用者は何らかの方法でエンコードされた記事 (もしくは一連の記事群) を投稿します。Gnus はそれらをデコードすることができます。

訳注: この章では、複数に分割して送信された一つの巨大な記事を、再び一つに まとめ上げてデコードする処理について説明しています。現在では、そのような 分割送信をメールサーバーが受け付けない等の理由によって、ほとんど目にする ことはありません。分割して送信しないことを確実にするには、以下の設定を行 なってくださ い (see (message-ja)Mail Variables section ‘メール変数’ in The Message Manual):

 
(setq message-send-mail-partially-limit nil)

これらすべての関数はプロセス/接頭引数の習慣 (see section プロセス/接頭引数) を、 『一つの記事』を『一つの群』と解釈する拡張をして、どの記事に操作をするか を見つけるために使います。Gnus は自分自身でどの記事がその群に属している かを判断し、すべての記事をデコードして、その結果のファイルを展開/表示/保 存することができます。

Gnus は以下の簡単な規則に則ってどの記事が群に属するのかを推測します: 表 題は行の最後の二つの数字を除いて (ほとんど) 同じである必要があります。 (空白は大体無視されますが。)

例えば: ‘cat.gif (2/3)’ というような表題を選ぶと、Gnus は正規表 現 ‘^cat.gif ([0-9]+/[0-9]+).*$’ に合致するすべての記事を見つけよう とします。

cat.gif (2/3) Part 6 of a series’ のような標準でない表題はどの自動 表示命令によっても適切に認識されないため、手で記事に # の印を付け なければなりません。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.1 uuencode された記事

X u

現在の群を uudecode します (gnus-uu-decode-uu)。

X U

現在の群を uudecode して保存します (gnus-uu-decode-uu-and-save)。

X v u

現在の群を uudecode して、表示します (gnus-uu-decode-uu-view)。

X v U

現在の記事を uudecode して、表示して保存しま す (gnus-uu-decode-uu-and-save-view)。

これらはすべて、プロセス印が付けられた記事に対して反応するということを覚 えておいてください。例えばニュースグループ全体をデコードして保存したいの であれば、例によって M P a (gnus-uu-mark-all) に続い て X U (gnus-uu-decode-uu-and-save) を実行してください。

このすべては、白日の下にいちいちキーを打っていた GNUS 4.1 のとき の gnus-uu の動作とはまったく違っています。一般にこの版 の gnus-uu は、何かの方法 (see section プロセス印を付ける) で 記事に印を付け、それから X u を押すことを前提としています。

注意: 定数 gnus-uu-notify-files (値 が ‘[Cc][Ii][Nn][Dd][Yy][0-9]+.\\(gif\\|jpg\\)’ にハードコードされ ています) に合致する名前を持つ記事をデコードしようとすると、あなたが問題 の記事を今まさに見たことをバラすために、gnus-uu は自動的 に ‘comp.unix.wizards’ に記事を投稿します。この機能を使わないように することはできません (訳注: そんな Cindy Crawford 嬢の写真がニュースで大 量に流れていた、まだ WWW がロクに普及していなかった時代の産物です)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.2 シェルアーカイブ

シェルアーカイブ (『shar ファイル』) はソースを配布するための人気のある 方法でしたが、今日ではそんなに使われていません。とにかくこれらを扱うため の命令があります:

X s

現在の群を解凍します (gnus-uu-decode-unshar)。

X S

現在の群を解凍して保存します (gnus-uu-decode-unshar-and-save)。

X v s

現在の群を解凍して表示します (gnus-uu-decode-unshar-view)。

X v S

現在の群を解凍し、表示して保存しま す (gnus-uu-decode-unshar-and-save-view)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.3 ポストスクリプトファイル

X p

現在のポストスクリプト群を展開します (gnus-uu-decode-postscript)。

X P

現在のポストスクリプト群を展開して保存しま す (gnus-uu-decode-postscript-and-save)。

X v p

現在のポストスクリプト群を表示しま す (gnus-uu-decode-postscript-view)。

X v P

現在のポストスクリプト群を表示して保存しま す (gnus-uu-decode-postscript-and-save-view)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.4 他のファイル

X o

現在の記事群を保存します (gnus-uu-decode-save)。

X b

現在の記事群を binhex で解凍します (gnus-uu-decode-binhex)。これ はまだ実際には動作しません。

X Y

現在の記事群を yEnc でデコードして保存しま す (gnus-uu-decode-yenc)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.5 デコードのための変数

形容詞です。動詞ではありません。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.5.1 規則変数

Gnus はファイルをどうやって表示するかを決めるために「規則変数」を使いま す。これらの変数はすべて以下のような様式です。

 
      (list '(regexp1 command2)
            '(regexp2 command2)
            ...)
gnus-uu-user-view-rules

この変数はファイルを表示するときに最初に調べられます。例えば、も し ‘.au’ 音響ファイルを変換するために sox を使いたいときは、 次のように設定することができます:

 
(setq gnus-uu-user-view-rules
      (list '("\\\\.au$\" "sox %s -t .aiff > /dev/audio")))
gnus-uu-user-view-rules-end

この変数は Gnus が利用者とディフォルトの表示規則から合致するものを見つけ ることができなかったときに調べられます。

gnus-uu-user-archive-rules

この変数はアーカイブを展開するときにどの命令が使われるべきかを決めるため に使うことができます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.5.2 他のデコードのための変数

gnus-uu-grabbed-file-functions

これは関数のリストです。すぐにファイルを移動したり表示することを可能にし、 何かができるようになる前にすべてのファイルがデコードされるのを待つ必要が 無いように、それぞれのファイルのデコードに成功した直後にそれらの関数が呼 ばれます。このリストに入れることができる既製の関数は以下の通りです:

gnus-uu-grab-view

ファイルを表示します。

gnus-uu-grab-move

ファイルを移動します (もし保存関数を使っているのであれば)。

gnus-uu-be-dangerous

デコードの最中に異常な状況が起こったときに何をするかを指定します。も し nil であると、できるだけ保守的になります。もし t である と、動作しないものは無視して、現存するファイルを上書きします。その他の場 合は、それぞれのときに尋ねます。

gnus-uu-ignore-files-by-name

この正規表現に合致する名前のファイルは表示されません。

gnus-uu-ignore-files-by-type

この変数に合致する MIME の型を持つファイルは表示されません。 Gnus はファイル名に基づいて型を推測していることに注意してください。 gnus-uu は (まだ) MIME パッケージではないので、これは少々 お行儀が悪いものです。

gnus-uu-tmp-dir

gnus-uu がその仕事をする場所です。

gnus-uu-do-not-unpack-archives

nil でないと、gnus-uu は表示するためのファイルを探すために アーカイブの中身までは見ません。

gnus-uu-view-and-save

nil でないと、利用者はファイルを表示した後で常に保存するかどうか を尋ねられます。

gnus-uu-ignore-default-view-rules

nil でないと、gnus-uu はディフォルトの表示規則を無視します。

gnus-uu-ignore-default-archive-rules

nil でないと、gnus-uu はディフォルトのアーカイブ展開命令を 無視します。

gnus-uu-kill-carriage-return

nil でないと、gnus-uu は記事からすべてのキャリッジリターン を取り去ります。

gnus-uu-unmark-articles-not-decoded

nil でないと、gnus-uu はデコードに失敗した記事に未読の印を 付けます。

gnus-uu-correct-stripped-uucode

nil でないと、gnus-uu は後続の空白が削除されてしまってい る uuencode されたファイルを修復しようと 試み ます。

gnus-uu-pre-uudecode-hook

メッセージを uudecode に送る前に実行されるフックです。

gnus-uu-view-with-metamail

nil でないと、gnus-uu は規則変数で定義された表示命令を無視 して、ファイル名に基づいた MIME Content-Type をでっちあげます。 その結果は表示のために metamail にかけられます。

gnus-uu-save-in-digest

nil でないと、デコードせずに保存することを指示されたときに、 gnus-uu は要約 (digest) を保存します。この変数が nil であ ると、gnus-uu は何も加工を施さずにすべてを一つのファイルに保存し ます。要約の作成は概ね RFC1153 に準拠していますが、意味のある目次を付け る簡単な方法が見つからなかったので、私はそれらを単に落としました。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.5.3 uuencode と投稿

gnus-uu-post-include-before-composing

nil でないと、gnus-uu は記事を作成する前にエンコードするファ イルを尋ねます。この変数が t であると、C-c C-i によってエン コードされたファイルを取り込むか、記事を投稿するときに取り込むかのどちら かをすることができます。

gnus-uu-post-length

記事の最大の長さです。エンコードされたファイルは全体のファイルを投稿する のに必要な量のファイルに分割されます。

gnus-uu-post-threaded

nil でないと、gnus-uu はエンコードされたファイルをスレッド で投稿します。これはあまり賢い方法ではないかもしれません。というのは、今 まで私が見た中で uuencode された記事を集めるのに、スレッドを追っていくこ とのできる他のデコーダーが存在しないからです。(えーと、私はそれをする一 つのパッケージを見たことがあります—gnus-uu です。しかしどうも、 それが数のうちに入るとは思えないのです…) ディフォルト は nil です。

gnus-uu-post-separate-description

nil でないと、説明文は別の記事で投稿されます。最初の記事は普 通 (0/x) のように番号が付けられます。もしこの変数が nil であると、 利用者の書いた説明分は最初のファイルの始めに取り込まれ、(1/x) の番号が付 けられます。ディフォルトは t です。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.6 ファイルの表示

デコードした後でファイルが何らかのアーカイブである場合、Gnus はアーカイ ブを展開しようと試み、アーカイブの中に表示できるファイルがあるかどうかを 調べます。例えば、gzip された tar ファイル ‘pics.tar.gz’ があって、 ファイル ‘pic1.jpg’ と ‘pic2.gif’ を含んでいる場合、Gnus は主 ファイルを解凍して tar を展開し、それから二つの絵を表示します。この展開 の過程は再帰的なので、アーカイブにアーカイブのアーカイブがあると、それは すべて展開されます。

最後に、Gnus は普通はそれぞれの抽出された記事ごとに「疑似記事」を概略バッ ファーに挿入します。これらの『記事』に移動した場合は、実行する命令 (普通 は Gnus が提案をします) を入力するように促され、それからその命令が実行さ れます。

gnus-view-pseudo-asynchronouslynil であると、Emacs は 先へ進む前に表示の終了を待ちます。

gnus-view-pseudosautomatic であると、Gnus は概略バッファー に疑似記事を挿入せず、それらをすぐに表示します。この変数 が not-confirm であると、利用者は表示が済む前に確認さえも求められ ません。

gnus-view-pseudos-separatelynil でないと、表示されるそ れぞれのファイルにつき一つの疑似記事が作成されます。nil であると、 同じ表示命令を使うすべての命令がその命令の引数のリストとして渡されます。

gnus-insert-pseudo-articlesnil でないと、デコードのと きに疑似記事を挿入します。ディフォルトでは t です。

さて、あなたはそんなふうに 仮想サーバー仮想グループ に ある 疑似記事 を読むことになるわけです。どうしてすべてが現実では なくなってしまったんでしょうか? どうしてこんなところに来てしまったんで しょうか?


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18 記事のトリートメント

この巨大な説明文書を読んできて、人々の著作を読むことがニュースリーダーの 本当の目的だったことを、すっかり忘れてしまったかもしれません。記事を読む ことです。残念ながら人々は書くことがとても苦手ですが、記事を読みやすくす るための関数と変数は山のようにあります。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.1 記事のハイライト

記事バッファーをフルーツサラダのように、いや総天然色のフルーツサラダのよ うにしたくありませんか。

W H a

現在の記事をもっとハイライトします。この関数は、ヘッダー、引用文、署名を ハイライトし、本文とヘッダーにボタンを加えます。

W H h

ヘッダーをハイライトします (gnus-article-highlight-headers)。ハイ ライトは変数 gnus-header-face-alist に従って行なわれ、それはそれ ぞれの要素が (正規表現 名前 内容) という様式の リストです。正規表現 はヘッダーに合致する正規表現、名前 はヘッ ダーの名前をハイライトするのに使われるフェース (see section フェースとフォント)、 内容 はヘッダーの値をハイライトするフェースです。最初に合致したも のが使われます。正規表現 の先頭に ‘^’ を付けてはいけないこと に注意してください—Gnus がそれを付け加えます。

W H c

引用された文をハイライトします (gnus-article-highlight-citation)。

引用文のハイライトをカスタマイズする変数は次の通りです:

gnus-cite-parse-max-size

記事の大きさがこの変数 (ディフォルトでは 25000) のバイト数より大きい記事 は、引用文のハイライトが行なわれません。

gnus-cite-max-prefix

引用符の最大の長さです (ディフォルトでは 20 です)。

gnus-cite-face-list

引用文をハイライトするために使われるフェースのリストです (see section フェースとフォント)。同じメッセージの中に複数の記事からの引用があると、Gnus はそ れぞれの記事からの引用をそれ用のフェースで表示しようとします。これにより、 誰が何を書いたかが分かりやすくなるでしょう。

gnus-supercite-regexp

普通の Supercite 著者行に合致する正規表現です。

gnus-supercite-secondary-regexp

引き裂かれた Supercite 著者行に合致する正規表現です。

gnus-cite-minimum-match-count

それが引用文であると判定する前に調べなければならない引用符の最小の数です。

gnus-cite-attribution-prefix

著者行の始まりに合致する正規表現です。

gnus-cite-attribution-suffix

著者行の終りに合致する正規表現です。

gnus-cite-attribution-face

著者行に使われるフェースです。その著者が書いた文の引用のためのフェースと 融合されます。

gnus-cite-ignore-quoted-from

非-nil だったら、‘>From ’ で始まる行で引用文のハイライトは行 なわれません。それらの行は、エンベロープ From 行と混同しないように、 MTA がクオートした可能性があります。ディフォルト値は t です。

W H s

署名 (signature) をハイライトしま す (gnus-article-highlight-signature)。 gnus-signature-separator (see section 記事の署名) の後のすべて のものは署名であると解釈され、gnus-signature-face でハイライトさ れます。それはディフォルトでは italic です。

記事を自動的にハイライトする方法については 記事のカスタマイズ を 参照してください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.2 記事中の文の強調表示

(訳注: Fontisize == Fontify + Emphasize)

人々はよくニュースの記事で ‘_これ_’ や ‘*これ*’ また は ‘/これ/’ のようなものを使って単語を強調します。Gnus は記事 を W e 命令 (gnus-article-emphasize) にかけることによって素 敵に見えるようにできます。

強調がどのように処理されるかは変数 gnus-emphasis-alist によって制 御されます。これは連想リストで、最初の要素は合致するべき正規表現です。二 番目の要素は、正規表現の中のどのグループが強調語全体を見つけるために使わ れるかを示す数値です。三番目は正規表現のどのグループが表示されハイライト されるかを決める数値です。(この二つのグループの間にあるテキストは隠され ます。) 四番目はハイライトさせるためののフェースです。

 
(setq gnus-emphasis-alist
      '(("_\\(\\w+\\)_" 0 1 gnus-emphasis-underline)
        ("\\*\\(\\w+\\)\\*" 0 1 gnus-emphasis-bold)))

(訳注: 上記の変数の値は、ディフォルトのままにしておくのが無難です。)

ディフォルトでは七つの規則があり、それらは以下のフェースを用います:
gnus-emphasis-bold, gnus-emphasis-italic, gnus-emphasis-underline, gnus-emphasis-bold-italic, gnus-emphasis-underline-italic, gnus-emphasis-underline-bold, gnus-emphasis-underline-bold-italic

これらのフェースを変更したいのであれば、 M-x customizecopy-face を使うことができます。例え ば gnus-emphasis-italic が代わりに赤のフェースを使うようにしたい のならば、次のようにすれば良いでしょう:

 
(copy-face 'red 'gnus-emphasis-italic)

任意の語を強調表示させたいときは、 gnus-group-highlight-words-alist 変数を使うことができます。これ は gnus-emphasis-alist と同じ構文を使います。 highlight-words グループパラメー ター (see section グループパラメーター) を使うこともできます。

記事を自動的に強調表示させるやり方について は 記事のカスタマイズ を参照してください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.3 記事を隠す

と言うよりはむしろ、記事の中にある特定のものを隠すことです。たいていの記 事には、普通はありすぎるくらいのごみがあります。

W W a

記事バッファーでたくさんのものを隠します (gnus-article-hide)。特に この関数はヘッダー、PGP、引用文、それに署名を隠します。

W W h

ヘッダーを隠します (gnus-article-hide-headers)。 See section 余分なヘッダーを隠す.

W W b

あまり興味の持てないヘッダーを隠しま す (gnus-article-hide-boring-headers)。See section 余分なヘッダーを隠す.

W W s

署名を隠します (gnus-article-hide-signature)。 See section 記事の署名.

W W l

gnus-list-identifiers で指定されているメーリングリストの標識を削 除します。これらはいくつかのメーリングリストのサーバーがすべて の Subject ヘッダーの最初に付ける文字列、例え ば ‘[zebra 4711]’ のようなものです。文字列の初めにあ る ‘Re: ’ は、削除を行なう前に跳び越されます。 gnus-list-identifiers\\(..\\) を含めてはいけません。

gnus-list-identifiers

表題から削除されるべきメーリングリストの標識に合致する正規表現です。これ は正規表現のリストであることもできます。

W W P

不要な PEM (privacy enhanced messages (プライバシー拡張メッセー ジ)) の部分を隠します (gnus-article-hide-pem)。

W W B

banner グループパラメーターで指定されたバナーを取り除きま す (gnus-article-strip-banner)。これは主に、いくつかのメーリング リストや司会者付きのグループがすべての記事に追加する、欝陶しいバナーと/ もしくは署名を隠すために使用されます。この関数を使う方法 は banner グループパラメーター (see section グループパラメーター) をバナー を取り除きたいグループに追加することです。パラメーターは、消去されるテキ ストに合致する正規表現として解釈される文字列か、(最後の) 署名を消去する ためのシンボル signature、また は gnus-article-banner-alist の正規表現に対応した他のシンボルのい ずれかであることができます。

例えば:

 
(setq gnus-article-banner-alist
      ((googleGroups .
       "^\n*--~--~---------\\(.+\n\\)+")))

グループにかかわらず、記事の送信者 が gnus-article-address-banner-alist で設定されている特定のメール アドレスを持っているときだけ、広告のようなものを隠すことができます。

gnus-article-address-banner-alist

メールアドレスとバナーの連想リストです。それぞれの要素 は (address . banner) の形式を持ち、ここ で address は From ヘッダーにあるメールアドレスに合致する正規表現 です。また、banner はシンボル signaturegnus-article-banner-alist の要素、正規表現または nil のう ちの一つです。address が著者のメールアドレスに合致すると、広告のよ うなものを消します。例えば、送信者が ‘hail@yoo-hoo.co.jp’ というメー ルアドレスを持っていて、彼が送信するすべての記事に ‘Do You Yoo-hoo!?’ のようなものがある場合、以下の要素でそれらを消すことができま す。

 
("@yoo-hoo\\.co\\.jp\\'" . "\n_+\nDo You Yoo-hoo!\\?\n.*\n.*\n")
W W c

引用文を隠します (gnus-article-hide-citation)。隠蔽をカスタマイズ するいくつかの変数は:

gnus-cited-opened-text-button-line-format
gnus-cited-closed-text-button-line-format

Gnus はどこの引用文が隠されているかを示すためにボタンを付け加え、文章の 隠蔽を切り替えられるようにします。この変数の様式は、以下のフォーマットの ような変数によって指定されます (see section 書法仕様変数)。次の指定 が有効です:

b

隠された文の最初のポイントです。

e

隠された文の最後のポイントです。

l

隠されたリージョンの文字の数です。

n

隠された文の行の数です。

gnus-cited-lines-visible

隠さずに表示しておく、引用文の先頭からの行数です。これは、隠さずに表示す る先頭からの行と、隠さずに表示する末尾からの行の、それぞれの数の cons セ ルであることもできます。

W W C-c

以下の二つの変数に依存して、引用文を隠しま す (gnus-article-hide-citation-maybe):

gnus-cite-hide-percentage

引用文の割合のパーセンテージが、この変数 (ディフォルトは 50) より大きかっ たら、引用文を隠します。

gnus-cite-hide-absolute

隠される前に、引用文は少なくともこの長さ (ディフォルトは 10) でなければ なりません。

W W C

根本でない記事の引用文を隠しま す (gnus-article-hide-citation-in-followups)。これは対話的命令と してはあまり役に立たないかもしれませんが、自動的に実行させるには手軽な関 数でしょう (see section 記事のカスタマイズ)。

これらのすべての『隠蔽』命令は切り替え命令ですが、これらの命令に負の接頭 引数を与えると、それらは前に隠されていたものを表示します。正の接頭引数を 与えれば、それらは常に隠します。

引用文をカスタマイズするためのさらなる変数について、 記事のハイライト も参照してください。

自動的に記事の要素を隠すための方法は 記事のカスタマイズ を参照 してください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.4 記事の洗濯

私たちはこれをもっともな理由の下で『記事の洗濯』(article washing) と呼ん でいます。A キーは使われていたので、代わりに W キーを使う必 要がありました。

「洗濯」は『何かの何かを何か別のものに変換する』と定義されますが、普通は もっと良く見える何かに落ち着きます。もっときれいになります、たぶん。

Gnus が記事を表示するディフォルトのやり方を変えたいとき は 記事のカスタマイズ を参照してください。

C-u g

これは洗濯ではなくて、その逆です。これをタイプすると、ディスクやサーバー にあるがままの記事が見えます。

g

現在の記事の再表示を強制します (gnus-summary-show-article)。これ もまた本当の洗濯ではありません。これをタイプすると、以前に適用された対話 的な洗濯機能はご破算にされ、すべてのディフォルトのトリートメントを施され た記事が表示されます (see section 記事のカスタマイズ)。

W l

ページの区切りを現在の記事から取り除きま す (gnus-summary-stop-page-breaking)。ページの区切りに付いて は 記事のその他 を参照してください。

W r

記事バッファーでカエサル変換 (Caesar rotate, rot13) を行ないま す (gnus-summary-caesar-message)。カエサル変換か rot13 を用いて読 むことを指定する、判読不可能な記事です (典型的には攻撃的な冗談などです。)

普通は“rot13”と呼ばれています。それはアルファベットの位置が 13 個回転 するからです。例えば、‘B’ (2 番目の文字) → ‘O’ (15 番目の文字)。 これは時々『カエサル変換』と呼ばれることもあります。というのは、カエサル がこの形式の、えーと、いささか貧弱な暗号化を採用したという噂があるからで す。

W m

記事バッファーをモールスでデコードしま す (gnus-summary-morse-message)。

W i

現在の記事にある IDNA エンコードされたドメイン名をデコードします。 IDNA エンコードされたドメイン名は ‘xn--bar’ のように見えます。これ を実行した後で文字列がデコードされないままだったら、おそらくそれは不正 な IDNA 文字列でしょう (‘xn--bar’ は不正です)。このコマンドを動かす ためには、GNU Libidn (http://www.gnu.org/software/libidn/) をイン ストールしていなければなりません。

W t
t

記事バッファーにすべてのヘッダーを表示するかどうかを切り替えま す (gnus-summary-toggle-header)。

W v

記事バッファーにすべてのヘッダーを永続的に表示するかどうかを切り替えま す (gnus-summary-verbose-headers)。

W o

オーバーストライクを処理します (gnus-article-treat-overstrike)。

訳注: 以下のような重ね打ちを指示する文字列を bold や underline で表示し ます。

B^HBo^Hol^Hld^Hd’, ‘U^H_n^H_d^H_e^H_r^H_l^H_i^H_n^H_e^H_

W d

gnus-article-dumbquotes-map に応じて、マ■■■ソ■ ■ sm*rtq**t*s を処理します。この関数は文字が sm*rtq**t* かどうかを推測 するので、対話的にのみ使用されるべきであることに注意してください。

Sm*rtq**t*s はもっと多くの引用文字を提供するために、マ■■■ソ■■が勝手 に文字マップを拡張したものです。もし、アポストロフィ (’) や引用記 号 (") などがあるべきところに \222\264 のようなものが 見えてしまったら、洗濯してみてください。

W U

多くの非-ASCII 文字をそれらと等価な ASCII 文字に変換 します (gnus-article-treat-non-ascii)。これは、フォントに制限があっ て、アクセント文字や「進んでいる」句読点などを表示しない端末では、たいて いの場合に役立ちます。例えば ‘’ から ‘>>’ への変換などを行な います。

W Y f

いかれた Outlook (Express) の記事を完全に醜くなくすること (訳 注: de-ugly-fy) (sm*rtq**t*s を処理、行の折り返しを解除、著者行の修復と 引用文の整頓) をします。 (gnus-article-outlook-deuglify-article)。

W Y u

折り返された引用行のように見える行の折り返しを解きます。折り返しが解かれ た行の最小および最大の長さを表 す gnus-outlook-deuglify-unwrap-min およ び gnus-outlook-deuglify-unwrap-max を調整することによって、どん な行の折り返しが解かれるかを制御することができます。 (gnus-article-outlook-unwrap-lines)。

W Y a

壊れた著者行を修復します。
(gnus-article-outlook-repair-attribution)。

W Y c

壊れた引用文を、テキストを整理し直すことによって修復します。 (gnus-article-outlook-rearrange-citation)。

W w

行を折り返します (gnus-article-fill-cited-articles)。

折り返す幅を指定するために、命令に数値接頭引数を与えることができます。

W Q

長い行を折り返します (gnus-article-fill-mode-lines)。

W C

それぞれの文の最初の語を大文字にしま す (gnus-article-capitalize-sentences)。

W c

CRLF の組 (すなわち、行の最後の ‘^M’) を LF に変換します (これ は DOS の行末の世話をします)。そうしてから残りの CR を LF に変換しま す (これは MAC の行末の世話をします) (gnus-article-remove-cr)。

Quoted-printable を処理します (gnus-article-de-quoted-unreadable)。 Quoted-Printable は 非-ASCII (すなわち 8-bit) の記事を送るとき に使われる一般的な MIME エンコーディングです。それは概し て ‘d,Aij,A` vu’ のようなものを ‘d=E9j=E0 vu’ に見せるので、とても 読み辛くなります。問題の記事が、そのエンコーディングが行なわれたことを示 す Content-Transfer-Encoding ヘッダーを持っていれば、通常それ は Gnus によって自動的に行なわれることに注意してください。接頭引数が与え られると、文字セットが尋ねられます。

W 6

Base64 をデコードします (gnus-article-de-base64-unreadable)。 Base64 は非-ASCII (すなわち 8-bit) の記事を送るときに使われる、 一般的な MIME エンコーディングです。問題の記事が、そのエンコー ディングが行なわれたことを示す Content-Transfer-Encoding ヘッダー を持っていれば、通常それは Gnus によって自動的に行なわれることに注意して ください。接頭引数が与えられると、文字セットが尋ねられます。

W Z

HZ または HZP を処理します。HZ (または HZP) は中国語の記事を伝送するとき に使われる一般的な符号です。これは ‘~{<:Ky2;S{#,NpJ)l6HK!#~}’ の ような典型的な文字列を作ります。

W A

ANSI SGR シーケンスを overlay または extent に変換しま す (gnus-article-treat-ansi-sequences)。ANSI シーケンス は中国語のニュースグループで強調表示に使われています。

W u

URL に含まれる改行を削除します。いくつかのメイラーは、行を短くするために 出ていくメールに改行を挿入しますが、これは長い URL を複数の行に分割して しまいます。改行を削除することによって、それらの URL を復旧させま す (gnus-article-unsplit-urls)。

W h

HTML を処理します。当該メッセージが HTML であること を示す Content-Type ヘッダーを持っていたならば、それは Gnus によっ て自動的に行なわれることに注意してください。

接頭引数が与えられると、文字セットを尋ねられます。それがもし数値だったら、 gnus-summary-show-article-charset-alist (see section 記事のスクロール) で定義されている文字セットが使われます。(訳注: 実質的には「文 字セット」ではなくて coding-system です。)

ディフォルトでは HTML の変換に mm-text-html-renderer (see (emacs-mime-ja)Display Customization section ‘表示のカスタマイズ’ in The Emacs MIME Manual) で設定された関数を使います。使うことができる、あらか じめ用意された関数は以下の通りです:

shr

Gnus の簡易 html 描画器 (shr) を使います。

gnus-w3m

w3m を使って Gnus に描画させます。

w3

Emacs/W3 を使います。

w3m

emacs-w3m を使います。

w3m-standalone

w3m を使います。

links

Links を使います。

lynx

Lynx を使います。

html2text

html2text (シンプルな HTML コンバーターで、Gnus に含まれていま す) を使います。

W b

クリックできるボタンを記事に加えます (gnus-article-add-buttons)。 See section 記事のボタン.

W B

クリックできるボタンを記事のヘッダーに加えま す (gnus-article-add-buttons-to-head)。

W p

署名付きコントロールメッセージの認証を行ないま す (gnus-article-verify-x-pgp-sig)。 newgroupcheckgroups といったコントロールメッセージは、 通常そのニュースグループ階層のメインテイナーによって署名されています。認 証を行なうためには、メインテイナーの PGP 公開鍵をあなたのキー リングに追加しなければなりません。(1)

W s

署名されたメッセージ (PGP, PGP/MIME また は S/MIME によって) を検証しま す (gnus-summary-force-verify-and-decrypt)。See section セキュリティー.

W a

記事の本文の先頭から X-No-Archive ヘッダーのようなヘッダーを取り 除きます (gnus-article-strip-headers-in-body)。

W E l

記事の先頭にあるすべての空白行を取り除きま す (gnus-article-strip-leading-blank-lines)。

W E m

すべての空白行を空行で置き換えてから、すべての複数の空行を一つの空行で置 き換えます (gnus-article-strip-multiple-blank-lines)。

W E t

記事の最後にあるすべての空白行を取り除きま す (gnus-article-remove-trailing-blank-lines)。

W E a

上の三つの命令をすべて実行します (gnus-article-strip-blank-lines)。

W E A

すべての空白行を取り除きます (gnus-article-strip-all-blank-lines)。

W E s

記事の本文のすべての行頭にあるすべての空白を取り除きま す (gnus-article-strip-leading-space)。

W E e

記事の本文のすべての行末にあるすべての空白を取り除きま す (gnus-article-strip-trailing-space)。

自動的に記事の洗濯を行なわせる方法は 記事のカスタマイズ を参照し てください (訳注: 実は多くの洗濯がディフォルトで自動的に行なわれます)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.5 記事ヘッダー

これらのコマンドは記事ヘッダーをいろいろに変形させます。

W G u

折り返されたヘッダー行を一行にしま す (gnus-article-treat-unfold-headers)。

W G n

NewsgroupsFollowup-To ヘッダーを折り返しま す (gnus-article-treat-fold-newsgroups)。

W G f

すべてのメッセージヘッダーを折り返しま す (gnus-article-treat-fold-headers)。

W E w

すべてのヘッダーから余分な空白を取り除きま す (gnus-article-remove-leading-whitespace)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.6 記事のボタン

人々はよく記事の中に他の資料を参照するための案内を入れることがありますが、 それらの参照への案内の上で RET を打つか、マウスの真中のボタンを使っ たときに、彼らが話題にしているのが何であれ、最小限の曖昧さで Gnus が取得 することができれば素敵でしょう。

特定の標準的な参照に、Gnus はディフォルトで「ボタン」を付けます: ちゃん とした URL、メールアドレス、Message-ID、Info へのリンク、man ページ、そ れに関連する Emacs または Gnus の参考文献です。これは二つの変数によって 制御されていて、その一つは記事の本文を扱い、もう一つは記事のヘッダーを扱 います。

gnus-button-alist

それぞれの要素が次のような様式を持つ連想リストです:

 
(regexp button-par use-p function data-par)
regexp

この正規表現 (大文字と小文字は区別されません) に合致するすべてのテキスト は、外部への参照であるとみなされます。これは埋め込まれた URL に合致する 典型的な正規表現です: ‘<URL:\\([^\n\r>]*\\)>’。これはまた正規表現の 値を持つ変数であってもよく、有用な変数とし て gnus-button-url-regexp およ び gnus-button-mid-or-mail-regexp があります。

button-par

Gnus は合致したもののどの部分がハイライトされるのかを知らなければなりま せん。これは正規表現のどの副表現がハイライトされるかを指定する番号です。 すべてをハイライトしたいのなら、ここで 0 を使ってください。

use-p

この式は 評価 され、結果が nil でなかったら、これは合致で あるとみなされます。これは間違った合致を避けるために特別な選別をしたいと きに役に立ちます。ここではしばしば gnus-button-*-level のよ うな名前の変数が使われますが、See section Article button levels, 他のどんな形 式でも使うことができます。

function

この関数が、このボタンをクリックしたときに呼ばれます。

data-par

button-par のように、これは部分表現の番号ですが、これは合致のどの 部分が function にデータとして送られるかを指定します。

したがって URL をボタンにする完全な要素は、こうなります。

 
("<URL:\\([^\n\r>]*\\)>" 0 t gnus-button-url 1)
gnus-header-button-alist

これは他の連想リストと同じようなものですが、記事のヘッダーだけに適用され ることと、それぞれの項目がどのヘッダーにボタンを付けるかを指示するための 追加の要素を持っていることが異なります:

 
(header regexp button-par use-p function data-par)

header は正規表現です。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.6.1 関連する変数と関数

gnus-button-*-level

Article button levels を参照してください。

gnus-button-url-regexp

埋め込まれた URL に合致する正規表現です。上述の変数のディフォルトの値で 使われます。

gnus-button-man-handler

Man ページの表示に使う関数です。少なくとも一つの引数として Man ページの 名前の文字列を受け付けなければなりません。

gnus-button-mid-or-mail-regexp

Message-ID かメールアドレスに合致する正規表現です。

gnus-button-prefer-mid-or-mail

この変数は ‘foo123@bar.invalid’ のような文字列のボタンが押されたと きに、何を行なうかを決める変数です。このような文字列は Message-ID かメー ルアドレスのいずれかです。もし midmail というシンボル のうちの一つだったら、Gnus は常にそれぞれ文字列が Message-ID またはメー ルアドレスであると仮定します。この変数が ask というシンボルに設定 されると、Gnus はいつも利用者が何をしたいかを尋ねます。それが関数だった 場合、たった一つの文字列を引数として呼ばれます。その関数は midmailinvalid または ask を返さなければなりません。 ディフォルト値は関数 gnus-button-mid-or-mail-heuristic です。

gnus-button-mid-or-mail-heuristic

その引数が Message-ID かメールアドレスであるかを推定する関数です。 Message-ID だったら mid を、メールアドレスだったら mail を、 不確かだったら ask を、そして無効な文字列だった ら invalid を返します。

gnus-button-mid-or-mail-heuristic-alist

関数 gnus-button-mid-or-mail-heuristic で使われる (RATE . REGEXP) 対の連想リストです。

gnus-article-button-face

ボタンに使われるフェースです。

gnus-article-mouse-face

マウスのカーソルがボタンの上にあるときに使われるフェースです。

記事に自動的にボタンを付ける方法は、記事のカスタマイズ を参照し てください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.7 Article button levels

変数 gnus-button-*-level の値が高いほど、より多くのボタンが 現れます。レベルがゼロだったらボタンは表示されません。ディフォルト 値 (それは 5) では、とてもたくさんのボタンをすでに見ているはずです。高い レベルではより多くのボタンを見ることになりますが、多くの要らないものも現 れるかもしれません。それらを避けるために、特定のグループに対して変 数 gnus-button-*-level を設定しても良いでしょ う (see section グループパラメーター)。gnus-parameters 変数の例です:

 
;; いくつかのグループで gnus-button-*-level を増やす:
(setq gnus-parameters
      '(("\\<\\(emacs\\|gnus\\)\\>" (gnus-button-emacs-level 10))
        ("\\<unix\\>"               (gnus-button-man-level 10))
        ("\\<tex\\>"                (gnus-button-tex-level 10))))
gnus-button-browse-level

Message-ID、メールアドレスおよびニュースの URL を参照する案内の表示を制 御します。関連する変数と関数には gnus-button-url-regexpbrowse-url および browse-url-browser-function があります。

gnus-button-emacs-level

Emacs または Gnus への参照の表示を制御します。関連する関数は、 gnus-button-handle-custom, gnus-button-handle-describe-function, gnus-button-handle-describe-variable, gnus-button-handle-symbol, gnus-button-handle-describe-key, gnus-button-handle-apropos, gnus-button-handle-apropos-command, gnus-button-handle-apropos-variable, gnus-button-handle-apropos-documentation およ び gnus-button-handle-library です。

gnus-button-man-level

(Unix の) man ページへの参照の表示を制御します。 gnus-button-man-handler を見てください。

gnus-button-message-level

Message-ID、メールアドレスおよびニュースの URL の表示を制御します。関連 する変数と関数に は gnus-button-mid-or-mail-regexp, gnus-button-prefer-mid-or-mail, gnus-button-mid-or-mail-heuristic およ び gnus-button-mid-or-mail-heuristic-alist があります。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.8 記事の日付

日付は聞いたことの無い何か辺鄙なタイムゾーンで作成されていることが良くあ るので、記事が送られたときに何時だったかを知ることができるのはとても良い ことです。

W T u

UT (別名 GMT, ZULU) で日付を表示します (gnus-article-date-ut)。

W T i

日付を国際的な形式、ISO 8601 で表示しま す (gnus-article-date-iso8601)。

W T l

日付をローカル・タイムゾーンで表示しま す (gnus-article-date-local)。

W T p

日付を英語で楽に発音できる形式で表示しま す (gnus-article-date-english)。

W T s

日付を利用者定義の様式を使って表示します (gnus-article-date-user)。 その様式は変数 gnus-article-time-format で指定される、 format-time-string に渡される文字列です。指定することができる様式 の一覧は、変数の説明文を見てください。

W T e

記事が投稿されてから今までどれくらいの時間が経過したかを表示しま す (gnus-article-date-lapsed)。こんなふうに。

 
Date: 6 weeks, 4 days, 1 hour, 3 minutes, 8 seconds ago

この行はディフォルトでは継続的に更新されます。その頻度 (秒 数) は gnus-article-update-date-headers 変数で制御されます。更新 をやめさせたいのなら、

 
(setq gnus-article-update-date-headers nil)

を ‘~/.gnus.el’ ファイルに入れてください。

W T o

本来の日付を表示します (gnus-article-date-original)。これはあなた が普段は他の変換関数を使っていて、それが完全に間違ったことをしているので はないかと心配になったときに役に立ちます。例えば、記事が 1854年に投稿さ れたと主張したとしましょう。しかし、そのようなことは 完全に 不可 能です。私が信用できませんか? *くすくす*

好みの書式で自動的に日付を表示する方法は 記事のカスタマイズ を参 照してください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.9 Article Display

これらのコマンドは、いろんな取るに足らないギミック (gimmicks) の表示を、 それらをサポートしている Emacs の記事バッファーに追加します。

X-Face ヘッダーは小さな白黒画像で、メッセージヘッダーから持ってき ます (see section X-Face)。

Face ヘッダーは小さなカラー画像で、メッセージヘッダーから持ってき ます (see section Face)。

スマイリーは、人々がメッセージに散らかしたがる小さな ‘:-)’ シンボル です。

一方 Picon はあなた自身のシステムに依存し、Gnus はヘッダーに合致するあな たの持ち物を探してみます (see section Picons)。

Gravatars は http://www.gravatar.com/ からオンラインで取得しま す (see section Gravatars)。

これらすべての機能はトグルです。もしすでにそれらが存在していたならば、そ れらは削除されます。

W D x

X-FaceFrom ヘッダーに表示しま す (gnus-article-display-x-face)。

W D d

FaceFrom ヘッダーに表示しま す (gnus-article-display-face)。

W D s

スマイリーを表示します (gnus-treat-smiley)。

W D f

From ヘッダーを Picon 化します (gnus-treat-from-picon)。

W D m

すべてのメールヘッダー (すなわち CcTo) を Picon 化しま す (gnus-treat-mail-picon)。

W D n

すべてのニュースヘッダー (すなわ ち NewsgroupsFollowup-To) を Picon 化しま す (gnus-treat-newsgroups-picon)。

W D g

From ヘッダーをアバター化します (gnus-treat-from-gravatar)。

W D h

メールヘッダーぜんぶ (つまり CcTo) をアバター化しま す (gnus-treat-from-gravatar)。

W D D

記事バッファーからすべての画像を削除しま す (gnus-article-remove-images)。

W D W

gnus-article-html で描画した HTML 記事を読んでいるとき に、阻止された画像をこのコマンドでバッファーに挿入することができま す (gnus-html-show-images)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.10 記事の署名

それぞれの記事は二つの部分に分けられます—ヘッダーと本文です。本文は署 名部分と文章部分に分けることができます。どれが署名とみなされるかを決める 変数は gnus-signature-separator です。これは普通は son-of-RFC 1036 で規定されている標準の ‘^-- $’ です。しかし、多くの人が標準で はない署名セパレーターを使うので、この変数は一つ一つ試される、正規表現の リストであることもできます。(探索は本文の最後から始めへとなされま す。) よくありそうな値は:

 
(setq gnus-signature-separator
      '("^-- $"         ; 標準
        "^-- *$"        ; 普通の崩し方
        "^-------*$"    ; 多くの人は長ーーい横棒の
                        ; 行を使います。みっともない!
        "^ *--------*$" ; 二倍みっともない!
        "^________*$"   ; 下線も人気があります
        "^========*$")) ; 邪道!

あなたが寛容であればあるほど、間違った結果を得ることになるでしょう。

gnus-signature-limit は記事を表示するときにどれが署名とみなされる かへの制限を提供します。

  1. これが整数であれば、署名はこの整数より (文字数で) 長くなっていてはいけま せん。
  2. これが浮動小数点数であれば、署名はその数値より (行数で) 長くなっていては いけません。
  3. これが関数であれば、その関数は引数なしで呼ばれ、それが nil を返せ ば、そのバッファーには署名がありません。
  4. これが文字列であれば、それは正規表現として使われます。もしそれが合致すれ ば、当のその文字列は署名ではありません。

この変数は、要素が上に列挙された型のリストであることもできます。例です:

 
(setq gnus-signature-limit
      '(200.0 "^---*Forwarded article"))

これは署名セパレーターの後に 200 を超える行があるか、セパレーターの後の テキストが正規表現 ‘^---*Forwarded article’ に合致すれば、結局それ は署名ではないということです。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.18.11 記事いろいろ

A t

記事をある言語から別のものへ変換します (gnus-article-babel)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.19 MIME コマンド

以下のコマンドはすべて数値接頭引数を理解します。例えば 3 K v は 「三番目の MIME パートを表示する」という意味です。

b
K v

MIME パートを表示します。

K o

MIME パートを保存します。

K O

ファイル名の入力を求めてから MIME パートを保存し、それを記事か ら取り除きます。取り除かれた MIME オブジェクト は message/external-body 型の MIME 形式として参照されるように なります。

K r

MIME パートを外部にある本体で置き換えます。

K d

MIME パートを削除して、削除したことの案内を追加します。

K c

MIME パートをコピーします。

K e

MIME パートを外部コマンドで表示します。

K i

MIME パートをバッファー内に表示します。

K |

MIME パートを外部コマンドにパイプします。

以降の MIME コマンドの残りは、数値接頭引数を同じやり方では使い ません:

K H

現在の記事の ‘text/html’ パートを WWW ブラウザーで見ます。メッセー ジに cid 形式で埋め込まれたインライン画像は一般に安全だと考えられ ているので適切に処理されます。接頭引数が与えられなければ、すべて の HTML パートの先頭に記事のヘッダーが加えられます。

警告: Spammers は HTML 記事中の画像への (http 形式 の) リンクを、あなたがその記事を読んだかどうかを確かめるために使います。 このコマンドは HTML 記事からその手の “web bugs” を取り除かな いでブラウザーに渡すので、このコマンドは信頼できる送信者からのメールでだ け使うべきです。

HTML を常にブラウザーで表示したいのであれば、 mm-text-html-renderernil に設定してください。

このコマンドは画像を含む HTML コンテンツをブラウザーに渡すため に一時ファイルを作り、グループを抜け出るときに (もしあなたが望めば) それ らを削除します。

K b

すべての MIME パートの先頭にボタンを付加します。埋め込まれたパー トをセーブ (または他の動作を実行) しようとするときに、たいてい便利です。

K m

ときたま、ヘッダーが無かったり間違ったヘッダーを持つマルチパートのメッセー ジが送信されてきます。このコマンドは、それらのメッセージがより快適に表示 されるように「修復」を試みます (gnus-summary-repair-multipart)。

X m

MIME タイプに合致するすべてのパートを、ディレクトリーにセーブ します (gnus-summary-save-parts)。プロセス/接頭引数の習慣を理解し ます (see section プロセス/接頭引数)。

M-t

記事バッファーにボタンを表示するかしないかを切り替えまま す (gnus-summary-toggle-display-buttonized)。

W M w

記事ヘッダーにある RFC 2047 でエンコードされた語をデコードしま す (gnus-article-decode-mime-words)。

W M c

エンコードされた記事の本文を、文字セットでデコードしま す (gnus-article-decode-charset)。

このコマンドは、文字セットを決めるために Content-Type ヘッダーを 調べます。記事にそんなヘッダーが無い場合でも、接頭引数を与えることによっ て、デコードするための文字セットを入力することは可能です。ある共通のエン コーディングを使って (でも MIME ヘッダーは含めずに) 人々が記事 を投稿する地域的なグループでは、charset グループ/トピック・パラメー ターに必要な文字セットを設定すれば良いでしょう (see section グループパラメーター)。

W M v

現在の記事にある、すべての MIME パートを表示しま す (gnus-mime-view-all-parts)。

関連する変数:

gnus-ignored-mime-types

これは正規表現のリストで、これに含まれている正規表現に合致す る MIME タイプは、Gnus によって完全に無視されます。ディフォル ト値は nil です。

すべての Vcard を無視させるには、こんなふうにしてください:

 
(setq gnus-ignored-mime-types
      '("text/x-vcard"))
gnus-article-loose-mime

非-nil だったら、Gnus は記事を MIME メッセージとして解 読する前に、‘MIME-Version’ があることを必要としません。これは、ある 壊れたメール・ユーザー・エージェントからのメッセージを読むときに役立ちま す。ディフォルトは t です。

gnus-article-emulate-mime

MIME ではない別のエンコーディングの手法があります。最も一般的 なのは ‘uuencode’ ですが、yEncode も普及してきています。この変数が 非-nil になっていると、Gnus はメッセージの本文にそれらのエンコー ディングが見つかるかどうかを調べ、もしあったならば、それら を Gnus の MIME 機構で処理します。ディフォルトは t です。 デコードできるのは単一の yEnc でエンコードされたパートだけです。Gnus は エンコードについてはサポートしません。

gnus-unbuttonized-mime-types

これは正規表現のリストで、これに含まれている正規表現に合致す る MIME タイプには、ボタンが付加されません。ただし、それらが表 示されないか、gnus-buttonized-mime-types 変数の方が優先される場合 を除いて、ですが。ディフォルト値は (".*/.*") です。この変数 は gnus-inhibit-mime-unbuttonizingnil のときだけ使われ ます。

gnus-buttonized-mime-types

これは正規表現のリストで、これに含まれている正規表現に合致す る MIME タイプには、それらが表示されない場合を除いて、ボタンが 付加されます。この変数は gnus-unbuttonized-mime-types よりも優先 されます。ディフォルト値は nil です。この変数 は gnus-inhibit-mime-unbuttonizingnil のときだけ使われ ます。

例えば、セキュリティーのボタンだけを表示して、他のボタンを表示しないよう にするには、この変数を ("multipart/signed") に設定して、 gnus-unbuttonized-mime-types はディフォルト値のままにしておいてく ださい。

また、このリストに "multipart/alternative" を加えることによって、 そういうメールに含まれている二つのメディア・タイプのうちの一つを選ぶこと ができる、ラジオボタンを表示させることができます。 mm-discouraged-alternatives も参照してください (see (emacs-mime-ja)Display Customization section ‘表示のカスタマイズ’ in The Emacs MIME Manual)。

gnus-inhibit-mime-unbuttonizing

これが非-nil だと、すべての MIME パートにボタンを付加し ます。ディフォルト値は nil です。

gnus-article-mime-part-function

それぞれの MIME パートに対して、この関数が MIME ハン ドル (訳注: パートのタイプや内容物を表現するために、Gnus の内部で使われ るデータの構造体) を引数にして呼ばれます。この関数は、利用者が記事から情 報を集め (例えば Vcard の情報を bbdb のデータベースに加え) たり、パート に基づいて何かを起動 (例えば、すべての jpeg をあるディレクトリーにセー ブ) するために使われることが意図されています。

後者を行なう関数の例です:

 
(defun my-save-all-jpeg-parts (handle)
  (when (equal (car (mm-handle-type handle)) "image/jpeg")
    (with-temp-buffer
      (insert (mm-get-part handle))
      (write-region (point-min) (point-max)
                    (read-file-name "Save jpeg to: ")))))
(setq gnus-article-mime-part-function
      'my-save-all-jpeg-parts)
gnus-mime-multipart-functions

MIME マルチパートの型と、それらを扱う関数の連想リストです。

gnus-mime-display-multipart-alternative-as-mixed

"multipart/alternative" のパートを "multipart/mixed" であるものとして表 示します。

gnus-mime-display-multipart-related-as-mixed

"multipart/related" のパートを "multipart/mixed" であるものとして表示し ます。

もし ‘text/html’ を表示するのが気に入らないのなら、 mm-discouraged-alternatives を参照してください。ただし (それ で "text/html" を表示しないように設定して、かつ) この変数 が nil だと、"multipart/related" パートの中にある画像や他の資料を 見逃してしまうかもしれません。See (emacs-mime-ja)Display Customization section ‘表示のカスタマイズ’ in The Emacs MIME Manual.

gnus-mime-display-multipart-as-mixed

"multipart" のパートを "multipart/mixed" であるものとして表示します。も し t だと、 gnus-mime-display-multipart-alternative-as-mixed およ び gnus-mime-display-multipart-related-as-mixednil で あっても、この設定の方が優先されます。

mm-file-name-rewrite-functions

MIME パートのファイル名を書き換えるために使われる関数のリスト です。それぞれの関数はファイル名を受け取って、ファイル名を返します。

出来合いの関数は
mm-file-name-delete-whitespace, mm-file-name-trim-whitespace, mm-file-name-collapse-whitespace およ び mm-file-name-replace-whitespace です。最後のものはファイル名に 含まれるそれぞれの空白文字を、変 数 mm-file-name-replace-whitespace の値で置き換えます。ディフォル ト値は "_" (単一の下線) です。

標準の関数である capitalize, downcase, upcase およ び upcase-initials も、役に立つでしょう。

ファイル名に含まれる空白文字が害をもたらすことは、みんなが知っています。 ただし、気にかけない人たちを除いて、ですが。そんな蒙昧の人たちから、たく さんの添付ファイルを受け取るのであれば、こんなもの を ‘~/.gnus.el’ ファイルに追加することによって、安寧な生活を送るこ とができるでしょう。

 
(setq mm-file-name-rewrite-functions
      '(mm-file-name-trim-whitespace
        mm-file-name-collapse-whitespace
        mm-file-name-replace-whitespace))

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.20 文字セット

人々はいろいろな文字セットを使いますが、私たちは彼らが何の文字セットを使っ ているかを教えてくれる MIME を持っています。あるいはもっと正確 に言えば、持っていたらいいなあと思います。多くの人たち が MIME を利用しないか理解しないニュースリーダーとメイラーを使っ て、何の文字セットを使うかを言わずに、単にメッセージを送出するのですが、 これを少しばかり救済するために、いくつかの地域的なニュース階層には、何の 文字セットがディフォルトであるかを宣言する取り決めがあります。例え ば ‘fj’ 階層では iso-2022-jp を使っています。

この知識は gnus-group-charset-alist 変数にエンコードされています。 これは正規表現 (グループのフルネームに合致した最初の項目を使います) と、 それらのグループを講読するときに使われるディフォルトの文字セットの、連想 リストです。

加えて、人々のいくらかは MIME を意識していると自 称 (soi-disant) しているくせに、実はそうではないエージェントを使っていま す。それらは、実際にはメッセージが koi-8 なの に iso-8859-1 だと、陽気にメッセージに刻印するのです。ここでは救 済のために gnus-newsgroup-ignored-charsets 変数を使うことができま す。そのリストに連ねられた文字セットは無視されます。この変数は、グループ パラメーター (see section グループパラメーター) を使って、グループ毎に設定するこ とができます。ディフォルト値は (unknown-8bit x-unknown) で、それ はいくつかのエージェントが内蔵し、主張する値を含んでいます。

投稿する場合に、MIME でエンコードしてはいけない文字セットを判 定するために、gnus-group-posting-charset-alist が使われます。例え ばいくつかの階層では、quoted-printable でヘッダーをエンコードすることは 嫌われます。

この変数は正規表現と、投稿に際してエンコードしなくても良いことを許され た (またはエンコードすることが嫌われる) 文字セットの連想リストです。それ ぞれの要素は (test header body-list) の形式であり、 それらは次の意味を持ちます。

test

Newsgroups ヘッダーに合致する正規表現、または変数シンボルのどちらかです。 後者の場合は、その値を調べた結果が非-nil だったら、その要素が採用 されることになります。

header

ヘッダーをエンコードしなくても良い文字セットです (nil は、すべて の文字セットをエンコードすることを意味します)。

body-list

“Content-Transfer-Encoding: 8bit”でもって本文をエンコードしても良 い (または quoted-printable や base64 でエンコードすることが嫌われる) 文 字セットのリスト、または特別な値の一つである nil (常 に quoted-printable でエンコードする)、または t (常に “Content-Transfer-Encoding: 8bit”を使う) です。

メッセージを送信するときに何の文字セットが使われるかを制御する付加的な変 数については、See (emacs-mime-ja)Encoding Customization section ‘エンコーディングのカスタマイズ’ in The Emacs MIME Manual, を参照してください (訳注: 特に日本語のメッセージの文字セットに ついては、例えば変数 mm-coding-system-priorities を参照してくださ い)。

Gnus 固有ではないけれど、役に立つかもしれない文字セットに関する他の秘訣:

もし、同一の Emacs の文字セットをエンコードする MIME の文字セッ トが複数あるのならば、以下の宣言を使うことによって、使う文字セットを選択 することができます:

 
(put-charset-property 'cyrillic-iso8859-5
                      'preferred-coding-system 'koi8-r)

これは、ロシア語がディフォルトの iso-8859-5 MIME 文字セッ トの代わりに、koi8-r でエンコードされることを意味します。

メッセージを koi8-u で読みたいのであれば、以下のように騙すことが できます。

 
(define-coding-system-alias 'koi8-u 'koi8-r)

これは、ほとんど正しいことをするでしょう。

そして最後に、windows-1251 のような文字セットを読むには、次のよう に宣言すれば良いでしょう (訳注: Emacs の版によっては、 windows-1251 が最初から実装されています)。

 
(codepage-setup 1251)
(define-coding-system-alias 'windows-1251 'cp1251)

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.21 記事命令

A P

記事バッファーのポストスクリプト (PostScript) イメージを作成して印刷しま す (gnus-summary-print-article)。gnus-ps-print-hook がバッ ファーを印刷する直前に実行されます。他に Muttprint を使って印刷すること もできます (see section 記事の保存)。

A C

もし <backend>-fetch-partial-articlesnil 以外の値だっ たら、バックエンドがサポートしていれば Gnus は記事の部分を取り込みます。 今のところ nnimap だけが行ないます。もし記事の部分を見ているとき に、そうではなく完全な記事を見る必要があるならば、A C コマン ド (gnus-summary-show-complete-article) がそうします。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.22 概略の並べ替え

私はどうしてあなたがそうしたいのかはわからないのですが、それでもあなたは たくさんの方法で概略バッファーを並べ替えることができます。

C-c C-s C-n

記事番号によって並べ替えます (gnus-summary-sort-by-number)。

C-c C-s C-m C-n

最新の記事番号によって並べ替えま す (gnus-summary-sort-by-most-recent-number)。

C-c C-s C-a

著者によって並べ替えます (gnus-summary-sort-by-author)。

C-c C-s C-t

受信者によって並べ替えます (gnus-summary-sort-by-recipient)。

C-c C-s C-s

表題によって並べ替えます (gnus-summary-sort-by-subject)。

C-c C-s C-d

日付によって並べ替えます (gnus-summary-sort-by-date)。

C-c C-s C-m C-d

最新の日付によって並べ替えま す (gnus-summary-sort-by-most-recent-date)。

C-c C-s C-l

行数によって並べ替えます (gnus-summary-sort-by-lines)。

C-c C-s C-c

記事の長さ (文字数) で並べ替えます (gnus-summary-sort-by-chars)。

C-c C-s C-i

スコアによって並べ替えます (gnus-summary-sort-by-score)。

C-c C-s C-r

ランダムに並べ替えます (gnus-summary-sort-by-random)。

C-c C-s C-o

ディフォルトの方法で並べ替えます (gnus-summary-sort-by-original)。

これらの関数はスレッドを使っているときと使っていないときの両方で動作しま す。後者では、すべての概略行が一行一行並べ替えられます。前者では根本だけ に基づいて並べ替えられ、それはあなたが求めていることとは異なっているかも しれません。スレッドを使うかどうかを切り替えるには T T を打ってく ださい (see section スレッドの命令)。

接頭引数を与えると並べ替えの順序が逆になります。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.23 親記事を探す

^

現在の記事の親記事を読みたいのに、それが概略バッファーに表示されていなく ても、おそらくそれは可能でしょう。というのは、現在のグループ が NNTP で取得されていて、親がまだ期限切れ消去されていない上、 現在の記事の References がぶち壊されていなければ、た だ ^A r を押せば良いだけで すから (gnus-summary-refer-parent-article)。すべてがうまくいけば、 親記事を取得できるでしょう。もし親記事がすでに概略バッファーに表示されて いるのであれば、ポイントがその記事に移動するでしょう。

正の数値接頭引数を与えられると、その数の祖先たちを遡って取得します。負の 数値接頭引数が与えられた場合は、その数の世代だけ前の祖先の記事のみを取得 します。ですから 3 ^ とすれば、Gnus は現在の記事の親と祖父母と曾祖 父母を取得します。-3 ^ とすれば、Gnus は現在の記事の曾祖父母だけを 取得します。

A R (概略)

記事の References 欄にあるすべての記事を取得しま す (gnus-summary-refer-references)。

A T (概略)

現在の記事があるスレッドの、全部の記事を表示しま す (gnus-summary-refer-thread)。この命令は動作するために現在のグ ループのすべてのヘッダーを取得しなければならないので、普通は少し時間がか かります。これをしばしば行なうのであれば、 gnus-fetch-old-headersinvisible に設定することを考えた ほうが良いでしょう (see section スレッドを埋める)。これは普通は視覚的な効 果はありませんが、この命令の動作をかなり速くします。もちろんグループに入 るのはいくらか遅くなりますが。

変数 gnus-refer-thread-limit はこの命令を実行するときにどのくらい 古い (すなわち、現在のグループで最初に表示されたものよりも前の記事の) ヘッ ダーを取得するかを指定します。ディフォルトは 200 です。もし t で あれば、取得可能なすべてのヘッダーを取得します。A T 命令に数値接 頭引数を与えると、代わりにそれが使われます。

M-^ (概略)

どのグループに属しているかに関わらず、任意の記事を Gnus に要求することが できます。 M-^ (gnus-summary-refer-article) は Message-ID、つま りあの長くてなかなか読むことのできな い ‘<38o6up$6f2@hymir.ifi.uio.no>’ のようなものをあなたに尋ねます。 あなたはすべてを正確に打ち込まなければなりません。残念ながら、あいまいな 検索はできないのです。

Gnus はすでに取得してあるヘッダーたちの中で Message-ID を探します が、見つからなかったら gnus-refer-article-method に設定されている すべての選択方法を試してもみます。

もしあなたの読んでいるグループが Message-ID での取得があまり良く できないようなバックエンド (nnspool など) であるのなら、 gnus-refer-article-methodNNTP の選択方法に設定すれ ば良いでしょう。おそらく、あなたが問い合わせる NNTP サーバーが あなたの読んでいるスプールを更新していると最も良いでしょう。しかし、それ はどうしても必要なわけではありません。

それは選択方法のリストのみならず、現在の選択方法を意味する特別なシンボ ル current であることもできます。Gnus は合うものを発見するまでそ れらすべての方法を試します。

これは現在の選択方法を試して、それが失敗した場合には Google に訊く設定の 例です:

 
(setq gnus-refer-article-method
      '(current
        (nnweb "google" (nnweb-type google))))

ほとんどのメールバックエンドは Message-ID での取得が可能ですが、 あまり優雅な方法でやっているわけではありません。nnmbox, nnbabyl, nnmaildir および nnml がどのグループからで も記事を捜索できるのに対して、nnfoldernnimap は現在の グループに投稿された記事しか探すことができません。nnmh ではまった く不可能です。

幸いにも特別なバックエンドである nnregistry は、どんなグループに ある記事でもバックエンドに関係無く見つけ出すことができます。 See section Message-ID に基づいてレジス トリーで記事を取得する.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.24 代替手段

ニュースを読む方法の好みは人それぞれです。これは Gnus なのですから、概略 バッファーのためのマイナーモードに少しばかり選択肢を設けます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.24.1 選んで読む

いくつかのニュースリーダー (nn や、ええ と VM/CMS の Netnews など) は二段階の講読インターフェースを使いま す。利用者はまず概略バッファーで読みたい記事に印を付けます。それから、記 事バッファーだけを表示して記事を読みます。

Gnus はこれをするための概略バッファーマイナーモードを提供しま す—gnus-pick-mode です。これは、基本的には簡単に印を付けられる ように少数のプロセス印命令を一個のキーだけで済む命令にして、概略バッファー へ切り替えるための追加の命令を一つ提供します。

訳注: Pick マイナーモードを有効にするには、以下のフックを使ってください:

 
(add-hook 'gnus-summary-mode-hook 'gnus-pick-mode)

そうせずに、概略バッファーに入ってから M-x gnus-pick-mode を実行し ても、うまくいかないようです。

これらが pick mode で使うことができるキーです:

.

現在の行の記事かスレッドを選択しま す (gnus-pickd-article-or-thread)。変 数 gnus-thread-hide-subtree が非-nil だったら、このキーが スレッドの最初の記事で使われるとスレッド全体を選択します。そうでなければ、 その記事だけを選択します。もし数値接頭引数を与えられると、その番号のスレッ ドか記事に移動して、それを選択します。(普通は行番号が概略行の最初に表示 されます。)

SPACE

概略バッファーを一ページ次にスクロールします (gnus-pick-next-page)。 もしバッファーの最後であれば、選択した記事を読み始めます。

u

スレッドか記事を未選択にしま す (gnus-pick-unmark-article-or-thread)。変 数 gnus-thread-hide-subtree が非-nil だったら、このキーが スレッドの最初で使われるとそのスレッドを未選択にします。そうでなければ、 その記事だけを未選択にします。その行にあるスレッドか記事を未選択にする ために、このキーに数値接頭引数を与えることができます。

RET

選択された記事を読み始めます (gnus-pick-start-reading)。接頭引数 が与えられると、最初にすべての未選択記事に既読の印を付けます。 gnus-pick-display-summarynil でないと、概略バッファー は読んでいる間も表示されます。

すべての普通の概略モード命令は pick-mode でも使用可能ですが、u は 例外です。それでも、同じ関数 gnus-summary-tick-article-forward に 割り当てられている ! を使うことができます。

これが良さそうだと思ったら、次のようにしてください:

 
(add-hook 'gnus-summary-mode-hook 'gnus-pick-mode)

gnus-pick-minor-mode-hook は pick マイナーモードのバッファーで実 行されます。

gnus-mark-unpicked-articles-as-read が非-nil だったら、選 択されなかったすべての記事に既読の印を付けます。ディフォルト は nil です。

pick モードでの概略行の様式は標準の様式とは少し違います。それぞれの行の 最初に行数が表示されます。Pick モードの行の様式は変 数 gnus-summary-pick-line-format で制御されま す (see section 書法仕様変数)。これ は gnus-summary-line-format と同じ様式指定を受け付けま す (see section 概略バッファーの行)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.24.2 バイナリーグループ

多くの時間をバイナリーグループで過ごしているのなら、いつも X u, n, RET を叩くのが嫌になっているでしょう。 M-x gnus-binary-mode は、単に記事を普通の方法で表示する代わりに、 記事を選択するための普通の Gnus の関数を、一連の記事を uudecode してその 結果を表示するように変更する、概略バッファーのためのマイナーモードです。

現実には、このモードにしたときに、実際に記事を見るための唯一の命令 が g です (gnus-binary-show-article)。

gnus-binary-mode-hook がバイナリーマイナーモードのバッファーで呼 ばれます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.25 木表示

もし普通の Gnus の概略表示を好きでないならば、 gnus-use-treest に設定してみると良いかもしれません。こ れは (ディフォルトで) 追加の「木バッファー」(tree buffer) を作成します。 木バッファーではすべての概略モード命令を実行することができます。

もちろん、木表示をカスタマイズする変数が少しあります:

gnus-tree-mode-hook

すべての木モードのバッファーで実行されるフックです。

gnus-tree-mode-line-format

木モードのバッファーにおけるモード行のためのフォーマット文字列で す (see section モード行書法仕様)。ディフォルト は ‘Gnus: %%b %S %Z’ です。使用可能な指定 は 概略バッファーのモード行 を参照してください。

gnus-selected-tree-face

木バッファーで選択された記事をハイライトするために使われるフェースです。 ディフォルトでは modeline です。

gnus-tree-line-format

木の節のためのフォーマット文字列です。でもこれは少し誤った名称です—そ れは行ではなく、ただ節を定義するだけです。ディフォルトの値 は ‘%(%[%3,3n%]%)’ で、それは投稿者の名前の最初の三文字を表示します。 すべての節が同じ長さであることが重要なので、‘%4,4n’ のような指定 を 使わなければなりません

有効な指定は:

n

投稿者の名前。

f

From 欄。

N

記事の番号。

[

開き括弧。

]

閉じ括弧。

s

表題。

See section 書法仕様変数.

表示に関連した変数は:

gnus-tree-brackets

これは『本当の』記事と『まばら』な記事に違いを付けるために使われます。様 式は

 
((本当の開 . 本当の閉)
 (まばら開 . まばら閉)
 (偽の開 . 偽の閉))

となっていて、ディフォルト は ((?[ . ?]) (?( . ?)) (?{ . ?}) (?< . ?>)) です。

gnus-tree-parent-child-edges

これは親の節を子に接続するために使われる文字を含むリストです。ディフォル トは (?- ?\\ ?|) です。

gnus-tree-minimize-window

もしこの変数が nil でないと、他の Gnus ウィンドウがもっと場所を取 れるように Gnus は木バッファーをできるだけ小さくします。もしこの変数が数 値であると、木バッファーの高さはその数値より大きくなることはありません。 ディフォルトは t です。フレームでいくつかのウィンドウが横に並んで 表示されていて、木バッファーがそのうちの一つである場合、木ウィンドウを最 小化することはその隣に表示されているすべてのウィンドウの大きさをも変更す ることに注意してください。

以下のフックを追加して、いつでも木ウィンドウを最小化するようにしても良い でしょう。

 
(add-hook 'gnus-configure-windows-hook
          'gnus-tree-perhaps-minimize)
gnus-generate-tree-function

実際にスレッドの木を作成する関数です。二つの定義済みの関 数 gnus-generate-horizontal-tree およ び gnus-generate-vertical-tree (これがディフォルトです) が利用可 能です。

水平木バッファー (horizontal tree buffer) の例です:

 
{***}-(***)-[odd]-[Gun]
     |      \[Jan]
     |      \[odd]-[Eri]
     |      \(***)-[Eri]
     |            \[odd]-[Paa]
     \[Bjo]
     \[Gun]
     \[Gun]-[Jor]

同じスレッドが垂直木バッファー (vertical tree buffer) で表示されたもので す:

 
{***}
  |--------------------------\-----\-----\
(***)                         [Bjo] [Gun] [Gun]
  |--\-----\-----\                          |
[odd] [Jan] [odd] (***)                   [Jor]
  |           |     |--\
[Gun]       [Eri] [Eri] [odd]
                          |
                        [Paa]

もし水平木を使っているのなら、概略バッファーで木を隣り合わせで表示できれ ば嬉しいでしょう。次のようなものを ‘~/.gnus.el’ ファイルに加えるこ とができます:

 
(setq gnus-use-trees t
      gnus-generate-tree-function 'gnus-generate-horizontal-tree
      gnus-tree-minimize-window nil)
(gnus-add-configuration
 '(article
   (vertical 1.0
             (horizontal 0.25
                         (summary 0.75 point)
                         (tree 1.0))
             (article 1.0))))

See section ウィンドウの配置.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.26 メールグループ命令

いくつかの命令はメールグループでのみ意味を持ちます。これらの命令が現在の グループで有効でないなら、それらは大騒ぎをしてあなたに知らせるでしょう。

これらすべての命令は (期限切れ消去と編集命令は除く) プロセス/接頭引数の 習慣を使います (see section プロセス/接頭引数)。

B e

現在のグループのすべての期限切れ消去可能な記事について、期限切れ消去の処 理 (gnus-summary-expire-articles) を行ないます。これは、そのグルー プにしばらく存在していた期限切れ消去可能なすべての記事を消去するというこ とです。(see section メールの期限切れ消去)。

B C-M-e

グループのすべての期限切れ消去可能な記事を削除しま す (gnus-summay-expire-articles-now)。これは、現在のグループにあ る すべて の期限切れ消去可能な記事が、永遠に空の大き な ‘/dev/null’ へ消え去るということです。

B DEL

メール記事を削除します。これは『あなたのディスクから永久に削除して二度と 戻らない』の意味の『削除』です。注意して使ってくださ い (gnus-summary-delete-article)。

B m

あるメールグループから別のメールグループへ記事を移動しま す (gnus-summary-move-article)。gnus-preserve-marks の値 が nil でなければ (それがディフォルト)、印は保存されます。

B c

あるグループ (メールグループや他のもの) からメールグループに記事をコピー します (gnus-summary-copy-article)。gnus-preserve-marks の 値が nil でなければ (それがディフォルト)、印は保存されます。

B B

現在の記事を他のグループにクロスポストしま す (gnus-summary-crosspost-article)。これは他のグループの記事の新 しい複製を作成し、記事の Xref 欄も適切に更新されます。

B i

任意のファイルを現在のメールグループに取り込みま す (gnus-summary-import-article)。あなたはファイル名と、 From 欄と Subject 欄の入力を促されます。

B I

空の記事を現在のメールグループに作りま す (gnus-summary-create-article)。From ヘッダー と Subject ヘッダーの内容を尋ねられます。

B r

メール記事をスプールし直します (gnus-summary-move-article)。 gnus-summary-respool-default-method が再スプールするときのディフォ ルトの選択方法として使用されます。この変数はディフォルトで は nil で、その場合は現在のグループの選択方法が代わりに使われます。 gnus-preserve-marks の値が nil でなければ (それがディフォ ルト)、印は保存されます。

訳注: 「スプールし直す」というのはメールの分 割 (メールの分割 または 特級メール分割) の規則に基づ いて、メールを適切なグループに入れ直すことです。そのグループに間違って入っ てしまったメールを、分割の規則を修正した後で、正しいグループに移動させる 場合などに使います。この章の B qB t も見てください。

B w
e

現在の記事を編集します (gnus-summary-edit-article)。編集を終了し て変更を固定するに は C-c C-c (gnus-summary-edit-article-done) を打ちます。も し C-c C-c 命令に接頭引数を与えると、Gnus は記事を再ハイライトしま せん。

訳注: 変更しないで編集を終るには、C-c C-k をタイプしてください。

B q

記事を再スプールするときは、再スプールをする前にどのグループに記事が移る かを知りたいでしょう。この命令でそれがわかりま す (gnus-summary-respool-query)。

B t

同様に、この命令は再スプールするときに使われるすべての特級分割方式を、も しあれば表示します (gnus-summary-respool-trace)。

B p

一部の人たちには、あなたが投稿した記事にフォローアップするときに「親切な」 複製を送る傾向があります。これらは普通はそこに Newsgroups ヘッダー が付いているのですが、いつもそうであるとは限りません。この命 令 (gnus-summary-article-posted-p) は現在の記事をあなたのニュース サーバーから (というよりは、むし ろ gnus-refer-article-methodgnus-select-method か ら) 取得しようとして、記事を発見できたかどうかを報告します。それが記事を 発見しなかったとしても、それはとにかく投稿されているかもしれません—メー ルの伝達はニュースの伝達よりもずっと速いので、ニュースの複製がまだ到着し ていないだけかもしれないのです。

訳注: その「親切な」複製が、概略バッファーで独立した記事として見えていな いと検査することができないので、そうするために A D また は C-d 命令 (see section 本当にいろいろな概略命令) を使う必要が あるかもしれません。この命令はとにかくすべての選択方法を試すので、特にそ れらに遅いものが含まれているときは、注意して使ってください。

K E

記事の本文を暗号化します (gnus-article-encrypt-body)。本文は、変 数 gnus-article-encrypt-protocol で指定されたプロトコルで暗号化さ れます。

いつも記事をどこかに移動 (もしくは複製) することを習慣にしているのならば、 記事をどこに入れれば良いかを Gnus に提案してもらいたいと思うでしょう。 gnus-move-split-methodsgnus-split-methods と同じ構文を 使う変数です (see section 記事の保存)。あなたが妥当だと思うような提案を するようにその変数をカスタマイズすることができます。 (gnus-split-methods がファイル名を使うのに対し て gnus-move-split-methods はグループ名を使うことに注意してくださ い。)

 
(setq gnus-move-split-methods
      '(("^From:.*Lars Magne" "nnml:junk")
        ("^Subject:.*gnus" "nnfolder:important")
        (".*" "nnml:misc")))

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.27 概略のいろいろなもの

gnus-summary-display-while-building

非-nil だったら、構築中の概略バッファーを更新しながら表示します。 t だった場合は、行が挿入される度に毎回バッファーを更新します。値 が整数 n であった場合は、n 行毎に表示を更新します。ディフォ ルトは nil です。

gnus-summary-display-arrow

非-nil だったら、現在の記事を指し示すためにフリンジに矢印を表示し ます。(訳注: フリンジとは Emacs 21 以上でウィンドウの左右に現れる余白の ことです。)

gnus-summary-mode-hook

概略モードのバッファーを作成するときにこのフックが呼ばれます。

gnus-summary-generate-hook

これはスレッド作成と概略バッファー作成の前に実行する最後のものとして呼ば れます。これはニュースグループの持っているデータに基づいてスレッドの変数 をカスタマイズするのに非常に便利です。このフックはほとんどの概略バッファー 変数が設定された後に概略バッファーから呼ばれます。

gnus-summary-prepare-hook

これは概略バッファーが作成された後に呼ばれます。例えば、これを何かしら神 をも畏れぬ方法で行をハイライトしたり、バッファーの見え方を修正したりする のに使ったりするかもしれません。

gnus-summary-prepared-hook

概略バッファーが作成された後で一番最後に呼ばれるフックです。

gnus-summary-ignore-duplicates

Gnus が同じ Message-ID を持つ二つの記事を発見したときは、何か思い 切ったことをしなければなりません。別の記事が同じ Message-ID を持 つことは許されていませんが、それは何らかのソースからメールを読んでいると きに起こるかもしれません。この変数によって Gnus が何をするかをカスタマイ ズできるようになっています。nil だったら (それがディフォルトです)、 Gnus は Message-ID を付け替えて (表示のためだけに) その記事を他の 記事と同じように表示します。t にすると、それは記事を表示しませ ん—最初から存在しなかったかのように。

gnus-alter-articles-to-read-function

この変数に設定した関数で、選択する記事のリストを変更することができます。 関数は二つの引数 (グループ名と選択する記事のリスト) を受け付けます。

例えば以下の関数は、キャッシュされた記事のリストを、あるグループのリスト だけに追加します。

 
(defun my-add-cached-articles (group articles)
  (if (string= group "some.group")
      (append gnus-newsgroup-cached articles)
    articles))
gnus-newsgroup-variables

ニュースグループ (その概略バッファーの) のローカル変数、または変数とそれ らの評価されるディフォルトの表現 (ディフォルト値が nil でない場 合) の cons セルのリストで、その概略バッファーが活きている間はグローバル 変数になります。(訳注: いわゆるバッファーローカル変数ではありません。)

注: ディフォルトの表現は単にローカル変数に設定されるのではなく、その前 に (eval 関数を使って) 評価されます。ディフォルトの表現 が global というシンボルだった場合は評価されず、代わりにそのロー カル変数のグローバル値が使われます。

これらグループパラメーターの値が他のバッファーで行なわれる処理に影響する ようになっていても、(訳注: その概略バッファーの) グループパラメーターを 設定するために使うことができます。例です:

 
(setq gnus-newsgroup-variables
     '(message-use-followup-to
       (gnus-visible-headers .
         "^From:\\|^Newsgroups:\\|^Subject:\\|^Date:\\|^To:")))

グループパラメーター も参照してください。

訳注: もっと良い例が必要です。gnus-newsgroup-variables およ び gnus-parameters (see section グループパラメーター) の値を次のように設 定したとしましょう:

 
(setq gnus-newsgroup-variables '((var . foo)))
(setq gnus-parameters
      '(("^fj\\." (var . bar))
        ("^japan\\." (var . baz))))

こうしておくと変数 var の値が、‘fj’ 階層のニュースグルー プ (の概略バッファー) に入ると bar になり、‘japan’ 階層のグルー プに入ると baz になります。グループを抜けても変数 var の値は 変化しませんが、‘fj’ または ‘japan’ 階層以外のグループに入ると 変数 var の値は foo になります (正確には、foo, bar または baz の値は、本編で説明されているよう に eval した結果が使われます)。

通常のグループパラメーターは、そのグループの概略バッファーでだけ値を知る ことができるのに対して、gnus-newsgroup-variables で設定した変数は、 同じ Emacs のどのバッファーでも、現在選択されているグループ固有の値を持 つ点が違います。異なる複数のグループの概略バッファーを使う場合には、注意 する必要があります。

特別な場合として foonil で良い場合は、次のように記述す ることができます:

 
(setq gnus-newsgroup-variables '(var))
(setq gnus-parameters
      '(("^fj\\." (var . bar))
        ("^japan\\." (var . baz))))

gnus-newsgroup-variables および gnus-parameters はどちらも リストなので、setq よりはむし ろ add-to-listpush などを使って、値を「追加」した方が 便利かもしれません。

gnus-propagate-marks

nil 以外の値だったら、印をバックエンドに伝えます。それらを記録す るためです。もっときめ細かくふるいにかけるには NNTP marks およびそ の仲間を参照してください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.27.1 概略グループ情報

H d

現在のグループの簡潔な説明を表示しま す (gnus-summary-describe-group)。接頭引数が与えられると、サーバー から強制的に説明の再読み込みをします。

H h

最も重要な概略コマンドの、非常に簡潔な説明を表示しま す (gnus-summary-describe-briefly)。

H i

Gnus の info の節 (node) に移動します (gnus-info-find-node)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.27.2 記事を探す

M-s

それ以降のすべての (生の) 記事を正規表現で検索しま す (gnus-summary-search-article-forward)。

M-r

それ以前のすべての (生の) 記事を正規表現で検索しま す (gnus-summary-search-article-backward)。

M-S

前回の前方検索を繰り返しま す (gnus-summary-repeat-search-article-forward)。

M-R

前回の後方検索を繰り返しま す (gnus-summary-repeat-search-article-backward)。

&

この命令は、ヘッダー、そのヘッダーの内容に合致する正規表現、および合致し たときに実行されるコマンドの入力を要求しま す (gnus-summary-execute-command)。ヘッダーが空文字列だったら、記 事全体で合致するものを探します。接頭引数を与えられると、代わりに後ろ向き に探します。

例えば & RET 何かの.*文字列 RET # は、ヘッダーか本文 に ‘何かの.*文字列’ を持つすべての記事にプロセス印を付けます。

M-&

この命令に続けて入力する命令を、プロセス印が付けられているすべての記事で 実行します (gnus-summary-universal-argument)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.27.3 概略生成命令

Y g

現在の概略バッファーを再作成します (gnus-summary-prepare)。

Y c

(現在のグループのために) キャッシュされたすべての記事を概略バッファーに 挿入します (gnus-summary-insert-cached-articles)。

Y d

(現在のグループのための) すべての保留記事を概略バッファーに挿入しま す (gnus-summary-insert-dormant-articles)。

Y t

(現在のグループのための) すべての可視記事を概略バッファーに挿入しま す (gnus-summary-insert-ticked-articles)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.27.4 本当にいろいろな概略命令

A D
C-d

現在の記事が別の記事を寄せ集めたもの (例えばダイジェスト) であるならば、 それらの記事でできているグループに入るためにこの命令を使うことができま す (gnus-summary-enter-digest-group)。この命令に接頭引数を与えな いと Gnus はどのような型の記事が現在表示されているかを推測しようとし、実 際にはそれが『ダイジェスト』であるものとして強引に解釈します。基本的に、 ある様式で寄せ集められた別のメッセージを見るときはいつでも、C-d を 使うことによって、もっと便利なやり方でそれらのメッセージを読むことができ ます。

変数 gnus-auto-select-on-ephemeral-exit はダイジェスト・グループ を出た後に、どの記事を選択すべきかを制御します。有効な値は次の通りです:

next

次の記事を選択します。

next-unread

次の未読記事を選択します。

next-noselect

カーソルを次の記事に移動します。これがディフォルトです。

next-unread-noselect

カーソルを次の未読記事に移動します。

これら以外の値だったり、次の (未読の) 記事が無かったら、ダイジェスト・グ ループに入る前に選択されていた記事が現れます。

C-M-d

この命令は上のものによく似ていますが、いくつかの文書を一つのおおーきなグ ループに集めます (gnus-summary-read-read-document)。それを実現す るために、この命令はそれぞれの文書のための nndoc グループを開いて から、それら複数の nndoc グループのてっぺんで nnvirtual グ ループを開きます。この命令はプロセス/接頭引数の習慣を理解しま す (see section プロセス/接頭引数)。

C-t

長い概略行を切り詰めるかどうかを切り替えま す (gnus-summary-toggle-truncation)。これはおそらく概略バッファー で行を中央に表示する機能を混乱させるので、記事を読んでいるときに行の切り 詰めを off にするのは良い考えではないでしょう。

=

概略バッファーのウィンドウを拡大しま す (gnus-summary-expand-window)。接頭引数を与えられると、記事バッ ファーのためのウィンドウの配置の設定を強制します (訳注: ディフォルトでは 記事バッファーのためのウィンドウの配置の設定には概略バッファーを表示する ことも含まれているので、普通に記事を読んでいるときと同じになるでしょう)。

C-M-e

現在のグループのグループパラメーター (see section グループパラメーター) を編集し ます (gnus-summary-edit-parameters)。

C-M-a

現在のグループのグループパラメーター (see section グループパラメーター) をカスタ マイズします (gnus-summary-customize-parameters)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.28 概略バッファーを抜ける

概略バッファーから抜けると、普通はグループのすべての情報を更新してグルー プバッファーに戻ります。

Z Z
Z Q
q

現在のグループを出て、グループのすべての情報を更新しま す (gnus-summary-exit)。抜け出るための多くの処理を行なう前 に gnus-summary-prepare-exit-hook が呼ばれ、それはディフォルト で gnus-summary-expire-articles を呼びます。抜け出るための処理を 終えた後で gnus-summary-exit-hook が呼ばれます。グループモードに 戻るときに (未読の) グループが残っていなかった ら gnus-group-no-more-groups-hook が実行されます。

Z E
Q

グループのどんな情報も更新せずに現在のグループを抜け出ま す (gnus-summary-exit-no-update)。

Z c
c

グループのすべての可視ではない (unticked) 記事に既読の印を付けてから抜け ます (gnus-summary-catchup-and-exit)。

Z C

可視記事さえも含むすべての記事に既読の印を付けてから抜けま す (gnus-summary-catchup-all-and-exit)。

Z n

すべての記事に既読の印を付けて次のグループへ移動しま す (gnus-summary-catchup-and-goto-next-group)。

Z p

すべての記事に既読の印を付けて前のグループへ移動しま す (gnus-summary-catchup-and-goto-prev-group)。

Z R
C-x C-s

現在のグループを出て、それから入り直しま す (gnus-summary-reselect-current-group)。接頭引数が与えられると、 既読と未読の両方のすべての記事を選択します。

Z G
M-g

グループを抜け、そのグループの新しい記事を調べてから、再びそのグループを 選択します (gnus-summary-rescan-group)。接頭引数が与えられると、 既読と未読の両方のすべての記事を選択します。

Z N

グループを抜けて、次のグループへ移動しま す (gnus-summary-next-group)。

Z P

グループを抜けて、前のグループへ移動しま す (gnus-summary-prev-group)。

Z s

現在の既読と印付き記事の数をドリブルバッファー (dribble buffer) に保存し、 それからドリブルバッファーを保存します (gnus-summary-save-newsrc)。 接頭引数が与えられると ‘.newsrc’ ファイル (と ‘.newsrc.eld’ ファ イル) も保存します。この命令を使うと、更新なしで抜け出ること (Q 命 令) は意味が無くなります。

グループのすべての情報を「更新」して現在のグループを抜けるとき に gnus-exit-group-hook が呼ばれます。例え ば Q 命令 (gnus-summary-exit-no-update) はこのフックを呼び ません。

グループを抜けた後でそれを後悔する癖があるのなら、 gnus-kill-summary-on-exitnil に設定と良いかもしれませ ん。そうすると Gnus は抜け出るときに概略バッファーを削除しません。(何と いう驚き!) 代わりに、それはバッファーの名前 を ‘*Dead Summary ... *’ のようなものに変更して、 gnus-dead-summary-mode というマイナーモードを導入します。今やその バッファーに切り替えると、すべてのキーが関 数 gnus-summary-wake-up-the-dead に割り当てられていることに気付く でしょう。死んだ概略バッファー (dead summary buffer) でどんなキーでも叩 くと、それは生きた普通の概略バッファーになります。

死んだ概略バッファーは同時に一つしか存在することはできません。

概略バッファーを抜け出ると、現在のグループのデータは更新されます (どの記 事を読んで、どの記事に返答したか、などなど。) もし変 数 gnus-use-cross-referencet であると (それがディフォ ルトです)、そのグループに相互参照された (cross referenced) 記事には、そ れがクロスポストされた他の購読しているグループにあっても、既読の印が付き ます。この変数が nil でも t でもなければ、記事には購読して いるグループと購読していないグループの両方で既読の印が付きま す (see section クロスポストの扱い)。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.29 クロスポストの扱い

クロスポストされた記事に既読の印を付けることによって、同じ記事を二回以上 読まないで済むことを保証します。もちろん、だれかがそれを複数のグループに 別々に投稿しない限りは。同じ記事を複数のグループに (クロスポストではでは なく) 投稿することは spamming と呼ばれ、あなたはそのような憎むべき 犯罪を行なうものに対して、法律によって不快な記事を送ることが義務づけられ ています。

覚えておいてください: クロスポストはまあ構いませんが、同じ記事を別々に複 数のグループに投稿するのは許されません。大量のクロスポス ト (velveeta として知られているもの) は何としても避けられるべきで、 過剰なクロスポストに対して不満を言うため に gnus-summary-mail-crosspost-complaint 命令を使うことさえできま す。

Gnus にクロスポストを正しく扱えなくさせる原因の一つは、XOVER (これ は非常に良いです、というのはそれは速度をとても速くするからです) をサポー トしているけれども NOV 行に Xref 欄を含めな い NNTP サーバーを使っていることです。これは害悪です。でも、 あぁ、悲しいかな、非常に良くあることなのです。Gnus はあなたが読んだすべ ての記事に Xref 行を記録することによって The Right Thing (正しい こと) をしようとしますが、記事を削除したり単に読まないで既読の印を付ける と、Gnus がこれらの記事の Xref 行をのぞきまわる機会が無くなってし まうので、相互参照 (cross reference) の機構を使えなくなってしまいます。

あなたの NNTP サーバーがその概観ファイ ル (overview file) に Xref 欄を含めるかどうかを調べるには、 ‘telnet your.nntp.server nntp’ をタイプして、inn サーバーで は ‘MODE READER’ コマンドを与えてから、‘LIST overview.fmt’ を 試してください。これは動作しないかもしれません。しかし、もし動作して、取 得した最後の行が ‘Xref:full’ でないならば (訳注: 最後の行ではないか もしれません)、ニュースの管理者が概観ファイルに Xref 欄を含めるよ うにしてくれるまで、彼女に向かって叫び、泣き付くべきでしょう。

Gnus にいつでも正しい Xref を取得するようにさせたいのであれば、 nntp-nov-is-evilt にする必要があり、それは非常に速度を 遅くします。遅くて高価な接続 も参照してください。

ま、人生はそのようなものです。

代替手段に付いては 重複の抑制 を参照してください。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.30 重複の抑制

ディフォルトでは Gnus はクロスポスト機構を利用することによって、同じ記事 を二回以上読まないようにしようとします (see section クロスポストの扱い)。し かし、その単純で効果的な方法は、いろいろな理由により、満足する結果をもた らさないかもしれません。

  1. NNTP サーバーは Xref 欄の生成に失敗するかもしれません。 これは悪いことで、あまり起こりません。
  2. NNTP サーバーは ‘.overview’ データベースに Xref 欄 を含めるのに失敗するかもしれません。これは悪いことで、非常に良くあること です、あぁ悲しい。
  3. 同じグループ (もしくはいくつかの関連したグループ) を違っ た NNTP サーバーから読んでいるかもしれません。
  4. グループに投稿された記事と重複するメールを受け取ったかもしれません。

Xref の扱いに失敗する状況は確かに他にもありますが、これら四つが最 も良くある状況です。

もし、本当にもしも Xref の扱いに失敗したら、「重複抑制」に切り替 えることを考慮する必要があるかもしれません。そうすれば、Gnus はあなたが 読んだすべての記事、あるいは既読の印を付けたすべての記事 の Message-ID を記憶し、そしてまるで魔法のように、以後それらを読 むときはいつでも既読の印が付いているようにします—すべて のグルー プで。この機構を使うのは何だかとても非効率になりそうですが、過度に非効率 なわけではありません。同じ記事を二回以上読むよりは、間違い無く望ましいで す。

重複抑制はあまり精密な道具ではありません。どちらかというと大槌のようなも のです。それは非常に単純なやり方で動作しています—あなたが記事に既読の 印を付けると、その Message-ID をキャッシュに加えます。次にそ の Message-ID に出会うと、‘M’ 印によって記事に既読の印を付けます。 その記事をどのグループで見たかは気にしません。

gnus-suppress-duplicates

nil でなければ、重複抑制をします。

gnus-save-duplicate-list

nil でなければ、重複のリストをファイルに保存します。これは起動と 終了の時間を長くするので、ディフォルトは nil です。しかし、これ は Gnus を一回実行したときに読まれた重複記事だけが抑制されるということで す。

gnus-duplicate-list-length

この変数はどのくらい多くの Message-ID を重複抑制リストに保ってお くかを決定します。ディフォルトは 10000 です。

gnus-duplicate-file

重複抑制のリストを格納しておくファイルの名前です。ディフォルト は ‘~/News/suppression’ です。

何度も Gnus を終了して起動する傾向があるのであれば、おそら く gnus-save-duplicate-listt にするのは良い考えでしょ う。もし Gnus を続けて何週間も走らせておくのであれば、それ を nil にした方が良いかもしれません。一方、リストを保存することは 起動と終了をずっと遅くするので、頻繁に Gnus を終了して起動するのであれば、 gnus-save-duplicate-listnil に設定するべきです。うーむ。 私はあなたがどうするかに任せようと思います。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.31 セキュリティー

Gnus は署名されたメッセージを検証したり、暗号化されたメッセージをデコー ドすることができます。PGP, PGP/MIME およ び S/MIME の形式をサポートしますが、それらを動作させるためには、 いくつかの外部プログラムを必要とします:

  1. PGPPGP/MIME のメッセージを扱うには、OpenPGP の実 装である GnuPG のようなものをインストールしなければなりません。Emacs に 含まれている GnuPG へのインターフェースは EasyPG というもの (see (epa)Top section ‘EasyPG’ in EasyPG Assistant user’s manual) ですが、PGG (see (pgg-ja)Top section ‘PGG’ in PGG Manual) および Mailcrypt もサポートします。
  2. S/MIME のメッセージを扱うには、OpenSSL をインストールする必要 があります。OpenSSL 0.9.6 か、それより新しいものがお勧めです。

以下は、メッセージを読む、または作成する場合に、セキュリティーの機能を制 御するための変数です:

mm-verify-option

署名されたパートを検証するためのオプション。never は検証しない、 always はいつも検証する、known は知られたプロトコルの場合 だけ検証する、の意味です。それら以外の場合は、どうするかを利用者に尋ねま す。

mm-decrypt-option

暗号化されたパートをデコードするためのオプション。never はデコー ドしない、always はいつもデコードする、known は知られたプ ロトコルの場合だけデコードする、の意味です。それら以外の場合は、どうする かを利用者に尋ねます。

mm-sign-option

署名されたパートを作成するためのオプション。nil ではディフォルト の署名のための鍵を使い、guided では署名のための鍵をメニューから選 びます。

mm-encrypt-option

暗号化されたパートを作成するためのオプション。nil で は ‘From:’ ヘッダーを受取人として最初に合致する公開鍵を使い、 guided では受取人のキーをメニューから選びます。

mml1991-use

PGP のメッセージのための、OpenPGP の実装への elisp インターフェー スを示すシンボルです。ディフォルトは epg ですが、後方互換のため に pgg および mailcrypt もサポートします。ディフォルトでは、 Gnus はこの順番で最初に見つかるインターフェースを使います。

mml2015-use

PGP/MIME のメッセージのための、OpenPGP の実装への elisp インター フェースを示すシンボルです。ディフォルトは epg ですが、後方互換の ために pggmailcrypt および gpg もサポートします。 ディフォルトでは、Gnus はこの順番で最初に見つかるインターフェースを使い ます。

ディフォルトではセキュリティーの情報を表示するボタンが現れません。それら は実際にメールを読む際に邪魔になるからです。 K b をタイプすれば、 その情報を表示することができますが。これを恒久的に行なわせるには、 gnus-buttonized-mime-types およ び gnus-unbuttonized-mime-types 変数を使ってください。これらの変 数の詳細と、常にセキュリティーの情報を表示させるためにカスタマイズする方 法は、MIME コマンド を参照してください。

メニュー項目やコマンドから OpenPGP の鍵を取得 (snarf) する (すなわち、記 事から鍵を鍵束に輸入 (import) する) 機能は、明示的にはサポートされません。 というよりはむしろ、あなたが適切だと思うどんな動作をも通常 の MIME の機構を介して指定できるように、 Gnus は ‘application/pgp-keys’ として鍵を検出し、ラベルを付けます。 MIME ボタンをクリック (see section MIME を使う) したときに、GNU Privacy Guard を使って鍵を輸入してくれるようにするには、以下のような行 を ‘~/.mailcap’ ファイル (see (emacs-mime-ja)mailcap section ‘mailcap’ in The Emacs MIME Manual) に記入してください。

 
application/pgp-keys; gpg --import --interactive --verbose; needsterminal

これは、たまたま mailcap-mime-data ですでに定義されている、ディフォ ルトの動作でもあります。

送信するメッセージに署名したり暗号化するために、どうやって設定するかにつ いてのもっと詳しい情報が、message マニュアル (see (message-ja)Security section ‘セキュリティー’ in The Message Manual) で見つかるでしょう。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.32 メーリングリスト

Gnus は RFC 2369 で規定された各種のメーリングリストで使われるフィールド を理解します。これを有効にするには概略バッファー で A M (gnus-mailing-list-insinuate) を使うなどして、 to-list グループパラメーター (see section グループパラメーター) を追加し てください。

これによって概略バッファーでの以下の命令が使えるようになります。

C-c C-n h

List-Help フィールドがあったら、メーリングリストのヘルプを取り寄せるため のメッセージを送信します。

C-c C-n s

List-Subscribe フィールドがあったら、メーリングリストの講読を始めるため のメッセージを送信します。

C-c C-n u

List-Unsubscribe フィールドがあったら、メーリングリストの講読をやめるた めのメッセージを送信します。

C-c C-n p

List-Post フィールドがあったら、メーリングリストに投稿します。

C-c C-n o

List-Owner フィールドがあったら、メーリングリストの管理者宛てにメッセー ジを送信します。

C-c C-n a

List-Archive フィールドがあったら、メーリングリストのアーカイブを閲覧し ます。


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Yasutaka SHINDOH on May 11, 2011 using texi2html 1.82.