2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

Navi2ch for Emacs (Part 11)

1 :名無しさん@お腹いっぱい。:03/10/04 14:46
Emacsen で動く 2ch 用ブラウザ、Navi2ch スレッド Part 11 です。

* Navi2ch Project Home Page
http://navi2ch.sourceforge.net/

* よくある質問とその答え
http://navi2ch.sourceforge.net/doc/navi2ch/FAQ.html

* 前スレ Navi2ch for Emacs (Part 10)
http://pc.2ch.net/test/read.cgi/unix/1054769287/

* テストは以下で。このスレでテストするのはやめてちょ。
運用情報板 http://qb.2ch.net/operate/ の書き込みテストスレ
navi2chテスト板 http://jbbs.shitaraba.com/computer/2452/

過去スレなどは >>2-10 あたり。

2 :名無しさん@お腹いっぱい。:03/10/04 14:47
過去スレッド
http://pc.2ch.net/test/read.cgi/unix/1054769287/ Part 10
http://pc.2ch.net/test/read.cgi/unix/1046402063/ Part 9
http://pc.2ch.net/test/read.cgi/unix/1039935998/ Part 8
http://pc.2ch.net/unix/kako/1031/10312/1031231315.html Part 7
http://pc.2ch.net/unix/kako/1023/10238/1023884490.html Part 6
http://pc.2ch.net/unix/kako/1013/10134/1013457056.html Part 5
http://pc.2ch.net/unix/kako/1009/10093/1009340234.html Part 4
http://pc.2ch.net/unix/kako/999/999166513.html Part 3
http://pc.2ch.net/unix/kako/996/996244120.html Part 2
http://cocoa.2ch.net/unix/kako/976/976032951.html Part 1

過去スレッドは SourceForge にも保存されています。
以下の3行を ~/.navi2ch/etc.txt に追加すれば navi2ch で読めます。

navi2ch
http://navi2ch.sourceforge.net/log/
navi2ch

3 :名無しさん@お腹いっぱい。:03/10/04 14:48
* 読めない、書けない、とにかく変です
-> 2ちゃんねるは日々変化し増築されています。
あなたの問題はきっと他の誰かにも起こっています。
つーか過去ログ読め。>>1 の FAQ 読め。
不具合報告のときは問題が起きている板・スレの URL を忘れずに。
下記も参照。
http://www.jpl.org/elips/BUGS-ja.html

* ある板がまるごと見えなくなりました
-> 板の移転かもしれません。
この場合、移転に追従した bbsmenu を navi2ch に読ませる必要があります。
http://navi2ch.sourceforge.net/doc/navi2ch/Board-Questions.html

* moved と出てスレが読めません。
-> 特定のスレだけ読めないなら、dat 落ちして html 化を待っているスレです。
オイスター作戦 (http://2ch.tora3.net/) の ID を購入すれば読めるようになります。
板のどのスレも読めないならこちら。
http://navi2ch.sourceforge.net/doc/navi2ch/Can-not-Read.html

4 :名無しさん@お腹いっぱい。:03/10/04 14:48
* 書き込み時に
「もうちょっと落ち着いて書きこみしてください。」って怒られちゃう。
-> navi2ch 1.7 以上にアップデートしましょう。

* 他所の 2ch 型 BBS は読めないのですか?
-> まち BBS や JBBS@したらば はわりと読めます。
他は読めたり読めなかったり。

* commit したのが CVS に入ってないよ
-> pserver や ViewCVS だと 24 時間程度遅れるそうです。
http://sourceforge.net/docman/display_doc.php?docid=17790&group_id=1#cvs

* remote cvs が使えない環境なのですが
-> snapshot が置いてあります。
http://navi2ch.sourceforge.net/snapshot/
-> cvsroot を固めたものがあります。
http://cvs.sourceforge.net/cvstarballs/navi2ch-cvsroot.tar.bz2

5 :名無しさん@お腹いっぱい。:03/10/04 14:49
* スレ立てについて
980 を越えたくらいで立てられる方が次スレを立ててください。
テンプレは http://navi2ch.sf.net/template.txt にあります。
状況に詳しい人が立てられるとは限らないので、900 を越えたあたりで
上記テンプレが現状に合っているかどうかの確認をお願いします。
立った後で文句を言うのはやめてね。

6 :名無しさん@お腹いっぱい。:03/10/04 15:02
C-oで.datを保存してそれを後で見るにはどうしたら良いのでしょうか?


7 :名無しさん@お腹いっぱい。:03/10/04 15:14
>>6
C-c C-f

8 :名無しさん@お腹いっぱい。:03/10/04 16:57
>7 有難う御座います

使い込むほどに鯵な椰子 Navi2ch マンセ


9 :名無しさん@お腹いっぱい。:03/10/06 02:46
sage

10 :名無しさん@お腹いっぱい。:03/10/06 02:48
ny の bbs 対応まだ〜?

11 :名無しさん@お腹いっぱい。:03/10/06 03:05
( ´д)ヒソ(´д`)ヒソ(д` ) >>10

12 :名無しさん@お腹いっぱい。:03/10/06 18:59
sf.net って、anonymous CVS の更新が止まってるのね……。


13 :名無しさん@お腹いっぱい。:03/10/06 19:07
list画面で板のブックマークを表示させることは出来ませんか?
今はbを押して切りかえているんですが、[その他]のように
カテゴリをつくって表示させることがしたいです。
[-]ブックマーク
 Linux
 UNIX
 Mona
 Hobby
 Comics
 Adalt
 Kako
[-]その他
 navi2ch
[-]リンク(←list画面で「b」 で出てくる板の一覧)
 ニュース速報+
 Linux
 UNIX
 …
みたいになれば……と思っています。

14 :mami:03/10/06 19:13
>>12
なかなか更新されないですね。
https://sourceforge.net/tracker/?func=detail&aid=815579&group_id=1&atid=200001
が同じ現象っぽいんでヲチしてるんですが
進展がないです。

15 :名無しさん@お腹いっぱい。:03/10/06 23:04
すいません質問させてください。
現状winXP-home+meadow+navi2ch(cvs-20031005)を使用していますが
特定の板でスレ一覧が更新されません。
Error: Opening output file: no such file or directory, c:/DOCUME~1/棯楷/LOCALS~1/Temp/ema00524not updated
こういうメッセージが出ます。生活板なのですが、最前まで1.7.1を使っていたのが悪かったのかと思い
CVS版を使ってバイトコンパイルしてみましたが結果は同じでした。
ほかのよく見る板では半島情勢+、SF、モバイル、UNIX 、ぃぬxなどで起こります。
回避方法を教えていただければ幸いですが、あそこに書いてあった等の教唆で結構ですので
何か教えていただけると助かります。
書き込むとあほほど文字化けするのはmeadowのスレでも探して聞くことにします。
ぃぬxほど簡単じゃないので結構めげそうですが。

16 :mami:03/10/06 23:13
>>15

>>3
> 不具合報告のときは問題が起きている板・スレの URL を忘れずに。
> 下記も参照。
> http://www.jpl.org/elips/BUGS-ja.html

17 :mami:03/10/06 23:18
>>15
> 最前まで1.7.1を使っていたのが悪かったのかと思い
> CVS版を使ってバイトコンパイルしてみましたが
今だと 1.7.1 と CVS 版はあんまり違いはないです。
>>12 >>14 な状態なので
anonymous CVS よりは 1.7.1 の方が新しかったりします。

18 :名無しさん@お腹いっぱい。:03/10/06 23:30
> c:/DOCUME~1/棯楷/
この辺が臭い。
日本語をユーザ名に使うと無用なトラブルにひっかかる率が格段に増加します。


19 :名無しさん@お腹いっぱい。:03/10/06 23:41
>>18
規定とかいうやつなのです。
しかしこれはnavi2chの問題と言うより
meadow+navi2chつーぷらとんの問題のようですね。
つっか、この入力システム激しく使い辛いですね。

20 :名無しさん@お腹いっぱい。:03/10/07 00:28
どの入力システム?

21 :名無しさん@お腹いっぱい。:03/10/07 01:32
自分の環境等を伝える努力を惜しみ、
「ぃぬx」とか「ぷらとん」みたいな語を使う。こりゃ酷いな。

22 :名無しさん@お腹いっぱい。:03/10/07 01:44
「つーぷらとん」でひとつの単語のような

23 :名無しさん@お腹いっぱい。:03/10/07 01:47
「というプラットフォーム」かな〜と想像してみたんだけど。

24 :mami:03/10/07 01:48
>>19
まずは >>16 を参考に
backtrace を取っていただけませんか?

25 :名無しさん@お腹いっぱい。:03/10/07 02:28
もう原因と解決方法は出てる。

原因: gzip を使用する必要のある板で、TEMP ディレクトリに日本語が入ってると
call-process-region でエラー発生。

解決方法: 名前に日本語を含まないユーザーを作成するなどの方法で TEMP
ディレクトリを英数字のみにする。


26 :名無しさん@お腹いっぱい。:03/10/07 02:30
>>25
それは原因ではなくて、症状なのでは?
原因なら、gzip のマルチバイト処理がダメポってことだろ。


27 :mami:03/10/07 02:35
>>25
http://navi2ch.sourceforge.net/doc/navi2ch/Misc-Questions.html#Misc%20Questions
の5番目と同じような問題でしょうか。
Windows 環境の事情はよく知らないので、
どなたか doc/navi2ch.texi の修正案を書いていただけませんか?
;; もちろん committer の方は
;; 直接書き換えていただいてかまいません。

28 :名無しさん@お腹いっぱい。:03/10/07 02:36
>>25
有難う御座います。それで解決できるかやってみます。

>>21
ツープラトンって言葉知りませんか?
大体meadowで日本語入力する方法がまだよくわかってないもので。
その片仮名が出なかった。
で、環境は書いてますが、それ以上何か必要でしょうか。


29 :名無しさん@お腹いっぱい。:03/10/07 03:12
そりゃ「ツープラトン」なんて見たことも聞いたこともない人のほうが
多いだろうよ。

30 :名無しさん@お腹いっぱい。:03/10/07 03:19
>>25
> 原因: gzip を使用する必要のある板で、TEMP ディレクトリに日本語が入ってると
> call-process-region でエラー発生。

これは、TMPDIR のほうが良いのでは?

31 :名無しさん@お腹いっぱい。:03/10/07 04:56
>>26
> 原因なら、gzip のマルチバイト処理がダメポってことだろ。
gzip はマルチバイトのファイル名を扱えるよ。
>>25 が症状とするなら、Emacs では環境変数にマルチバイト文字が入る事は
考慮されてないってのが原因。

>>27
てことで違う問題。ただ、ユーザー名に日本語使うなってのは Windows の
FAQ なんで Navi2ch の FAQ には入れなくていいと思う。

>>30
Windows では環境変数 TEMP が標準で設定され、Meadow では環境変数 TEMP が
最優先。TMPDIR は実質無視されるので、書くとかえって混乱しない?

32 :名無しさん@お腹いっぱい。:03/10/07 05:48
>>31
> Windows では環境変数 TEMP が標準で設定され、Meadow では環境変数 TEMP が
> 最優先。TMPDIR は実質無視されるので、書くとかえって混乱しない?

知りませんでした。

33 :名無しさん@お腹いっぱい。:03/10/07 07:16
プロレスおたくしか知らないんじゃない? > ツープラトン
二人でやる連携プレーのこと

34 : :03/10/07 09:04
anon CVS更新された


35 :名無しさん@お腹いっぱい。:03/10/07 13:43
>>34
わ〜い!!

36 :15.19:03/10/07 19:36
皆様、有り難うございました。
ユーザアカウントを作り直して、完全に動くようになりました。
同時にバージョンも1.7.1に置き換えました。
極楽でございます。皆様どうも有り難う。多謝!

37 :名無しさん@お腹いっぱい。:03/10/07 22:31
ウザイ香具師をあぼーんするときに
hideだと隠されるだけで
リプレイスだと「あぼぼーん」等に置き換えられるわけですが

これらを複合することはできませんか?

あぼぼーんに置換して、あまりに数が増えた場合は
あぼぼーんをhideしたいなぁ と思ったもので。

単純にhideすると、h押すと見えちゃうし。

38 :名無しさん@お腹いっぱい。:03/10/07 22:57
http://www.geocities.co.jp/SiliconValley-PaloAlto/7043/
ここのベイジアンフィルタをnavi2chで試してみた。
わりとまともに広告を検出できるかも。おもしろい。

39 :名無しさん@お腹いっぱい。:03/10/07 23:06
おーじっそうしてして。

40 :名無しさん@お腹いっぱい。:03/10/07 23:18
激しく期待sage

41 :名無しさん@お腹いっぱい。:03/10/07 23:23
>>38-40
うざいAAにも効けばうれすい

42 :名無しさん@お腹いっぱい。:03/10/07 23:26
nをオーバーライドしてまともな書き込みの例として学習、
dをオーバーライドしてスパムな書き込みの例として学習、

するようにした上で、
navi2ch-article-message-filter-by-bayesian関数書いた。
でも期待するほどじゃないかもよ、というのもさっき書いたばかりで
コーパスが鍛えられてないから、効果がまだよくわからない。


43 :名無しさん@お腹いっぱい。:03/10/07 23:34
>>42 すげー。関数名読んだだけでよだれダーラダラ。

44 :名無しさん@お腹いっぱい。:03/10/08 00:04
>>42
実現すれば初の bayesian 2ch ブラウザっすね。

45 :名無しさん@お腹いっぱい。:03/10/08 00:58
http://www.geocities.co.jp/SiliconValley-PaloAlto/7043/
のspamfilter.elをインストールしてから、以下のコードをevalして
みてください。

(defun spamf-register-token (corpus token)
(spamf-increase-word-count corpus (spamf-intern token))
(incf (spamf-corpus-message-count corpus)))

(defun spamf-register-good-token (token)
(interactive "MToken: ")
(spamf-register-token spamf-good-corpus token))

(defun spamf-register-spam-token (token)
(interactive "MToken: ")
(spamf-register-token spamf-good-corpus token))

(define-key navi2ch-article-mode-map "n" 'navi2ch-article-next-message-hack)
(define-key navi2ch-article-mode-map "d" 'navi2ch-article-hide-message-hack)
(define-key navi2ch-article-hide-mode-map "d" 'navi2ch-article-cancel-hide-message-hack)

(defun navi2ch-article-next-message-hack ()
(interactive)
(navi2ch-article-add-message-filter-by-bayesian-good)
(navi2ch-article-next-message))

(defun navi2ch-article-hide-message-hack ()
(interactive)
(navi2ch-article-add-message-filter-by-bayesian-spam)
(navi2ch-article-hide-message))


46 :名無しさん@お腹いっぱい。:03/10/08 00:58
(defun navi2ch-article-cancel-hide-message-hack (&optional prefix)
(interactive "P")
(navi2ch-article-add-message-filter-by-bayesian-good)
(navi2ch-article-cancel-hide-message prefix))

(defun navi2ch-article-bayesian-tokenizer (alist)
(nconc
(funcall spamf-tokenize-string-function
(cdr (assq 'data alist)))
(list
(concat "mail:" (cdr (assq 'mail alist)))
(concat "name:" (cdr (assq 'name alist))))))

(defun navi2ch-article-bayesian-register-current-message (func)
(mapcar func
(navi2ch-article-bayesian-tokenizer
(navi2ch-article-get-message
(navi2ch-article-get-current-number)))))

(defun navi2ch-article-add-message-filter-by-bayesian-good ()
(navi2ch-article-bayesian-register-current-message 'spamf-register-good-token))

(defun navi2ch-article-add-message-filter-by-bayesian-spam ()
(navi2ch-article-bayesian-register-current-message 'spamf-register-spam-token))


47 :名無しさん@お腹いっぱい。:03/10/08 01:00
(defun navi2ch-article-message-filter-by-bayesian (alist)
(when (> (spamf-sum-spam-probability
(mapcar #'cdr (spamf-cutoff-words
(nconc
(funcall spamf-tokenize-string-function (cdr (assq 'data alist)))
(list
(concat "mail:" (cdr (assq 'mail alist)))
(concat "name:" (cdr (assq 'name alist)))))
spamf-cutoff-words-limit)))
spamf-spamness-limit)
'hide))

(add-to-list 'navi2ch-article-message-filter-list
'navi2ch-article-message-filter-by-bayesian)

(defvar navi2ch-article-bayesian-save-file-name "~/.navi2ch/spamfilter")
(add-hook 'navi2ch-exit-hook
(lambda () (spamf-save-corpus navi2ch-article-bayesian-save-file-name)))
(add-hook 'navi2ch-hook
(lambda () (spamf-load-corpus navi2ch-article-bayesian-save-file-name)))


48 :名無しさん@お腹いっぱい。:03/10/08 01:54
*-hack って結構メジャーな命名なんかな?

49 :名無しさん@お腹いっぱい。:03/10/08 02:08
hook 追加しときました。pserver 更新されたら
(add-hook 'navi2ch-article-next-message-hook
'navi2ch-article-add-message-filter-by-bayesian-good)
(add-hook 'navi2ch-article-hide-message-hook
'navi2ch-article-add-message-filter-by-bayesian-spam)
(add-hook 'navi2ch-article-cancel-hide-message-hook
'navi2ch-article-add-message-filter-by-bayesian-good)
こんな感じでいけます。

ところで、n で学習だと good に寄りすぎな感じですね。
navi2ch-article-message-filter-by-bayesian で good なら good として
bad なら bad として再学習させてやる (bogofilter -u 方式) というのは
どうでしょうか。

50 :名無しさん@お腹いっぱい。:03/10/08 05:06
> (defun spamf-register-spam-token (token)
> (interactive "MToken: ")
× (spamf-register-token spamf-good-corpus token))
○ (spamf-register-token spamf-bad-corpus token))
だよね。

>>49
フィードバック付きフィルタ
(defvar navi2ch-article-auto-spam-register-by-filter t)
(defun navi2ch-article-message-filter-by-bayesian (alist)
(let ((token (navi2ch-article-bayesian-tokenizer alist)))
(if (> (spamf-sum-spam-probability
(mapcar #'cdr (spamf-cutoff-words
token
spamf-cutoff-words-limit)))
spamf-spamness-limit)
(progn
(if navi2ch-article-auto-spam-register-by-filter
(mapcar #'spamf-register-spam-token token))
'hide)
(if navi2ch-article-auto-spam-register-by-filter
(mapcar #'spamf-register-good-token token))
nil)))

久々の大ヒット。快適杉。

51 :38:03/10/08 08:19
2ゲットみたいなのをうまく評価するために
レス番も含めたほうがよさげ。

(defun navi2ch-article-bayesian-tokenizer (alist)
(nconc
(funcall spamf-tokenize-string-function
(cdr (assq 'data alist)))
(list
(concat "num:" (number-to-string (navi2ch-article-get-current-number)))
(concat "mail:" (cdr (assq 'mail alist)))
(concat "name:" (cdr (assq 'name alist))))))

navi2ch-article-get-messageはレス番を返さない
みたいなので、感じとしてはこうです。

52 :38:03/10/08 08:29
ごめんなさい。レス番がついてくることもある
ようなので、こうしてます。

(concat "num:" (number-to-string (or (cdr (assq 'number alist))
(navi2ch-article-get-current-number))))


53 :名無しさん@お腹いっぱい。:03/10/08 09:14
まとめてみました。
http://navi2ch.sourceforge.net/navi2ch-spamfilter.el

>>51-52
それだと特定の番号のレスの評価を上げ下げしてるだけってことになりませんか?
ベイジアンフィルタでは単語間の関連は評価しないんじゃなかったかと。

54 :38:03/10/08 10:01
単語間の確率を独立と仮定してるのは簡易化のためですよね。

スレの頭に出てくるAAとか乙は消すけど、
途中で出てくるAAは(同じものでも)見たいので、
それなりに妥当なんじゃないかと思うんですが。

レス番とspam確率が独立なら、全てのレス番にニュートラルな
結果になって、副作用はなさそうですし。

55 :名無しさん@お腹いっぱい。:03/10/08 12:20
実は統計的に意味があるかも知れませんし、入れておくのも面白いかも
しれませんね。(55 は大抵ゴミとか)

時々 probability が負になるので何か変だと思ったら。。。
--- spamfilter.el.orig Mon Jun 23 10:16:34 2003
+++ spamfilter.el Wed Oct 8 12:14:34 2003
@@ -258,7 +258,7 @@
See http://www.paulgraham.com/spam.html
See http://www.paulgraham.com/better.html"
(let ((px (float (apply #'* probs)))
- (qy (float (apply #'* (mapcar #'1- probs)))))
+ (qy (float (apply #'* (mapcar (lambda (x) (- 1 x)) probs)))))
(/ px (+ px qy))))

(defun spamf-cutoff-words (words n)


56 :38:03/10/08 21:42
ベイジアンフィルタを積極的に使ってみました。

・山崎渉(^^)が消えた
・URL一行広告の出現頻度の高いものが消えた
・一部の大きいAAも消えた

簡単なわりにはかなりよく動いてる印象ですけど、
誤認識もありますね。特に">>80 >>100"のような一行レスとか、
スパムが使ってるのと同じAAで文字部分だけ違うもの
(かおりんの頭部がポカーンと言ってるようなやつ)
とか、いくつか間違って消されてしまいました。

いまのtokenizerはexample.comを"example" "com"として
切り出してるんですが、これは一単語として切り出したほうが
よさそう。

ほかの人の使用感はどうですかねー?

57 :名無しさん@お腹いっぱい。:03/10/08 22:15
>>56
ありがたく使わせてもらってます。まだ効果を実感するところまではいってま
せん。

ところで現状の機能ですが、今迄のフィルタ(n-a-m-filter-by-name とか)で
自動的に hide されるレスは bad-corpus には登録されないですよね? >>49
の設定すると登録されるのかな?

58 :名無しさん@お腹いっぱい。:03/10/08 22:45
>>56
>>55 のパッチは当ててますよね。
語数が少ない場合(2chでは多い)、変な数値が出るとピーキーに反応する感じです。
> ・山崎渉(^^)が消えた
というレスが単純マッチと違って消えないのがいいですね。コーパスを覗くと
「^」x2 のスコアがやたら悪いのには笑いました。
> 誤認識もありますね。特に">>80 >>100"のような一行レスとか、
(funcall spamf-tokenize-string-function ">>80 >>100")
=> nil
なんですよ。
> いまのtokenizerはexample.comを"example" "com"として
> 切り出してるんですが、これは一単語として切り出したほうが
> よさそう。
のこともあるし、tokenizer に手を入れた方がいいかもしれませんね。
AA の誤認を防止するには bigram より block を元にした方がよさそう。

>>57
> >>49 の設定すると登録されるのかな?
これやっかいです。他のフィルタとは無関係に、good と判断したら
goo-corpus に、bad と判断したら bad-corpus に登録します。
hide マークついちゃうと、どのフィルタが判断したのかわからなく
なってしまうので、対策取るまではマゼルナキケンです。


59 :57:03/10/08 23:13
>>58
> なってしまうので、対策取るまではマゼルナキケンです。
むむ、っつーことは当面は >>49 の設定はしないほうがいいってことですかね。
了解です。

60 :名無しさん@お腹いっぱい。:03/10/08 23:37
ナイス。わざわざ荒れてそうなスレに行って学習させてるところです(w

漏れは navi2ch-directory いじってるので

- (defvar navi2ch-article-bayesian-save-file-name "~/.navi2ch/spamfilter")
+ (defvar navi2ch-article-bayesian-save-file-name
+ (expand-file-name "spamfilter" navi2ch-directory)

キボンヌ。

61 :名無しさん@お腹いっぱい。:03/10/09 00:27
混ぜても平気になりました。
既存の filter 処理が終った段階で bad と good を学習しなおします。
http://navi2ch.sourceforge.net/navi2ch-spamfilter.el


62 :名無しさん@お腹いっぱい。:03/10/09 15:23
>>61
spamfilter.el を書いた者です。navi2ch をいつも使わせてもらってます、早
速試してみたいと思います。とりあえずいくつかコメントです。

(defsubst navi2ch-spamf-register-token (corpus token)
(spamf-increase-word-count corpus (spamf-intern token))
(incf (spamf-corpus-message-count corpus)))

message-count はトークンの数ではなく、メッセージ(2ch の場合はレス)の数
です。そのほうが誤検出を避ける方向にバイアスが働くらしいです。
http://www.shiro.dreamhost.com/scheme/trans/spam-j.html

>>58
メールに比べて 2ch のレスはかなり短いので spamf-cutoff-words-limit を
小さくしてみると精度が上るかもしれません。また、極端に短いメッセージは
ベイジアンフィルタでは判定できないので、除外したほうがよいと思います。

>>55
すみません直しておきます。

63 :62:03/10/09 15:28
すみません、間違えて age てしまった。

>>56
以下のように URL に使われる文字を追加すれば URL を単語として扱えますが、
精度があがるかどうかはしばらく試してみたほうがよいと思います。

(defun jtoken-alnum-p (char)
(and (< char 127)
(or (and (<= ?a char) (<= char ?z))
(and (<= ?0 char) (<= char ?9))
(and (<= ?A char) (<= char ?Z))
(memq char '(?- ?' ?$ ?!))
(memq char '(?: ?/ ?.))))) ; ココ

(jtoken-bigram-tokenize-string "http://www.example.com/foo.html")
=> ("http://www.example.com/foo.html")

64 :名無しさん@お腹いっぱい。:03/10/09 15:44
list modeでブックマークのカテゴリでいいのかな? のソートって出来ないですよね
bookmark2.txt弄った方が早いですか?


65 :名無しさん@お腹いっぱい。:03/10/09 15:49
↑OKです もういいです


66 :名無しさん@お腹いっぱい。:03/10/09 17:24
今までそういうものと思って気にもしていませんでしたが
navi2ch-spamfilterつかって、2chがここまで読みやすくなるとは
感激です。感謝sage

67 :名無しさん@お腹いっぱい。:03/10/09 20:30
navi2ch-spamfilter使わせてもらってます。

新スレ取得すると(既存スレのC-u Fでもいいけど)、
spamfilterナシ時の10倍くらい時間がかかるようになりますた。
(navi2ch CVS先端/Meadow 1.14)

1000レスあれば、メール1000件振り分けるのと同じくらいコストが
かかるんだから仕方がないっちゃ仕方ないですかね。

68 :名無しさん@お腹いっぱい。:03/10/09 22:00
>>62
> message-count はトークンの数ではなく、メッセージ(2ch の場合はレス)の数
> です。そのほうが誤検出を避ける方向にバイアスが働くらしいです。
つまり、トークン毎ではなく、メッセージ毎に増加させるってことですね。
こんな感じでいいのでしょうか。
(defsubst navi2ch-spamf-register-token-list (corpus list)
(dolist (token list)
(spamf-increase-word-count corpus (spamf-intern token)))
(incf (spamf-corpus-message-count corpus)))

(defsubst navi2ch-spamf-register-good-token-list (list)
(navi2ch-spamf-register-token-list spamf-good-corpus list))

(defsubst navi2ch-spamf-register-spam-token-list (list)
(navi2ch-spamf-register-token-list spamf-bad-corpus list))

>>63
Emacs 20 だと hash 系関数が Emacs Lisp 製だから余計に遅く感じるのかも。
Emacs 21 や XEmacs だと built-in なので、少しはましです。
navi2ch-article-auto-spam-register-by-filter で学習させてるうちは
誤判定を見逃すと間違って登録されてしまうので、
navi2ch-article-\(new-\)?message-range (速い CPU を使ってると nil にしがち)
を調整して一度に処理するレスの数を制限してやった方がいいと思います。


69 :38:03/10/09 23:24
>>50
フィードバックは初めはオフにしたほうがいいですよね。
ほとんど学習してない状態を反影させるのはよくなさそうなので。

>>62
作者さんがnavi2chユーザなのにはびっくり。elispな実装がなければ
navi2chに組み合わせてみようとはしませんでしたよ。感謝してます。

spamf-corpus-message-countはそういう意味だったんですか。
極端に短いメッセージというのは数文字くらいでしょうか。
一行広告があるのでそういうのはなんとかしたいところ。


これからアルゴリズムやtokenizerに手が加わりそうなので、
"n"でimportantマークを付けるようにしてみました。
importantをgood、hideをbadとして後で再学習できるように。

(defadvice navi2ch-article-next-message
(before navi2ch-article-next-message-as-good activate)
(navi2ch-article-add-important-message)
(navi2ch-article-add-message-filter-by-bayesian-good))


70 :名無しさん@お腹いっぱい。:03/10/10 00:14
spamfilterのコーパス空間って一つしか持てないのかな?
wanderlustとnavi2ch、両方同じemacsのプロセス(別フレーム)で使うと
コーパスが混ざった上に、下手すると過去の学習が飛んでしまうので
ちょいと不便。分離できるならしたいなあ。
(wl上げる→wlで学習させずにnavi2ch使う
→navi2chコーパス保存→wl結局使わず終了、とか)

71 :62:03/10/10 00:38
>>68
そうです。そんな感じで OK だと思います。

>>67
byte-compile-file はしてますよね? 結構マクロを使っているので、コンパ
イルしたほうが 2 倍以上速くなります。
spamfilter.el, japanese-tokenizer.el にはもうちょっと高速化の余地があ
るので、インライン化などを検討してみたいと思います。

>>69
navi2ch に組みこんだら面白いかなと前々から思っていたところなのでありが
たいです。

極端に短いメッセージとは、URL だけの一行メッセージを想定していました。
短いメッセージはどうしても「見逃し」が多くなってしまうのはある程度仕方
がないです。もっと精度を上げるには、メッセージ本文だけでなく URL を辿っ
てサイトの内容をベイジアンフィルタにかける必要があるようです。
http://www.shiro.dreamhost.com/scheme/trans/ffb-j.html

72 :名無しさん@お腹いっぱい。:03/10/10 00:39
http://navi2ch.sourceforge.net/navi2ch-spamfilter.el 更新。
頭に使い方を書いてみました。まだ試行錯誤中なので、もっといいやり方が
あったら教えてください。

>>69
> importantをgood、hideをbadとして後で再学習できるように。
もできるようにしました。

ところで 38 さん、もしよろしければ navi2ch/contrib に入れたいんですが、
いかがでしょうか。

73 :62:03/10/10 00:50
>>70
あ、ウチと同じ状況です、コーパス混ざってました。対応したいと思います。

74 :名無しさん@お腹いっぱい。:03/10/10 01:21
(provide 'navi2ch-spamfilter)
を追加して使い方を~/.navi2ch/init.elで
(require 'navi2ch-spamfilter)
にしてほしいです。

75 :名無しさん@お腹いっぱい。:03/10/11 00:26
navi2ch-save-status にキーを割り当てていただけませんか?
list, board, bookmark, article の C-x C-s で save できると嬉しいです。


76 :名無しさん@お腹いっぱい。:03/10/11 00:35
http://navi2ch.sourceforge.net/navi2ch-spamfilter.el 更新。
* 初期コーパスを学習させる過程でフィルタが効いてると副作用が大きいので
 デフォルトでは無効にしました。有効にするには (navi2ch-spamf-enable)
 を評価してださい。
* 日付も評価対象にしました。荒らしと同じ日に書くとスコアが下がります。
* レスで C-u C-c C-s すると楽しい。

入れたり出したりしつつ C-u C-c C-s してて思った事
http://www.shiro.dreamhost.com/scheme/trans/spam-j.html
> だが彼らは、何であれメッセージを届けなければならない。
2ch の荒らしは場そのものの破壊が目的であり、メッセージの伝達が目的では
ない。これにより、Bayesian フィルタの有効性は spam 対策ほどではない。
特に苦手な荒らしはレスをランダムにコピペする攻撃。これは
> メイルを受け取った人にとって、spamを識別するのはたやすい。
これすら難しい。全ての板の全てのスレの内容をデータベースとして持ち、重
複チェックをしないとこの攻撃はふせげないんじゃないだろうか。


77 :名無しさん@お腹いっぱい。:03/10/11 00:36
>>75
save-buffer をつぶすのはあんまりだと思う。
navi2ch-find-file が C-c C-f なんで
navi2ch-save-status は C-c C-s なんてどう?
……と思ったら spamfilter の navi2ch-article-show-spam-probability とかぶるのか。

まあ個人的にやりなさいってこった。

78 :名無しさん@お腹いっぱい。:03/10/11 00:57
C-c S はどうでしょうか?

79 :名無しさん@お腹いっぱい。:03/10/11 01:06
C-c S はユーザー向けに予約されてます。自分でバインドしましょう。

80 :62:03/10/11 01:12
>>76
消し忘れ?
--- navi2ch-spamfilter.el~ Sat Oct 11 01:02:15 2003
+++ navi2ch-spamfilter.el Sat Oct 11 01:10:04 2003
@@ -59,8 +59,7 @@
'navi2ch-article-show-spam-probability))

(defsubst navi2ch-spamf-register-token (corpus token)
- (spamf-increase-word-count corpus (spamf-intern token))
- (incf (spamf-corpus-message-count corpus)))
+ (spamf-increase-word-count corpus (spamf-intern token)))

(defsubst navi2ch-spamf-register-good-token (token)
(interactive "MToken: ")



81 :名無しさん@お腹いっぱい。:03/10/11 01:23
>>75
(define-key navi2ch-global-map "\C-x\C-s" 'navi2ch-save-status)

>>77
> save-buffer をつぶすのはあんまりだと思う。
そうかな。
特に使わないような。
wl もつぶしてるよね。

82 :名無しさん@お腹いっぱい。:03/10/11 01:34
history でうっかり d してしまったのを
undoってできないでしょうか?

83 :名無しさん@お腹いっぱい。:03/10/11 02:15
>>80
上 3 つの関数はすでにそれだけで孤立してるんですが、interactive なので
残してます。で、手動でトークンを登録した場合、それを単独のメッセージの
登録であると見なすべきかどうかの判断をしたくなかったので、そこの incf
は元のままにしてます。(つまり手抜きです。)
まぎらわしいのであれば上 3 つの関数は消した方がいいですかね。

84 :名無しさん@お腹いっぱい。:03/10/11 02:16
>>81
> > save-buffer をつぶすのはあんまりだと思う。
> そうかな。
> 特に使わないような。

使ってもせいぜい message mode だけと思われ。


> wl もつぶしてるよね。

yes


85 :名無しさん@お腹いっぱい。:03/10/11 02:33
特に副作用はなさそうなので navi2ch-global-view-map でバインドして
commit しました。
;; pserver への反映はしばらくかかりそうですが。。。

86 :名無しさん@お腹いっぱい。:03/10/11 04:04
>>85
> ;; pserver への反映はしばらくかかりそうですが。。。

スナップショットに反映することは可能ですか?

87 :名無しさん@お腹いっぱい。:03/10/11 04:06
>>86
knok タン と (;´Д`)ハァハァ すれば可能です。

88 :名無しさん@お腹いっぱい。:03/10/11 04:13
>>86
うーん、理解してますか?

89 :38:03/10/11 18:41
>>72
> ところで 38 さん、もしよろしければ navi2ch/contrib に入れたいんですが、
> いかがでしょうか。

どうぞ。ていうかnavi2ch-logo.elとかを書いたのはぼくなので
自分でやるべきなんですがお手数かけてすみません。
最近UNIXは会社でしか使ってなくてWindowsでcvs使うには
どうしたらいいんだろう、という状態なもんで……。
navi2chもひさしぶりです。

90 :名無しさん@お腹いっぱい。:03/10/11 18:48
>>89
Cygwin 入れると UNIX っぽい環境が手に入りますよ。

91 :名無しさん@お腹いっぱい。:03/10/11 18:56
>>89
> 最近UNIXは会社でしか使ってなくてWindowsでcvs使うには
> どうしたらいいんだろう、という状態なもんで……。

ftp.m17n.org/pub/mule/Windows 以下を漁れば出てきます.

92 :名無しさん@お腹いっぱい。:03/10/11 20:57
cygwinにcvs入ってる

93 :名無しさん@お腹いっぱい。:03/10/12 00:09
>>91 だと exe ファイルだけひろってくればよろしい.


94 :名無しさん@お腹いっぱい。:03/10/12 17:47
>>70 の対策をしてみました。
http://navi2ch.sourceforge.net/navi2ch-spamfilter.el
にも置いておきます。

95 :62:03/10/12 20:00
>>94
ちょうどこちらでも同じ対策をしてました、かぶってしまいました。

spamfilter.el を 0.10 にアップデートしました。複数コーパスに対応しました。
http://www.geocities.co.jp/SiliconValley-PaloAlto/7043/#spamfilter.el

spamfilter-0.10 用の navi2ch-spamfilter.el を以下に置いておきます。よ
ろしければ取り込んでください。
http://www.geocities.co.jp/SiliconValley-PaloAlto/7043/navi2ch-spamfilter.el.txt
2003/10/12 19:19 の navi2ch-spamfilter.el に対するパッチはこちら。
http://www.geocities.co.jp/SiliconValley-PaloAlto/7043/navi2ch-spamfilter.el.patch.200310121919.txt

spamfilter-0.10 からコーパスファイルのフォーマットをちょっと変更したの
で 0.10 をインストールする前に変換スクリプトを実行してください。

% cp -p ~/.navi2ch/spamfilter ~/.navi2ch/spamfilter.org
% perl convert_corpus_0.9_to_0.10.pl -navi2ch ~/.navi2ch/spamfilter > ~/.navi2ch/spamfilter.new
% mv ~/.navi2ch/spamfilter.new ~/.navi2ch/spamfilter

96 :名無しさん@お腹いっぱい。:03/10/12 21:38
(defvar navi2ch-message-font-lock-keywords-x nil
"Internal variable used to have extraordinary level font-lock keywords
for the Navi2ch Message mode.")
(setq develock-keywords-alist
(cons '(navi2ch-message-mode navi2ch-message-font-lock-keywords-x
develock-navi2ch-message-font-lock-keywords)
develock-keywords-alist))
(setq develock-navi2ch-message-font-lock-keywords
'(("\\( +\\|\t\\)"
(0 'develock-whitespace-face-1))))
(add-hook 'navi2ch-message-mode-hook 'turn-on-font-lock)

navi2ch-message-mode で半角スペースの連続とタブをハイライトする
develock 用の設定。まぁ気休めだけど。

97 :名無しさん@お腹いっぱい。:03/10/12 21:47
>>95
変換スクリプトで navi2ch 用にしたときに、名前空間が navi2ch-spamfilter.el と齟齬を
起してますね

98 :62:03/10/13 00:14
>>97
アップデートしてから 2ch を見にいったら >>94 がでてて、慌てて変更した
のでちょっとおかしいかもしれません。具体的にどこですか?

99 :名無しさん@お腹いっぱい。:03/10/13 00:42
navi2ch-spamfilter.el.txt では navi2ch-spamf-*-corpus ですが、
変換スクリプトでは navi2ch-*-corpus となってしまいます

100 :62:03/10/13 00:51
ちょうど書き直してる途中にダウンロードしたのかも。
http://www.geocities.co.jp/SiliconValley-PaloAlto/7043/spamfilter/convert_corpus_0.9_to_0.10.pl.txt
これで大丈夫ですか?

101 :名無しさん@お腹いっぱい。:03/10/13 04:31
spam probability をどこかに表示してくれると有り難し

102 :名無しさん@お腹いっぱい。:03/10/13 09:30
>>95
対応しました。
http://navi2ch.sourceforge.net/navi2ch-spamfilter.el

>>101
(defun navi2ch-spamf-header-format (number name mail date)
(let ((str (navi2ch-replace-string
"\n\n" "\n"
(navi2ch-article-default-header-format-function
number name mail date))))
(concat str
(format "Spam Probability: %f\n\n"
(navi2ch-article-spam-probability
(navi2ch-article-bayesian-tokenizer
(cons (cons 'number number)
(navi2ch-article-get-message number))))))))

(setq navi2ch-article-header-format-function
#'navi2ch-spamf-header-format)

すげー重いけどこんな感じで。そのうちもっと何とかなるかも。

103 :名無しさん@お腹いっぱい。:03/10/14 23:44
navi2ch-spamfilter いれて気づいたんだが、そもそも、よく行くスレで荒れ
てるスレがあんまりない。本末転倒だが、なんか悲しい。

104 :名無しさん@お腹いっぱい。:03/10/15 02:39
pserver 更新キタ━(゚∀゚)━( ゚∀)━(  ゚)━(  )━(゚  )━(∀゚ )━(゚∀゚)━!!!!

105 :名無しさん@お腹いっぱい。:03/10/15 05:46
(setq navi2ch-board-expire-orphan-only t) にすると、
ブックマークしたスレや subject.txt にあるスレは
expire されなくなるの?

個人的には orphan もそうじゃないものも一緒に
expire したいんだけど、可能かな?


106 :名無しさん@お腹いっぱい。:03/10/15 06:28
orphan をオルファンと表記するのは初めて見た

107 :名無しさん@お腹いっぱい。:03/10/15 06:41
Gnus の smiley.el を Navi2ch で使ってる人いる?
いたら、どの hook に引っかければいいのか教えてください。


108 :名無しさん@お腹いっぱい。:03/10/15 10:40
>>106
オーガニック的な読み方って言うもの…? コレが…
そうなのか!?

109 :名無しさん@お腹いっぱい。:03/10/15 10:50
モルフィー(ぼそっ

110 :名無しさん@お腹いっぱい。:03/10/15 11:50
>>108
ヲタ氏ね

111 :名無しさん@お腹いっぱい。:03/10/15 13:20
ブレンパワード

112 : :03/10/15 13:40
良く覚えてるね、マイナー系統のアニメだったのに

113 :名無しさん@お腹いっぱい。:03/10/15 15:18
>>110
オマエがヲタだろ

114 :名無しさん@お腹いっぱい。:03/10/15 16:25
>>107
そもそも普通の smily って2ちゃんじゃあんまり見掛けないし、下手すると
AA の途中に smily が現われたりして、具合悪そげな予感。

115 :名無しさん@お腹いっぱい。:03/10/15 17:11
>>112
偶然にもビデオ借りてた

116 :名無しさん@お腹いっぱい。:03/10/15 17:39
>>114
> そもそも普通の smily って2ちゃんじゃあんまり見掛けないし、下手すると
> AA の途中に smily が現われたりして、具合悪そげな予感。

いっそのこと 2ch 専用 smiley を作るとか :-)

P.S.

どのふっくにひっかければいいんだろー

117 :名無しさん@お腹いっぱい。:03/10/15 17:52
navi2ch-article-arrange-message-hook にひっかけて、smily に overlay で
image かぶせればいけるんじゃない?

118 :名無しさん@お腹いっぱい。:03/10/15 18:13
(add-hook 'navi2ch-article-arrange-message-hook 'smiley-buffer)
これだけで動いた

119 :名無しさん@お腹いっぱい。:03/10/15 18:59
>>118
サンクス


120 :名無しさん@お腹いっぱい。:03/10/17 10:15
C-c C-f で~/.navi2ch/pc.2ch.net/unix/ 等を選択した時に
標示されたファイルをsubject.txtに登録する方法はありますか?


121 :名無しさん@お腹いっぱい。:03/10/19 05:15
navi2chでAAをあらたに登録するには
どうしたらよろしいのでしょうか?

122 :名無しさん@お腹いっぱい。:03/10/19 06:42
>>121
navi2ch-message-aa-alist (, navi2ch-message-aa-default-alist)

123 :121 :03/10/19 11:22
>>122
ありがとうございます。

M-x navi2ch-message- と入力して使える物を表示させると

> navi2ch-message-aa-alist (, navi2ch-message-aa-default-alist)

がなくて、そのまま aa-alist や aa-default-alist を入力すると
[No Match]
になってしまうのですが、./navi2ch の中のファイルを書き換える
必要があるのでしょうか?

すみませんが教えてください。

124 :名無しさん@お腹いっぱい。:03/10/19 11:31
>>123
いいえ。つかキーワード挙がってんだからググってみれ。

125 :名無しさん@お腹いっぱい。:03/10/19 11:37
>>123
>>122 は関数でなく変数です。
C-h v とかで見ましょう。
で、-default- のほうはそのままに、
これと同様の形式で、navi2ch-message-aa-alistを設定してやればok。
-default- で既に使われてるキーがあっても同じキーで別の AAを設定すれば、
そっちで上書きされる筈。
指定できるキーはストロークではない。"\C-c" みたいなのも一文字なんでok。
あとは navi2ch-message-aa-alist のdocstring見れ。

126 :名無しさん@お腹いっぱい。:03/10/19 11:40
>>123
M-x customize-group で navi2ch-message と入れれば
elisp 書かずに設定できるよ。

127 :名無しさん@お腹いっぱい。:03/10/19 11:44
(´-`).。oO
navi2ch以下のファイルを直接書き換えるんでも
いちおう目的は達成できるけどね…

128 :名無しさん@お腹いっぱい。:03/10/19 13:08
>>127
バージョンアップするたびに diff とったりして対応するの?

129 :名無しさん@お腹いっぱい。:03/10/19 13:30
>>128
>>127 のいう navi2ch以下ってのが
site-lisp/navi2ch/navi2ch*.el を指してるとしてだが、
そーいう事になるんだろね。
だから「…」が付いてるわけで。

130 :62:03/10/20 01:06
spamfilter.el 0.11 をリリースしました。実行時に cl に依存していた部分
を修正しましたので (require 'cl) が不要になりました。

--- navi2ch-spamfilter.el~ Mon Oct 20 01:00:07 2003
+++ navi2ch-spamfilter.el Mon Oct 20 01:02:58 2003
@@ -31 +31,2 @@
-(require 'cl)
+(eval-when-compile
+ (require 'cl))

131 :名無しさん@お腹いっぱい。:03/10/20 03:33
>>130
よく cl は排除すべきっていう話を聞くんですが、なぜなんでしょうか?

132 :名無しさん@お腹いっぱい。:03/10/20 03:49
>>131
http://www.gnu.org/manual/elisp-manual-21-2.8/html_node/elisp_709.html

> Please don't require the cl package of Common Lisp extensions at run time.
のところに書いてある。

133 :名無しさん@お腹いっぱい。:03/10/20 11:26
AAの登録ってどうやるんですか?
手順とおしえてくだだい

134 :名無しさん@お腹いっぱい。:03/10/20 11:41
>>133
>>126

135 :名無しさん@お腹いっぱい。:03/10/20 11:47
>>133
>>121-129読んでも全然ピンと来ないようなら、まじめにemacsの勉強するか
すっぱりあきらめるべきだな。

136 :名無しさん@お腹いっぱい。:03/10/20 18:30
navi2ch 立ち上げ → corpus 登録 → (navi2ch 終了せずに)Emacs 終了
すると spamfilter が更新されないすよね? ちょっと悲すぃ…
できればどっかの hook で保存して欲しいっす。(filter も…かな?)

137 :名無しさん@お腹いっぱい:03/10/20 19:12
>>121
~/.navi2ch/init.el にこんな感じで角。

(setq navi2ch-message-aa-alist
'(("g" . "げげげげげ")
("P" . "ぷぷぷぷぷ")
("m" . "むむむむむ")
))

C-c C-a g で「げげげげげ」などとなるはず。

138 :名無しさん@お腹いっぱい。:03/10/20 20:11
>>137
上に書いてあったの見ても分からん人間はもう放置でええよ。

139 :名無しさん@お腹いっぱい。:03/10/20 20:31
>>137
なにがつのだよ。ええかげんにせーよてめーは。

140 :名無しさん@お腹いっぱい。:03/10/20 20:46
コーパスをオンラインで共有しようか
主に広告レス排除のために
個人的にウザいレスはローカルコーパスで処理

141 :名無しさん@お腹いっぱい。:03/10/20 20:56
>>140
広告排除が目的だったらコーパスでなくフィルタの方がよくない?

142 :名無しさん@お腹いっぱい。:03/10/20 21:04
>>136
とりあえず ~/.navi2ch/init.el でこうしておけば?
(add-hook 'kill-emacs-hook #'navi2ch-article-save-corpus)
2 回保存しちゃうけど問題無。

143 :名無しさん@お腹いっぱい。:03/10/20 21:06
>>141
いえ、コーパスの学習能力に期待していますので
そうですねぇ〜、SKK辞書のシステムを連想しているとでも言っておきましょうか

144 :名無しさん@お腹いっぱい。:03/10/20 21:10
>>143
その例え、適切なのか??

145 :名無しさん@お腹いっぱい。:03/10/20 21:29
SKK--JISYO.L.{cdb,gz}は,あるサイトで辞書のエントリ登録・削除の依頼を
受けつけていて,非恒久的に改善が施されていますが,改善版をいちいちDLし
てそれをデーモンで呼び出したりして利用されています.cvsで辞書更新でき
ますが,エントリ登録の判断基準は不透明です.この判断基準をコーパスで担
わせることと,おお元の判断基準を利用者の総意で決定しようというのが,私
の想像するところです.前者は重み付けフィードバックでもAIを導入しても良
いでしょうし,後者はまさに2chの「個人範疇のモラル規定」が適用できるか
と思います.

146 :名無しさん@お腹いっぱい。:03/10/20 21:42
ああ、"共有された"コーパスの事か。

147 :名無しさん@お腹いっぱい。:03/10/20 23:31
1.7.1 になってから cvs 版が make できない…。

!! Symbol's value as variable is void ((<<<<<<<))
While compiling toplevel forms in file /home/mona/work/navi2ch/navi2ch-oyster.el:
!! Symbol's value as variable is void ((<<<<<<<))
Wrote /home/mona/work/navi2ch/navi2ch-auto-modify.elc
Done
gmake[3]: *** [recompile] Error 1
gmake[3]: Leaving directory `/home/mona/work/navi2ch'
gmake[2]: *** [navi2ch-article.elc] Error 2
gmake[2]: Leaving directory `/home/mona/work/navi2ch'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/home/mona/work/navi2ch'
gmake: *** [all] Error 2

FreeBSD4.9RC emacs21.3

148 :名無しさん@お腹いっぱい。:03/10/20 23:35
>>147
> !! Symbol's value as variable is void ((<<<<<<<))
正気か?

149 :名無しさん@お腹いっぱい。:03/10/20 23:36
というか、mergeミスでないのか?
cvs status navi2ch-oyster.el してみ。

150 :名無しさん@お腹いっぱい。:03/10/20 23:41
>>147
> !! Symbol's value as variable is void ((<<<<<<<))
生キロ

151 :名無しさん@お腹いっぱい。:03/10/20 23:57
% cvs status navi2ch-oyster.el [~/work/navi2ch]
===================================================================
File: navi2ch-oyster.el Status: Up-to-date

Working revision: 1.11
Repository revision: 1.11 /cvsroot/navi2ch/navi2ch/navi2ch-oyster.el,v
Sticky Tag: (none)
Sticky Date: (none)
Sticky Options: (none)

こんなのでましたけどー。

152 :名無しさん@お腹いっぱい:03/10/21 00:06
>>102
(・∀・)イイ!!
で、ちょっと見にくいので
Spam Probability: 0.000000 の表示に色がつけば。


153 :名無しさん@お腹いっぱい。:03/10/21 00:12
>>151
一回navi2ch以下を全部消して
cvs update -dPしる。

154 :名無しさん@お腹いっぱい。:03/10/21 00:14
>>151
コードの中に、'<<<<<<<' こんな部分ないか?( single quote は抜きでね)
あれば、そこが明らかに lispとして変でないか?

155 :名無しさん@お腹いっぱい。:03/10/21 00:16
rm -r navi2ch して cvs で取り直おしたらでけた。
なんで、あんな変になってしまったんだろう。

156 :名無しさん@お腹いっぱい。:03/10/21 00:18
>>155
navi2ch-oyster.el をいじったからじゃない?

157 :名無しさん@お腹いっぱい。:03/10/21 00:19
>>155
ローカルでの書き換えが、先端とうまくマ-ジ出来なかったんじゃ。


158 :名無しさん@お腹いっぱい。:03/10/21 00:19
UNIX板でかぶるとは……_| ̄|○

159 :名無しさん@お腹いっぱい。:03/10/21 00:20
>>156
いや、あの log は最後の部分だけコピペしたので
全部の .el に <<<<<<<< が入っていたみたい。

>>157
そんなこともあるんですね。



160 :名無しさん@お腹いっぱい。:03/10/21 00:40
これは事故ではなくごく普通の動作です。
CVSはあなたが望んだとおりに動いています。
もうちょっとだけCVSの仕事を理解してやってください。

161 :名無しさん@お腹いっぱい。:03/10/21 06:31
>>152
こんな感じかな? ヘッダの長さを揃えるために短かくしたけど、それは適当に
(defun navi2ch-spamf-header-format (number name mail date)
(let ((str (navi2ch-replace-string
"\n\n" "\n"
(navi2ch-article-default-header-format-function
number name mail date)))
(spam-header "Spam: ")
(spam (format "%f"
(navi2ch-article-spam-probability
(navi2ch-article-bayesian-tokenizer
(cons (cons 'number number)
(navi2ch-article-get-message number)))))))
(put-text-property 0 (length spam-header)
'face 'navi2ch-article-header-face spam-header)
(put-text-property 0 (length spam)
'face 'navi2ch-article-header-contents-face spam)
(concat str spam-header spam "\n\n")))

162 :名無しさん@お腹いっぱい。:03/10/21 17:45
>>160
理解なんかしなくても
おかしくなったファイル消してupdateしなおしゃいいだけの話。
不便だと思うならstableリリースまで待ってCVS使わなきゃいい。


163 :名無しさん@お腹いっぱい。:03/10/21 21:45
>おかしくなったファイル消してupdateしなおしゃいいだけの話。
その程度のことすら自分でできない人がそこにいたことをもう忘れたのですか


164 :名無しさん@お腹いっぱい。:03/10/21 21:55
>>163
そういう人はstableリリースまで待てばよい
あなたループ厨ですか?

165 :名無しさん@お腹いっぱい。:03/10/21 22:32
>>140
単純な共有はいろいろ問題あるだろうなあ。問題ないのを
勝手に消すやつが出てくるとか、そもそも傾向があわないとか。

せっかく統計的なアプローチをとってるんだから、
どうせ考えるなら共有も同じような方法だな。
自分とフィルタリングの結果の傾向が似ているやつらを
ベイズのアルゴリズムで見つけて、
初見のカキコを消すべきかどうかを、そいつらの
何%がそれを消しているのかを調べて決定するとか。

自分と傾向のより似ているやつのほうが
自分のフィルタにより強い与える影響を与えられる
というようにするといいかもしれない。

166 :名無しさん@お腹いっぱい。:03/10/22 01:54
あの、ageとだけ書かれたものをfilter outするにはどうすればいいですか。
日本語へんだったらすみません。



167 :名無しさん@お腹いっぱい。:03/10/22 02:29
! b y r n ^hage$ [RET] h y
だと、
hage
と書いたこのレスにも反応するんだっけ。


168 :名無しさん@お腹いっぱい。:03/10/22 02:41
>>166
俺は空age対策として、
(("\\`[  \n]*\\'" r) . hide)
(("\\`[  ]*\\(保守\\|ほしゅ\\)[  ]*\\'" r) . hide)
(("\\`[  ]*\\(定期\\|保守\\)?[  ]*\\(age\\|sage\\|test\\|あげ\\|テスト\\)[  ]*\\'" r) . hide)
(("\\`[  \n]*[((][・・]∀[・・][))]\\(ニヤニヤ\\|クスクス\\)[  \n]*\\'" r) . hide)
(("\\`[  \n]*\\(ニヤニヤ\\|クスクス\\)[((][・・]∀[・・][))][  \n]*\\'" r) . hide)
(("\\`[  \n]*[((][・・]∀[・・][))]renice!*[  \n]*\\'" r) . hide)
(("(σ.+σ\\(gets\\|ゲッツ\\|ゲッツ\\)" r) . hide)
といったあたりを navi2ch-article-message-filter-by-message-alist に追加してる。

169 :名無しさん@お腹いっぱい。:03/10/22 04:41
補足すると age とだけ書かれたレスは正規表現では \`age\' となる。
! なんかで対話的に入力するときはこのままでいいけど、文字列に直すと
"\\`age\\'" としなけりゃなりません。

>>168
あまりの徹底ぶりにワロタ。上から3つめには「さげ」があっても良さそうですな

170 : ◆1haVRB54HY :03/10/23 22:29
キモヲタ共は死ね

171 :名無しさん@お腹いっぱい。:03/10/23 22:34
これか…

Kの子のトリップ
http://pc.2ch.net/test/read.cgi/linux/1066911007/l50

172 : ◆X2z01SJ1rk :03/10/23 22:38
#80Wd1VMlから
ID変えたんで今後ともよろしく

173 :名無しさん@お腹いっぱい。:03/10/23 23:00
では早速 hideと、


174 :名無しさん@お腹いっぱい。:03/10/23 23:20
新しく filter に追加したものは article バッファで C-u F すれば適用されますが、
bookmark に入ってるスレッド全てに適用するにはどうすればいいですか?



175 :名無しさん@お腹いっぱい。:03/10/24 01:17
>>174
m a m .

176 :名無しさん@お腹いっぱい:03/10/24 03:15
>>175
>>174じゃないけど、(・∀・)イイ!! 多謝。

177 :名無しさん@お腹いっぱい。:03/10/25 21:20
で、ageとだけしか書いてないスレを隠す方法がよくわかりません。



178 :名無しさん@お腹いっぱい。:03/10/25 21:29
  そ う で す か

179 :名無しさん@お腹いっぱい。:03/10/26 04:01
dat ファイルの2行目が空いているのと1が来てるのはなにが違うんでしょうか。


180 :名無しさん@お腹いっぱい。:03/10/26 04:03
"e"で落としたdatファイルをnavi2chで見たいです

181 :名無しさん@お腹いっぱい。:03/10/26 04:27
e って、txtじゃないの?
datなら C-cC-f(navi2ch-find-file)だが。

182 :名無しさん@お腹いっぱい。:03/10/26 04:40
>>181
まちがえました
そのtxtファイルをnavi2chで見たいのです
具体的にはemacsのバッファーにtxtファイルを読み込んで編集できますが
でもnavi2chでtxtファイルを扱えれば削除がレスごとにできるので
それを利用したいなと思いました
「>>」のリンク飛びもnavi2chでtxtファイルを扱えればできるし

183 :名無しさん@お腹いっぱい。:03/10/27 02:09
今見てるレスの spamness を mode-line に表示するには
どうすればいいんでしょうか?

184 :名無しさん@お腹いっぱい。:03/10/28 10:51
spamfilterのコーパスは、板ないしは板のグループごとに分けた方がいい性能を
発揮するような気がしますがどうでしょう?
サンプルが十分とるまで時間がかかるようになるかも知れませんが…。


185 :名無しさん@お腹いっぱい。:03/10/29 04:23
わけるなら2ちゃん全体と各板でやった方がいいかもしれない気がしたりして

186 :名無しさん@お腹いっぱい。:03/10/29 11:59
redhat9使ってます。コンパイル法がまったくわからないです。
どうすればいいですか?おしえてください。
いちおうファイルは落したんですけどそのあとからどうしていいか??です。
よろしくおねがいします。

187 :名無しさん@お腹いっぱい。:03/10/29 12:05
>>186
公式のドキュメント(HTML版)は読んだ?

188 :名無しさん@お腹いっぱい。:03/10/29 12:08
>>187
読みました。
% ./configure; make
# make install
これでおしまい。
ってあるんですけど、どこでこれをやったらいいかすらわからないです。


189 :名無しさん@お腹いっぱい。:03/10/29 12:12
>>188
./configure
があるからには、configureスクリプトがあるディレクトリでしょ。

190 :名無しさん@お腹いっぱい。:03/10/29 12:17
>>189
まったく意味がわかんね,,,です。
まだ漏れにはLいぬxは早すぎ鴨


191 :名無しさん@お腹いっぱい。:03/10/29 12:21
>>183
Article buffer にある複数のレスのうち「今見てるレス」をどう定義する?
カーソルがあるレスとかにすると作るのがめんどくさげ…

192 :mami:03/10/29 12:25
>>188
ちょっと追記しました。
これでどうでしょう?
http://navi2ch.sourceforge.net/doc/navi2ch_1.html

193 :名無しさん@お腹いっぱい。:03/10/29 12:34
>>192
それをどこでやればいいかわからないくらい重傷です。
emacsでやるんですか?

194 :名無しさん@お腹いっぱい。:03/10/29 12:46
>>193
えと、bashとか zshとかって名前聞いたことありますか?

195 :名無しさん@お腹いっぱい。:03/10/29 12:49
>>194
ないです。

でもターミナルで公式ドキュメントにあるコマンド入力したら
bash: ./configure: そのようなファイルやディレクトリはありません
とかでました。

196 :名無しさん@お腹いっぱい。:03/10/29 12:53
今のお前には無理。諦めろ

197 :名無しさん@お腹いっぱい。:03/10/29 12:57
>>196
やっぱり。おとなしくXP使っときます泣

198 :名無しさん@お腹いっぱい。:03/10/29 13:06
「どこで」ってディレクトリじゃなかったのか……。

199 :名無しさん@お腹いっぱい。:03/10/29 14:10
>>197はnavi2ch以前にlinuxを使ってることがすでに間違ってるな。
まぁ自分でも悟ったようなんでいいか。

200 :名無しさん@お腹いっぱい。:03/10/29 16:50
(´;゚д゚`)コ、コウバスィ

201 :名無しさん@お腹いっぱい。:03/10/29 18:47
さすがにそこまで Navi2ch のドキュメントや Navi2ch スレで
面倒見る筋合は無いやろね。

202 :名無しさん@お腹いっぱい。:03/10/29 19:08
んでも下手なuser-mlより親切だな、ココ(w
瞬間でドキュメント修正されるし。

203 :名無しさん@お腹いっぱい。:03/10/29 19:15
navi2ch-spammfilter使おうと思ってcontribのぞいたら
navi2ch-logoなんちゅーものが。使って見てかんどーしますた。


204 :名無しさん@お腹いっぱい。:03/10/29 20:14
わらわら釣られてますなぁ。

205 :名無しさん@お腹いっぱい。:03/10/29 20:45
最近、あぼーん とデータが壊れて再取得ということが多くなった。
みなさんはそんなことないですか???
1.7.1

206 :名無しさん@お腹いっぱい。:03/10/29 20:46
tesuto


207 :名無しさん@お腹いっぱい。:03/10/31 00:29
WinXP で navi2ch を使おうとしています。スレ一覧取得時に
checking file...updated: getting new file...not updated
と怒られて一覧が表示されない板があるのですがなぜでしょうか。

ダメな板:
ビジネスnews+、Unix、Linux、新mac、政治、経済、etc.
OKな板:
ニュー速+、AV機器、ピュアAU、邦楽、洋楽、etc.

Emacs のバージョン:
GNU Emacs 21.3.50.1 (i386-mingw-nt5.1.2600) of 2003-08-22 on MIDASPSE17
navi2ch は CVS 最新のものを使っています。

208 :名無しさん@お腹いっぱい。:03/10/31 00:33
C-u sしてみるとどうよ?

209 :207:03/10/31 00:39
うひゃ、反応早!
>>208
だめでした。同じこと言われます。

210 :名無しさん@お腹いっぱい。:03/10/31 01:42
>>207
なんの問題もないが。

1 % HDD&DVDハイブレコ 東芝"RD-XS41"単体スレ-01- ( 603)
2 + ビデオ買う奴は白黒テレビ買うようなもの ( 56)
3 % ★誰かが物凄いスピードで質問に答えるスレ【14】★ ( 653)
4 % 東芝HDD&DVDレコ【RD-XS41・XS31・X3・XS40・XS30・X2】74 ( 951)
5 + ベータマックス生産終了 ( 870)
6 + 【感動を】ライブを隠し録音したい Part4【再び】 ( 917)
7 % ナイスなヘッドホンアンプ 9台目 ( 102)
8 % 【TBC】再生画が綺麗なSVHSは?その2【DNR】 ( 29)
9 + 【E70V】DVDとVHS一体型デッキ!その2【VP50S】 ( 767)
10 + 生録派お勧めマイク記録媒体について語ろ【2】 ( 958)


211 :名無しさん@お腹いっぱい。:03/10/31 04:38
gzip が入ってないんじゃねーの?

212 :207:03/10/31 09:12
>>211
それでした。お騒がせいたしました。
というわけで早速navi2chからカキコ。ああ快適。
レスいただいた皆様ありがとうございます。

213 :名無しさん@お腹いっぱい:03/10/31 10:15
グローバルブックマークの名前の変更どうやんの?

214 :名無しさん@お腹いっぱい。:03/10/31 10:26
漏れは bookmark2.txt を直接書き換えてる


215 :名無しさん@お腹いっぱい:03/10/31 10:48
早速サンクス。やっぱそれしかないんだね。。


216 :名無しさん@お腹いっぱい。:03/10/31 10:52
C

217 :名無しさん@お腹いっぱい。:03/11/01 20:36
こないだから、unix板の以前からあるスレが、
しばしば新規スレマークついてしまうんだけど、
どうしてなのかな。この現象俺だけ?


218 :名無しさん@お腹いっぱい。:03/11/01 20:54
家でもそう。なんでだろ〜。

219 :名無しさん@お腹いっぱい。:03/11/01 21:41
漏れも漏れも。

220 :名無しさん@Emacs:03/11/01 22:05
いつごろからか(多分1.7あたり), sすると
navi2ch-net-send-request:
Error: connection failed: operation already in progress, pc.2ch.net, navi2ch connection
と怒られるようになりました。
使っているのはcvs版(1.7.1-dev)です。Emacsは21.3、OSは FreeBSD 5.1-CURRENTです。

他ので試したところ,FreeBSD 4.9-R Emacs 21.2,navi2ch1.6.1-devだと大丈夫です。
安定バージョンはいまのところ1.7でしょうか?

221 :名無しさん@お腹いっぱい。:03/11/02 19:51
>>220
http://pc.2ch.net/test/read.cgi/unix/1015514229/733-

222 :名無しさん@お腹いっぱい。:03/11/02 20:27
(setq navi2ch-article-auto-spam-register-by-filter t)
してるとフィルタがかなり太るね、あたりまえだけど。サイズが 2M 越えて
navi2ch の起動/終了がかなり遅くなったので
egrep -v '^\(.* . 1\)$'
でフィルタをダイエットしてみた。

% wc -l .navi2ch/spamfilter*
69477 .navi2ch/spamfilter
119736 .navi2ch/spamfilter.orig

% ls -l .navi2ch/spamfilter*
-rw-rw----  1 giko  giko  1349330 2003-11-02 19:11 .navi2ch/spamfilter
-rw-rw----  1 giko  giko  2358318 2003-11-02 07:22 .navi2ch/spamfilter.orig

検出精度にどのくらい影響が出るかは不明だけど(;´Д`)

223 :名無しさん@お腹いっぱい。:03/11/02 22:47
spamfilterってbase64とかuuencodeされた
テキストを追加しちゃうのは良くないよね。

224 :名無しさん@お腹いっぱい。:03/11/02 23:54
>>223
コーパスをザッと眺めててそれ思った。チェックしてコーパスへの登録対象か
ら外すってのはコストが見合わないのかな。

225 :名無しさん@お腹いっぱい。:03/11/03 00:05
lisp 遅いしなぁ

226 :名無しさん@お腹いっぱい。:03/11/03 01:46
>>223-224
そういうデータってどれくらいの割り合いですか?あんまり多いようだったら
考えたいと思います。個人的には今のところ、無視できるレベルだと思ってい
ます。

227 :名無しさん@お腹いっぱい。:03/11/03 01:56
コーパスの整理に関する情報。>>222 のやった方法はこれだね。
http://www-6.ibm.com/jp/developerworks/linux/021129/j_l-spamf.html
| モデルから単語を排除するのには、いろいろな方法があります (中でも最も
| 簡単な方法は、出現頻度の充分に低い単語を排除するやり方です)。

228 :名無しさん@お腹いっぱい。:03/11/03 13:43
>>220
パッチに辿り着きましたか?

229 :名無しさん@Emacs:03/11/03 14:34
>>228
いえ、-CURRENT捨てました。

230 :222=224:03/11/03 16:30
>>226
あー、失礼。ザッと眺めた時に行が長くて目立つもんで「お、こんなんも登録
されてる」と思ったまでで、自分も無視できるレベルだと思ってます。そーゆー
意味でチェックしたりすんのはコストが見合わないだろうと。

チョーてけとうですが一応こんなんやってみました。
% egrep '^\("[+/0-9A-Za-z]{20,}' .navi2ch/spamfilter.el.orig | wc -l
281
ウチだと 0.2% 程度ですね。ちなみにそのうち出現頻度が 1 なのが 217 個あっ
たので 80% 弱は >>222 で排除できるようです。

>>227
情報ども。いちお「A Plan for