ローカルマシンで NetNews を見よう!!
 いろんな方から、「今度はローカルで NetNews を読む設定を書いてよぉぉ。」等と言うリクエストをもらいました。ふぅぅ。やっと、そのリクエストに応える事が出来ます。

 私自身では、ppp して NetNews を読む事より、INN で News Server を立ち上げる方に走ってしまったので、どうしてもここに書く事が出来なかったのでした(^^;;。と、言う事で今回は以下の要領で NetNews を読む事にしましょう(^^)V。

「プロバイダの News サーバに接続して、自分のマシンのスプールに記事を取って来よう。その後、電話を切ってじっくり読んで書こう」

 ね、なかなか本格的でしょ(^^)。けど、こんなんラクチンに設定出来ます。 まずは、何はともあれ必要なファイルのリストとダウンロードです(^^)。

 ・なには無くとも Mule。packages からインストールすればだいじょぶ。
 ・GNUS は mule をインストールすれば使えるのでおっけーー。
 ・gnspool と言うのを使います。 gn-1.36.tar.gz

 さささ。必要なモノは揃いましたか? mule は関連する canna 等、自分の環境をしっかりと構築してくださいね。.emacs も準備は整ってますか?もし無い様なら、サンプルの .emacs が私のホームページのどこかにあると思うのでそこから持って来て使って下さいね(^^)。

 と、言う事で gn-1.36.tar.gz のインストールです。gn は本来、単体で立派なニュースリーダなのですが、今回はその中の一部の機能である、gnspool を使います。gn は日本語ドキュメントが充実しています。一度目を通してみるのがお勧めです。

----------------
roman# tar xvzfp gn-1.36.tar.gz
roman# cd gn-1.36/src
roman# ./mkgn
roman# 
----------------
 tar で展開した後、src ディレクトリに行って mkgn を実行します。すると会話形式でいろいろな設定を聞いて来るので応えてあげます。私の設定は以下の様にしました。
----------------
            BINDIR = /usr/local/news/bin
            MANDIR = /usr/share/man/man1
            MANEXT = .1                                 CC = cc
         OPTCFLAGS = -O                          OPTGNOBJS =
    OPTGNSPOOLOBJS =                             OPTLFLAGS =
           OPTLIBS =                             NEWSSPOOL = /var/spool/news
           NEWSLIB = /usr/local/news/lib
   MAIL_KANJI_CODE = JIS                PROCESS_KANJI_CODE = EUC
   FILE_KANJI_CODE = EUC                DISPLAY_KANJI_CODE = EUC
             LINES = 24                            COLUMNS = 80
            MAILER = /usr/sbin/sendmail -t
        NNTPSERVER = nntp.プロバイダ.ne.jp
        SMTPSERVER =                            DOMAINNAME = Running-dog.net
       GENERICFROM = 1                        ORGANIZATION = Personal
            NEWSRC = .newsrc                     SIGNATURE = .signature
        AUTHORCOPY = author_copy                   SAVEDIR = ~/News
            TMPDIR = /tmp                            PAGER = less
RETURN_AFTER_PAGER = 0                              EDITOR = mule
----------------
 これで、make install すれば準備は完了。テストする前にディレクトリのおさらいです。インストール先は上を見れば解りますね。

----------------
News bin ディレクトリ:/usr/local/news
News spool ディレクトリ:/var/spool/news
----------------
 最初にこれらのディレクトリを mkdir します。 /var/spool/news の方は chmod 777 して一般ユーザでも書き込める様しといた方が良いでしょう。後、~/ に .gnrc と言うファイルが必要になります。以下の様に一応、書いておきましょう。
---------------- ~/.gnrc
SUBSCRIBE fj.os.bsd.freebsd
----------------
 fj.os.bsd.freebsd と言う、NG の記事を持って来ます。複数書きたい場合は、"," で区切ります。下の設定は、fj.os.bsd.freebsd と、fj.rec の全部の NG の記事を持って来ると言う事です。沢山のエントリを書きすぎると core dump しますよ;-)。
---------------- ~/.gnrc
SUBSCRIBE fj.os.bsd.freebsd,fj.rec
----------------
 準備が出来たらすかさず、gnspool コマンドをたたいてみましょう。この時、端末の文字コードを EUC にしておくと幸せになれます。
----------------
roman# /usr/local/news/bin/gnspool
----------------
 さささ、後は /var/spool/news の下にディレクトリが勝手に作られどんどん News の記事を持って来ます。めでだしめでたし(^^)。

 さて、これで NetNews は spool に格納されました。読み方とかは mule の GNUS を使います。知っているよね?詳しくは説明しませーーん。FreeBSD の pachage に添付されている mule なら一発で動くでしょう。私の所の .emacs の一部分を持って行ったなら、。C-x C-g で起動します。

 以下は、.emacs に登録する gnspool+gnus の設定です。参考にしてみてください。

---------------- ~/.emacs
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; GNUS 設定
;
; news 
(define-service-coding-system  "nntp" nil *junet*unix)
(put 'set-goal-column 'disabled nil)


; Gnus で、記事を早く見える様にする仕掛け;-)
(setq nntp-buggy-select nil)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; gnspool+GNUS
(setq nnspool-spool-directory "/var/spool/news")
(setq nnspool-active-file "/usr/local/news/lib/active")
(setq nnspool-newsgroups-file "/usr/local/news/lib/newsgroups")
(setq nnspool-history-file "/usr/local/news/lib/history")

(defun gnus-gnspool ()
  "GNUS (with gnspool)"
  (interactive)
  (setq gnus-nntp-server nil)
  (setq gnus-nntp-service nil)
  (gnus))
(setq nnspool-inews-program "/usr/local/news/bin/gninews")
(global-set-key "\C-x\C-g" 'gnus-gnspool)
;
; GNUS Setup
(setq gnus-select-method '(nnspool ""))
(setq gnus-local-domain "running-dog.net")
(setq gnus-local-organization "Personal(from Personal Domail)")
(setq gnus-user-local-name "takachan")
(setq gnus-user-full-name "Takano Yuji")

;  host名をつけない
(setq gnus-use-generic-from t)

(setq gnus-use-genelic-form t)
(setq gnus-mail-yank-prefix "> ")
(setq tm-tar/tar-program "tar")
----------------
 送信ですが、GNUS のオペレーション通りに行います。a とか、 f とかですね。知っていますよね?ここでは GNUS のオペレーションに付いては書かないです。

 書き込みが終って C-cC-c すると mule 上の送信が終ります。その後、次回の gnspool 起動時に当該の NG に対し送信を行ってくれます。めでたしめでたし(^^)。この辺りは確認の意味をこめで十分にテストして下さいね。fj.test とか、接続先のプロバイダに対するテストは重要です。早く fj.test に自分のが来ないかな。等と毎日が楽しみになります。ふふふ(^^)。

 ではでは。頑張って NetNews にはまりましょう(^^)。

 と、言いつつも、読み続けていると解ると思いますが、ポストされた記事の Subject: が日本語表示されている場合と、ISO-2022-JP と表示される場合の二通りが有ります。日本語が正しく表示されるのは「生 JIS」の場合、MIME encode された場合表示出来ないです。
 では、早速対応しましょう。まずは、「たいにぃまいむ」と言うのを手に入れる事にしましょう。  →  tm-7.106.tar.gz

----------------
roman# tar xvzfp tm-7.106.tar.gz
roman# cd tm-7.106/tm
roman# make install EMACS=mule
roman#
----------------
これでインストールは簡単です。早く終っていがっだなっす;-)。さて、.emacs に以下の一行を加えて mule を再起動して早速読んで見ようっ!!ふっふっふっ。書いて見ようっ!!ふっふっふっ。
----------------
 (load-library "mime-setup")
----------------
 最後にですが、gn-1.36.tar.gz に含まれているdocs.jp/gnspool/gnus と言うドキュメントを添付しておきます。御覧下さい。


Copyright (c) 1997-2004 takachan@running-dog.net All Rights Reserved.