■掲示板に戻る■ 全部 1- 101- 201- 301- 最新50 [PR]ぜろちゃんねるプラス[PR]  

perlで立ててみる

1 :test:2003/01/11 16:21 ID:???
どきどき
■このレスへのトラックバック
[ringtone ] http://ringtone-1316218.blogspot.com
[free ringtone ] http://free-ringtone-1185819.blogspot.com
[ringtone ] http://ringtone-1988162.blogspot.com
[free ringtone ] http://free-ringtone-1838278.blogspot.com
[ringtones ] http://ringtones-1676935.blogspot.com
[free verizon ringtones ] http://free-verizon-ringtones-1998586.blogspot.com
[free verizon ringtones ] http://free-verizon-ringtones-1998586.blogspot.com
[free ringtone ] http://free-ringtone-1827260.blogspot.com
[free sprint ringtone ] http://free-sprint-ringtone-1140398.blogspot.com
[free ringtones ] http://free-ringtones-1053792.blogspot.com
[ringtones ] http://ringtones-1658391.blogspot.com
[ringtone ] http://ringtone-1681183.blogspot.com
[free ringtone ] http://free-ringtone-1533032.blogspot.com
[ringtones ] http://ringtones-1233527.blogspot.com
[ringtones ] http://ringtones-1893911.blogspot.com

183 :1:2003/02/22 13:01 ID:???
namazuをインストールしてdatの検索をやってるという方おられます? 別に聞
いてどうしようというわけじゃないんですが。emacsの方なら結構使ってそうかな。

184 :1:2003/02/23 01:08 ID:???
Fix: sjis環境で、eucエンコードのスレをHTML化できなかった(vice versa)問題
を修正。あと、同じくHTML化で、パス形式に対応してない場合に正しいアンカー
が表示されなかった問題に対応してみました。

185 : @管理人 ★:2003/02/23 01:13 ID:???
>>175>>180
ありがとんございます。
規制は次バージョンくらいからになりそうですが、参考になりました。

>>183
参考までに私はnamazuインストールしてないです。
(というかdat検索自体ほとんどしないですね。)

186 :1:2003/02/23 14:31 ID:???
HTML化の部分はややこしくてこれまで手を付けてこなかったんですが、ようやく
わかるようになったので集中的にやろうと思います(もともとChaliceに実装し
たのは自分だったりするんですが…なんでだろ〜)。

使い方をドキュメントしてなかった気がするので書いておきます。

& キーでカーソルのあるレスをHTML化し、ブラウザで開きます。もしカーソル行
に >>n-m 形式のリンクがあればそちらを表示します(AA系のスレでよくありま
すよね)。

コマンドラインで行う場合は、

:Malice2HTML 1-10
:Malice2HTML >>1-10
:Malice2HTML 1 10

上のいずれの形式でも同じ結果になります。

187 :1:2003/02/23 17:29 ID:???
Fix: 1レス目がASCII文字オンリーの場合、文字コードの認識ができなかった問
題を修正。

188 :1:2003/02/24 04:28 ID:???
こういうのをデコードする手順を撮影してみました。
http://tolkien.s7.xrea.com/test/read.cgi/jikken/1043331322/241

ttp://www.geocities.com/nanoninee/img/filtering1.png
ttp://www.geocities.com/nanoninee/img/filtering2.png
ttp://www.geocities.com/nanoninee/img/filtering3.png
ttp://www.geocities.com/nanoninee/img/filtering4.png

フィルタリングという機能を使います。バッファの内容を外部プログラムに渡し
て処理させ、その結果を得るというものです。小さなプログラムを組み合わせて
複雑な処理を行うというUnix的な思想ををそのままWin環境でも実現できるのが
素晴らしいところです。

189 :1:2003/02/24 20:10 ID:???
>>1,4,6 みたいなリンクもプレビューできるようになりました。ハイフンとコン
マの併用も多分問題ないと思います。

190 : :2003/02/24 23:29 ID:???
>>188
お。。。なんかすごい。。

191 :1@w3m on cygwin:2003/02/25 14:55 ID:???
textareaの書き込みにはgvimが起動されるのか…。カコイイ


192 :1:2003/02/25 17:46 ID:???
こういうのでもプレビュー表示できるようになりました。ずっと前2ちゃんの
read.cgi開発スレで、こういう指定もできるようにしようという話があったよう
な…
ttp://tolkien.s7.xrea.com/test/read.cgi/jikken/1042269693/1,3-4,7-9

ちなみに結構難しいのでバグがあったりするかも知れません。

193 :1:2003/02/25 17:51 ID:???
ついでに、gvimのクリップボードの問題が直ったみたいなのであげておきまし
た。gvimのバイナリのみです(6.1.358)。

194 :1:2003/02/26 13:18 ID:???
スキンっていうか。まぁ表示をちょっと変えられるだけですが。
ttp://www.geocities.com/nanoninee/img/skin_test.png

195 :1:2003/02/26 13:24 ID:???
ん…、日付とIDって別々の色にできた方がいいんかな?

196 :1:2003/02/26 13:50 ID:???
こういうのは良いかも。ぞぬのスクリーンショットを参考にしてみました。
ttp://www.geocities.com/nanoninee/img/skin_test2.png

やり方はもうちょい頭を整理してから書きます。

197 :1:2003/02/26 14:38 ID:???
まず、Vimのスクリプトがどのように読み込まれるかということから説明します。

スクリプトの読み込みには、runtimepath というオプションが使われます。私の
設定はこのようになってます:
c:/home/.vim,c:/home/src/vim/runtime,c:/home/.vim/malice,c:/home/.vim/after

.vim の所は vimfiles に読み替えてください(Cygwin版のVimと共有したいので
Unixスタイルにしているのです)。これらのコンマで区切られた各ディレクトリ
の下のディレクトリ構造は決まっています。colors, ftplugin, plugin, syntax
などのディレクトリを置き、その中に用途に合ったスクリプトファイルを入れて
おくのです。

Vim起動時には各 plugin/ ディレクトリ内の .vim ファイルが読み込まれます。
ファイルタイプの設定時には各 ftplugin/, syntax/ ディレクトリからそのファ
イルタイプ名.vim、例えばスレッドであれば malice_thread.vim という名前の
ファイルが読み込まれます。

この読み込まれる順序は runtimepath オプションに定義されている順となりま
すので、標準で設定される動作、文法強調などをカスタマイズしたい場合は、最
も最後に読み込まれるランタイム・ディレクトリ内にファイルを置けば良いわけ
です。

198 :1:2003/02/26 15:09 ID:???
上記の点を踏まえて、いわゆるスキンのようなものを作るには、適切な
runtimepath の値を設定した後、以下の2つのファイルを作成してください。

after/plugin/skin.vim
after/syntax/malice_thread.vim

プラグインの方は拡張子が vim であればどんな名前でも良いです。サンプル
コード:

after/plugin/skin.vim:

if !has('perl')
 finish
endif

perl << END_PERL
sub to_text {
 my ($anum, $name, $mail, $date, $comm) = parsedat(@_);
 return $anum ? "--------\r$anum $name [$mail]\r $comm\r\r DATE:$date\r\r" : '';
}
END_PERL

" EOF

199 :1:2003/02/26 15:10 ID:???
after/syntax/malice_thread.vim:

if !has('perl')
 finish
endif

syntax match MaliceThreadArticleHeader transparent "^\d.*"
\ contains=MaliceThreadNumber,MaliceThreadFrom,MaliceThreadMail
syntax match MaliceThreadNumber display "^\d\+" contained containedin=MaliceThreadArticleHeader
syntax match MaliceThreadFrom display "\%(^\d\+ \)\@<=\(.*\)\( \[\)\@="
\ contained containedin=MaliceThreadArticleHeader
syntax match MaliceThreadDate display "^\t\+DATE:.*" "contained containedin=MaliceThreadArticleHeader
syntax match MaliceThreadMail display "\%( \)\@<=\[.*\]$" contained containedin=MaliceThreadArticleHeader

" EOF

試しにやってみてください。syntaxコマンドの詳細についてはよく知りませんの
で説明は後回しにします。これから勉強してみます。

200 :1:2003/02/26 15:30 ID:???
言葉を尽くしていなかった気がするので補足しますと、runtimepath に設定でき
るディレクトリ名は何でもいいんです。が、慣習的に、標準のものの上書き用に
使うディレクトリとして、after という名前のディレクトリをいちばん最後に
もってくることが多い、ということなのです。まぁそのようにして頂くと良いか
なと思います。

201 :1:2003/02/26 15:43 ID:???
>>198
>  return $anum ? "--------\r$anum $name [$mail]\r $comm\r\r DATE:$date\r\r" : '';

どうでもいいけどタブ文字は \t を使えばいいですよね。失礼。

202 :1:2003/02/27 00:33 ID:???
dat検索を実装した頃に、たまたまこういうのを見てしまったわけですよ。うわ
すげーなーと、こんなのが動的に生成できたらカコイイなと、ずっと思ってて、つい
に着手しました。まぁとりあえずインデントは無理だと思いますが。
ttp://zuelfish.s20.xrea.com/cgi-bin/NamazuMusume/data/1367.html

203 : :2003/02/27 23:19 ID:???
>>202
そういえばWebProg板にあったねそういうの。
(「こんなの作ったんですが」スレだっけ?)
見た目は確かにカコイイでつね。

204 :1:2003/02/28 01:22 ID:???
まじっすか? 自分はUnix板のNamazuスレで見たんですが。ひょっとしてソース
公開されてました?

205 :1:2003/02/28 14:18 ID:???
上のNamazuのシステムとはまた別のものみたいですね。しかしかなり高度なもの
ですな。公開してほしいもんだ。rubyだそうですが。

206 :1:2003/02/28 17:15 ID:???
damepo
ttp://www.geocities.com/nanoninee/img/recursivesearch_test.png

207 :1:2003/03/01 02:22 ID:???
ちょっとましになったかな〜。上のようにずらずらずらと無関係なレスが並ぶこ
とはなくなったような…。でもまだまだ理解できない要素が多いっす。てか不適
切なサンプルを選んでしまった気が。
ttp://www.geocities.com/nanoninee/img/recursivesearch_test2.png

208 :1:2003/03/01 02:23 ID:???
よくみたら全然ダメじゃん!

209 :1:2003/03/01 16:10 ID:???
依然syntaxコマンドの勉強はしていないんですが、スキンについて。複数のもの
を使い分ける方法です。とりあえず実例だけお見せします。

210 :1:2003/03/01 16:11 ID:???
after/plugin/skin.vim

if !has('perl')
 finish
endif

let g:malice_skinname = 'hoge'

if g:malice_skinname == 'test'
 function! s:Dat2Text()
  perl << END_PERL
  sub to_text {
  my ($anum, $name, $mail, $date, $comm) = parsedat(@_);
  return $anum ? "--------\r$anum $name [$mail]\r $comm\r\r\t\t\t\tDATE:$date\r\r" : '';
  }
END_PERL
 endfunction
elseif g:malice_skinname == 'hoge'
 function! s:Dat2Text()
  perl << END_PERL
  sub to_text {
  my ($anum, $name, $mail, $date, $comm) = parsedat(@_);
  return $anum ? "--------\r$anum $name $mail\r $comm\r\r\t\t\t\tDATE:$date\r\r" : '';
  }
END_PERL
 endfunction
endif
call s:Dat2Text()

211 :1:2003/03/01 16:11 ID:???
after/syntax/malice_thread.vim

if !(has('perl') && exists('g:malice_skinname'))
 finish
endif

if g:malice_skinname == 'test'
 syntax match MaliceThreadArticleHeader transparent "^\d.*"
\ contains=MaliceThreadNumber,MaliceThreadFrom,MaliceThreadMail,MaliceThreadBrokenArticle
 syntax match MaliceThreadNumber display "^\d\+" contained containedin=MaliceThreadArticleHeader
 syntax match MaliceThreadFrom display "\%(^\d\+ \)\@<=\(.*\)\( \[\)\@="
\ contained containedin=MaliceThreadArticleHeader
 syntax match MaliceThreadDate display "^\t\+DATE:.*"
 syntax match MaliceThreadMail display "\%( \)\@<=\[.*\]$" contained containedin=MaliceThreadArticleHeader
elseif g:malice_skinname == 'hoge'
 syntax match MaliceThreadArticleHeader transparent "^\d.*"
\ contains=MaliceThreadNumber,MaliceThreadFrom,MaliceThreadMail,MaliceThreadBrokenArticle
 syntax match MaliceThreadNumber display "^\d\+" contained containedin=MaliceThreadArticleHeader
 syntax match MaliceThreadFrom display "\%(^\d\+ \)\@<=\(.*\)\( .*$\)\@="
\ contained containedin=MaliceThreadArticleHeader
 syntax match MaliceThreadDate display "^\t\+DATE:.*"
 syntax match MaliceThreadMail display "\%( .* \)\@<=.*$" contained containedin=MaliceThreadArticleHeader
endif

212 :1:2003/03/01 16:16 ID:???
それぞれの出力関数とそれに対応するシンタックス定義のブロックに名前を付け
ておいて、pluginの冒頭部分で名前を切り替えればおっけーという寸法です。

perlのコードをVimスクリプトに組み込むにはちょっと工夫が必要みたいで、上
のようにVimの関数内に入れてやる必要があります。同名のVim関数にしておい
て、どれか1つが定義されるようにするとよいです。

213 :名無しさん@0ちゃんねる:2003/03/01 20:30 ID:???
そのうちソフ板に立てたほうがいいかもね。
ここじゃ使ってくれる人が少なすぎるから・・・

214 :1:2003/03/01 21:23 ID:???
>213
広める意図はありませんのでそういうことはしないです。と言うのは、ライセン
スとか配布条件の問題とかを解決せずダークなまま放置してますんでね。まずい
んですよ。

215 :1:2003/03/02 13:32 ID:???
たまには貼っておきます(自サイトなのにhを抜いてるのはレファラで弾かれないためです)
ttp://www.geocities.com/nanoninee/vim/malice.htm

今回は

* 12chにもhead.txtにあたるものがあることに気づいたので対応
* 板名をSETTING.TXTから得るようにしてみた。ついでにスレタイに板名を付加して表示
* Mini Thread という掲示板 (http://www.flashcgi.net/) に対応

そんな感じでしょうか。dat検索は開発途上です。

216 :1:2003/03/02 17:52 ID:???
>>144の続きのような感じで。

Vimのコマンドラインには補完機能というのがありまして、ファイル名などの一
部を入力すると候補一覧を示してくれます。たとえば、

:buffer tolkien<Tab>

と入力すると、既に開いているバッファから tolkien という文字列を含むもの
の一覧を出してくれます。こんな感じです。

ttp://www.geocities.com/nanoninee/img/cmdline_cmpl.png

スレの場合はわかりにくいですけど、スレ一覧を選ぶには便利かなと。カーソル
キー(左右)で次々と候補を切り替えます。

217 :1:2003/03/02 20:26 ID:???
すいません、URLがpath形式で無い場合、2chのスレであっても12chで無いかどう
かチェックしに行くようになっちゃってます。今日中に修正します。

218 :1:2003/03/03 14:59 ID:???
>214
> 広める意図はありませんので

ていうかもともとモ板系以外に進出する意思は皆無だったんですよね。いまさら
思い出したように言うことでもないですけど…。ちょっとした出来心でスレ立て
テスト(&立て逃げ)するつもりが思いのほか暖かいレスを付けていただいたも
んで…。居座るにいたる(

Changelogがわりに、前スレです
ttp://www.ah.wakwak.com/~yosk/cgi-bin/read.cgi?dir=danger&thp=1035091237&ls=25

219 :1:2003/03/03 16:11 ID:???
スレ内で>>nとか一般のURLにジャンプする機能があると便利な時がありますよ
ね。次のように、スキンの件で登場したカスタマイズのやり方で実現することが
できます。

after/ftplugin/malice_thread:

nnoremap <silent> <buffer> <C-Tab> :call <SID>NextLink('next')<CR>
nnoremap <silent> <buffer> <S-Tab> :call <SID>NextLink('prev')<CR>

function! s:NextLink(flag)
 let linkpat = '\(\<\%(h\?ttps\?://\|www\)\|\(>>\?\|>>\?\)\(\d\+\|[0-9]\+\)\)'
 if 0
  let flag = ''
  if a:flag ==# 'prev'
  let flag = 'b'
  endif
  call search(linkpat, flag.'W')
  call cursor(line('.'), col('.'))
  call winline()
 else
  let cmd = a:flag ==# 'prev' ? 'N' : 'n'
  let @/ = linkpat
  call AL_execute('normal! '.cmd)
  "call AL_del_lastsearch()
 endif
endfunction

220 :1:2003/03/03 16:18 ID:???
>219 if 0 としてあるブロックは、search関数を使って探すんですが、挙動が
少々よくわからないところがあって。なんかカーソル位置がちゃんとマッチした
位置に行かないような気がするのでオフにしてあります。

else以降は n または N というノーマルコマンドで探します。これはVimのジャ
ンプ履歴に動作が残りますので、後で <C-O> や <C-I> で行きつ戻りつできま
す。

<C-Tab> で前方に、 <S-Tab> で後方に検索しますが、これは使いにくければ適
当に変更してください。(<C-Tab>というのは打ちにくいですけども、タブ文字
は実際には <C-I> なので、移動コマンドとバッティングしてしまうので使えな
いんです)

221 :1:2003/03/04 09:31 ID:???
新しくメガビとかの掲示板を見つけたときに、いちいち設定ファイルに書いて再
起動するのが面倒なので、コマンドで登録できるようにしました。

:MaliceRegistHost bbstype host1 [host2]

という書式です。コマンド名は :*Regi<Tab> とすれば補完されるでしょう。
bbstype には megabbs, ahhan, 12ch, hilight, around が有効です。このうち
ahhan, 12ch, hilight, around は(てかメガビ以外全部かよ。今気づいたよ)
スレURLを与えられた場合は自動的にホスト登録、スレオープンしますのであま
り必要は無いかと(登録せずにいきなりスレ一覧の方を開こうとしても無理です
が)。

メガビはcgiのパスとhtmlとかのファイルを置くパスが違う場合があるので、そ
の場合は

htmlpath cgipath

の順で登録してください。一応自動的に探すようにはなってるので必須ではあり
ません。

なおファイルには登録しないので継続的に利用するには regist.brd ファイルに
書いておく必要があります。書式は

[bbstype]
host

です。具体例としてはこんな感じ

[megabbs]
www.d-w-b.com/bbs

222 :1:2003/03/04 09:34 ID:???
>221
> メガビはcgiのパスとhtmlとかのファイルを置くパスが違う場合があるので、そ
> の場合は

それ以外のシステムで、サーバーの都合上やむを得ずcgiを別ディレクトリに置
いてあるようなケースには対応してないです。まぁ必要を感じればやります。と
思います。

223 :1:2003/03/04 10:20 ID:???
範囲指定付きでの利用もできるコマンドをまとめておきます。

v または V でヴィジュアル選択を開始、移動コマンドで選択領域を広げて…

* 書き込みキー (i, I, a, A) で引用付き書き込み
* & でHTML化
* x, d でノーマル、透明あぼーん

224 :1:2003/03/04 11:34 ID:???
メガビも自動認識できるようになったぽいです。あくまでもスレURLを与えた場
合のみです。たとえば、クリップボードにURLをコピーしておいて <C-N> とか、
スレ内にURLが貼ってあった場合はプレビュー処理の過程で。

最近困ってるのが、12chで、2ch互換モードのみで運用してる場合。どうにもこ
うにもという感じで、困難をきわめております。スレ表示じたいはできるんです
が、単純に2ちゃん形式として扱うとまずいんですよねぇ。

225 :1:2003/03/04 13:46 ID:???
いちごフカーツしたみたいですね。やっと実験ができる。

226 :1:2003/03/04 20:15 ID:???
HTML化したほうが見やすい場合があります。AAなどはもちろんですが、こういう
タグを利用したものもそうです。上がVimで下がieでの表示です。コードを確認
してないのでよくわかりませんが、スレ整形時に生のスペースは消してしまうよ
うなんで、こういうことになります。何か対策が必要かも。
ttp://www.geocities.com/nanoninee/img/compar_indent1.png
ttp://www.geocities.com/nanoninee/img/compar_indent2.png

ちなみに上のはhimajinさんの板一覧にも載ってないんだけど、2ちゃん互換なの
で板名がわかる上に、ローカルルールも表示してくれるんですね。自分でやっと
いて言うのもなんですが、ちょっと驚きました

227 :1:2003/03/04 23:20 ID:???
対応しますた>いちご
思ったとおり、ほぼA-round掲示板と同様な感じです。どうでもいいことです
が、したらば鯖でs-jijsの掲示板は初めて見たかも。たぶん。

書き込みもできます。スレ立てもできるんじゃないでしょうか。前に立てたこと
ある気がするので。

板一覧も、URLは覚えてませんが、トップを表示した時に左のフレームに表示さ
れるやつです、整形表示できると思います。

228 :1:2003/03/04 23:32 ID:???
板一覧は、malice_menu_url オプションを使います。普段はhimajinさんの「か
ちゅ〜しゃオンライン更新用」とか、2ちゃんの板メニュー形式のURLを登録して
おいて、いちごなどは一時的にコマンドラインで登録、R でリロード、
malice/cache/bbsmenu ファイルの内容を malice/other.brd にコピペ、という
方法を取るのが、少々面倒ですが、よいんではないかと思います。

229 :1:2003/03/05 15:19 ID:???
折角なんで、スレだけでなく板を開いた時もBBSタイプを自動認識できるように
したいです。スレと違ってURLの形式からは割り出せないので難しいでしょうけ
ど。

230 :1:2003/03/05 17:42 ID:???
Improvement: 板オープン時に、12ch、2ch互換、メガビ、Ahhan、Aroundのいず
れであるかを判断するようにしてみました。

231 :1:2003/03/05 20:04 ID:???
>>226
> スレ整形時に生のスペースは消してしまうようなんで、こういうことになりま
> す。何か対策が必要かも。

でけたようです。生のスペースどころか改行の前後の空白文字をごっそり消して
いたのが原因でした。
ttp://www.geocities.com/nanoninee/img/indented.png

232 :1:2003/03/06 00:27 ID:???
Fix: キャッシュリスト作成時(スレ一覧で C)に、既得のdatがゼロだと永久
ループになってしまうバグを修正

233 :名無しさん@Vim:2003/03/06 15:05 ID:???
すいません、メガビで書けなくなってるようです

234 :!:2003/03/06 19:00 ID:???
どうやら1つ機能修正すると1つエンバグするのが仕様になっているようです…

235 :1:2003/03/06 19:01 ID:???
あ、なんかシフトキーを押してしまったみたいです…

236 : :2003/03/06 23:37 ID:???
>>234
ワラタ

237 :1:2003/03/07 20:35 ID:???
>>ttp://ichigo.shitaraba.com/cgi/readres.cgi?bo=hihan&vi=0427&rr=12&fi=no
はっ、なんでわかったんだろう…。と、こっちで答えてみたりして。

238 :1:2003/03/08 00:27 ID:???
いちおう、スレごとのHNが設定できるようになってます。スレ一覧バッファで、

:let b:username = 'nantoka'

としてください。相変わらず設定ファイルには保存しませんのでその場限りの機
能となります…。そのうち何とか考えたいです。_malicerc みたいなファイルで
外部板登録なんかも含めて設定できるようになりたいです。

あと、実用上はあまり困らないんですが、スレURLの出力に関して。2ちゃん互換
板の場合はすべてpath形式で出しちゃうんですよね。これだとうなぎスクリプト
とか、未対応の掲示板ではちょっと問題ありますよね。どうしようかな〜。

239 :1:2003/03/08 00:27 ID:???
>238
> いちおう、スレごとのHNが設定できるようになってます
板ごと、です。スマソ

240 :1:2003/03/08 10:51 ID:???
いちごの板一覧整形がおかしくなってます。あんまりこういう、恣意的に形式を
変えられるようなものには対応しない方がいいかな?

241 :1:2003/03/08 22:46 ID:???
対応しますた>240。

しかし、いちごのスレ一覧表示はちと遅いですね。ロビーとか、ほんと勘弁して
くださいって感じです。

242 :1:2003/03/09 15:57 ID:???
12chのread.cgi読みに対応してみました。これで(常識的なケースであれば)す
べての12ch掲示板の読み書きに対応できたと思います。

243 :1:2003/03/10 12:39 ID:???
現在見えているスレ、スレ一覧のリストを動的に管理できるようになったので、
複数同時に開いている場合の順次アクティベーション(u, U でスレ一覧、m で
スレを順繰りにアクティブにする)の処理が改善されたと思います。

# そろそろ1万行逝きそう>malice.vim

244 :1:2003/03/10 17:03 ID:???
最近12chの話ばかりしているような気がしますが…。ここのcgiは結構面白いの
で拘ってしまうんですよね。データ形式がユニークなのも個人的に好みです。

でも、管理者によっては、かちゅ互換モードのみで運営してたり、cgi読みしか
できないようにしてたり、いろいろ複雑なパターンがありまして、すごく悩みま
した。最初からcgi読みオンリーにしてればよかったかも…。

まぁともかく、12chだけで3つのBBSTypeを設けてあるんですが、それの判定をよ
り強化してみました。gvimの最新版 (6.1.385) とあわせて今日中にアップした
いと思います。

245 :名無しさん@0ちゃんねる:2003/03/10 17:13 ID:???
たまにはあげてみるテスト

246 :1:2003/03/10 17:46 ID:???
>245 テスト失敗でしょうか?

247 :名無しさん@0ちゃんねる:2003/03/10 21:01 ID:???
今の今まで下げてることに気付かなかった(つд`)
あげ

248 :1:2003/03/10 22:41 ID:???
バイナリあげた途端にまたパッチ出てるし…。はぁ。

>247 ども。気にしないであげたりさげたりしてください。

249 :1:2003/03/10 23:48 ID:???
しょっちゅうSETTING.TXTを読みにいってしまうのが気になるわけなんです
が…。取得時にタイムスタンプを現在の時刻にしてやれば設定したインターバル
通りに取得するようになりますかね? なりますよね。それでいいのかな?

250 :1:2003/03/11 10:12 ID:???
>249 あぁそっか、それやっちゃうと条件付きGETができなくなる罠ですね。

251 :1:2003/03/11 21:24 ID:???
いくつか、ごく微妙なバグフィックス、不具合修正をしました。説明するのも煩
わしいような些細なことなんですが、いちおうアップデートをお願いします。

252 :1:2003/03/11 21:34 ID:???
やっぱ書いといたほうがいいですね。

* 終了時に無駄な履歴登録処理をやっていた(イベントで自動的に行うように
 なったのに削除するの忘れてた)
* 新しいスレ一覧を開いた時に、アクティブなスレ一覧番号が無効な数値になっ
 ていた

あとは忘れました。そんな感じです。

253 :1:2003/03/11 21:39 ID:???
すいません、>>234 がまた現実のものとなってしまったような気がしてます。

254 :1:2003/03/11 22:06 ID:???
今度こそ修正できたかと。ほんとすいません。>252の1個目でちょっと弄った部
分で、実害はないんですが終了時にウィンドウサイズがやけに小さくなっちゃっ
う現象が出まして。もう大丈夫なはずです。

255 : :2003/03/11 23:59 ID:???
>>1@Vim
( ゚∀゚)ガンガレー

256 :1byte!?:2003/03/12 00:21 ID:???
>255 ありがとうございます!

257 :1:2003/03/13 13:57 ID:???
Fix: 板移転時に移転先検出機能が作動しない場合があったので修正してみました

258 :1:2003/03/13 16:47 ID:???
このドメインが復活したのね…>www.ichigobbs.net

う〜、どうしよっかな。

259 :1:2003/03/13 16:48 ID:???
あ〜、復活って言うか、前は.comでしたっけ。

260 :1:2003/03/13 17:06 ID:???
暫定的に、スレデータはwww.ichigobbs.netのホスト名でもって保存することに
します(したらばのURLを与えた場合でも、ということです)。最新版に差し替
え後、もし既読のものがあれば以下のようにしてください。

:new
:cd ~/vimfiles/chalice/cache
:put =glob('*ichigo*')

サブジェクトはまぁ消しちゃってもいいかな。

:g/^s/call delete(getline('.'))

で、datをリネームします。

:g/^d/call rename(getline('.'), substitute(getline('.'), '^dat_\([^_]\+\)', 'dat_www.ichigobbs.net', ''))

タイプミスのないように注意してください…

261 :1:2003/03/14 09:21 ID:???
Fix: こういうアンカー >1,2,3 をプレビューした時に、>1-3 と表示できるよう
にしてみました。

262 :1:2003/03/14 11:25 ID:???
すごく微妙なんですけども、数字だけでもプレビューしたい時があるので(HNに
数字だけ書いてる人とか)、できるようにしてみました。適当な数字の上で
<C-P><C-P> するとできます。自動プレビューが有効な場合のみです。

あと、これもまた微妙なんですけども、たまに現在のレスをリモートのcgiで表
示させたい時があるので、できるようにしました(これはちょっと前にやったん
ですが)。レス番号の上で <S-CR> を押すと表示します。

263 :1:2003/03/14 17:56 ID:???
Neta: Vim流のブラクラをお教えしましょう。たーくさんスレを見たのち、:sba
というコマンドを実行します。何が起こるでしょうか?

# 自発的にしか起こし得ないのでブラクラとは言えないか…

264 :1:2003/03/14 23:28 ID:???
:8080みたいな、ポート指定がついてると保存ができないようです。

265 :1:2003/03/15 15:46 ID:???
前にあげたgvim 6.1.385がちょっと落ちやすい気がしたので6.1.390に差し替え
ました、って書いた気がしたんですけど、気のせいでしょうか? 寝ぼけてたの
かな

まいいや、>264の修正と併せて6.1.392を今日中にうpします。

266 :1:2003/03/15 15:47 ID:???
あら、行頭に変なスペースが入ってるような気が…

267 :1:2003/03/15 17:28 ID:???
書き込み時の特殊文字の扱いについて、見直しをしてるんですが、実体参照につ
いて何も知らないので頭がこんがらがってます。ここの最初の方でもアフォなこと
言ったような…

で、意外なことに気づいたんですが、unix板って実体参照はダメなんですね。前
からでしょうか?

268 :1:2003/03/16 01:08 ID:???
>265
> >264の修正と併せて6.1.392を今日中にうpします。

すいません、約束を破ってしまいました。まだです。今日中にはなんとか。

269 :1:2003/03/16 14:02 ID:???
パッチが400番台までいっちゃったそうです(うがー

270 :1:2003/03/16 14:24 ID:???
衝撃の事実に気づいてしまったんですが、更新チェック関数(s:Cruise)のルー
プ部分、while 1 としてるだけでbreakも何もないんですけど、何で永久ループ
にならないんでしょう? さっぱりわかんないんですけど…。ダレカオシエテ

271 :1:2003/03/17 00:02 ID:???
Bug: <C-W>o また :only コマンドでは通常、カーソルのあるウィンドウだけが
残るんですが、なぜかそうならない場合があるみたいです。再現性はわかりませ
ん。原因まったく不明。心当たりなし、です。

272 :1:2003/03/17 00:16 ID:???
こんなのが未だに残ってたりするんですねぇ…。subject.txtも。
ttp://saki.2ch.net/morning/SETTING.TXT

273 :1:2003/03/17 22:53 ID:???
フッターの表示ってどうやればいいんだろう…

274 :1:2003/03/18 10:36 ID:???
>270 連続的な更新チェックの実験をしているので、先日あげた版からはその辺
のコードはかなり変わっちゃってます。謎は謎のままってことで。

275 :1:2003/03/18 20:46 ID:???
>271 何となく原因が分かってきました。スレを閉じる時に閲覧履歴を登録しよ
うとするんですが、その時点で履歴が既に閉じられていた場合に問題が出るよう
な気がします。window.cの close_others 関数から呼び出される win_close 関
数によって curwin 構造体がなんか別のにすりかわっちゃう?

セッション中でもできるだけ自由なウィンドウの使い方ができるように(板一覧
を消して縦2列にしてみたりとか)いろいろ試してる中で出てきた問題なんです
が、かなりやっかいです。

276 :1:2003/03/18 20:56 ID:???
>275
> スレを閉じる時に閲覧履歴を登録しようとするんですが、その時点で履歴が既
> に閉じられていた場合に問題が出るような

:only を実行する時点で履歴が全てのスレよりも若いウィンドウ番号になってい
る場合、という言い方が正確かもしれません。すいません、いずれにしても分か
りにくいですよね。

277 :1:2003/03/18 21:06 ID:???
あ、直ったかも。

278 :1:2003/03/18 21:31 ID:???
まぁこんな感じのことがですね、できるようになりつつあるわけです。これまで
は難しかったんですよ? でもまだユーザーフレンドリーではないというか、
Vimのウィンドウやバッファの扱いを熟知してないとダメかも…
ttp://www.geocities.com/nanoninee/img/session_complicated.png
ttp://www.geocities.com/nanoninee/img/session_simplest.png

279 :1:2003/03/18 22:18 ID:???
やっぱ直ってない。

280 :1:2003/03/19 11:46 ID:???
http://tolkien.s7.xrea.com/test/read.cgi/jikken/1032096360/522n
超困るかも(w なぜなら

http://tolkien.s7.xrea.com/test/read.cgi/jikken/1043331322/288n
という風にしてるからです。17氏系だとそうなりますのでね。まぁそのとき考え
ればいいか…。あ〜、でもかちゅ〜しゃで読めない問題が出てきそうな予感。

281 :1:2003/03/19 12:10 ID:???
janeやぞぬでは読めるのか…。やっかいな話だなこりゃ

282 :1:2003/03/19 15:10 ID:???
比較スレで見て感動したのでちょっと真似してみました。Cはわからないので超
てきとーです。なんか、ヘンな気分(w
ttp://www.geocities.com/nanoninee/img/skin_cstyle.png

283 :1:2003/03/19 22:19 ID:???
スキンの仕組みをちょっと考えないといけないですねぇ。複数のものを簡単に切
り替えられるように。以前言ったやり方はあまり良くない…

284 : @管理人 ★:2003/03/20 00:55 ID:???
>>280-281
あ〜困りますたね。どうしよう。。
とりあえず、すぐに変わることはないです。

285 :1:2003/03/20 14:37 ID:???
>284
個人的には完全に2ちゃんと同形式にするのが良いと思います。gzip圧縮も含め
て、ということです。そうすれば多くの2ちゃんブラウザで読むことができると
思います。ただ、kageや、その方式を踏襲しているmaliceでは読めないことにな
ります。

kage作者さんには、スレ立ての問題は即座に対応していただけましたが、これは
ちょっと難しいかもしれません。

286 :1:2003/03/20 15:17 ID:???
こういう
> ttp://www.geocities.com/nanoninee/img/skin_cstyle.png

柔軟なスレ表示ができるように、レスジャンプとかのマッチング規則を柔軟にし
てみました。以前はレスの区切りに8つのハイフンを必要としていたり、レス番
号のあとに2つのスペースが要ったりしたんですが、そういう制限をなくしまし
た。

レス番号が行の先頭にありさえすれば、あとは自由にレイアウトできるようにな
ります(ショットのは黒字に黒で見えなくしているだけ)。

以下にスキンの作り方を改めて説明します。

287 :1:2003/03/20 15:22 ID:???
>286
> (ショットのは黒字に黒で見えなくしているだけ)
黒地、です。まぁどうでもいいですが

288 :1:2003/03/20 16:09 ID:???
スレッドの整形は、perlの to_text 関数によって、行単位で行っています。実
際に整形作業を行っているのは parsedat 関数で、その戻り値を to_text の側
で適切に表示されるよう処理しているわけです。

戻り値は、

行番号、名前、メール欄、日付(ID等も含む)、コメント

となっています。

要点は、行番号を先頭または改行文字(\r)の直後に置く、ということです。そ
れ以外は基本的にどのように配置してもかまいませんが、コメントの頭にはス
ペースを2つ入れることをお勧めします。

改行は、\r のみ有効です。\n は使わないでください。その他のエスケープ文字
については、:help expr-stringで確認してください。

行全体を " で囲む場合、" 文字を含めるには \\\" としなければいけませんの
で注意してください。

289 :1:2003/03/20 20:03 ID:???
let malice_winheight_history = 1

としてみるとちょいカコイイかも。

290 :1:2003/03/20 21:44 ID:???
>288
> 改行は、\r のみ有効です。\n は使わないでください。その他のエスケープ文字
> については、:help expr-stringで確認してください。

大嘘だったようです。\nを使った方がいいぽい。ちょっと確認してきます。

291 :1:2003/03/20 22:44 ID:???
dat整形について見直しを行った結果、今後(さっきうpした版から)、改行文
字は \n で統一することにしたいと思います(はぁ〜ショッキング

292 :1:2003/03/21 13:09 ID:???
スキンは、maliceディレクトリの下にskinsディレクトリを作って、さらにスキ
ン名のディレクトリを作って、そこにプラグイン(出力定義)とシンタックス定
義のファイルを置けばいいんじゃないかと、ふと思いました。で、vimrcに

set rtp+=~/vimfiles/malice/skins/skinname

というのをruntimepath定義の後に置いて、skinnameのところを適宜書き換えれ
ばおっけー、と。

293 :1:2003/03/21 13:38 ID:???
AA入力支援ってどうなんですかね。うまいやり方が思いつかないんですが。

after/ftplugin/malice_write.vim あたりに

let @f = 'フゥゥ━━━( ´_ゝ)━( ´)━( )━( )━( ゝ`)━(´_ゝ`)━( ´_ゝ`)━━━ン'

みたいな感じでレジスタに登録して、:put f や "fp して出す、またiabbrev コ
マンドで

iabbrev <buffer> TRIP honyarara

としておくと書き込みバッファで TRIP とタイプするとキーに置き換わる、とい
うようなことができます。参考にしてください。

レジスタを使う問題点は、前に登録してあったものが消えてしまう、また終了後
もレジスタに残ってしまう、という点でしょうか。

いちおう、ヘルプ項目です
:help registers
:help abbreviations

294 :1:2003/03/21 13:39 ID:???
あれー、なんか書き込むとウィンドウが分割されちゃう

295 :test:2003/03/21 13:45 ID:???



296 :1:2003/03/22 02:45 ID:???
めちゃめちゃ重大なバグに気付きました。削除コマンドで栞を削除する時、その
スレのURLの行を含むカテゴリごと削除してしまうという恐ろしいバグです。こ
れまで何度かごっそり栞が消えちゃう現象があったんですが、気付くのが遅すぎ
た…。ショックです。速やかに最新版に差し替えてください。

297 :名無しさん@0ちゃんねる:2003/03/22 08:53 ID:???
1さんの使ってみようと思うのですが
http://www.geocities.com/nanoninee/vim/malice.htm
> GNU iconv(文字コード変換プログラム)(注 2)
って言うのはどこへ行けばダウンロードできますか?

298 :1:2003/03/22 14:08 ID:???
>>297
こちらで手に入ります。
ttp://www.kaoriya.net/

vimの公式ホームページ (www.vim.org) にもあるかも知れません。あと、最近の
方針変更でperl必須ということにしたんですが、その点は大丈夫でしょうか?

299 :1:2003/03/22 15:37 ID:???
デフォルトの板一覧URLを2chのにしてみました。あと、複数のスレ、スレ一覧を
開いている時のリサイズ処理 ( <C-L> ) が改善されたと思います(垂直にスプ
リットした場合の動作は保証できませんが)。

300 :名無しさん@0ちゃんねる:2003/03/22 15:38 ID:???
>>298
ありがとうございます。

> 方針変更でperl必須ということにしたんですが、その点は大丈夫でしょうか?
これは前に一回インストールした覚えがあるので大丈夫だと思います。
だめだったらもう一回インストールします。

301 :1:2003/03/22 15:55 ID:???
>300
Perlのバージョンは何でしょう? 5.8系だと私がビルドしてるgvimのバイナリ
(perl 5.6用)では使えません、kaoriya版のgvimパッケージをお勧めします。

ちなみにもともとvimはインストールされてましたか? もしお初なら、フルイ
ンストールがお勧めなので(ヘルプとかありますし)kaoriya版か、vim公式ペー
ジのパッケージをインストールしてみてください。
ttp://vim.sourceforge.net/download.php

で、perl5.6系をお持ちなのであれば、私の方のgvimと差し替えていただくと、
準備万端ということになります。

302 :1:2003/03/22 23:35 ID:???
>>116

再び遅レスですが、ウィンドウ位置の調節をするコマンドがあるということを
vimスレで見て知りましたので。

>>117
> 位置のコントロールについては多分ウィンドウ・マネージャー依存になってし
> まう気がします。Vim固有の機能としては存在しないと思います。

大嘘でした。ほんっと、知らない機能がたくさんあるもんですね…。

:winpos x y

で位置を変更できます。画面左上からのピクセル数になります。_gvimrcに書い
ておくといいかも知れません。

303 :管理人 ★:2003/03/23 00:40 ID:???
>>302
ぉ、わざわざありがとんございまつた。

304 :1:2003/03/24 14:03 ID:???
Zetaが移転して少々ややこしいことになったんですが(cgiのパスとdatのパスが
違う)、同様のことはメガビで経験済みなので割と簡単に対応できたっぽいで
す。Niftyとかでの読み書きも、今回で同じく対応できると思います。

最新版で、外部板登録ファイル regist.brd に

[2chtype]
host[tab]host/cgi-bin

のように書いて起動すると、読み書きともにできるようになります(多分)。

305 :1:2003/03/24 14:05 ID:???
なんか表示がおかしいわけなんですが、行頭にスペースを入れたりしないように
お願いします。

306 :1:2003/03/24 23:25 ID:???
Tip: しょーもないことなんですが、たまにスレ画面だけを残してほかは閉じた
い時が個人的にありまして、で :only は使えないということで考えてみまし
た。

:windo if !exists('b:dat')|q|endif

windo は覚えておくと結構便利なコマンドです。全ての開いているウィンドウに
対してコマンドを実行する、というものです。スレは dat というバッファ変数
を持っているのが特徴なので、それが存在しないウィンドウを quit コマンドで
閉じる、ということをしています。

ウィンドウの扱い全般については、 :help windows とすると詳しい説明が載っ
ていますので、ぜひお読みください。

307 :1:2003/03/24 23:37 ID:???
応用として、開いてる全てのスレで更新チェックをすることもできますね。黒っ
ぽい技ですが。

308 :1:2003/03/24 23:45 ID:???
>307
と思ったらなんか変なことになっちゃった。う〜ん、撤回!

309 :1:2003/03/24 23:53 ID:???
これでいけるっぽいです。

:windo if exists('b:dat')|exe "normal r"|endif

executeコマンドがみそらしい…? よくわかんない

310 :1:2003/03/25 00:33 ID:???
よくあることなんですが、スレ画面で間違えて x や d を押してしまい、意図せ
ずレスをあぼーんしてしまったという場合、

:sp <C-R>=b:abone<CR><CR>

とするとあぼーん用ファイルを開くことができますので、そこで編集を行ってく
ださい。あるいは、

:call delete(b:abone)

とすることであぼーんファイルそのものを削除することもできます。

311 :1:2003/03/25 11:24 ID:???
スキンのサンプルを作ってみました。
ttp://www.geocities.com/nanoninee/vim/skin_c.zip

malice/skins ディレクトリを作って、そこで解凍してください。で、

:set rtp+=~/vimfiles/malice/skins/c

とvimrcに書いておくと、次回起動時から使えるようになります。

312 :1:2003/03/25 11:49 ID:???
もいっちょ。これがいちばん気に入っとります。
ttp://www.geocities.com/nanoninee/vim/skin_simple.zip

313 :1:2003/03/25 12:00 ID:???
もし以前に after ディレクトリ内にスキン用のプラグイン、シンタックスファ
イルを作った場合は、削除するか拡張子を vim~ などとして無効化しておいてく
ださい。

314 :1:2003/03/25 21:29 ID:???
jbbs@したらばのread.cgiは、該当スレが倉庫に落ちると302 Foundを返してくれ
るんですね。これはツール的にはちょっと嬉しいです。ついでにLocationヘッダ
で倉庫のURLを出してくれるんですよねぇ。まぁLocationは有用な値が得られる
ことがあまり無いので見ませんけど。

と、言いながら思い出しましたけど、rfc2616によれば、LocationのURIは絶対指
定じゃないといけないんですよね。相対指定になってるなぁ…

315 :1:2003/03/26 13:25 ID:???
なんかとんでもないことに気付いたような気がするんですが、初めてvimからイ
ンストールされた方は、ちゃんと色付きで表示されてますでしょうか? ただの
白黒の画面になっちゃってませんか?

もしそうなら、_vimrc に、syntax on という行を追加してください。
:syntax on とタイプするとその場でハイライトが有効になります。

316 :1:2003/03/26 14:12 ID:???
カラーリングについて少し。vim6 には colorscheme という仕組みがありまし
て、文法強調をするときの配色を、「テーマ」のような感じで設定することがで
きます。

www.vim.org (←ミラーなのか何なのか知りませんが、オリジナルは
sourceforge にあります)の Search のページから、color scheme を探して、
気に入ったものを見つけてください。個人的には candy というのがいちばん綺
麗で見やすいと思っています。

dlしたスキームを適用するには、:source scheme.vim としてください。スキー
ム用のディレクトリは ~/vimfiles/colors となりますのでそこに移動しておき
ましょう。そうすると :color scheme (拡張子をつけない)とするだけで利用
できるようになります。

_vimrc に color scheme という行を書いておけば、毎回起動時にそのスキーム
が有効になります。

317 :1:2003/03/26 14:33 ID:???
もしたくさんカラースキームが集まりすぎて、どれがどれだかわからなくなった
ら、こういうマクロが便利かもしれません。
ttp://www.geocities.com/nanoninee/vim/docolor.vim.txt

拡張子 .txt を取って、~/vimfiles/macros ディレクトリにでも入れておいてく
ださい(pluginディレクトリはだめです)。

全てのスキームから1つ、ランダムに選んで実行するというものです。vimのサイ
トに同様のスクリプトがありますが、これはその改良版です(むこうのも私が書
いたのなんで、パクリとかじゃないです)。

手動で source するのが良いかと思われますが、もし起動時にランダムなカラー
を使いたいという場合は、vimrc の colorscheme コマンドの所を変更して、

if 0
color scheme
else
source ~/vimfiles/macros/doloclor.vim
endif

としてみてください。気分次第で 0 と 非0 とを切り替えてやると良いと思いま
す。

318 :1:2003/03/26 14:51 ID:???
あ〜、それ(if 0うんぬん)やっちゃうと起動時にダイアログボックスが出ちゃ
いますねぇ。これはイクナイなぁ…。ちょっと考え直してみます。

319 :1:2003/03/26 14:56 ID:???
わかりました。

>317
> source ~/vimfiles/macros/doloclor.vim
source の前に silent を付けるとおっけーです。

320 :1:2003/03/27 13:29 ID:???
日付が日本語に! 最新のパッチが適用されたvimが必要です。
ttp://www.geocities.com/nanoninee/img/strftime_locale.png

321 :1:2003/03/27 14:52 ID:???
予定している仕様変更。vimの起動を高速化するため、プラグイン読み込み時に
perlサブルーチンの定義等が行われないようにします。スキンも、malice起動時
に読み込まれるようにします。

これに関連して、スキン・ファイルの名前を malice_skin.vim で統一すること
にしました。既存のものは、そのようにリネームしておいてください。

あと、dat整形に関して、idを日付から切り離すようにしました。ので、
parsedat関数の戻り値が変わります。

322 :1:2003/03/27 16:24 ID:???
上記の変更を行いました。ほかにも色々弄ったのでまた例のごとく不具合が生じ
るかもしれません。いや生じるでしょう。

323 :1:2003/03/27 16:50 ID:???
TIP: 各バッファに「マーク」というものを付けることができます。目には見え
ないんですが。ここ重要、とか、あとで戻りたい、と思った所で :mark a ある
いは :ka などとするとその場所にマークが記録されます。マークに指定できる
のはアルファベットです。大文字と小文字は区別されます。

で、マークをつけたところにジャンプするには、 `a とか 'a とします。

:marks コマンドでマークがついている箇所を確認することもできます。

大文字で指定すると、現在そのバッファに居なくてもそこへジャンプすることが
できます。

これは大変便利なので活用してみてください。ヘルプは :help mark-motions で
す。

324 :1:2003/03/27 18:10 ID:???
kageにHTTP認証の機能が付きましたね〜。ポピュラーなものでは初なんじゃない
ですか?

325 :1:2003/03/28 00:55 ID:???
ここで最初にスレ立てしたのがかちゅでなくVimだと言ったら怒られるだろう
か…。
ttp://kage.monazilla.org/pass/

だって久しぶりにテストしてみたかったんだもん。あ、もちろんかちゅでも読み
書き確認できました。

326 :1:2003/03/28 02:26 ID:???
TODO: BASIC認証の掲示板で、ID, PW付きのURLだと有効なスレURLとして認識で
きない気がするので、なんとかしよう…とか思って試してみたら、できちゃっ
た。これどういうことっすか? これでいいんですか? たぶん良くない気がす
るので、なんとかしよう…。

ttp://www.geocities.com/nanoninee/img/uri_with_idpw.png

327 :1:2003/03/28 02:58 ID:???
>326 に関連して、バッファ名に @ か : を含んでいた場合、どっちのせいかは
まだわかってませんが、イベントが発生しない気がします。あと、ウィンドウ閉
じてるのに開いてるとか言われちゃったり。変な感じなんです。

同じリソースに対してdatやsubjectが2つ保存されちゃうという問題もあるの
で、これはなんとかしないといけません。

328 :1:2003/03/28 13:42 ID:???
ID, PW付きのURLの問題に対応しました。栞に http://id:pass@hoge.com/board/
としておくと、ログインのプロンプトを出さずにログイン、画面にもid, passは
出ません(栞ファイルを見られたらだめですけど)。

バッファ名に不正な文字が入っていた場合の問題は未解決です。

329 :1:2003/03/28 14:29 ID:???
> バッファ名に不正な文字が入っていた場合の問題
とりあえず対応しました。

330 :1:2003/03/29 16:18 ID:???
ちょっと大きな仕様変更(予定):

開発当初はChaliceとのログ共有が仕様上必要だったんですが、Chaliceは既に新
しいログ管理方式に移行しています(旧形式もサポートされているようではあり
ますが)ので、共用が難しいということで、今後全てのログはデフォルトで
malice/cache ディレクトリに置いて管理するようにしたいと思います(これは
オプションで設定できるようにしたいと思ってます。既になってるかもしれませ
んが)。

移行期間として、

* chalice/cache ディレクトリにファイルがあればそれを使う、新規ファイルは
malice/cache ディレクトリに作成、という並行方式 (1)

* chalice/cache ディレクトリに dat なり subject を発見した場合は警告を発し
て即終了 (2)

* (2) で終了するのではなく、強引に mv/move コマンドで移動 (3)

* むしろ chalice/cache ディレクトリはチェックしない (4)

というオプションが考えられると思います。

(1) は非常に問題がややこしいことになる気がするので、できればそれ以外のや
り方がいいかなと思います。

いずれにせよ、(自分はしませんが)Chaliceとの併用というオプションも視野
に入れる必要がありますから、注意深くやらなければと思っています。ややこし
いことに巻き込んでしまいますが、その時はよろしく対処のほどお願いします。

331 :subject更新したのでage@管理人 ★:2003/03/30 02:55 ID:???
>>1タン
なんか大変そうですね。。がんがってください。
(subject更新したのであげさせてもらいます)

332 :1:2003/04/02 20:46 ID:???
>>331 ありがとうございます。

dat整形関数について、各種情報が引数の順序に依存するのはまずいということ
で、ハッシュを使うようにしました。なので、またスキンの仕様が変わりまし
た。ついでに、本文行頭のパディングを指定できるようにしてみました。サンプ
ル:

ttp://www.geocities.com/nanoninee/vim/skin_c.zip

333 :1:2003/04/02 21:28 ID:???
現在の板を対象にみみずん検索をかけるスクリプトを考えてみました。>>334
を、after/ftplugin/malice.vim あたりに書いておくといいかも。

2chのスレもしくはスレ一覧画面で

:Mimizun keyword

と入力するとブラウザを起動して表示します。引数はなくてもいいです。

334 :1:2003/04/02 21:29 ID:???
function! s:SearchMimizun(word)
if !exists('b:board')
return
endif

let word = a:word
if !strlen(word)
let word = input('type search keywords: ')
if !strlen(word)
return
endif
endif

let word = AL_urlencode(word)
let board = substitute(b:board, '^/', '', '')
let url = 'mimizun.mine.nu/cgi/namazu.cgi.exe?whence=0&query='.word
let url = url.'&max=100&result=normal&sort=date%3Alate'
let url = url.'&idxname='.board
call AL_open_url('http://'.url, g:malice_exbrowser)
endfunction

command! -nargs=* Mimizun call s:SearchMimizun(<q-args>)

335 :1:2003/04/02 21:40 ID:???
ありゃ、知らなかったですけどみみずんってライブなスレも検索できるように
なってますね。

> let url = url.'&idxname='.board
の行を
let url = url.'&idxname=_livethread'.board

にすれば多分ライブスレ検索になると思います。

336 :1:2003/04/02 22:02 ID:???
>>333
> after/ftplugin/malice.vim あたりに書いておくといいかも。
む、これはよくなかったかも。malice関連のファイルタイプを設定するたびに同
じ関数が定義されることになりますからね。メモリー的には問題ないと思います
けど。

337 :1:2003/04/02 22:13 ID:???
あ〜、pluginディレクトリに適当に放り込めばよかったんですね。初歩的なミス
失礼しました。

338 :1:2003/04/08 13:25 ID:???
Change:

* dat削除コマンドのデザインを変更してみました。最大7項目の削除対象を番号
付きで表示、番号をタイプすると削除、無関係のキーをタイプするとアボー
ト、という風になります。

* スレ(一覧)を全部閉じた後の復活機能が少し前からあったんですが、これを
最後に「開いた」ものから、最後に「見ていた」ものを復活させるようにして
みました。

どちらもまだ実験的です。

339 :1:2003/04/09 14:48 ID:???
巡回について(その1)

現在実装されている機能のおさらい。栞でスペースを押すと(オンラインなら)
カーソル下のスレの更新チェックを行います。更新があればそのまま表示、無け
れば次の行に移動します。

これまでアナウンスしてませんでしたが、隠し機能としてこのチェックを連続的
に行うことができます。巡回コマンドの引数に consecutive を加えることで実
現できます。

例:
nmap <buffer> key-sequence :MaliceCruise bookmark,consecutive<CR>

このような行を after/ftplugin/malice_bookmark.vim に書いておきます。キー
マップは :h keycodes として好きなものを探してください。

MaliceCruiseコマンドの引数はコンマ区切りで書きます。bookmarkオプションは
必須です。スレでの更新チェック(スレをスペースでスクロールしていき、いち
ばん最後まで行くと栞に移動して更新チェックをするようになっている)と区別
するためです。

splitオプションを加えると新しいウィンドウで開きます。結構べんりだと思い
ます。

340 :1:2003/04/09 15:01 ID:???
>339 言い忘れましたが、連続チェック機能を利用する場合は、スレがある程度
サーバーごとにかたまって置かれていることが望ましいです。もう1点、空行
や、取得時のエラーがあるとそこで連続チェックは止まるようになっています。
暴走はまず起こらないと思います。

巡回について(その2)

最新版で、かちゅ〜しゃ等での巡回のイメージに近い機能を実装してみました。

スレ一覧にて複数スレをビジュアル選択(V を押し j,k 等で移動)して <CR>
すると、選択されたスレの取得のみ行います。栞でも同様のことができます。

341 :1:2003/04/09 18:17 ID:???
>338
> * スレ(一覧)を全部閉じた後の復活機能が少し前からあったんですが、これを
> 最後に「開いた」ものから、最後に「見ていた」ものを復活させるようにして
> みました。

ちゃんとそのようになってなかったので次で修正します。

あと、仕様変更(同じく次回予定)。

スレ一覧の名称が内部的に threadlist だったり board だったりしてややこし
かったので、board に統一します。短い方がタイプしやすいというのが理由で
す。

ウィンドウの高さ設定オプション malice_winheight_threadlist は
malice_winheight_board となります。

また、malice_threadlist.vim(ファイルタイプ、シンタックス両ファイル)が
malice_board.vim にリネームされます。

342 :1:2003/04/12 16:12 ID:???
信じられないことですが、geocitiesのアカウントがクラックされたようです。
ページは変わりなく見れるようですが、Maliceパッケージの有効性はチェックし
てないので注意してください。とりあえずパスワードを何とかしたいと思いま
す。

343 :1:2003/04/12 16:23 ID:???
いちおうあげ直しました>malice.zip

ついでに
ttp://www.geocities.com/nanoninee/img/slashdot_test1.png

344 :1:2003/04/12 16:25 ID:???
あ、ドットスラッシュになってる

345 :名無しさん@0ちゃんねる:2003/04/12 16:51 ID:???
すげー(感心してる場合ではない)
世の中にはそんな暇な人もいるんですねー
(もしかして、パスワードが簡単だったとか…)
なんで気づいたんですか?

346 :1:2003/04/12 16:58 ID:???
>345 パスワードが拒否されちったんですよ。はい。パスワードを作る時はでき
るだけランダムなものになるようにしてるんですけどね…。手作業ですが。

347 :1:2003/04/12 17:11 ID:???
スレ読みまでの遠いx2道のりその2
ttp://www.geocities.com/nanoninee/img/slashdot_test2.png

348 :名無しさん@0ちゃんねる:2003/04/12 19:21 ID:???
>>346
え、じゃあいまはどうやってうpしてるんですか?

349 :1:2003/04/12 21:18 ID:???
>>348 パスを忘れた時用の手続きが用意されているので大丈夫でした。

350 :1:2003/04/12 21:42 ID:???
まぁでももしかしたら一時的に認証のシステムがダウンしてただけかも知れない
ですけどね。でもはっきりと拒否された旨が表示されましたので気持ち悪かった
です。大事にならなくて良かったですが、お騒がせしてどうも申し訳なかったで
す。

351 :1:2003/04/13 11:47 ID:???
ttp://www.geocities.com/nanoninee/img/slashdot_test3.png

yahooで懲りて/.はやらないと決めてたんですけども、ここまで漕ぎ着けまし
た。えまのんに刺激されました。

352 :1:2003/04/13 13:35 ID:???
てか結構前から読めてたのね>えまのん
2,3日前に比較スレで知ったんですが。

ちょっと差分取得に関して難問に突き当たったんですが、えまのんはどうしてる
のかなぁ。スレッド+時刻順でソートさせるとstartat=がレス単位にならないん
ですよね。でもレスのリンク関係を割り出すためには必要だし(不思議な仕様で
すが、べたに時刻順でソートさせるとレスの親子関係の情報が返って来ない)。

全取得しかないような気がしてきた。

353 :1:2003/04/13 17:05 ID:???
なんか適当なことばっかり言ってますが

>352
> スレッド+時刻順でソートさせるとstartat=がレス単位にならない
これは嘘で、startatは単純に投稿順になってる気がしてきました。多分そうで
しょう。

とりあえずの目標は、このスレがちゃんと読めるようになることです。気が早い
ですが、一応テスト用リンクとして貼っておきます。
ttp://slashdot.jp/article.pl?sid=03/03/06/1041206&topic=55

354 :1:2003/04/13 19:05 ID:???
はなはだ見切り発車的ではありますが、アップしてみました。

:let malice_menu_url = 'http://slashdot.jp/topics.shtml'

として、板一覧でリロードすると一覧が表示されます。

スレURLの扱いに関してはすこし限定的です。

* 「板」の概念を外すことができなかったので、URL中にtopic=num(カテゴリを
表す)という項目が入っている必要があります。
* article.pl?なんちゃらというURLでしか認識しません。comments.plの時と
sid(スレッドキーにあたる。何の略?)が異なるため
* レス番号は適当です。start=numの数字はmaliceで表示した時の番号であり、
リモートでは全然違うレスになります。

まぁ試してみてください。

355 :1:2003/04/13 23:56 ID:???
Fix: /.で、スレ一覧の項目数が30を超えていても表示できるようにしました。
いちおう上限は500ぐらいにしておきました。

356 :1:2003/04/15 12:31 ID:???
試験的に、pizaの過去ログを読めるようにしてみました。テスト用リンク:
ttp://piza.2ch.net/occult/kako/982/982363009.html

357 :1:2003/04/15 16:17 ID:???
pathinfo形式に対応していない2ch互換スクリプト用のbbstypeを作ってみまし
た。以下のようにしてregist.brdに追加してみてください。

[nopathinfo]
icefall.s2.xrea.com/x/unagi

kageやぞぬ等では逆だと思いますけど、最近はquerystring式のみ、という方が
少ないと思うのでこのような方式にしてみました。

358 :1:2003/04/16 03:24 ID:???
>356
もしかしてデリ? まぁ予想の範囲内ではあったんですが…

359 :1:2003/04/16 12:26 ID:???
Fix:
* URLを外部ブラウザで開けなくなっていた問題
* URLに ~ が含まれていると板名が取得できなかったりする問題
* ターミナル上で、<BS>を押しても板一覧に行かない問題

を修正しました。

360 :1:2003/04/16 15:55 ID:???
New:
* スレ削除コマンドに、一括削除のオプションを加えてみました。
* スキン等でメッセージをカスタマイズできるようになりました。サンプル:
ttp://www.geocities.com/nanoninee/vim/skin_c.zip

361 :1:2003/04/16 17:18 ID:???
datの改行文字がCRLFの場合は差分取得できないような気がする…。もちろん2ch
ではそのようなことはないですが。困ったな

362 :1:2003/04/16 23:48 ID:???
>358
> >356
> もしかしてデリ? まぁ予想の範囲内ではあったんですが…

新しいドメインで復活されましたので、修正版をあげておきます

363 :1:2003/04/17 12:54 ID:???
かなりショックなんですが、bbsタイプごとに各URL出力をする所で、デフォルト
の設定だとエラー出まくりですね。修正しました。

364 :1:2003/04/18 14:33 ID:???
スレで D を押すと削除できるようにしてみました。

スラド関連はまだまだ開発途上で、少しずつ修正など行ってます。米のも見れる
ようになったりしてます。

365 :1:2003/04/19 15:22 ID:???
>304
> Zetaが移転して少々ややこしいことになったんですが(cgiのパスとdatのパスが
> 違う)、同様のことはメガビで経験済みなので割と簡単に対応できたっぽいで
> す。Niftyとかでの読み書きも、今回で同じく対応できると思います。

> [2chtype]
> host[tab]host/cgi-bin

これについてですが、実装方法が間違っていました。cgiがtest/ディレクトリに
ない場合もありえますので、

[2chtype]
host[tab]host/cgi-bin/test

と、タブの後に実際にcgiのあるディレクトリを書いてください。これまでは勝
手に内部で '/test' を付加していてまずかったです。

366 :1:2003/04/21 09:20 ID:???
Fix:

よそで使おうとして、jcode.plがインストールされていない状態だとスレ整形が
できないことに気付きました。重大な欠陥を長い間気付かずに放置しておりまし
た。すいません。

# てか結構インストールするの難しいっすね…。かなり手間取りました

367 :1:2003/04/23 17:00 ID:???
仕様変更というか新機能です。板一覧を、各種bbsタイプごとに読み込むように
してみました。

これまでは、メインで使わない板一覧は、一時的に malice_menu_url の値を書
き換えて、手動で other.brd にコピペ、というやり方を取るしかなかったんで
すが、その必要がなくなります。

デフォルトで、2ch, megabbs, 15ch, slashdotを表示します。今のところこの他
に、Yahoo(米のみ)、みちのく、飼育に対応してます。

2chと言うのは2chのメニューの形式と互換であればよいので、配布されている拡
充版メニューをどれでも(しかも複数)指定することができます。

設定の仕方です。vimrcに、

let malice_menu_list = '2ch,mitinoku'
let malice_menu_url_2ch = 'http://foo.com/bbsmenu.html'
let malice_menu_url_mitinoku = 'http://bar.com/bbsmenu.html'

のように記述します。malice_menu_list はコンマ区切りのリストで、vimの変数
名になりうるもの (alphanumeric+underscore) なら何でもかまいません。で、
リストの各項目に対応するものを malice_menu_url_ にアペンドします。

# 欠点は、個別のアップデートができないことです。

368 :1:2003/04/24 18:00 ID:???
New:

板もしくは板一覧で、D を押すとその板(バッファ、subject、SETTING.TXT、
ローカルルール、全部です)を削除できるようになりました。

栞で、<S-Space>で連続チェック、<C-W><Space> で連続チェック+新ウィンドウ
で開くようにしました。

369 :1:2003/04/24 23:19 ID:???
日本のyahooも読めるようになった気がするので、今後デフォルトの板メニュー
に加えるかもしれません。
ttp://www.geocities.com/nanoninee/img/yahoo_jp_test.png

# /.とyahooは今のところ閲覧のみです。

370 :1:2003/04/25 12:54 ID:???
12chで、スレタイにレス番号が入ってしまう不具合を修正。最近見てなかったの
で気付くのが遅れました。

371 :1:2003/04/25 19:55 ID:???
スラドのスレ整形がおかしかったので修正しました。

以前修正したつもりが、ちゃんとセーブできてないということがvimではたまに
あるんです(泣

372 :1:2003/04/26 01:54 ID:???
TIP: globalコマンドの用例

2chでの書き込みの数を調べてみようと、書き込み履歴画面で、

:let i = 0
:g/\.2ch\.net/let i = i + 1
:echo i

とすると145でした。書き込み履歴自体は1月12日から始まっていて、1118ありま
す。2chで書いてなさすぎ

373 :1:2003/04/27 16:14 ID:???
New: <F1> でヘルプを表示するようにしてみました。

細かいバグフィックスなどもあります。

基本的にはユーザーフレンドリーであることは目標にありませんので、マウスと
かメニューのサポートはしないつもりですが、最低限ヘルプはあった方がいいか
なと、思いましたので。

374 :1:2003/04/28 13:54 ID:???
Fix: スレ一覧と栞のトグルがうまくいってなかったのを修正しました。その他
細かい修正や改善など。

375 :1:2003/04/29 16:24 ID:???
ふと思ったんですが、キャッシュディレクトリがスペースを含んでると全然読め
ないんでしょうか?

376 :名無しさん@0ちゃんねる:2003/07/18 18:35 ID:???
動きがなくてさびしいなぁ

377 :名無しさん@ぜろちゃんねる:2003/08/02 02:05 ID:???
どうしたんだろう

378 :a:2003/08/10 07:38 ID:tL/u3.76
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
a

a
a
d
a
ger
herh
sj
tj
s

379 :名無しさん@ぜろちゃんねる:2003/08/10 08:30 ID:???
ttp://f15.aaacafe.ne.jp/~nanonine/
ここ

380 :名無しさん@ぜろちゃんねる:04/07/27 12:15 ID:???
Nullpo

381 :名無しさん@ぜろちゃんねる:04/07/30 04:39 ID:???
ガッ

382 :名無しさん@ぜろちゃんねる:04/08/16 15:05 ID:???
初めてこのスレ来たケド面白くて1から全部読んでしまった
もう1さんは来ないのだろうか?


383 :名無しさん@ぜろちゃんねる:2006/02/12(日) 05:38:49 ID:???0
http://lol.u
>http://lol.u
>>http://lol.u
>>>http://lol.u
>>382

384 :名無しさん@ぜろちゃんねる:2006/02/12(日) 05:39:51 ID:???0
>>400

385 :名無しさん@ぜろちゃんねる:2006/02/12(日) 07:09:02 ID:???0
>>384 is DQN
I heard >>384 is DQN

108KB
新着レスの表示

名前: E-mail(省略可)
READ.CGI - 0ch+ BBS 0.7.5 20220323
ぜろちゃんねるプラス