| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
ウェブでは、ますます多くの新聞、メーリングリストのアーカイブ、掲示板、あ るいは個人の日記 (hyper nikki system、weblogs または blogs) が公開されて います。`Shimbun' ライブラリは、それらのコンテンツを貴方の好みのメー ラーで読むことができるようにします。具体的には、それらのコンテンツを、メー ルのように整形・整理する機能を提供します。
すべての `shimbun' モジュールは、普通のメールやニュースのように読む ことができる記事を生成することを目標にしています。しかしながら、ウェブサ イトがそれらの記事の html をしばしば変更するので、その度に私たちは困難に ぶつかります。
もし、無意味な画像や、記事とは関係の無いテキストが現れるのに気がついたら、
(たとえ些細なものでも) report-emacs-w3m-bug (see 節 11. メーリングリスト、バグリポート) を使って報告してください。
`Shimbun' ライブラリは、現在、朝日新聞、読売オンライン、Emacs Devel、 XEmacs Beta、Gnus/Mew/Wanderlust などのメーリングリスト、Slashdot、 Slashdot Japan、および他のたくさんのものに対応しています。具体的には、 9.5 新聞が読めるサイト を参照してください。
ところで、`Shimbun' ライブラリを利用する時は、著作権について注意が 必要です。`Shimbun' ライブラリによって加工・生成された記事の著作権 は、その記事を生成する元になったデータの著作者に帰属します。したがって、 得られた記事を利用する場合は、元のデータの著作者の権利を侵害しない範囲を 守る法律上の義務があります。つまり、著作権法に定められた「私的利用」の範 囲を守らなければならない、ということです。
`Shimbun' ライブラリを利用したことによって、万が一あなたが不利益を 被ったり、あなたが他者の権利を侵害したことによってあなたが訴えられたとし ても、emacs-w3m 開発チームは一切の責任を負いません。
`Shimbun' ライブラリはたくさんのモジュールのコレクションで、それら の各々は単独では何の役にも立ちません。 ここでは代表的な三つの `Shimbun' のアプリケーションプログラム (それ らのうちの二つは `Shimbun' ライブラリに含まれています) と、あなたが 自分で `Shimbun' モジュールを作る方法について説明します (Emacs Lisp プログラムを書くことができる必要があります)。
`Shimbun' ライブラリを利用するためには、emacs-w3m を構築してインス トールする前に FLIM パッケージ (加えて `nnshimbun' を使い たければ Gnus) をインストールする必要があることに注意してください。 FLIM パッケージには APEL パッケージが必要です。あな たは 2.3 Emacs-w3m を動作させるのに必要なもの も見るべきかもしれません。
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
`Nnshimbun' は Gnus のバックエンドです。しかしながら、例外的 に Gnus ではなくて emacs-w3m とともに配布されています。 `Nnshimbun' は Gnus を並外れて便利なウェブブラウザにすることができ ます。すべての広告に煩わされずに新聞社のウェブサーバで記事を拾い読みする ことができます。メーリングリストの記事アーカイブを、そのリストに講読登録 しているように読むことができます。掲示板の書き込みも読むことができます。 等々... でも Gnus は `nnshimbun' でウェブを介した投稿ができないので、 フォローしたいときは emacs-w3m を使わなければいけないことに注意してくだ さい。
さらに emacs-w3m で HTML メッセージを整形するには 6.1 Gnus で HTML メールを読む も参照して ください。
`Nnshimbun' を始めるための一番簡単な方法は、グループバッファで以下 のようなことをすることです:
M-x gnus-group-make-shimbun-group RET asahi RET national RET
`asahi' と `national' は、接続したいサーバーに対応したキーワー ドと興味のあるグループに、それぞれ置き換えてください。 TAB か SPC をタイプすることによって、それらの名 前を両方とも補完することができます。
もし gnus-group-mode-map に十分な空きがあるならば、以下のようなも
のを `~/.gnus.el' ファイルに加えてください:
(eval-after-load "gnus-group"
'(define-key gnus-group-mode-map "Gn"
'gnus-group-make-shimbun-group))
|
すると、M-x gnus-group-make-shimbun-group の代わり に G n を使うことができます。
誰かこのキーを Gnus タワーに予約してくれませんか?
この他に、gnus-group-make-shimbun-groups コマンドを使って、指定し
たサーバーのすべてのグループを作ることができます。
`Nnshimbun' は単にウェブサーバから HTML コンテンツを取り寄せて、そ れを記事として表示しますが、永続記 事 (see 節 `Persistent Articles' in
以下の `nnshimbun' に関する変数をカスタマイズすることが可能です:
nnshimbun-keep-backlog
gnus-keep-backlog 変
数 (see 節 `Article Backlog' in nnshimbun-keep-backlog を数字 n に設定す
ると、`nnshimbun' は最大で n の古い記事を後の再取得のためにバッ
ファに溜めておきます。この変数が nil ではなく、数字でもない場合、
`nnshimbun' は すべて の既読記事を蓄えます (これは良い考えで
はありません)。デフォルト値は 300 です。
`Nnshimbun' はあらかじめ取得した (prefetched) 記事の保存
に backlog を使うので、小さすぎる値は prefetch-articles 機能 (下
記参照) を損なうかもしれないことに注意してください。
nnshimbun-directory
nnshimbun-default-group-level
gnus-level-default-subscribed を上書きする、デフォルトのグループ
レベルです。新たに作られた `nnshimbun' グループに適用されます。デフォ
ルト値は nil です。これはサーバー変数 (see 節 `Server Variables' in
nnshimbun-marks-is-evil
nil でなければ、Gnus は `shimbun' スプールのために
印 (marks) ファイルを作りも使いもしません。印ファイルを使うことによって、
`shimbun' グループを `.newsrc.eld' から切り放してバックアップ
し、復元することが可能になります。何らかの理由でこれを t に設定し
た後で、再び nil にする場合はいつも、グループの印ファイルを消さな
ければなりません (普通それは `shimbun' グループのディレクトリにあ
る `.marks' という名前のファイルですが、正確に
は nnshimbun-marks-file-name の値を参照してください)。そうすれ
ば Gnus によって印ファイルが再生成されるでしょう。デフォルト値
は nil です。これはサーバー変数 (see 節 `Server Variables' in
`Nnshimbun' は Gnus が提供する標準のグループパラメー
タ(7) に加えて、`nnshimbun' 専用に設けられたグループパラ
メータを利用することができます。複数の `nnshimbun' 用のパラメータ
が nnshimbun-group-parameters という単一のグループパラメータ (す
べてのグループで違う値を持つことができる) にまとめられています。それはプ
ロパティリストで、例えば次のような値です:
'(index-range all prefetch-articles off encapsulate-images on
expiry-wait 6)
|
以降はこれらのグループパラメータと、関連する変数の説明です。
prefetch-articles
off または nil 以外の何かに設定さ
れているグループでは、`nnshimbun' は新しい記事を探すだけではなく、
それらの記事のダウンロードも行います。これは新しい記事の検索を遅くします
が、記事を閲覧するときに待たされません。このグループパラメータが設定され
ていないか、その値が nil になっているグループでは、代わりに変
数 nnshimbun-pre-fetch-article の値 (デフォルトは off) が
使われます。
encapsulate-images
off または nil 以外の何かに設定さ
れているグループでは、`nnshimbun' は元の記事に埋め込まれている画像
データを MIME の `multipart/related' パートとして記事にはめ込みます。
このグループパラメータが設定されていないか、その値が nil になって
いるグループでは、代わりに変数 nnshimbun-encapsulate-images の値
が使われます。この変数 nnshimbun-encapsulate-images のデフォルト
値は、`shimbun' ライブラリによって提供される変
数 shimbun-encapsulate-images の値です (たぶんデフォルト値
は t です)。
index-range
index-range で、ウェブサーバーから取得される記
事の範囲を指定することができます。範囲の指定には以下の値を使ってください:
nil
all
last
`Nnshimbun' はサーバー上に存在する目次ページを解析して新しい記事の 有無を調べます。サーバーによってはそのような目次ページが複数存在する場合 があります。例えば、メーリングリストの記事を提供しているサーバーの場合は、 その記事が投稿された日付によって分類された目次になっていることが一般的で す。特に遅い回線を利用している時に、それらすべての巨大な目次を調べるには、 相当な時間がかかるでしょう。
`Nnshimbun' は前回の接続時に調べた目次については、なるべく調べずに
済ませるようになっています。更に時間を節約したい場合は last を使っ
てください。これは `nnshimbun' に、最新の目次だけを参照して新しい記
事の検査を行なわせます。
グループパラメータ index-range が設定されていないか、値
が nil になっているグループでは、変
数 nnshimbun-index-range の値 (デフォルトは 2) が使われま
す。
nnshimbun-group-parameters-alist
nil です。各々の要素
は `(REGEXP KEYWORD VALUE KEYWORD VALUE...)' の形式を持ちます。例え
ば:
'("^nnshimbun\\+asahi:" index-range all prefetch-articles off
encapsulate-images on expiry-wait 6)
|
似た名前を持つ (すなわち、互いに似た性格を持っていそうな) 複数のグループ に対して同じ `nnshimbun' グループパラメータを指定することができるの で、個々のグループに対してそれぞれグループパラメータを設定する代わりに使 うことができて便利です。もしグループですでにグループパラメータの設定が行 なわれていた場合は、この変数よりもそちらが優先されます。
`Nnshimbun' には記事の期限切れ消去を行なわせることができま す(8)。記事が期限切 れ消去されると言っても、それが遠隔サーバーから削除されるわけではなく、そ れはずっとそこから取得可能であることを覚えておいてください。消えるのはあ なた自身の `nnshimbun' 用の NOV ファイ ル(9) の、 消去される記事に該当する行です。それによってその記事は二度と概略バッファ に現れなくなります。
`Nnshimbun' グループで記事の期限切れ消去を行なわない と NOV ファイルが際限無く太り続け、非常に古い記事があたかも存 在しているように見えるかもしれません (実際には、それらは新聞社のサーバー で三年前に期限切れ消去されてしまっているかもしれない!)。それを読もうとし ても記事バッファには何も現れないでしょう。一方、メーリングリストの記事を 提供しているたいていのサーバーは、一般的に過去の全記事を提供しています。 憂愁の彼方に去りし古き良き時代に、あなたが興じた記事を懐かしくうるうるし て読み返すことができるように、そういうグループでは期限切れ消去はさせたく ないと思うかもしれません。
他のメールバックエンドと同様に、`nnshimbun' のグループ毎に記事に自 動期限切れ消去の印を付けて、残しておく期間を設定することができます。ただ し `nnshimbun' バックエンドと他のメールバックエンドには、少し違いが あります:
expiry-wait グループパラメータの値。
nnmail-expiry-wait-function を評価
することによって得られた値。
nnmail-expiry-wait の値。
第二に、変数 nnmail-expiry-wait-function によって設定される関数に
与えられる引数に、"nnshimbun+asahi:national" のようにバックエンドとサー
バーの名前が含まれることです。他のメールバックエンドの場合にはグループ名
だけが与えられるのに、です。例を挙げましょう:
(setq nnmail-expiry-wait-function
(lambda (group)
(cond ((string-equal group "ding") 7)
((string-equal group "nnshimbun+ding:ding") 'never))))
|
これは、同じ ding メーリングリスト用に二つのグループがあることを意味しま す: 一つはリストのメンバーとして講読登録しています。もう一つは Gnus タワー のメーリングリストアーカイブから読むためのものです。どうです、なかなか賢 いでしょ? "ding" グループのローカルなメールファイルは七日で期限切れ消 去され、ローカルディスクの容量が節約されます。しかし二つ目のグループでは、 前世紀の記事でさえ読むことができます (それが本当に必要ならば、ですが)。
第三に、これはあなたに疑念が沸いたときに思い出すことができるように書き留 められています: `nnshimbun' グループのすべての記事が期限切れ消去さ れるべきときでも、最新の一通だけは消さずに残しておきます。これはあなたの 未練心を満足させるためではなく、次回にこのグループの新しい記事を取得しよ うとしたときに、`nnshimbun' がどこから始めるかを知って、すべての記 事を取得し直さないようにするためです。
`Nnshimbun' の期限切れ消去に関係するグループパラメータと変数は以下 の通りです:
expiry-wait
expiry-wait グループパラメータ
が `nnshimbun' 専用に作られたグループパラメー
タ nnshimbun-group-parameters の要素の一つとして提供されます。そ
れは標準のグループパラメータと同じ名前を持ち、意味も同じです。あなたはど
ちらを使っても構いません。もし `nnshimbun' 専用のもの
が nil 以外の値に設定されると、標準のものよりも優先されます。これ
は `nnshimbun' に関係するものを "Gnus Customize" バッファ (グルー
プバッファで G c をタイプすると現れる) の一箇所に集めるためと、
変数 nnshimbun-group-parameters-alist で一括して管理できるように
することを目的に用意したものです(10)。設定できる
値は標準のグループパラメータと同様に、時限消去の日数、never また
は immediate です。
nnshimbun-keep-unparsable-dated-articles
nil でない場合は、作成された (または到着した) 時刻
がわからない記事は期限切れ消去されません。なにしろどのくらい古いのかわか
らないんですから。デフォルト値は t です。nil に設定すると、
期限切れ消去の処理が行なわれるときに、期限がわからない記事でも無条件で消
されてしまいます。まあ、年の暮れの大掃除の役には立つことが判明するかもし
れません。
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
Mew Shimbun は `shimbun' と Mew (version 2.1 以降) とともに使うこと を意図した Emacs Lisp プログラムです。Mew, APEL およ び FLIM もインストールされていれば、emacs-w3m をインストールす るときに一緒にインストールされます。
6.2 Mew で HTML メールを読む も参照することをお勧めします。
以下の各行を `~/.mew.el' ファイルの最後に書いてください:
;;; mew-shimbun のロード、キー定義 |
;; (setq mew-shimbun-use-unseen t) ;; (11)
(require 'mew-shimbun) (define-key mew-summary-mode-map "G" (make-sparse-keymap)) (define-key mew-summary-mode-map "Gg" 'mew-shimbun-goto-folder) (define-key mew-summary-mode-map "GG" 'mew-shimbun-goto-unseen-folder) (define-key mew-summary-mode-map "Gi" 'mew-shimbun-retrieve) (define-key mew-summary-mode-map "GI" 'mew-shimbun-retrieve-all) (define-key mew-summary-mode-map "Gr" 'mew-shimbun-re-retrieve) (define-key mew-summary-mode-map "GR" 'mew-shimbun-re-retrieve-all) (define-key mew-summary-mode-map "Ge" 'mew-shimbun-expire) (define-key mew-summary-mode-map "GE" 'mew-shimbun-expire-all) ;; |
以上で基本的な設定は終了です。他のユーザ定義変数は mew-shimbun グ
ループを M-x customize-group するか、ソースを見てください。
上記の設定をしたあと、まず G I しましょ
う (mew-shimbun-retrieve-all)。
mew-shimbun-folder-groups で種々の設定を行なった `shimbun'
folder が `+shimbun' 以下に出来ます。また、新たに group を追加した
ときも G I すると便利です。なお、
`+shimbun' は mew-shimbun-folder という変数で好みのものに変
更できます。
通常の g (mew-summary-goto-folder) でも `shimbun'
folder への移動はできますが、
G g (mew-shimbun-goto-folder) を使うと `shimbun'
folder 限定で移動できます。また C-u G g と prefix をつけたとき
は、新規記事のある folder (まだ scan をしていない folder) のみ表示します。
G G でも同様です。
`shimbun' folder で G i (mew-shimbun-retrieve) す
ると、現在の `shimbun' folder で新規記事を取得します。
特定の記事を表示した状態
で G r (mew-shimbun-re-retrieve) すると、その記事が更新
されていたら更新し、同時に新規記事も取得します。C-u G r とする
と、mew-shimbun-mark-re-retrieve に指定したマーク (デフォルト値
は `@') の記事の更新を試みます。CNET などで使うと便利でしょう。
G R (mew-shimbun-re-retrieve-all) では、すべての記事の
新規性を調べ取得しなおします。C-u G R ではリージョンで指定した
範囲の記事を対象とします。おそらくハイパー日記システムが稼働している日記
サイトでは有意義なコマンドでしょう。
`~/.mew.el' ファイルで以下の設定を行なっていると、
(setq mew-shimbun-use-unseen t) |
新規に取得した記事に mew-shimbun-mark-unseen で設定したマーク (デ
フォルトは `*') がつくようになり、読むと自動的に消えます。
通常、Mew の summary モードでマークをつける、あるいは消した後、scan をし ないと `.mew-cache' ファイルに反映されませんが、`~/.mew.el' ファ イルで以下の設定を行なうことにより、
(setq mew-shimbun-use-unseen-cache-save t) |
Mew の終了時や folder の kill 時 (C-c C-q を使ったと き) に `shimbun' folder は自動的に `.mew-cache' ファイルを保存 するようになります。ただし、確実 (12) に保存するわけではありません。既読になった情報を確実に cache に保存する には、その folder を読み終わったときに `scan update' をする習慣をつ けると良いでしょう。
未読に使うマークが `*' じゃダメ、という方は、変
数 mew-shimbun-mark-unseen をカスタマイズしてください (上述)。
C-u N でそのマークを指定すると楽しい未読ライフをおくることがで
きると思います。
事前に mew-shimbun-expires を設定しておくと、期限切れ記事の消去を
行なうことができます。例えば:
(setq mew-shimbun-expires
'(("yomiuri" . 7)
("asahi" . 1)
("slashdot-jp" . 7)
("emacs" . 7)))
|
上記のように設定しておくと、`+shimbun/yomiuri' は 7日、
`+shimbun/asahi' は 1日と期限を設定することができます。指定されてい
ない `shimbun' folder は消去しません。G e
(mew-shimbun-expire) でその folder の期限切れ記事を消去します。
G e (mew-shimbun-expire) で設定したすべての folder で記
事の消去を実行します。なお、一度消去した記事は復旧出来ませんので注意して
ください。
`$' マークを新たに作成し、`$' マークを未読マークとして使うには、 次の記述を `~/.mew.el' ファイルに記述してください。なお、 `$' 以外の記号にしたければ、 http://www.mew.org/ml/mew-dist-2.0/msg01251.html を参照して記述を 生成してください。
;;----------------------------------------------------------------------
;;; `$' を未読マークとして使うための記述
(setq mew-mark-unseen ?$)
(setq mew-shimbun-mark-unseen mew-mark-unseen)
(setq mew-mark-show-list (cons mew-mark-unseen mew-mark-show-list))
(setq mew-mark-afterstep-spec
(cons (cons mew-mark-unseen '(1 0 1 0 0 0 0))
mew-mark-afterstep-spec))
(setq mew-mark-spec
(cons (list mew-mark-unseen "unseen" 0 nil nil nil nil nil)
mew-mark-spec))
(setq mew-highlight-mark-keywords
(cons
(cons mew-mark-unseen 'mew-face-mark-unseen)
mew-highlight-mark-keywords))
(defface mew-face-mark-unseen
'((((class color) (type tty))
(:foreground "green"))
(((class color) (background light))
(:foreground "deep pink" :bold t :italic t))
(((class color) (background dark))
(:foreground "thistle"))
(t (:bold t)))
"*Face to highlight the unseen mark"
:group 'mew-highlight)
(defun mew-summary-unseen (&optional count)
"Put the unseen mark(default is '$') in COUNT times."
(interactive "P")
(mew-mark-put-mark-loop (function mew-summary-unseen-one) count nil))
(defun mew-summary-unseen-one (&optional no-msg)
"Put the unseen mark(default is '$') on this message."
(mew-mark-put-mark mew-mark-unseen no-msg))
(defun mew-summary-mark-unseen ()
"Change the '*' mark into the '$' mark."
(interactive)
(mew-summary-exchange-mark mew-mark-review mew-mark-unseen))
(defun mew-thread-mark-unseen ()
"Put the '$' mark on all messages of the current sub-thread."
(interactive)
(mew-thread-mark mew-mark-unseen))
(define-key mew-summary-mode-map "$" 'mew-summary-unseen)
(define-key mew-summary-mode-map "m$" 'mew-summary-mark-unseen)
(define-key mew-summary-mode-map "t$" 'mew-thread-mark-unseen)
;;----------------------------------------------------------------------
|
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
Wanderlust には ELMO モジュールの一つとして `elmo-shimbun' が含まれ ているので、名前が `@' で始まるフォルダにアクセスするだけ で `shimbun' を読むことができます (see 節 `Shimbun Folder' in
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
たくさんの新聞を読んでいると、新しい記事をチェックするのにいくらか時間が かかるでしょう。それは emacs-w3m が索引を一つずつ取得するからです。これ を高速に行ないたいなら、索引の取得にシェルスクリプトを使うことができます。 スクリプトは手動で (例えば Emacs の中から) 作動させても良いし、cron のよ うなスケジューラを介して自動で走らせることもできます。索引は特別な名前の ファイルにセーブされ、その後 emacs-w3m は w3m を呼ぶ代わりにそれらのファ イルを使うようになります。
以下の変数で、その「ローカルモード」を制御します:
shimbun-use-local
t に設定することによってローカルモードを有効にします。そう
すると、もしローカルファイルとして索引が用意できていれば、emacs-w3m は最
初にそれをチェックします。もしそれが見つからなかったら、通常通り w3m を
通して取得します。
shimbun-local-path
w3m-default-save-directory です。
索引のためのファイルの名前は、URL の MD5 を最初の 10 文字に切り詰めたも のの後ろに `_shimbun' という文字列をくっつけたものになります。次の ように Emacs で簡単に索引のためのファイルを生成することができます:
(concat (substring (md5 "http://example/feed") 0 10) "_shimbun") |
Gnus と `nnshimbun' を使っている人たちのために、シェルスクリプトを
生成する関数がすでにあります。それを使って、現在講読しているすべて
の shimbun グループの索引をダウンロードすることができます。単
に nnshimbun-generate-download-script を呼んでください。すると新
しいバッファにシェルスクリプトが生成されるので、後でセーブしてください。
接頭引数を付けてその関数を呼ぶと、索引の取得を並行して行なうために、すべ
ての w3m 呼び出しに `&' を付けます。
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
`Shimbun' ライブラリが対応しているサイトの一覧表です。
9.5.1 新聞社 9.5.2 ニュースサイト 9.5.3 メーリングリスト 9.5.4 スポーツ 9.5.5 その他
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
`Shimbun' ライブラリが対応している新聞社です。
これらのグループは、デフォルトでテキストだけの記事を作ります。それらに、 テキストだけでなく写真をも含む HTML の記事を生成させたいならば、以下の行 を `~/.emacs' ファイルに加えてください。
(setq shimbun-asahi-prefer-text-plain nil) |
一方、HTML の記事を作るために `asahi-html' バックエンドを使うことも できます。それを使うには、例えばグループ名とし て `asahi.business' の代わりに `asahi-html.business' を指定し てください。
日本の全都道府県を網羅する朝日新聞の地方版です。
これらのグループは、デフォルトで写真をも含む HTML の記事を作ります。それ らに、テキストだけの記事を生成させたいならば、以下の行 を `~/.emacs' ファイルに加えてください。
(setq shimbun-mainichi-prefer-text-plain t) |
2007年9月19日、ニューヨークタイムズは無料でニュース記事を提供し始めまし
た。`charset=iso-8859-1' と言ったのにもかかわらず、このサイトはしば
しば iso-8859-1 の上位互換文字セットである windows-1252 を
使います。使用している (X)Emacs に windows-1252 coding system が
あれば、`shimbun' は (そして emacs-w3m も) そのような場合でも動作し
ます。
これらのグループは、デフォルトでテキストだけの記事を作ります。それらに、 テキストだけでなく写真をも含む HTML の記事を生成させたいならば、以下の行 を `~/.emacs' ファイルに加えてください。
(setq shimbun-yomiuri-prefer-text-plain nil) |
一方、HTML の記事を作るために `yomiuri-html' バックエンドを使うこと もできます。それを使うには、例えばグループ名とし て `yomiuri.atmoney' の代わりに `yomiuri-html.atmoney' を指定 してください。
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
`Shimbun' ライブラリが対応しているニュースサイトです。
Slashdot shimbun のコメントの部分を設定するための以下の変数があります:
shimbun-slashdot-get-comments
t に設定されていると (それがデフォルトです)、すべての記事の
コメントを取得します。それらはフォームフィード文字 ("^L" のこと) でイ
ントロ・テキストから分離されます。それらを見るには、いつものように記事バッ
ファをスクロールしてください (Gnus では "Next page" ボタン
と "Previous page" ボタンを使うことができます)。この変数
を nil に設定すると、記事のコメントを取得しなくなります。
shimbun-slashdot-comment-threshold
shimbun-slashdot-comment-display
変数 shimbun-slashdot-jp-group-alist に適切な設定を加えると、その
他のユーザーの日記も閲覧できます。
Tech-On! は日経BP社が提供する技術ニュースサイトです。以前は記事の内容を 全部読むためにログイン・アカウント (無料) が必要でしたが、少なくと も 2007年の秋においては要らないように見えます。将来もし再び必要になった ら 登録ページ に行って取得してください。次の二つの変数で、どうやってログイ ンするかを制御します:
shimbun-tech-on-user-name
nil だと Tech-On! に
ログインするときに、ユーザー名の入力を要求されます。文字列だったらそれが
ユーザー名として使われ、入力を要求されることはありません。nil で
も文字列でもない場合 (これがデフォルトです)、ログインを行ないません。
shimbun-tech-on-password
nil だと Tech-On! に
ログインするときに、パスワードの入力を要求されます。文字列だったらそれが
パスワードとして使われ、入力を要求されることはありません。nil で
も文字列でもない場合 (これがデフォルトです)、ログインを行ないません。
これらの入力は、その Emacs セッションで最初に Tech-On! の記事を読み始め るときに一回だけ要求されます。
yahoo.news グループは主要な記事と、さらに速報記事を検索します。これらの グループは、デフォルトで HTML の記事を作ります。それらにテキストだけの記 事を生成させたいならば、以下の行を `~/.emacs' ファイルに加えてくだ さい。
(setq shimbun-yahoo-prefer-text-plain t) |
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
最近では、メーリングリストに投稿された過去記事のアーカイブが WEB 上に幾 つも公開されています。`Shimbun' ライブラリは、以下のアーカイブを扱 うことができます。
なお、`security-memo.*' はアドレス回収ロボット対策 で userid と passowrd を求められるので `~/.w3m/passwd' に
machine memo.st.ryukoku.ac.jp realm input username/password = archives/archives login archives passwd archives machine memo.st.ryukoku.ac.jp realm input user: archives / password: archives login archives passwd archives |
と書き、上記ファイルから group, others のアクセス権を取り除いておく必要 があります。
shimbun-geocrawler-group-alist に登
録してください。
shimbun-marc-aims-group-alist に登録してください。
shimbun-sourceforge-jp-mailing-lists に登録してください。
なお、`mozilla-jp.users' はアドレス回収ロボット対策 で userid と passowrd を求められるので `~/.w3m/passwd' に
machine www.mozilla.gr.jp realm Please Enter mozilla mozilla login mozilla passwd mozilla |
と書き、上記ファイルから group, others のアクセス権を取り除いておく必要 があります。
shimbun-tigris-group-alist に登録してくださ
い。グループ名は tigris.<project>.<mailinglist> になります。
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
`Shimbun' ライブラリが対応しているスポーツ関係のサイトです。
ただし、Emacs-21.4 またはそれ以前の版で @nifty: モータースポーツを閲覧 するには、Mule-UCS (see 節 2.3 Emacs-w3m を動作させるのに必要なもの) が必要です。
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
`Shimbun' ライブラリの対応しているその他のサイトです。掲示板や、連 載記事を主体とするようなサイトが含まれています。
新たに掲示板をリストに追加するには、それらの名前と URL を調べて、
shimbun-tcup-group-alist を変更してください。二つの掲示
板 `foo' と `bar' を追加する例です。
(eval-after-load "sb-tcup"
'(setq shimbun-tcup-group-alist
(append
'(("foo" "http://MMMM.teacup.com/foo/bbs2")
("bar" "http://NNNN.teacup.com/bar/bbs2"))
shimbun-tcup-group-alist)))
|
(setq shimbun-2ch-group-alist
'(("Meadow" .
"http://pc.2ch.net/test/read.cgi/software/1005469775")
("emacs-w3m" .
"http://pc.2ch.net/test/read.cgi/unix/1013710106")))
|
CGI_Board を使っている掲示板の URL を調べて、
shimbun-cgi-board-group-alist に適切な設定を加えて使います。
(setq shimbun-hns-group-alist
'(("arisawa" ;; グループ名
"http://nijino.homelinux.net/diary/" ;; URL
"ari@mbf.sphere.ne.jp") ;; メールアドレス
("miyoshi"
"http://www.be.wakwak.com/cgi-bin/sbox/~miyoshi/hns/"
"miyoshi@meadowy.org")))
|
(setq shimbun-tdiary-group-alist
'(("henahena" ;; グループ名
"http://www.fan.gr.jp/~ring/d/") ;; URL
("yoichi"
"http://yoichi.geiin.org/d/")))
|
(setq shimbun-rakuten-group-alist
'(("rakuten-id" . "email-address")))
|
shimbun-rss-hash-group-path-alist 変数を以下のように設定して使い
ます。バックエンド名は `rss-hash' です。主に個人のブログなどが対象
になるでしょう。
パラメータはグループ名、RSS アドレス、メールタイプ (t で html)、
整形時の開始正規表現、整形時の終了正規表現となります。グループ名、RSS ア
ドレス以外はオプションです。
以下はサンプルです。この場合は `rss-hash.sampleblog1' およ び `rss-hash.sampleblog2' として閲覧できます。
(setq shimbun-rss-hash-group-path-alist
'(;; text mail
("sampleblog1" "http://www.example.com/index1.rss")
;; html mail
("sampleblog2" "http://www.example.com/index2.rss"
t "</title>" "
`Shimbun' は emacs-w3m の付属ライブラリで、Gnus や Wanderlust、 Mew などの MUA を利用し、ウェブコンテンツをメールと同じユーザインターフェー スで読むことを可能にするものです。ここでは `shimbun' モジュールを作 成する典型的な方法を説明します。
9.6.1 概略URL="http://www.bookshelf.jp/cgi-bin/goto.cgi?file=emacs-w3m&node=Overview"
"emacs-w3m/概略"へのコメント(無し) http://www.foobar.net のコンテンツを閲覧する新た な `shimbun' モジュール `foobar' を作成するとして、まず最初に 貴方がしなればならないことは、`sb-foobar.el' の冒頭に
のような宣言を入れておくことです。徐々に分かると思いますので、今はおまじ
ないと思っておいてください。注意すべきことは、`shimbun' モジュール
を入れるファイル名の `sb-foobar.el' の `foobar' の名前と、
`Shimbun' モジュール `shimbun-foobar' がこなすべき仕事は大き く四つあります (あなたが Gnus のユーザならば、「フォルダ」を「グループ」 に読み換えてください):
最初の作業は `shimbun.el' の
`shimbun.el' の中をご覧ください。 実は、`shimbun.el' 及び各 `shimbun' モジュールは、 Emacs Lisp にてオブジェクト指向プログラミングを可能とする `luna.el' (13) を利用して書かれています。
`shimbun.el' の中では、
そこで
もうお分かりのように、
9.6.2 ウェブページのソース及びヘッダ情報を取得するURL="http://www.bookshelf.jp/cgi-bin/goto.cgi?file=emacs-w3m&node=Getting+web+page+and+header+information"
"emacs-w3m/ウェブページのソース及びヘッダ情報を取得する"へのコメント(無し)
まず記事見出しを取得する対象となるウェブページを決めることから始めます。
フレーム表示されている場合は、フレームの中で必要なページだけを単独で指し
示す URL を特定するべきです。特定できたら、新たに作成す
る `shimbun' モジュールの中で
`sb-foobar.el' に
のような行を集めて記事にしたいのでしたら、
のような正規表現になるでしょう。そして記事の Xref の値は
上記のように記事の URL が相対パス表示されている場合は、
ウェブページによっては Date が特定できないものがあります。そういう場合は
無理に特定せずとも
苦労して取得したこれらの情報は
結局 `sb-foobar.el' の中での
なお、このメソッドの中では
ところで、先程保留にした変数
仮に http://www.foobar.net の中に読みたい記事グループが二つあっ
て、それぞれの記事のヘッダ情報を得るウェブページが別々の場所にあったとし
ましょう。http://www.foobar.net/whatsnew/index.hmtl にサイト
の更新情報が、http://www.foobar.net/ml/index.html に ML の記
事アーカイブの一覧があるときなどです。こういう場合は、`shimbun' モ
ジュール
現在ユーザがアクセスしているグループに
は なお、`shimbun' モジュール一つにつき、最低でも一つのグループが必要 です。グループの名前の決め方に特に決まりはありませんが、グループ名に悩ん だら、`news' とか `main' などと付けておきましょう。
9.6.3 記事の表示URL="http://www.bookshelf.jp/cgi-bin/goto.cgi?file=emacs-w3m&node=Displaying+an+article"
"emacs-w3m/記事の表示"へのコメント(無し)
`shimbun.el' に定義された
記事となるウェブページのソースが、どばっとワーキングバッファにぶちまけら
れていると想像してください。`shimbun.el' の標準
の
HTML の記事だけでなく、`text/plain' 形式の記事が生成されるようにす ることもできます。See 節 9.6.5 text/plain の記事を作るには.
記事を何も加工する必要がなければ `sb-foobar.el' の中で
は
単純に記事の前後に捨てたい部分があるだけならば、
標準の
広告などの不要な情報があって、それを細かく検索して捨てたい場合は、
`sb-foobar.el' の中で独自の
より具体的な方法は、`sb-ibm-dev.el' が参考になるかもしれません。 先程、9.6.2 ウェブページのソース及びヘッダ情報を取得する の節で、記事毎に個 別に URL を持たない構造のウェブページの場合、ヘッダ情報取得の段階で、記 事の内容も取得しておき、Emacs のメモリに収めておく必要があると申し上げま した。この場合、`shimbun-article' では上記のような Xref 情報から の web page の取得は必要になりませんので、ただ Emacs のメモリから取り出 して、バッファに整形して挿入すれば足ります。具体的に は `sb-palmfan.el', `sb-dennou.el', `sb-tcup.el' の `shimbun-article' メソッドの定義を参照してくだ さい。
9.6.4 Shimbun モジュールの継承URL="http://www.bookshelf.jp/cgi-bin/goto.cgi?file=emacs-w3m&node=Inheriting+shimbun+module"
"emacs-w3m/Shimbunモジュールの継承"へのコメント(無し) メーリングリストマネージャ (アーカイバ) として有名なものがいくつかありま す。
貴方が 9.6.2 ウェブページのソース及びヘッダ情報を取得する のステップで取得し
たウェブページのソースを分析しているときに、そのソースの中にこれらメーリ
ングリストマネージャの名前を見つけたら(16)、
それはすごくラッキーなことです。`sb-mailman.el',
`sb-mhonarc.el', `sb-fml.el', `sb-mailarc.el' に既
に 例えば `sb-mailman.el' を利用するなら `sb-foobar.el' の冒頭は、
こんな風になります。これで `shimbun' モジュー
ル `shimbun-foobar' は `sb-mailman.el' を実際に利用したサンプルとして、 `sb-pilot-mailsync.el' などをご覧ください。如何に楽ができるかがお分 かりになるでしょう。 気を付けることが一つあるとすれば、これらのメーリングリストマネージャの中 には地域化 (localize) されて、例えば日付表示を日本語で行うように改造され ているものがあることです。`sb-mailman.el', `sb-mhonarc.el', `sb-fml.el', `sb-mailarc.el' はいずれも標準の、英語版のものに 対応しています。これら地域化されたメーリングリストマネージャを利用してい るウェブサイトを `shimbun' で読みたいときは、いくつかのメソッドを上 書きしなければならないかもしれません。
9.6.5 text/plain の記事を作るにはURL="http://www.bookshelf.jp/cgi-bin/goto.cgi?file=emacs-w3m&node=Making+text%2Fplain+articles"
"emacs-w3m/text/plainの記事を作るには"へのコメント(無し) たとえ MUA が HTML の記事を読むことができるように emacs-w3m によって強化 されていても、いくつかの場合には `text/plain' の記事が便利なことも あるかもしれません。`sb-foobar' モジュールに `text/html' では なくて `text/plain' の記事を作らせるには、二つの方法があります。
どちらの方式を使うにしても、`text/plain' の記事は、画像やリンクなど を含むことができないことに注意してください。
9.6.6 全角文字を半角文字に変換するURL="http://www.bookshelf.jp/cgi-bin/goto.cgi?file=emacs-w3m&node=Zenkaku+to+hankaku+conversion"
"emacs-w3m/全角文字を半角文字に変換する"へのコメント(無し) 「全角」または「全角文字」は、幅が広い日本語の文字を呼ぶための俗称です。 また「半角」は、通常の ASCII 文字のための対語です。少なくとも ASCII 文字 セットに対応する、全角文字の完全なセットがあります。
いくつかの日本のウェブサイトは全角文字を多用する傾向があり、それらの記事
は必ずしも読み易くないかもしれません。もしそう感じたら、それら全角の英数
字を半角に変換するこの機能を使うことができます。それに
は
全角から半角への変換を記事のボディだけで行なわせたいならば、
9.6.7 Shimbun ライブラリのコーディング規約URL="http://www.bookshelf.jp/cgi-bin/goto.cgi?file=emacs-w3m&node=Coding+convention+of+Shimbun"
"emacs-w3m/Shimbunライブラリのコーディング規約"へのコメント(無し)
|