#テストテスト
#もいっちょ
#permalinkは右側の薄い'#'
#コード貼り付けテスト:
#(define (with-read-locking file proc)
(call-with-input-file file
(lambda (in)
(cond [in
(sys-fcntl in F_SETLK (make <sys-flock> :type F_RDLCK))
(unwind-protect (proc in)
(sys-fcntl in F_SETLK (make <sys-flock> :type F_UNLCK)))]
[else (call-with-input-string "" proc)]))
:if-does-not-exist #f))
#(define (emit-skeleton file out)
(with-read-locking file
(lambda (in)
(write-tree (make-skeleton (port->string in)) out)
(flush out))))
#from IE
#がんがん進歩していきますねぇ
#このバージョンのデータは多分消さなくても引き継いで行けると思う。
#ユーザ登録とかもあったほうがいいよね。
#あとは自動リンクと外部メディア貼り付けか
#他に何か欲しい機能ある?
#APIは必要か。
#誰それがenterしたとかleaveしたとかいうのもあった方がいいかな。
##あれ失敗
##
#
#できた
#<s>テスト</s>
#あれ、permalinkアンカーが3つも並んでるのはなぜだろう
##どら
#いや、違うな
#
#
#ああ、enterだけ押すと空のエントリがはいっちゃうのか
#これでどうかな。
#
#
#
#
#あ、やっぱだめだ
#これでどうかな
#できた。
#てすてす
#テスト
#なるほど。ログインとかはないんですね
#名前を変えてみる
#ユーザ登録はなくてもいいかもという気も。たとえばCookieでNicknameだけ覚える程度でいい気がします。
#ゆるい運営でもいいかなあ。ユーザ登録なしだと誰の発言か本当のところがわからないっていう欠点はあるのだけれど。
#まあWiLiKiもそういう意味では同じだし、気にしすぎる必要もないかなあ。
#peer IPをベースに発言者の色を変えると識別しやすいし、なりすましの簡便な防止は可能かも?
#……会社から書き込みと家から書き込みがはっきり分かれるから、だめかな
#あーなるほど。IPのハッシュ値をこっそり書きこんどこうかと思ったんだけど色を変える程度でもいいか。
#でもlingrみたいにアイコンが出るとそれはそれで個人識別しやすかったりする。
#Gravatarでアイコン出してしまうのはどうでしょう?
#テスト!
#「にぎやかし」の意味も含めてアイコンがあるとうれしいですね。
#(test)
#(test)
#あれ、二重にポストされてる
#むむむ
#title タグを動的に書き換えて未読発言数を表示する機能がタブブラウザで見ているときに、うれしかったです。可能ならば欲しいです。
#title タグを動的に書き換えて未読発言数を表示する機能がタブブラウザで見ているときに、うれしかったです。可能ならば欲しいです。
#2重投稿 orz
#2重?
#postのcgiが2回走ってるな。なんだろう。
#あ、いけね。ちょっといじっててhigeponさんの発言消しちゃった。
#いいですよ。
#画面への反映を post よりも先にやると enter 二重押しがなくなりそうですね。
#Lingrでやってたやつか。
#tes
#ですね。CGIの反応がちょっと遅いのでその方が良いかもしれません。
#ただまあ、今のpostとviewが完全に独立してるのはシンプルでわかりやすくはある。
#a
#a
#ああ、わかった。Keypressハンドラが2回走っちゃってるんだ。これはpost側で抑止できると思う。
#sf.netにプロジェクト作ってソースにアクセスできるようにするんで、みんなでよってたかってハックしてください。
#自前のサーバで手軽に走らせられる感じにするつもり。
#(今ならgithubとかの方が速いんだろうけど、oldtypeなもので…)
#すげーできてる。
#すげーできてる。
#お、二倍に増える!!
#あら、こんどは一回だけだ。
#あー、エンター押した直後に chat をクリックしたからでした。
#あ
#あ
え
#あ
え
f
#あ
え
f
#a
#a
b
#a
b
c
#a
b
c
d
#a
b
c
d
e
f
g
#a
b
c
d
e
#a
b
c
d
e
f
g
g
#a
b
c
d
e
f
#g
#Enter がおされたら、とりあえずすぐに Text の中身はクリアしちゃえばいいんじゃないでしょうかね。あるいは、disable にして、「ただいま処理中」の雰囲気をだすか。
#disableにするやつ書いてます。
#クリアすると、postに失敗した時に悲しいので。
#a
#disableにするように更新しました。いっぺんページをリロードしてください。
#a
#a
#おお!
#disable になってました。Mac OS X の Firefox から。
#IEからやってみる
#IEからやってみる
#IEからやってみる
#あらららだめだ
#あらららだめだ
#あら。
#disableでもイベント起動されちゃうのかな。
#disableでもイベント起動されちゃうのかな。
#うん、それっぽい。
#うん、それっぽい。
#いやまて。違うぞ。
#いやまて。違うぞ。
#一回Enterでも必ず重複するなあ。
#(こっちはfirefoxから)
#testing without IME
#testing without IME
#サファリ。
#Safari はだいじょうぶみたいですね。
#あ
#あ
#あ、いまは、エンター押した直後に chat ボタン押しました。
#ほげ
#hoge
#hoge
#hoge
#test
#test
#テステス
#test test
#ふむ。
#IEでは"chat"ボタンもdisableしないとだめみたい。
#Safari でもそうみたいです。
#Safari でもそうみたいです。
#たぶん、textareaのenterがフォーム全体のsubmitもトリガしちゃうんじゃないかな
#リロードしてみて。IEからはちゃんとできるようになった。
#ああ
#あああ
#ほげ
#ああ
#ああ
#Nickname でエンター押しても submit が発生します :D
#Firefox はどうかな。
#だいじょうぶぽい。
#まじ>Nicknameでエンター
#それって何かの属性で抑えられないかな。危なくってしょうがない。
#Firefox は大丈夫でした。Safari だけ。
#form 全体を無効化することってできるのかな。
#やってみた。
#てすてす
#もいっちょ
#どれどれ
#見た目の変化がない?
#ほほう
#お。
#あ、やべえ。IEでNicknameだけ入れてEnter押したらform全体がdisabledになったままだ。
#あああ
#あああ
#なんでNicknameのEnterがpostのトリガになるんだろう?
#いろはにほへと。
#textareaの方はちゃんとできてるようだな。
#ほげ
#あああああ
#あああああ
#複数行同時に入れるには?
どないしまんの?
#お。リロードしたらおっけーになったかな。
#お。リロードしたらおっけーになったかな。
#Safariはやっぱり重複する?
#しますねぇ。
#じゃあformも中の各要素もdisabledにしないとだめなんかな。
#ていうか、textarea が disable されなくなってました。
#コピペすれば複数行いれられるはず。>nobsun
#てすてす
#てすてす
#とおるくん、リロードして試してみて。
#リロード!
#リロード!
#だめかー。
#む。
#ファイアフォックス。
#複数行同時に入れるには?
どないしまんの?
#Firefox は優秀だなぁ。
#こぴぺしたけど。青帯つきだなぁ。
#えーっとそれはそういう仕様>青帯
#Lingrもそうなってないっけ。
#はい。
#自分のだけ青帯?
#あ、単純に複数回にわけて入力すれば、青帯はつかないです。
#いや、みんな青帯。
#ほげ。
#ほげ
#ほげ3
#ああそういうこと
#なるほど
#こんなかんじ。
#そうだった。
#Safariで二重投稿が発生するタイミングって、どのくらい短いとそうなる?
#disableになる前にイベントが拾われちゃってるのか
#それともdisableになっててもイベントを拾っちゃってるのか
#えっと、textarea にテキストが残っている間は、二重投稿できてるっぽいです。
#disable にはなってます。
#disable にはなってます。
#keypressイベントでformのdisabledを見てるけど、textareaを見てみようかな
#あ、Nickname の欄は disabled になってないようです。
#ファイアーフォックス!!
#技の名前のようだ>ファイアーフォックス!!
#リロードしてためしてみて
#disableしまくってる。
#あんまり綺麗じゃないけど。
#リロード。
#むー、今度はIEの方に同じエントリが重複して現れたぞ。
#お、なんかいま、過去ログページへいきました。どこおしたんだろ。
#ほげほげ。
#過去ログは右の薄い'#'から飛べるよ
#Safari でもオッケーでした。
#あーなるほど。Enter、Shift+Tab、Enter を続けて押したらたまたまそこがクリックされたんですね。
#あ、過去ログじゃなくてpermalink ne.
#ほげ
#過去ログへのリンクはまだ作ってない
#なるほど。
#あああ
#ばっちり。
#ユーザ登録+パスワード認証の代わりに、2ch のトリップみたいなのでもいいかも。
#iframeの中から親のhtmlのtitleをいじるのってもしかして無理?
#む、親の JavaScript の関数が呼べなければ無理かも。
#いや、parentからアクセスできるのか
#iframe をまたいだアクセスは、ブラウザによってできたりできなかったりしますね。
#うん、セキュリティのことを考えるとなるべく隔離されてた方がいいからねぇ。
#まてよ、わざわざviewerをiframeにする必要はないのかな、もしかして。
#どうせjsonで受け取ってDOMの要素に追加してるだけだから。
#たしかに。
#あー、何でiframeにしたか思い出した。
#viewerは別サーバ (comet server)に接続するんだ。
#だから同一ページ内からリクエストを発行できない。
#外側のhtmlも全部自前サーバで出すようにすればできるけど、そこまで作るのは大変だぁ。
#む、待てよ。メインのhttpdにつないで、そっからcomet serverの方にredirectさせることはできるのかな。
#same origin policy調査中…
###そうだ、Lingrがやらなかったニコ動貼付けを実現するんだ :)
#リンクのaタグにはtargetを付けて別Window or Tabで開いてくれると嬉しかったり
#Lingrってどうだっけ
#<span class="messageTextContainer">
<a href="http://practical-scheme.net/chaton/gauche/" onclick="window.open(this.href); return false" rel="nofollow">http://practical-scheme.net/chaton/gauche/</a>
</span>
#凝った事してるな
#targetってあんまり使いたくないんだけど (ユーザが選べる方がいいから)
#あーでも今だとiframe内から普通にリンク開くとフレーム内に表示されちゃうのか。
#これは嫌だなあ。
#テスト
##Lingr方式をそのまま頂いた
#なおchatonは書き込み時にフォーマットしてるから過去のリンクは依然としてiframe中に表示される。
#WiLiKiのしつこいコメントスパム、パラメータを変えて撃退してもしばらくするとすり抜けるテキストを見つけてくるな。
#繰り返し攻撃して通る方法を探ってるのか?
#攻撃元IPをbanしたりする必要があるんだろうか。でもbotnetからやってると意味ないしなあ。
##スパムよけもやってくれるのでいいかも。あと、コメントに対してコメントができるツリー型にもできます。
#組み込みコメントサービスならdisqusもあるな。
##Y Combinator組
#Rejawのコメントだけ切り離したようなサービス?
#じゃあトラックバックだけ切り離したようなサービスもあるのかなあ
#ただまあ、外部サービスにコメントを依存するとなるとそのサービスの継続性が気になる
#IEでJavaScriptのエラーコンソールってどうやって見るんだろう?
#相変わらずmsdnのサイトはさっぱりわからない。リンク切れ多いし…