トップページunix
1001コメント333KB

Navi2ch for Emacs (Part 18)

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001名無しさん@お腹いっぱい。2007/07/30(月) 23:56:38
Emacsen で動く 2ch 専用ブラウザ、Navi2ch のスレッド Part 18 です。

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

*info* (navi2ch)Top
(info "navi2ch")

開発版
% cvs -z3 -d:pserver:anonymous@navi2ch.cvs.sourceforge.net:/cvsroot/navi2ch co navi2ch

過去ログ
>> ~/.navi2ch/etc.txt
> navi2ch
> http://navi2ch.sourceforge.net/log/
> navi2ch

前スレ
Navi2ch for Emacs (Part 17)
http://pc11.2ch.net/test/read.cgi/unix/1156781437/
0801名無しさん@お腹いっぱい。2008/08/28(木) 00:15:52
FreeBSD portsの古いのをずっと使ってたんだけど、いつの間にかportsもアッ
プデートされてた。ありがとうございます。
0802名無しちゃん…電波届いた?2008/08/29(金) 06:44:09
おはようございます
0803名無しさん@お腹いっぱい。2008/08/30(土) 04:07:12
IDでフィルタするのがちょっと煩雑ですな・・・

Filter by: n)ame m)ail i)d b)ody s)ubject: i
Use extended matching? (y or n) y
Type: s)ubstring f)uzzy e)xact r)egxp: e
Ignore case? (y or n) n
Invert match? (y or n) n
ID: asdfasdf
Set other options? (y or n) y
Options: s)cope f)loating: s
Scope: b(oard-local a)rticle-local d)efault: b
Set other options? (y or n) n
Result: r)eplace h)ide i)mportant s)core: h
Apply new rules to current message now? (y or n) y
0804名無しさん@お腹いっぱい。2008/08/30(土) 07:24:19
>>803
これは酷いww
ここまでくると、できないと一緒だろ。
0805名無しさん@お腹いっぱい。2008/08/30(土) 09:40:24
>>803
> Use extended matching? (y or n) y
n じゃだめなん?
08068032008/08/30(土) 13:20:44
>>805
n でもいいけどせっかく board-local 指定できるのでそれ使いたいな、と
結局簡単な関数書いて一発でNGID処理できるようにしたよ
ただ、n にした場合でもIDについてはデフォルトでboard-localの方がいいような気がする
0807名無しさん@お腹いっぱい。2008/08/30(土) 15:42:21
ミニバッファじゃなく一時バッファとかで
全選択肢が表示されているほうがよさげだな。
でもある項目の選択によって選択肢の再表示とかの必要もありそうで
ちょっと面倒だとは思うけど。
0808名無しさん@お腹いっぱい。2008/08/30(土) 21:10:17
skkの動作がおかしいと思ったら、navi2chのせいだった。

navi2ch-util.el

;; shut up byte-compile warnings
(eval-and-compile
(navi2ch-defalias-maybe 'keywordp 'ignore)
(navi2ch-defalias-maybe 'characterp 'ignore))

勝手につぶしちゃいかんだろ
0809名無しさん@お腹いっぱい。NGNG?2BP(0)
>>808
直しました。

>>803-807
一時バッファ使う感じで書いてみました。 CVS HEAD 試してみてください。


08107922008/08/30(土) 23:21:10
>>800
すみません返事遅くなりました。

修正ありがとうございます。いい感じです。
snapshot の tarball からインストールする際のソース変更が必要なくなりました。
#firewall の中にいると CVS が使用できない場合があるので。

あと、その修正で使用されている replace-regexp-in-string の第2引数って
関数もとることが出きるんですね。こちらも勉強になりました。
0811名無しさん@お腹いっぱい。2008/08/31(日) 23:26:34
>>809
> 一時バッファ使う感じで書いてみました。 CVS HEAD 試してみてください。

アップデートしたばかりでよく判んないんだけど、

`!' を押す
Filter by: n)ame m)ail i)d b)ody s)ubject: と聞かれる
`b' を押す

の時点でミニバッファから返ってこない。
C-g を押してようやく "*navi2ch Add filter" というバッファが見える。
んー、設定もしくは環境の問題なんだろか。

navi2ch: cvs head
emacs: GNU Emacs 23.0.60
0812名無しさん@お腹いっぱい。NGNG?2BP(0)
>>811
ただ単に遅いだけだったりはしませんか? どうも widget はちょっと遅い感じ
がします。

;; Gnus の G c が速いのはどうなっているんだろう…
0813名無しさん@お腹いっぱい。2008/09/01(月) 21:34:35
>>812
あー、失礼、遅いだけでした。
手元の1GHzのマシンで17秒…。

でも、Gnus の G c でも15秒くらいかかっててとても速いとは言えないので、
うちの Emacs (or 環境)が悪いっぽいですねえ。

ちなみに Debian の emacs-snapshot (http://emacs.orebokech.com のやつ)
を使ってます。
0814名無しさん@お腹いっぱい。2008/09/03(水) 10:24:08
! のキーバインドを navi2ch-article-add-message-filter-rule に戻すには

~/.emacs.el にどんなふうに書けばいいですか?
0815名無しさん@お腹いっぱい。2008/09/03(水) 13:06:49
>>814
(eval-after-load "navi2ch-article" '(progn (fset 'navi2ch-article-add-message-filter-cus 'navi2ch-article-add-message-filter-rule)))
08168142008/09/03(水) 13:49:14
>>815
出来ました。
ありがとうございました。
0817名無しさん@お腹いっぱい。2008/09/03(水) 15:51:12
送信控えログを、板ごとのスレになるようにとっています。

1000レスまでいくと新スレが立つのですが、そのまま使っていると、
新スレ旧スレ両方にレスがつきます。

一旦、Navi2chを quit すると、再始動後は、新スレの方にだけレスがつくようになります。

このような動作の原因は、メモリの関係なのでしょうか?

特に不都合はないのですが、なにが原因なのか理解できたらうれしいです。
0818名無しさん@お腹いっぱい。2008/09/03(水) 16:27:13
navi2chのスレ一覧で、タイトル名でフィルタリングする機能はないでしょうか?

手でブックマーク管理していても、前スレが気がつかない間に落ちちゃったり、
512kオーバで知らない間に次スレにいった場合は追従できない場合があるため、
どうにかならないかと…
0819名無しさん@お腹いっぱい。2008/09/03(水) 16:30:11
? s b ってこと?
0820名無しさん@お腹いっぱい。2008/09/04(木) 09:23:21
ttp://reed1200.at.infoseek.co.jp/navi2ch/lisp/navi2ch-memo.el
が使えなくなったです。
重宝してたのですが。。
elispなにかわからないのでどなたか1.8.0への対応をばお願いします. m(_ _)m
0821名無しさん@お腹いっぱい。2008/09/04(木) 22:22:13
使ってないからよくわからんけど、これでエラーは出なくなったよ。

diff --git a/navi2ch-memo.el b/navi2ch-memo.el
index 447b6c0..6d9f90d 100644
--- a/navi2ch-memo.el
+++ b/navi2ch-memo.el
@@ -45,15 +45,15 @@
navi2ch-half-replace-html-tag-regexp))
(navi2ch-insert-file-contents file)
(goto-char (point-min))
- (setq sep (navi2ch-article-get-separator))
+; (setq sep (navi2ch-article-get-separator))
(forward-line (1- num))
(dotimes (i (1+ (- (or num2 num) num)))
(setq mlist (cons (navi2ch-article-parse-message
(buffer-substring-no-properties
(point)
(progn (forward-line 1)
- (1- (point))))
- sep)
+ (1- (point)))))
+; sep)
mlist)))
(nreverse mlist)))))
0822名無しさん@お腹いっぱい。2008/09/09(火) 12:11:01
>>810
replace-regexp-in-stringが、
emacs20, xemacs21にありません。
0823名無しさん@お腹いっぱい。2008/09/09(火) 19:48:12
勉強がてらに虹裏を読み書きできるモジュール作ったので貼っておきます。

http://eigyr.dip.jp/data/navi2ch-nijiura.el

カタログを表示できる以下の鯖で動くと思います。
http://may.2chan.net/b/
http://jun.2chan.net/b/
http://nov.2chan.net/b/
http://img.2chan.net/b/
http://nov.2chan.net/24/
0824名無しさん@お腹いっぱい。2008/09/10(水) 16:14:06
fusianasanにならない?
0825名無しさん@お腹いっぱい。2008/09/10(水) 16:21:49
超なる
0826名無しさん@お腹いっぱい。2008/09/10(水) 16:35:11
UAが空白だと晒される模様
0827j064027.dynamic.ppp.asahi-net.or.jp 2008/09/10(水) 16:46:17
Monazilla/1.00 Navi2ch を送信してるんじゃ
0828p4056-ipbf2102souka.saitama.ocn.ne.jp ノtasukeruyo2008/09/10(水) 16:53:44
ノtasukeruyo
0829名無しさん@お腹いっぱい。2008/09/10(水) 17:02:36
ええと、読み込み時にはUAを送っているが、書き込み時には送っていない?
0830名無しさん@お腹いっぱい。2008/09/10(水) 17:27:32
>>829
それだ。
navi2ch-2ch-send-message をいじって解決。
0831nttkyo412050.tkyo.nt.ftth.ppp.infoweb.ne.jp 2008/09/10(水) 17:29:54
test
0832名無しさん@お腹いっぱい。2008/09/10(水) 17:32:51
テストはこちらで。

[test] 書きこみテスト 専用スレッド 1 [テスト]
http://pc11.2ch.net/test/read.cgi/unix/1111478762/
0833pl791.nas924.p-hokkaido.nttpc.ne.jp 2008/09/10(水) 18:25:37
navi2ch-multibbs.el の navi2ch-2ch-send-message に

(let ((proc
(navi2ch-net-send-request
url "POST"
(list (cons "Content-Type" "application/x-www-form-urlencoded")
(cons "User-Agent" "Monazilla/1.00 navi2ch") ;new!

とか書いたけど相変わらずフシアナされるなあ
よくわからん
0834名無しさん@お腹いっぱい。2008/09/10(水) 18:28:10
(let ((proc
(navi2ch-net-send-request
url "POST"
(list (cons "Content-Type" "application/x-www-form-urlencoded")
+ (cons "User-Agent" "Monazilla/1.00 Navi2ch")
(cons "Cookie" (concat "NAME=" from "; MAIL=" mail
(if spid (concat "; SPID=" spid
"; PON=" spid))))
(cons "Referer" referer))

とりあえずこれでいけるのは確認したよ。load-file してないとか。
直打ちなのがかっちょわるいけど。
0835名無しさん@お腹いっぱい。2008/09/10(水) 18:38:19
>>834
理由わかった。
誰かが…ってdpkgだが、バイトコンパイルしたのが別のディレクトリに置いてある。
別ディレクトリに置くなよわかりにくいだろ(逆切れ

/usr/share/emacs/site-lisp/navi2ch/navi2ch-multibbs.el
/usr/share/emacs21/site-lisp/navi2ch/navi2ch-multibbs.elc

こんな感じ
書き換えたファイルを M-x byte-compile-file でコンパイルしたものを下のディレクトリに移動させたのでたぶん動く

とう
0836名無しさん@お腹いっぱい。2008/09/10(水) 18:41:17
わーい
0837名無しさん@お腹いっぱい。2008/09/10(水) 18:41:40
そこだけ評価するなり load-file なりすればいいだけじゃん。
0838名無しさん@お腹いっぱい。2008/09/10(水) 19:29:50
navi2ch-net-send-requestの中で常にUser-Agentを指定する方がよさそうな
0839名無しさん@お腹いっぱい。2008/09/10(水) 20:08:27
一時的なものじゃなく、どうやら2chの仕様変更らしいんで
どっかに設定入れないといけないと思う
0840名無しさん@お腹いっぱい。2008/09/10(水) 20:19:56
navi2ch-net.el で、

(format (concat
"%s %s %s\r\n"
"MIME-Version: 1.0\r\n"
"Host: %s\r\n"
+ "User-Agent: Monazilla/1.00 navi2ch\r\n"
"%s" ;connection
"%s" ;other-header
"%s" ;content
"\r\n")
method file

したらいいんでね?
0841名無しさん@お腹いっぱい。2008/09/10(水) 20:28:51
というか、これまで設定されてなかったのはなぜ?
何か理由があるのかな
それともうっかりさん?
0842EM119-72-78-228.pool.e-mobile.ne.jp 2008/09/10(水) 20:33:45
おお、皆もそうか。俺もだ。
突然だったから、この ISP 向けに何か変な規制が入ったのかと思った。
0843名無しさん@お腹いっぱい。2008/09/10(水) 20:34:20
>>840
navi2ch-net-user-agent

other-headerにUser-Agentを渡しているところがあるのでそこは消す
0844名無しさん@お腹いっぱい。2008/09/10(水) 20:39:33
>>840test
08458422008/09/10(水) 20:44:25
さて、どうかな?
08468422008/09/10(水) 20:46:29
解決した。皆、有難う!
0847名無しさん@お腹いっぱい。2008/09/10(水) 20:48:06
とりあえず>>840でうまくいった模様・・
0848名無しさん@お腹いっぱい。2008/09/10(水) 20:49:09
突然名無し募集中。。。の前にfusianasanが入っていてびっくりしたお
とりあえず>>834さんたちにならったお
ありがとう
08498422008/09/10(水) 20:51:15
自分は >>833 だけで上手くいった。
(>>833 で上手くいかない理由は >>835 だって書いてるし)
0850名無しさん@お腹いっぱい。2008/09/10(水) 21:03:45
>>843の所が分からなかったから、>>834でフシアナさんから開放されました。
0851名無しさん@お腹いっぱい。2008/09/10(水) 21:22:18
navi2ch-net-user-agentはnilとかを設定してもいいような作りになってるから、
どこだったかでやってるみたいに
(and navi2ch-net-user-agent
(cons ... )
にした方がよさそう。
0852名無しさん@お腹いっぱい。2008/09/10(水) 21:59:57
>>833 でいいのね
0853名無しさん@お腹いっぱい。2008/09/10(水) 22:38:35
>>840
0854名無しさん@お腹いっぱい。2008/09/10(水) 23:30:15
>>833で解決。
ありがとうございます。
0855名無しさん@お腹いっぱい。2008/09/10(水) 23:31:37
なんだかんだでNavi2chは使われているんだなーと感じた
0856名無しさん@お腹いっぱい。2008/09/10(水) 23:35:36
navi2ch-2ch-send-message と navi2ch-net-send-request と、
どっちでの対策がベターなのかな
0857etc.micro-seikou.co.jp 2008/09/10(水) 23:35:36
>>843
のやり方がわからない
0858名無しさん@お腹いっぱい。2008/09/10(水) 23:36:24
>>839
とりあえず~/.navi2ch/init.elに書いとくことにした。
0859名無しさん@お腹いっぱい。2008/09/10(水) 23:46:20
>>857
navi2ch-net-send-request 中、process-send-string の直前で

(or (assoc "User-Agent" other-header)
(add-to-list 'other-header (cons "User-Agent" navi2ch-net-user-agent)))

としておけば、他の修正は不要
0860名無しさん@お腹いっぱい。2008/09/11(木) 00:22:04
>>859
ゴメンナサイ。
process-send-string ってのが何かわからないです。

FAとしては
ソースのnavi2ch-multibbs.el
を編集してもう一度、configureとしてmakeして
make installすればいいでしょうか?

navi2ch-multibbs.el の編集として
(or (assoc "User-Agent" other-header)
(add-to-list 'other-header (cons "User-Agent" navi2ch-net-user-agent)))


(navi2ch-net-send-request
url "POST"
(list (cons "Content-Type" "application/x-www-form-urlencoded")
(cons "Cookie" (mapconcat (lambda (elt)
(concat (car elt)
"="
(cadr elt)))
cookies "; "))
(cons "Referer" referer))
(navi2ch-net-get-param-string param-alist
(navi2ch-board-get-coding-system board)))))
(navi2ch-board-save-cookies board (navi2ch-net-get-cookies proc cookies))
proc)))

のどこか途中に挿入すればいいですか?
08618602008/09/11(木) 00:29:17
すいません。
バージョンが古いので、今1.80ダウンロードしています
1.80で解説願います
0862名無しさん@お腹いっぱい。2008/09/11(木) 00:47:28
強制fusianasanでめちゃくちゃ焦ったが、Navi2chの問題だったか
プロバイダの問題かと思った
0863名無しさん@お腹いっぱい。2008/09/11(木) 00:51:57
>>861
navi2ch-net.el の 関数 navi2ch-net-send-request に 859 の 2 行追加する
だけ。
0864名無しさん@お腹いっぱい。2008/09/11(木) 00:54:18
>>859でやったみた。
Navigator for 2ch 2.0.0-DEV
0865214.91.150.220.ap.yournet.ne.jp 2008/09/11(木) 00:59:06
>>840
THX!
0866名無しさん@お腹いっぱい。2008/09/11(木) 01:10:10
>>832が終わったので、新スレ
[test]書き込みテスト専用スレッド[test]
http://pc11.2ch.net/test/read.cgi/unix/1221062892/
08678602008/09/11(木) 01:10:57
なんどもすいません。
下記のどこかに、>>859の2行を挟むのでしょうか?
そのとき>>840は無視して「2行追加だけ」良いのでしょうか?
それとも>>840に加えて、「2行追加だけ」でしょうか

(navi2ch-net-send-request
url "GET"
(append
(list (if navi2ch-net-force-update
(cons "Pragma" "no-cache")
(and time (cons "If-Modified-Since" time)))
(and navi2ch-net-accept-gzip
;; regexp ^[$B$OJQ?t$K$7$?J}$,$$$$$N$+$J!#$$$$JQ?tL>$,;W$$$D$+$J$$!#^[(B
(not (string-match "\\.gz$" url))
(not (assoc "Range" other-header))
'("Accept-Encoding" . "gzip"))
(and navi2ch-net-user-agent
(cons "User-Agent" navi2ch-net-user-agent)))
other-header)))
0868p7149-ipbfp1305fukuokachu.fukuoka.ocn.ne.jp 2008/09/11(木) 01:11:33
いやっほー
0869p7149-ipbfp1305fukuokachu.fukuoka.ocn.ne.jp 2008/09/11(木) 01:12:29
寝る。
0870名無しさん@お腹いっぱい。2008/09/11(木) 01:17:01
>>862
俺も半年ぶりに規制解除されて意気揚々と書き込んだらfusianasanですげービビったww
0871名無しさん@お腹いっぱい。2008/09/11(木) 01:25:47
>>867
http://pc11.2ch.net/test/read.cgi/unix/1111478762/989
08728602008/09/11(木) 01:39:50
>>871
ありがとう。process-send-stringが見つかって
さっきそこまで掴んだので書いてみたのですが
別の理由だと思いますがでスレッドが開かない状態に陥りました。
バージョンも上げすぎた感じもしますので
もう少しじっくりテストを続けてみます
0873名無しさん@お腹いっぱい。2008/09/11(木) 01:48:35
2.0から1.8にしたら、スレが読めました
次いで、修正箇所を盛り込んでみました
08748602008/09/11(木) 01:52:58
成功いたしました。
みなさん申し訳ありませんでした。

とりあえず私が取った手法は、navi2ch-1.75からnavi2ch-1.8にバージョンアップ
http://pc11.2ch.net/test/read.cgi/unix/1111478762/989
ここで指示された差分を盛り込み
改めて
configure; make
su
make install
でした。

親切に噛み砕いていただいて感謝いたします。
0875名無しさん@お腹いっぱい。2008/09/11(木) 01:54:06
俺未だに1.7.5
0876名無しさん@お腹いっぱい。2008/09/11(木) 02:07:41
>>862
> 強制fusianasanでめちゃくちゃ焦ったが、Navi2chの問題だったか
> プロバイダの問題かと思った

そういうときは、まずウェブブラウザからポストしてみるよいいよ!
0877eatkyo468026.adsl.ppp.infoweb.ne.jp 2008/09/11(木) 03:13:09
なんだかよく分からんので、とりあえず書き込んでみる。
0878eatkyo468026.adsl.ppp.infoweb.ne.jp 2008/09/11(木) 03:14:19
なんだかよく分かった。スレ汚しスマソ。
0879ZH019093.ppp.dion.ne.jp 2008/09/11(木) 03:25:46
バグならいいんだバグなら、、
0880名無しさん@お腹いっぱい。2008/09/11(木) 04:00:04
家からくだらないかきこみして気付いたけど、
もし今日職場から書きこんでたら今頃祭開催中だったよ…ゾっとした。
0881名無しさん@お腹いっぱい。2008/09/11(木) 04:48:38
なんで fusiana なんだよ、あせった
書き込みテスト
0882名無しさん@お腹いっぱい。2008/09/11(木) 05:36:10
いやぁ、昨日からfusianasanばっかりで焦ったけど2ch側の仕様変更だったのね、、
0883名無しさん@お腹いっぱい。2008/09/11(木) 08:00:51
びっくりしたなあもう
0884名無しさん@お腹いっぱい。2008/09/11(木) 09:51:00
>>822
emacs23のsubr.elからもってきて使ってる。
0885名無しさん@お腹いっぱい。2008/09/11(木) 10:13:05
fushianaはそういうことだったのか。
くそ〜、会社から書き込んでしまった…orz
スルーしてね。
0886d252141.dynamic.ppp.asahi-net.or.jp 2008/09/11(木) 10:23:27
>>859やってみた
ちょっとテスト
0887名無しさん@お腹いっぱい。2008/09/11(木) 10:29:29
>>886
>>866
08888862008/09/11(木) 10:43:05
byte-compile してなかった orz
スレ汚し失礼…。
0889名無しさん@お腹いっぱい。2008/09/11(木) 10:47:18
>>874と同じやり方で対処。多分問題無し。
0890名無しさん@お腹いっぱい。2008/09/11(木) 10:58:58
>>876
別人だが、Navi2chがおかしいのか?と思ってブラウザで投稿したら大丈夫だったから
即飛んできたらぷち祭りだったw
おかげさまで治ったよ。
0891e3d105.BFL17.vectant.ne.jp 2008/09/11(木) 11:10:18
なんだ、俺だけじゃなかったのか。かなり焦った。
俺もブラウザから投稿で無問題だったんで「あ、navi2chだ!」
と、ここに飛んできた。

これから試してみるわ。
0892名無しさん@お腹いっぱい。2008/09/11(木) 11:12:43
IE6でもノートンの設定でブラウザ情報送らなかったら節穴

まあ直ったらしい
よーし自演しまくるぞ
08938422008/09/11(木) 11:34:57
>>862
俺もだw
規制情報とか一生懸命調べたよ。

>>876
そうだね。覚えておく。
0894名無しさん@お腹いっぱい。2008/09/11(木) 11:52:41
>>858
> とりあえず~/.navi2ch/init.elに書いとくことにした。

この方法推奨。
08958422008/09/11(木) 12:02:36
>>890
一応ブラウザも試したんだけど、ブラウザには socks 設定してるんで、
尚更、ISP に規制かかったのだと思った。
0896名無しさん@お腹いっぱい。2008/09/11(木) 12:06:06
うわぁ、学校の研究室から書いちまったよ
なってこったい
0897名無しさん@お腹いっぱい。2008/09/11(木) 12:10:12
俺も研究所から書いちゃった
08988912008/09/11(木) 12:26:02
ようやく対応完了!
あとからくる人のためにage!
0899名無しさん@お腹いっぱい。2008/09/11(木) 12:39:14
>835 似たようなのに引っかかった
>896-897 仲間がいる…
0900名無しさん@お腹いっぱい。2008/09/11(木) 12:44:15
一時的対処として字面上一番わかりやすいのは>>833だな
直書きだからUser-Agentを設定できないしroot権限がいるのが欠点
あとnavi2chをベージョンアップすると消えるので本気で一時的

パッケージとしてはどのへんで修正されるのかね
レス数が900を超えています。1000を超えると表示できなくなるよ。