■掲示板に戻る■ 全部 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

182 :1:2003/02/22 01:14 ID:???
結局perlで実装しました。思ったほど遅くもない感じです。これまでのスレ整形
の無駄な部分もわかったのでよかったです。

使い方:s キーを押すと検索パターン(正規表現)と検索対象の入力を促すメッ
セージが出ます。両方とも直接perlに渡します。ので前者はperlの正規表現をあ
る程度知っておいた方がいいかもしれません。ただの単語でももちろんかまいま
せん。検索対象には、一般的なワイルドカード(* と ?)が利用できます。複数
指定するには半角スペースを空けてください(e.g.: dat*unix* dat*php*)。

まだできたてなので不完全な部分が多々あります。現時点ではdatの検索のみと
なっています。

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

108KB
続きを読む

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