2006-03-01 ========== てきとう E4X ------------ Reference URI: http://lowreal.net/logs/2006/03/01/1 Written Time: 2006-03-01T14:11:49+09:00 Tags: e4x js どうにも使い道が少ない E4X (ECMAScript for XML) をちょっとメモる。 基本的に XPath (XML Path language) (の省略記法) に似ているので、相違点とかあげつつみたいな。XPath (XML Path language) は E4X (ECMAScript for XML) に似せるため省略記法を使います。省略しないと全然違う。 var doc = hoge huga pqpq ;doc.baz..foo: /root/baz//foo E4X (ECMAScript for XML) ではルートノードがない。 doc..foo.(@name == "neko"): //foo[@name = 'neko'] E4X (ECMAScript for XML) では括弧の前にドットがいる。括弧の中は ECMAScript の式そのまま。すなわち or は ||, and は &&。 doc.*: /root/* * はそのままの意味。@* もそのまま書ける。 doc..foo[0]: //foo[1] 数値は普通の ECMAScript 配列とかとと同じように 0 基準。 doc..foo.length(): count(//foo) XPath (XML Path language) の例はどうでもいいけど、数を知りたいときは length() を使う。括弧をつけず length と書くと length 要素を選択しようとするので注意が必要。 for each とかいう構文がある (構文?) for each (ele in doc.*) { // hoge}XMLList とかいうオブジェクトがある。無名の要素をルートにして作る。ちょっときもい。 // XMLList (DOM の DocumentFragment みたいなの)var xmlList = <>
  • 1
  • 2
  • 3
  • ;var doc =
  • 999
  • ;doc.appendChild(x mlList);doc.toString() //=>
  • 999
  • 1
  • 2
  • 3
  • 名前空間 var rssDoc = Example http://example.co m/ ex3 http://example.com/3 2006-03-01T13:52:32+09:00 ex2 http://example.com/2 2006-03-01T13:52:30+09:00 ex1 http://example.com/1 2006-03-01T13:52:24+09:00 ; var rdf = new Namespace("http://www.w3.org/1999/02/22-rdf-syntax-ns#");var rdfs = new Namespace("http://www.w3.org/2000/01/rdf-schema#");var rss = new Namespace ("http://purl.org/rss/1.0/");// var dc = new Namespace("http://purl.org/dc/elem ents/1.1/");for each (i in rssDoc.rss::channel.rss::items.rdf::Seq.rdf::li) { var item = rssDoc.rss::item.(@rdf::about == i.@rdf::resource); alert(item.rss: :title);}見ればわかるように Namespace オブジェクト作って :: を解決に使うみたい。使わないなら別に宣言しなくてもいい。あくまで E4X (ECMAScript for XML) でアクセスするために名前をつける (=変数に代入する) ので、別にどんな名前でもいい。 var h = new Namespace("http://www.w3.org/1999/xhtml");default xml namespace = h;v ar HtmlDoc = E4X

    for (;;)

    ;みたいなこともできるみたい。 XPath (XML Path language) における following-sibling 軸のようなメソッドはないっぽい?とりあえず眺めてみたらないっぽい。よくわからん。 しかし、GreaseMonkey で E4X (ECMAScript for XML) を使うにしても、XMLHttpReqeust のハンドラぐらいでしか使えなくてなんともかんとも。 もちろん生成するのは自由なんだけど…… @ の働きがいまいちわからない。ちゃんと仕様読もう 2006-03-02 ========== はてブと del.icio.us を同時に使うように --------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/02/1 Written Time: 2006-03-02T11:52:47+09:00 Tags: js gm net web CGI (Common Gateway Interface) 設置するのとかめんどいので [xpost-del-hatena.user.js](/2006/xpost-del-hatena.user.js), GM (GreaseMonkey | Game Master) スクリプトにした。 はてなの認証方法がややこしいので、はてなをメインにして、del.icio.us をスクリプトで 同期するように。新規ブックマーク, 編集, 削除がそれぞれ del.icio.us にも反映される 。ただ、編集の場合、del.icio.us で上にあがってしまう問題がある (はてなの編集画面に はポスト時刻が表示されないのでめんどい)。 最初なぜか API (Application Program(ming) Interface) 使わないで実装してた。頭が悪い ちょっと補足します。 Fx 1.5.0.1 + GreaseMonkey 0.6.4 ではとりあえず動いています。中身で無駄に E4X (ECMAScript for XML) 使っているので、1.5 未満では絶対に動かないです。 ついでに動いてても何も言われません。淡々と del.icio.us に追加されたり削除されたり します。(最初の一回は del.icio.us の API Basic 認証がでます。これには del.icio.us のユーザ名とパスを入れます。) del.icio.us 側の操作ははてブに反映されません。「はてなをメインにして」はそういう意味です。 はてダ の2カラムさえ -------------------- Reference URI: http://lowreal.net/logs/2006/03/02/2 Written Time: 2006-03-02T15:42:57+09:00 Tags: web はてダ の2カラムさえなんか邪魔になってきたので [ignore-hatena-2c.user.js](/2006/ignore-hatena-2c.user.js) 書いた。 GM (GreaseMonkey | Game Master) ばっか書きまくり!! GM (GreaseMonkey | Game Master) の Edit ボタンが効かなかったんだけど、改めて about:config で設定しなおしたら使え るようになった。前より簡単につくれる>< 2006-03-03 ========== コメントのポスト方法をちょっと変更 ---------------------------------- Reference URI: http://lowreal.net/logs/2006/03/03/1 Written Time: 2006-03-04T01:56:50+09:00 Tags: js ajax site web Ajax るようにした。UI (User Interface) がイマイチ。 - Comments を押したらとりあえず消えて欲しい。 - 投稿したあとガックンってなるのがちょっとキモイ。 なんかいい方法はないかなぁ。 Opera でおかしい。めんどいので Opera はじく。 なんだか、この今のスタイルがまずだめみたいで、Opera だと挙動不審になる。 クッキーに保存を実装しろといいたい。誰に。俺に。 Ajax のほうのフォームはクッキーに保存するようにした。Singleton Cookie オブジェクト 2006-03-04 ========== なんかもうめんどうくさい ------------------------ Reference URI: http://lowreal.net/logs/2006/03/04/1 Written Time: 2006-03-04T02:30:40+09:00 Tags: site なんか静的に XSLT (XSL Transformations) で変換している /about とかの再構築さえめんどうくさくなってきた。動的にしたいなぁ 。 って思って簡単な CMS (といえるものじゃない) を作ったんだけど、なんかいまいち使う気になれない。こうね、 IPv4 と IPv6 の違いみたいになっちゃって、ね。要するに互換性がなくてめんどい。もち ろんそれだけじゃなくて、URL (Uniform Resource Locator) とかを変えたくないから、mod_rewrite で全て CGI (Common Gateway Interface) に渡すハメになるんだけど、なんで CGI (Common Gateway Interface) でウェブサーバを再実装みたいなことをしないといけないんだって感じに。 もうね。例えばこれが自分のサーバーで、lighttpd で動いてて、FastCGI を使えるなら、 まだ導入する気にもなれるんだけど、ね。だめね。もっと考えないとね。 2006-03-06 ========== ruby-xslt の parameters= ------------------------ Reference URI: http://lowreal.net/logs/2006/03/06/1 Written Time: 2006-03-06T00:52:29+09:00 Tags: xslt ruby parameters= に渡す値はすべて自分でクオートしとこう。 libxslt はもともとパラメータの値に XPath (XML Path language) そのまんま書けるんだけど、なぜか ruby-xslt の parameters= ではクオートして必ず文字列で渡す。しかしながら、なんかこのクオートの実装が狂って て、自分でクオート付け足してる癖に Invalid expression とか言い出してくれちゃう。や れやれだぜ! 正確に言うとクオートを付与する段階で、与えた文字列を中途半端に破壊的に変更するらし く、クオーテーションがかたっぽだけ付く。セッションとかで保存させながらのコードでも うハマったハマった。dup してどうにかしたけど、自分でクオートして明示的に文字列にしたほうがよさげ。 ソースは読んでないので間違っているかも。あくまで挙動からの推測 2006-03-07 ========== 外部認証 -------- Reference URI: http://lowreal.net/logs/2006/03/07/1 Written Time: 2006-03-07T22:10:29+09:00 Tags: web 外部認証をコメント投稿に導入したくていろいろやっているんだけど、なんともかんとも。 Flickr, TypeKey を用いてログインするところまでは作った。とりあえず、コメントを投稿 するとき、アイコンやら、名前やらもそのまま記録するような方式のをやってみたのだけど 、やっぱ認証サービス側で名前とかが変わったら、こっちの過去の名前とかも変えたいなぁ 、と思った。 サービス名と、サービス内で特定できる ID だけをコメントの情報につけて、ログインする ごとに他のデータを更新するような感じにしたい。でもめんどい。RDB でテーブル複数つくって関係付ければ簡単なんだけど、いかんせん全てのデータを XML (Extensible Markup Language) に入れてしまっているのでめんどうくさい。かなり重くなるだろうし…… というところで、諦めて全部一気に保存して更新しないようにするか、ちゃんと更新するよ うにするかで悩む 秘密がある。HIMITSU GIRL。ヘッドフォン -------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/07/2 Written Time: 2006-03-07T23:52:27+09:00 Tags: music ZAZEN BOYS の HIMITSU GIRL'S TOP SECRET がかっこよすぎる。特にカシオマン。 そういえば、ここ最近 UR/40 を使っていたんだけど、ひさしぶりに ATH-A500 をつけたら 付け心地がよすぎて困る。きもちいい。 この前でかけたとき、明大前でアートモニターシリーズの何かのヘッドフォンをつけた人を 見た。男だったけど 黒かったけどなんだろ。A900LTD なのかなぁ。男だったけど もっといかにもゴツイヘッドフォンつけてる人は見かけるけど、アートモニターはあんまり 見ないなぁ。男だったけど 見ないなぁっていうか、そもそも外に出ないんだった。男はいらない。 どうでもいいけど、女子高生って存在しないんだってね。最近知った。よく考えてみると女 子高生なんて見たことなかったんだ。見たっていうおぼろげな記憶は妄想だったみたいだ。 でもさ、もし女子高生の存在を信じている人がいても、余計なことは言わないようにしよう と思う。サンタクロースの存在を信じるのも、女子高生の存在を信じるのも、夢があってい いことだからね。 あひるほしい! -------------- Reference URI: http://lowreal.net/logs/2006/03/07/3 Written Time: 2006-03-08T01:34:51+09:00 Tags: life 最近あひるが欲しいです。モニタの前においてお話したい。だっくたいぴんぐ 2006-03-08 ========== 認証付きコメント実装 -------------------- Reference URI: http://lowreal.net/logs/2006/03/08/1 Written Time: 2006-03-08T15:03:31+09:00 Tags: web site この日記にもつけてみた。 結局大して書く人がいないだろうってことでログインごとにユーザー情報を保持している XML (Extensible Markup Language) を更新し、それを XSLT (XSL Transformations) から document() 使って読み込むようにした。 Ajax では URL が変わらない? ---------------------------- Reference URI: http://lowreal.net/logs/2006/03/08/2 Written Time: 2006-03-08T16:33:26+09:00 Tags: ajax js web そうとは限らないし、ちゃんと変わったほうがいいことも多い。 Ajax なりなんなりを含めて、JavaScript でいいことって画面遷移がないことであって、URL (Uniform Resource Locator) が変わらないことじゃない。 UI (User Interface) の補助ではなく、コンテンツを書き換える場合はむしろ URI (Uniform Resource Identifer | Universal Resource Identifer) は変わったほうがいい。要はあとでそのリソースにリンクを貼りたいとき、困るか困らな いかが分かれ目だと思ってる。 2006-03-09 ========== 説明書を読むのが好き。 ---------------------- Reference URI: http://lowreal.net/logs/2006/03/09/1 Written Time: 2006-03-09T01:41:28+09:00 Tags: life 結構説明書読まない人って多いみたいだ。 小学生のときはそれこそ読まない人が全く理解できなかったけど、最近説明書を読みたくな いときがあって、もしかしたらこういう感じなのかなぁって分かり始めたかもしれない。そ れはなんかとにかくいじくりまわしたい衝動が先にくる感覚だったのだけれど。 まぁでも結局そのあと説明書を最初から最後まで読んだわけです。何ができて何ができない のか、よくやる操作はどうやるのが一番スマートなにかを頭に入れておきたい。結構何度も 説明書を読んでいると、新しい機能の発見があったりする。最初は「使わないだろう」って 思って見逃しちゃうものを再発見できる。結構楽しい。 仕様書やら、プログラミングのリファレンスなんかもそういう感じでよく読む。一時期は XSLT (XSL Transformations) と XPath (XML Path language) の仕様書が常に開きっぱなしだった。ECMAScript の仕様書 (日本語 HTML (Hyper Text Markup Language) 版) はむしろリファレンスとして使ってる。Ruby リファレンスマニュアルは気が付くと何 故か上下になんどもスクロールしながら見てる。 暇だからできることだけど、とにかく自分が使うものは隅々まで一応知っておきたい。もし 必要な機能じゃなかったら、頭の片隅にその機能があることだけを覚えておけばいい。使い 方はまたあとで見ればいいから。 2006-03-10 ========== 遊体離脱の空耳 -------------- Reference URI: http://lowreal.net/logs/2006/03/10/1 Written Time: 2006-03-10T15:52:27+09:00 Tags: music そういえば、貧困な思考はいつも あなたのパターンを 安易なイメージ処理して のところの最後をしばらくの間「アニメーションにして」と勘違いしていた。 Flickr は親切だった。 --------------------- Reference URI: http://lowreal.net/logs/2006/03/10/2 Written Time: 2006-03-10T15:54:23+09:00 Tags: net めんどくさがって例外処理しなくても http://static.flickr.com/0/buddyicons/ 以下は全てリダイレクト。 アイコンが設定されていないときは、特別に [http://www.flickr.com/images/buddyicon.jpg](http://www.flickr.com/images/buddyicon.jpg) をアイコンとして使うんだけど、なんとなく面倒くさくてこの処理をしていなかった。と いうか、どういうレスポンスが返ってくるかわからなかったから放置していた。 で、なんとなくアレしてコレして見てみたら、iconserver=0 がレスポンスされるらしい。 例外処理しとくかーって思ったけどリダイレクトだった。細かい配慮ないす。 - [Flickr API Documentation - Buddyicons](http://www.flickr.com/services/api/misc.buddyicons.html) ログインに使ってるスクリプト ---------------------------- Reference URI: http://lowreal.net/logs/2006/03/10/3 Written Time: 2006-03-10T17:42:59+09:00 Tags: ruby [weblogin.rb](/2006/weblogin.rb), 名前失敗したけどもういいや。 そのうち忘れるので使い方をめもる。 @cgi.header を使うことを前提にしてる。 api_keys = { "Flickr" => { "api_key" => "Flickr70c55b82e10021ffaaapi_ke y6", "secret" => "Flickrdf5secret3" }, "TypeKey" => "fsakfsTypeKeya fasAPI"}require "weblogin.rb"@cgi = CGI.newWebLogin.open(@cgi, api_keys) do |login| be gin case login.auth when :login # login したときの処理 # DB にユーザ ID とユーザ情報を保存したり end rescue WebLogin ::NoActionError => e puts @cgi.header("type" => "text/plain") puts login.services # 有効なサービスの配列 endend上のようなのを認証スクリプトとしておいとく。このサイトだと /login.rb がコレ。ログインスクリプトの query_string が logout だったらセッションを破棄してリファラにリダイレクトする。ちょっとアレ。 /login.rb/Flickr?return_path= のようなリクエストをすると Flickr にリダイレクトして認証させる。認証されるとコー ルバック (Flickr の対応する API key のコールバックには http://example.com/login.rb/Flickr/callback のように指定しておく) にリダイレクトされるので、セッションに情報をセットして、re turn_path にリダイレクトする。 login.auth は、path_info に何も指定されていなかったりすると NoActionError を投げる 。 require "weblogin.rb"@cgi = CGI.newWebLogin.open(@cgi, api_keys) do |login| if login.service # login している場合 login.service #=> "Flickr" login.id #=> "25514198@N00" login.user_name #=> "cho45" login.pr ofile_uri #=> "http://www.flickr.com/photos/25514198@N00/" login.icon #=> "http://static.flickr.com/23/buddyicons/25514198@N00.jpg" login.full_name #=> "Hiroh Satoh" else # login していない場合 # id その他上記メソ ッドは全て nil endendいまいち気持ち悪いんだけどどうにもこうにもわからんのでこんな感じ。ブロックをとって いるのはセッションファイルを確実に閉じるため。fcgi 環境で死ぬことがあったのでこう いうことやってる。 WebLogin クラスは、それ以下にある、サービス名に対応するクラスをインスタンス化して メソッドを呼び出す。例えば /login.rb/Flickr?return_path=somepath の場合、WebLogin::Flickr.new(@cgi, @session, @api_keys["Flickr"]).auth が呼ばれる。 各サービス名の auth メソッドはサービスの認証画面にリダイレクトする。サービスは /login.rb/Flickr/callback にリダイレクトする。 callback が指定されている場合、インスタンス化されたサービスクラスの callback メソッドを呼ぶ。callback メソッドはユーザ情報をまとめて Hash にして返す。WebLogin はその Hash をセッションに保存して、最初に指定された return_path にリダイレクトする。 いろいろアレなことが思い浮かんだけどあとで考えよう。 new にブロックって一般的じゃないんじゃ?という指摘をうけたので open にした。確かに new にブロックは微妙だった。 2006-03-11 ========== いんたーねっと、コミュニケーション refusal desire ------------------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/11/1 Written Time: 2006-03-11T17:39:34+09:00 Tags: music net thinking かさはもっています。ふくはぬれていません。 拙い言葉で理解しあった気分になれるのがインターネット。あいまいでいい。程度の違いで しかないのだから、今なんとなくいい感じなら、それでいい。 家にいながら、てきとーにコミュニケーションがとれる。面倒くさい話に巻き込まれないよ うにすれば、巻き込まれなくてすむ。いつの間にか巻き込まれているなかで、どうでもいい ことに発言を求められるのは面倒くさい。 Ruby, collect or map -------------------- Reference URI: http://lowreal.net/logs/2006/03/11/2 Written Time: 2006-03-12T03:39:12+09:00 Tags: ruby ずっと collect を使ってきたんだけど、マイノリティなのか。 今日 [Symbol#to_proc](http://wota.jp/ac/?date=20060309) 関連で map をよく見かけたから、map ってなんだっけーとか思いつつリファレンスをひいたら、あら不思議、collect のシノニムだった。IRC (Internet Relay Chat) でそんなこと言ってたら「collect ってむしろなんだよ」的で驚いた。 map のほうが短くていいからこれからは map にしようかと思いつつ、やっぱどうも map に慣れないいやそれは当たり前だけど。 そもそもなんで collect を使い始めたんだろう。謎だ。リファレンスマニュアルで map より上にあるからだろうか。 あーそうだ。一応忘れないように印象を書いておいてみる。ちなみに俺は数学がわからんち んな坊やなので、map が写像だとかってのは微塵も知りませんでした。いやもだめすぎなんですが、その辺を考 慮してください (謎)。 map ってなんか戻り値が予想できない感じがする。配列の各要素にブロックを適用する (脳内 での map のイメージは適用だった)、までは名前から分かるのだけれど、そのあとどうやっ て返ってくるのかが直感的にわからなかった。 対して collect は、集めて配列にするみたいなことが名前からわかるので戻り値は直感的だった。ついで に配列のメソッドにブロックを与えている時点でブロックを適用する感じを醸し出していた ので、動作が予想できる感じ。 書くなら断然 map のほうが楽だなぁ…… ちなみに collect, find, select を使ってる。find_all じゃなくてなぜか select, detect じゃなくてなぜか find。この場合 find を detect にして語尾を統一すべきか。 マイノリティじゃないかも。 [Rubyist Magazine - Rubyist Hotlinks 【第 1 回】](http://jp.rubyist.net/magazine/?0001-Hotlinks) 最初は map はなかったみたいだ。だから collect のほうが上にあるのか。 2006-03-12 ========== 自信はどこからやってくる? -------------------------- Reference URI: http://lowreal.net/logs/2006/03/12/1 Written Time: 2006-03-12T05:04:27+09:00 Tags: life thinking 例えば就職するときには (別にバイトでもなんでもいいけれど) 自分を売り込む必要がある 。自分がこういう能力をもっていて、こういうことができることを、自信を持って言わなけ ればいけない。相手に自分を認めさせる必要がある。 でも、その能力があるとかっていう自覚・自信をどうやってつければいいんだろう。自分で 自分を認めて自信をつける場合、よくある自信過剰パターンに陥っている場合が殆ど。だか ら、他人に認めてもらう必要があるのだけれど、他人に認めてもらうには売り込む必要があ る。売り込むには自信がいる。無限ループ。 しかも、自信っていうのは時間がたつにつれて薄れていく。もっと自分より若い人達が現れ てすごいことをやるし、あるいは世界が広がってもっとすごい先輩を発見することになる。 で、そういう感じで、まぁいいやって思えてくると就職というかバイトさえできなくなる。 人前というか面接だと平気で嘘をつけるので、その嘘をあとでどうやって回収するかを想像 してどうにもこうにもいかなくなる。嘘じゃなくなるまで腕を磨くとか、そういう方向にな るけど、結局上には上がいる以上嘘は嘘のままになる。 例えば Ruby が書けるっていったらあたりまえだけど Ruby が書けないとだめだ。でもどの レベルから Ruby が書けるっていえるのかが全くわからない。人によって違うだろうし。例 えばだから、Ruby に限らない。プログラミングができるっていうのはどのレベルからなの か、ウェブデザインっていうのは何を指しているのか。相手に聞けよ、というのは解決にな らない。相手に聞く段階には既に自信が必要だし、嘘をつかないといけない情況になってい る。 中には嘘をあとから本当にすればいいという人もいる。でもそれは自分で撒いた嘘に追われ る形になる。強制的に嘘によって何かをやらされることになる。そういうのはだめだ。何か をやらされているなんて感じるのはだめだ。もっと能動的に動かないといけない。でもまた そこで必要なのが自信だ。人前で能動的に動くには自信が必要になる。無限ループ。 はいどうしよもない。ただ、どうしよもないからといって諦めてもいい問題じゃないのが鬱 陶しい。誰もが働かないといけないから、自分もその例外じゃないのだ。 2ch cloud / rep2 ---------------- Reference URI: http://lowreal.net/logs/2006/03/12/2 Written Time: 2006-03-12T17:56:22+09:00 Tags: 2ch web ![クラウド表示させた VIP](/2006/0312-rep2-cloud.jpg rep2 のスレッドリストに雲を表示する GreaseMonkey スクリプト [rep2-cloud.user.js](/2006/rep2-cloud.user.js) インストールしたら設定で include の設定しないとだめです。もしかしたらデフォルトの rep2 ではだめかも。勢いが表示されてないとだめです。 指輪 / BURGER NUDS, 自分の印象 ------------------------------ Reference URI: http://lowreal.net/logs/2006/03/12/3 Written Time: 2006-03-12T23:26:01+09:00 Tags: music 最初聞いたときは、最後の「望んだ世界はどうだった?」の意味を完全に無視して、プロポ ーズ系の唄なんだろうか、とてきとーに考えてた。 聞き込むにつれて「望んだ世界はどうだった?」がどう考えてもキーになっているように感 じはじめた。というか明らかに文脈が違う。 それで、もしかしてそれまでの綺麗だったりする部分は全部「望んだ世界」で、悪魔が、夢 を見せた後に「望んだ世界はどうだった? (そして今の情況を見てみろよ)」訊いているよ うな解釈をした。ようは MARCH 系。 指輪 / BURGER NUDS ------------------ Reference URI: http://lowreal.net/logs/2006/03/12/4 Written Time: 2006-03-12T23:33:21+09:00 Tags: music だいたい固定されたので書く。でも書かないほうがいいかもしれない。基準が曖昧だ。だか ら、曖昧に書く。 当たり前だけれど、正しい解釈は存在しない。いや、間違った解釈は存在しない。感じたま までいい。だから、もし指輪を聞き込んでいないなら、なおさら読まないほうがいいと思う 。 指輪は BEST に収録されており、解説がついているから、それを参考にする。っていうかこ の解説が既に意味不明なのがどうもこうも。ぎりぎりセーフってなんだよもう。 解説には三つのヒントがある。それは「指輪」が、「いつでも振り返る事で新しいステップ を踏み出す力をくれる、思い出」を唄っているということと、「望んだ世界はどうだった? 」は過去の自分による今の自分への問いかけであるということ、そして「望んだ世界」は今 の自分にとって「どうしよもないもの」であること。これを前提にして考える。 最初の部分は悪い状態の自分に関するところ。子供たちは残酷に笑う 皆いつか 大人になるから だけど気負ってない こんな眼はして ない までのところ。「大人になるから」とあるけど、たぶん「大人になるのに」という意味だ と思う。大人になって汚くなっていくことが決まっている子供たちを見つつ、汚くなってい くことに対して気負いがない純粋さが、自分にとって残酷である、ぐらい。子供たちは気負 っていないけど、自分は気負っているわけだ。汚くなりかけの時期に、汚くなりたくないこ とを望んで。 そいで少し飛ばして 何か忘れたろ? そんな眼をしてるだ。自分は何かを忘れている。あとでもう一度この問いかけが繰り替えさえれるけど、その 忘れたモノをしっかり思い出すことが「指輪」の目的である。 忘れたものを思い出すために、ピカピカのピンセットで腐乱した情熱の解剖実験をする。解剖実験は記憶をほじくりかえす作業そのもの。 で、思い出したのが「あの日細い指に 錆びた指輪をして 全てに笑いかけたろ」なわけだ 。笑いかけているのはまだでてきていないけど「君」なはず。「君」って誰だかわからない けれど、とりあえず綺麗なので女の子ってことにしとく。いやどうでもいい。ここで重要な のはもちろん「錆びた指輪」だ。「錆びた指輪」はおそらく「腐乱した情熱」と同じもの。 「君」は腐乱した情熱をもっていたのにも関わらず、笑っていた。 何を恐れてんだよ 錆びた指輪でいい 気取っている場合じゃないだろ 「錆びた指輪」は「腐乱した情熱」と読み替えてもいい。「気取っている」というのは、 純粋なままであろうとするということ。腐らないように、錆びないように生きていくことが 「気取っている」こと。 ここで戻るけど いつかここは地獄と言ったろ それは嘘で実はよく分からない 別に気取ってない そんな 不快じゃない がわかるようになる。いつかここを地獄といった。地獄というのは腐乱した、錆びた世界 について自分が持っているイメージだ。でも、だんだん気持ちが変わってきている。腐乱し ていて、錆びている世界でもいいのかもしれないと思い始めている。気取っていない、すな わち、自分の素をさらけ出した状態でも、「そんな不快じゃない」と思えるようになった。 という変化。 何を忘れたの? それを確かめなきゃ 「生きる意味」も軽いだけ ここでまた忘れたものは何かという問いかけがある。ピカピカのピンセットで腐乱した情 熱を解剖して、思い出し、確かめないといけない。気負ったまま、笑えないままでは「生き る意味」も軽いのだ。 そして「あの日細い指に」と入る。君は指輪をして 世界一の笑顔で -snip- 「全て」に笑いかけたろ。「君」は錆びた指輪をしつつも、世界一の笑顔で笑っていられた。腐乱した情熱の中に、 硬いガラス玉のようなものを持っていられた。硬いガラス玉というのは、すなわち忘れたモ ノである。記憶の中の「君」を通して、忘れたものを見つけられた状態が最後の部分。変わ っていない部分があるということに気付く。 それで最後に「望んだ世界はどうだった?」だけど、「望んだ世界」がなんだったかという と、純粋なままでいられる世界・純粋なまま生きていける世界。でも、結局どう転んでも、 変わらない部分があることがわかっていれば、表向きが腐ろうが錆びてしまおうが、あまり 関係ないわけだ。だから、そういう世界にこだわっても無駄だし、「どうしよもなかったも の」と笑い飛ばせる。 つまり、自分が腐ってしまった、あるいは、腐ってしまうかもしれないと思うときに、いつ までも根底に変わらないものがあることを思い出させるのが「指輪」なわけだ。終わり。 「プラチナ」について言及しなかったけれど、それはぶっちゃけよくわからないから。腐食 に強い金属の代表かな? エンゲージリング (マリッジリング) によく使われるからかしら 。安直だけど 「全てに笑いかける君」という非現実さと、「冷たい水を求める」理想感と、「腐るしかな い」ということを暗示させる現実感が共存しているのが美しいと思う。 2006-03-13 ========== taglibro の今後の予定 --------------------- Reference URI: http://lowreal.net/logs/2006/03/13/1 Written Time: 2006-03-13T02:12:06+09:00 Tags: taglibro site たぶんやらないけど、やりたいことを書いとく。 - まず libxml-ruby を捨てて REXML を使う。もともと libxml-ruby を使おうと思ったのは REXML が名前空間をまともに処理してないからだったんだけど、名前空間とかどうでもよ くなった。んで、libxml-ruby は Pure Ruby じゃないのでいちいち環境間で面倒くさい。 REXML は標準添付だからその辺は心配ない。できるだけ Pure Ruby じゃない外部ライブラ リを使わないようにしたい。 - ちゃんとライブラリ化する。 - 公開できるようにする。 Last.fm の他人へのリンクで最近のトラックを表示させる GM スクリプト ------------------------------------------------------------------ Reference URI: http://lowreal.net/logs/2006/03/13/2 Written Time: 2006-03-13T13:10:16+09:00 Tags: js net [pop-up-recent-lastfm.user.js](/2006/pop-up-recent-lastfm.user.js) 例えば Neighbours とか Friends のリンクとか 実装がすごい汚い。 JS の XPath ----------- Reference URI: http://lowreal.net/logs/2006/03/13/3 Written Time: 2006-03-13T14:21:48+09:00 Tags: xpath js 前々からいちいちあのクソながったらしい evaluate を書くのがだるかったのでちゃんと関数はさむようにした。 大きなバグがあります。詳細は[XPath, $X function, NSResolver](my:2006/03/16/1)に書きました。以下のコードは非推奨です。 $X = function (exp, context) { if (!context) context = document; var result = document.evaluate(exp, context, null, XPathResult.ANY_TYPE, null); switch ( result.resultType) { case XPathResult.STRING_TYPE : return result.stringVa lue; case XPathResult.NUMBER_TYPE : return result.numberValue; case XPathResult.BOOLEAN_TYPE: return result.booleanValue; case XPathResult.UN ORDERED_NODE_ITERATOR_TYPE: { result = document.evaluate(exp, context, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); var ret = []; for (var i = 0, len = result.snapshotLength; i < len ; i++) { ret.push(result.snapshotItem(i)); } return ret; } } return null;}alert($X("//p")); // Array of p elementsalert($X("count(/ /node())")); // => node numberalert($X("count(//body) = 1")); //=> must be true// Firefox が嫌いになる GM スクリプトif ($X("contains(string(/), 'Firefox')")) { alert("I LOVE FIREFOX!");}これでコピペ地獄から開放される。 - [XPath 1.0 チートシート](my:2006/01/03/1) 簡易ビルダー ------------ Reference URI: http://lowreal.net/logs/2006/03/13/4 Written Time: 2006-03-13T14:39:41+09:00 Tags: js [まえ](my:2006/03/13/3)のとあわせて $N = function (name, attr, childs) { var ret = document.createElement(name); for (k in attr) { if (!attr.hasOwnProperty(k)) continue; v = attr [k]; if (k == "class") { ret.className = v; } else { ret.setAttribute(k, v); } } switch (typeof childs) { case "string": { ret.appendChild(document.createTextNode(childs)); break; } case "object": { for (var i = 0, len = childs.length; i < len; i++) { var child = childs[i]; if (typeof child == "string") { ret.appendChild(document.cr eateTextNode(child)); } else { ret.appendChild( child); } } break; } } return r et;}var pq;document.body.appendChild($N("div", {}, [ $N("div", {style:"font-we ight:bold"}, "foobar"), $N("div", {}, [ pq = $N("ol") ])]));for (var i = 0; i < 10; i++) pq.appendChild($N("li", {}, "hoge");var div = $N("div");みたいなのを使ってる。 innerHTML を使いたくない (application/xhtml+xml では一切使えない) けど、document.createElement の嵐はキモイ。中間とって GreaseMonkey のテンプレート (xyzzy の拡張 lisp を入れて る) にごちゃごちゃ書いてしのいでるます。 scroll イベントが起きたり起きなかったり --------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/13/5 Written Time: 2006-03-13T20:53:19+09:00 Tags: js GM (GreaseMonkey | Game Master) で window.addEventListener("scroll", fuction (e) {}, false); とかやってみたんだけど、どうもページごとにイベントが発生したりしなかったりする。 なんでだろう。全然わからない。 例えばこのサイトだと、日記のページは全てイベントが発生しない。で、/about とか /xb el とかはちゃんと発生する。 2006-03-14 ========== Ruby で、Ruby に限らず ---------------------- Reference URI: http://lowreal.net/logs/2006/03/14/1 Written Time: 2006-03-14T06:34:56+09:00 Tags: prog やっぱ最初のころは Ruby のブロック引数が全く理解できんかった。yield をよぶとどこに 飛ぶか、とか結構悩むと思うんだ。 each の「使い方」を先に覚えて、実行してみてやっとブロック引数の概念が理解できた。 んで、「じゃあ自分で書くときはどうするんだ」とかでリファレンスを読むと yield とか 書いてあって、でもそれ以上はリファレンス読んでもよく分からなかったから、てきとーに サンプル作ってみてやっと理解した。 それまで書いていたのが PHP (PHP: Hypertext Preprocessor) とかいう謎言語だったので、Ruby が余計に神がかってみえた。Perl は読めなかったし、 Python は知らなかったし。今は Perl とか Python を勉強しようと思っても、必要性が見 当たらなくて書けない。所詮「勉強」にすぎなくなるから、やる気があんまり起こらない。 しかし Perl はホントに、本当に読めない。map { hoge } hage {} @foobar みたいなのをよく見るけど、どういう仕組みで評価されてるのかよくわからない。 まぁ、とりあえず、自分は実装を触りながらじゃないとぜんぜん理解できない。頭が悪い上 に「自分の今考えてること」に対してかなり不安を覚えるので、すぐにコンピュータで実行 させて、考えていることがあっているのか間違っているのかを確定させたい。 あんまり頭の中で構造を考えないで、とにかく動かしてみる。一行書いて、p 書いて、実行して、ってのを繰り返す。しかもこれ、未だにこういう感じなのだ。数行書 くごとに実行する。とにかく p を書きまくる。んで、暇なときにリファレンスを眺めて、「こういうことができるのか」 ってまた書いて実行してみたりする。 だから、何か作ろうとしていないと、そもそもプログラムを書かないからなかなか理解でき るようにならない。Perl も書いてみたらわかるかもしれないけど、Perl を使って書きたい ものがない。気がつくと面倒くさくて Ruby を使ってる。だめじゃん。 2006-03-16 ========== XPath, $X function, NSResolver ------------------------------ Reference URI: http://lowreal.net/logs/2006/03/16/1 Written Time: 2006-03-16T23:06:04+09:00 Tags: xpath js [JS の XPath](my:2006/03/13/3) なんて書きましたけど、重大なバグがありまして、っていうかなんで気がつかなかったん だろう、えーそれは application/xhtml+xml なページ、すなわち XML (Extensible Markup Language) として、名前空間をちゃんと扱うページではまともにセレクトできないんですよーははは はー、例えばこのサイトとかね。 $X = function (exp, context) { if (!context) context = document; var resolv er = function (prefix) { var o = document.createNSResolver(context)(prefix ); return o ? o : (document.contentType == "text/html") ? "" : "http://www .w3.org/1999/xhtml"; } var exp = document.createExpression(exp, resolver); var result = exp.evaluate(context, XPathResult.ANY_TYPE, null); switch (result.resultType) { case XPathResult.STRING_TYPE : return result.stringV alue; case XPathResult.NUMBER_TYPE : return result.numberValue; cas e XPathResult.BOOLEAN_TYPE: return result.booleanValue; case XPathResult.U NORDERED_NODE_ITERATOR_TYPE: { result = exp.evaluate(context, XPathRes ult.ORDERED_NODE_SNAPSHOT_TYPE, null); var ret = []; for (v ar i = 0, len = result.snapshotLength; i < len ; i++) { ret.push(r esult.snapshotItem(i)); } return ret; } } retu rn null;}alert($X("//x:p")); // Array of p elementsalert($X("count(//node())")); // => node numberalert($X("count(//x:body) = 1")); //=> must be trueかなり強引に修正してみた。 XPath (XML Path language) で要素を指定するとき x という prefix (上のコードの場合は別になんでもいいんだけど、普通は x とか xhtml と かいうのをつける) を必ずつけるようにしとく。使い勝手が悪くなったけど、仕方ない。p refix がないときは resolver をよんでくれないみたいだ。 そう、で、resolver なんだけど、実はただの関数だった。evaluate は prefix を見つけると、resolver に prefix を渡し、URI を返すように要求する。res olver は prefix に対応する URI (Uniform Resource Identifer | Universal Resource Identifer) を返す。null の場合はエラー, "" の場合は、名前空間が null のものとして扱われるみたい (要追試)。 つまり、上のコードの resolver がやってることは、とりあえず普通の場合のように NSRe solver を作って投げてみて、ダメだったら contentType にあわせて名前空間を返してやる っていう、かなり強引な (二回目) 方法なわけです。誰かもっと美しくして! 使い勝手が悪くなったけど と書いたけど、XSLT (XSL Transformations) で使うような XPath と同じになった。まぁ名前空間を考慮するとこういうことになるって いう名前空間マジックなんだけど、やっぱり面倒くさいよなぁ。 $X("count(//x:body) = 1") を $X("count(//*[local-name() = 'body' and namespace-uri() = "http://www.w3.org/1999 /xhtml"]) = 1") みたいに書きたくはないし、HTML (Hyper Text Markup Language) なページと XHTML (Extensible Hyper Text Markup Language) ページとで、同じ XPath を使おうとするとこんなもんになってしまうような気もする。 冷静に考えると x より h のほうがいいや。 2006-03-17 ========== ソースの色づけを復活 -------------------- Reference URI: http://lowreal.net/logs/2006/03/17/1 Written Time: 2006-03-17T17:42:31+09:00 Tags: js site prog pre だけ色付けするようにした。 前に Pure JavaScript で色つけていたことがあったけど、あからさまにブラクラだった。 で、なんとなく思いついたのでもっかい別の方法で実装してみた。 なんていうか非常にローテクといいますか他力本願な方法でして、[PEAR::Text_Hightlighter](http://pear.php.net/package/Text_Highlighter) に Ajax で丸投げというソリューションでございますです。 HL_N UMBERS_LI, 'tabsize' => 4, );$renderer =& new Text_Highlighter_Renderer_HTM L($options);$hl =& Text_Highlighter::factory($_GET["lang"]);$hl->setRenderer($ren derer);$ret = $hl->highlight($_GET["source"]);echo '
    ';echo $ret;echo '
    ';?>こんなスクリプト書いたら、あとは JS で pre 要素列挙して投げてあげる。レスポンスを importNode して、pre と置き換える。みたいな。 でもこんなクソ簡単なスクリプトなのに IE (Internet Explorer) ではちゃんとうごかない。importNode がだめなのか、それとも responseXML から impor tNode ができないのか……謎。 あーHtml.php の   は全部   に置き換えた。DTD がないからエラーになる。 2006-03-18 ========== ソースの色づけを復活 2 ---------------------- Reference URI: http://lowreal.net/logs/2006/03/18/1 Written Time: 2006-03-18T03:21:15+09:00 Tags: prog js site prog [GeSHi - Generic Syntax Highlighter](http://qbnz.com/highlighter/) を使うようにした。対応言語が多いことと、シンタックスファイルを増やし易いことがい い感じ。ただし時々 well-formed じゃないエラーがでることがあるっぽい。 .toSource(), forEach, etc ------------------------- Reference URI: http://lowreal.net/logs/2006/03/18/2 Written Time: 2006-03-18T04:29:38+09:00 Tags: js [toSource](http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object:toSource) とかはじめて知った。 GreaseMonkey で設定値保存するときはこれ使うといいね! わざわざ JSON 云々のコピペなんてしなくてよさげ。 var foo = new Object;foo.bar = "test";foo.baz = "pqpq";foo.toSource(); //=> '({ba r:"test", baz:"pqpq"})'(new Date).toSource(); //=> (new Date(1142625169156))(func tion () { return ""}).toSource(); //=> '(function () { return "";})'alert.toSourc e(); //=> 'function alert() {[native code]}'ていうか、forEach とかあるのね! やべ。 var sum = 0;[1, 2, 3].forEach(function (item, index, array) { sum += item;}, t his); // 第二引数は callback 中の thisalert(sum);同じように (Ruby -> JS) select -> filter, all -> every, map -> map, any -> some が 使えるみたいだ。どうせ Fx 用の GM しか書かないから使いまくろう。 2006-03-19 ========== A -> Z ------ Reference URI: http://lowreal.net/logs/2006/03/19/1 Written Time: 2006-03-19T02:48:38+09:00 Tags: life 必要なのは技術じゃないってことは分かっているつもりだけど、俺はその必要なものを手に 入れるのが嫌なわけで、そのへんどうにかしないといけないんだけど、その辺どうにかする と俺は俺でなくなるわけで、まぁ俺が考えている俺は所詮誰かが作った俺でしかないんだけ どさってことを昨日友達の父親の友人の吉弥さんが言ってた。 コミュニケーション能力が必要とか、そういう話だけど、欲しくないのだ。真面目な話を一 対一あるいは、一対多でするのがめちゃくちゃ嫌いなのだ。それって楽しくないから。 ネットワークゲームなんかで、ギルド戦について真面目に議論を交わして揉めているのとか 、めちゃくちゃ嫌なわけで、悪いわけじゃないんだけど、単純にああいうのを楽しめない。 そういうときはログアウトするんだけどっていうか、ギルド戦とか結局嫌で仕方ないからや らなかったんだけど、っていうかホムンクルスをプログラミングしてみたいんだけど、って いうかアカウントないんだけど、っていうか1500円はたけぇよ、いやこんなの関係ないんだ けど。 ネットワークゲームなんかは「ゲーム」であるから、嫌ならばログアウトすればいい。でも 実際の面を合わせた情況ではそういうわけにはいかない。そういうわけにはいかない。面を 合わせて真面目な話というのは、逃げ道 (例えば相手を認める余裕だったり) を確保するこ とすらぎりぎりのラインだから、本当に話たいことなんて、全く伝わりはしない。もともと 伝わらないのがさらに伝わらなくなるわけだ。もういい。 例えばどこから沸いてくるかわからない自信とか、昔はモテたんだぜ今の俺は仮の俺だとか 、とりあえず批判しとけとか、とりあえず謝っとけとか、とりあえずお前うざいとか、そう いうのが苦手なのでコーヒーゼリー食いたい。 2006-03-20 ========== よく使うジェスチャ・最後の日 ---------------------------- Reference URI: http://lowreal.net/logs/2006/03/20/1 Written Time: 2006-03-20T00:08:51+09:00 Tags: soft これなしで生きていけないジェスチャ 1. ← - 戻る 2. ↓→ - 現在のタブを閉じる (ウィンドウは閉じないようにカスタマイズ) 3. ↑←↑ - 一つ上の階層を開く 4. ↑↓ - リロード 思いついたようにときどき壮絶に使いまくるジャスチヤー 1. Any Gestures + →↑← - Any Gestures でホバーしたリンクをすべてタブで開く。mixi と か、■ばっかり並んでる絵サイトとかで使いまくる。 このホバーしたリンクを全部開くのは魔法ちっくで好き。こうね、杖をふる的な、ね。 だいじなことを書き忘れていた。ようするに言いたいことはハーマイオニー可愛いよってこ とで、それ以上でも以下でもない。 何かを書きたい -------------- Reference URI: http://lowreal.net/logs/2006/03/20/2 Written Time: 2006-03-20T02:31:41+09:00 Tags: life 何かを書きたい。 - 理想の女性像を明確に想像できないことに気付いた。萌える女の子は明確だけど、あぁだめ だ自分きもすぎる。 - なにかしら美しいものを見つけたい。 - 目を閉じるととにかく手がある。 - 俺は正常かつこの上なく普通な人間である。 - 日記が日記として機能しなくなるのは悲しいことだ。 - タイミングさえあっていればあとはてきとーでもいい。 - それっぽい口調が重要らしい。 - 名前が重要であって中身は重要じゃない。 - だからそれっぽい口調では書きたくないし、名前もてきとーなままにしておきたい。 - 俺がなぜウェブに日記を書くというキモイ行動をしているかを、誰かは考えない。 - それでいい。余計な分析はいらない。 - 表に出していいものと、出すべきじゃないのがある。 - 分かり合えるかもしれない、ぐらいの状態でコミュニケーションを止めるべき。 - 他人に気を使うのは果てしなく面倒くさい。 - 自分で考えることができる可能性をすべて考慮しても、考慮しすぎるということはない。 - グロゲーと殺人ゲーは苦手。 - 誰か一人でいい。 - まいっか。 - あらゆるやるべきことに対してやる気が起きない。それがかつてやりたいことであったとし ても、やるべきことになったとたんやる気が起きなくなる。内容じゃなくて、情況・環境が じゅうようなのだ。 - 別に君に訊いてはいるわけじゃないんだから、わざわざ嫌な顔して答えなくてもいいよ。 - そんなこと、誰も訊いてないよ。 - 余計なことは言わないようにしよう。何度決めたかわからないけど、特に、つまらない話に 関しては気をつけよう。 - メレンゲについて何度か書いては消しを繰りかえしているけど、うまく書けない。 - そういえば 地下室で死んだふりしようよ 外は怖いことだらけ って面白すぎるよなぁ。笑っちゃうよなぁ。このフレーズ大好きなんだけど笑える。日々 の唄ってこれだよこれ。これこれ詐欺。 - はずかしそうに水たまりをよけながら よすぎる。ああ。あああ。 - Omae Ga Dai-Kirai Da / bloodthirsty butchers - マナーについて考えようよ。「マナーについて考えようよ」と何かあるごとに言うのが、真 にマナーがない。 - お察しください。 - 鯖の金を払ってない。早く払えよ。無駄なことばかり、書きすぎて、腹出てるぜ。そんなこ といったって、ケーブル切る気に、なれないなぁ? もうだって、両手は、 - 誰かの言うことを聞きたくないなぁ。 - 知りたくないことを教わるのが好きじゃない。 - だから、ね、あなたに、僕は、何も訊いていないんだよ? - (a, b) だったらお前らは - 独学できないやつが何できるっていうんだ。やる気があるなら独学でできるだろ。 - 少し前までは「忙しい」っていう社会人の人は本当に「忙しい」んだと思ってたけど、実際 は「忙しい」ぐらい忙しくないってことに気がついた。 - そこでまた、誰かが言うんだよ「社会人の人」っておかしくね、ってね。 - やろうとすれば、いくらでも他人を貶すことができるから、何が本当に悪いのかを見極めた い。そのためにまず、何が良いのかを考えたい。 - ということを力がないうちから言っていると、そもそも生きていけないらしい。つまり、む しろそのことで自分は損害を被るってことさ - まぁそれでもいいか。いざとなって耐え切れなくなったら死ねばいいのだ。許可はもらった からだいじょうぶ。 - どちらかといえば、理想的に生きていたい。現実的だと、何か得をするんかな? - 今なら、なんでもできそうだ。忘れないようにしとこう。 - 今日成績通知がくるだろうけど、それの結果が良くても悪くても、先の数日は地獄だ。結果 が良かったらクソやりたくない課題をやらないといけないし、悪かったら - やーほんと、課題をちゃんとこまめに出来る人ってすごいよなぁ。そういうシステムってど うやって得たのかな。「課題ができる」ことじゃなくて「課題が進められる」ことがすごい 。すごすぎる。どうやったら手に入ったのかなぁ。セーブしとけばよかった。LV30 飽きて きた。 - 無理さ 成績通知がきたよ ---------------- Reference URI: http://lowreal.net/logs/2006/03/20/3 Written Time: 2006-03-20T20:28:56+09:00 Tags: life school 必修で落としたのは二科目四単位でした。情報処理概論 (講義に出てない) と、ネットワー ク情報概論1 (講義に出てない) 教養 (哲学・論理学) は一つも取れませんでした。講義に出てない。テストも出てない。健 康科学論も同じ。 他のとれた科目は A:B:C = 4:9:1 。どうでもいいけど情報処理概論が2点なのが謎い。何よ 2って。 ということで課題に追われるほうになりました。よかったね。 CD (Compact Disc) コースのかたはよろしく。成績見る限り CD (Compact Disc) に全く向いていませんが、強制グループワークで忍耐力をつけたいと思います。 2006-03-22 ========== textarea の大きさの呪縛から逃れるための GM スクリプト ----------------------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/22/1 Written Time: 2006-03-22T00:45:40+09:00 Tags: js net [expand-textarea.user.js](/2006/expand-textarea.user.js) flickr の textarea がいちいち小さいので作ってみた。textarea の右下のはじっこのほう (謎) をドラッグすると大きさが変わる。 なんで getElementsByTagName を使っていないのかというと、forEach が使いたかったから !! getElementsByTagName が返すのは NodeList であって、Array じゃない。 もうちょいまともにするように修正。 それと「左下」って書いてたのを修正した。ひだりもみぎもわかりませんがなにか? 拡張では [Resizeable Textarea 0.1a, Resize textareas to your needs](http://www.extensionsmirror.nl/?showtopic=2796) っていうのがあるみたい。ってことを IRC (Internet Relay Chat) で klm さんに教えてもらった。 ソースの色づけに伴い -------------------- Reference URI: http://lowreal.net/logs/2006/03/22/2 Written Time: 2006-03-22T01:39:42+09:00 Tags: site コピペのしにくさが激しいので、オリジナルソースへのリンクをつけた。data スキームで 飛ばす。 あるいはコピー用の Flash を使ったほうがいいかもしれない。 mabinogi, ポポスカートについて ------------------------------ Reference URI: http://lowreal.net/logs/2006/03/22/3 Written Time: 2006-03-22T04:58:20+09:00 Tags: mabinogi ![シュガーレスのスクリーンショット](/2006/mabinogi_2006_03_21_004.jpg ポポスカートが好きなんですよ。低価格・高耐久なのに、とても素敵だと思うのですよ。裁 縫で作れば防御も稼げるし言うこと無しですよ。防御高いポポスカのために裁縫を7にした 感じですよ。メインキャラのポポスカは銘入りですよ。 なんとなくスクリーンショットあさってたらポポスカツーショットが数枚でてきた。 ![あの世にて白黒ポポスカ*2](/2006/mabinogi_2006_02_24_002.jpg: 少し前のあの世のアルベイ祭壇前にて。一言も喋らず (めんどくさかった) にコミュケーシ ョンをとりつつ、とか奇妙なことをやってた。 ![銀行にてパイオニアと](/2006/mabinogi_2005_05_30_001.jpg: 去年の。ポポスカに関しては、実はこの横に写っている人の影響が強く、勝手に自分の中 (とギルドの一部中) で「ポポスカの先駆者」を呼んでいたりしました。やー、作ったポポ スカが気に入ったのでずっと着ていたらなんと向こうから話しかけられまして、先駆者きた ーっとギルチャで言ったか言わなかったかしました。たまに見かけますが未だにポポスカの ようです。 関係ないけど、画像のレイアウトがうまくいかない。IE (Internet Explorer) で float: right はご法度だし、CSS がだんだんスパゲティになってきて !important が 多くなってきて萎える。 2006-03-23 ========== Creative Commons on Flickr -------------------------- Reference URI: http://lowreal.net/logs/2006/03/23/1 Written Time: 2006-03-23T00:47:03+09:00 Tags: cc license サイトの CSS を一つ前に戻した。とはいえ alternate になっているだけだけれど。 その CSS で使っている画像が All rigthts reserved になっていて、しかも許可をとって いなかったからだ。でもこの写真、もともとは Creative Commons で公開されていたはずな んだよね。いつのまにか All rights reserved になっていることに今日気付いた。(flick r の favorites を整理していた) こういう場合、俺は派生作品をどう扱えばいいんだろうか。俺は著作権侵害で訴えられる可 能性がある? ここで、例えば訴えられたとき、「俺が見たときは CC でライセンスされていた」と主張し ても、確実に証明ができる気がしない。今だって、実は最初から CC じゃなくて、自分の勘 違いだったんじゃないか、と自分でも少し思ってしまう。 ライセンス関連の勉強不足のせいか、いまいち途中でライセンスが変わったときの対応方法 がわからない。そもそもライセンスを途中で変えていいのかとか、そういうのも含めてよく わからない。厳しいライセンスから緩いライセンスにするのはよさそうだけど、その逆は無 理な感じがする。 Flickr の場合、デフォルトのライセンスを設定しておくと、アップロード直後は必ずその ライセンスで一度公開されてしまう。だからもし、デフォルトライセンスに CC をしていた ら、少なくとも一瞬はそのライセンスで公開される。 俺の Flickr のデフォルトのライセンスは最初から CC-by だから、途中にあるいくつかの All rights reserved な写真は「あとから変えた」ものになる。だから、一瞬のスキで見 た人は俺と同じような思いをしているかもしれない (とはいえ Flickr は何人見たかが表示 されるけど)。特別にシビアな理由があってそうなっているわけじゃないから何時でも CC にできるけど、なんか気持ち悪い。 そういう場合は、デフォルトのライセンスを All rights reseved にして、あとから CC に 変えないといけないのかな。面倒くさい。Flickr はポスト時にライセンスを指定させるべ きで、そのときのデフォルトを設定のデフォルトにすべきなんじゃないかなぁ。緩いライセ ンスから厳しいライセンスにできないとしたら、だけど、普通に考えるとできるように思え ない。(じゃあなんでやってるの、って言われそう) ライセンスを変えるのは、システム的にはいつでもできる。途中から CC にしようが、All rights reserved になろうが、どうにでもできる。 途中でライセンスを変えられて、権利主張されたら、主張された方はどうしようもないよな ぁ。誰が CC で公開していたことを証明してくれるんだろう。定期的に巡回してライセンス 表示を確認して、「まだ大丈夫だ」なんてビクビクしながら利用しないといけないんだろう か。 と、一般ピーポーな俺は思ってしまうわけでした。とりあえず完全にライセンスを気にしな くて良い CSS (Cascading Style Sheets) を一枚書かないとなぁ。 CSS をでっちあげた。 -------------------- Reference URI: http://lowreal.net/logs/2006/03/23/2 Written Time: 2006-03-23T04:03:27+09:00 Tags: site css 今回は他人のものを使わず、安全に作ってみた。 - IE でオーバーレイ検索がダサイ。 - 日記以外のページの最初の見出しがきもい - Opera がおかしい。 何バトンかわからないけど空気が読めないバトン -------------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/23/3 Written Time: 2006-03-23T23:38:42+09:00 Tags: baton [空気が読めない日記 (mixi)](http://mixi.jp/view_diary.pl?id=106237582&owner_id=3330143) をこたえる。久しぶりにバトンだ。 【Q1】今つきあってる人はいる?: えぇ。もちろん nounai サーバーに、ですけれど。名前は教えませんわ。 人じゃなくていいなら Ruby さんとか。 【Q2】今好きな人、気になる人はいる?: BURGER NUDS にでてくる女の子が好きです。nounai。 まじれすすると、そもそも周りに女の子がいません。最後に女性と話したのはいつかな? 【Q3】a:告白した回数 b:告白された回数は?: {a => 1, b => 0} どういうのをカウントするんだろう? 明確に好きだと言ったことはな いと思う。あれ、あった気もする。でもあれはカウントしていいんだろうか。あんまり覚え てないんだけど、っていうか、今まで忘れてたけど、最悪だな。とか、まぁ、キラめく世界 。君の好きなあの娘の 写真はもうここにはない まあでもキラめく世界 一応カウントしといた。ああ 【Q4】a:振った回数 b:振られた回数は?: {a => 0, b => 0} これもカウント方法がよくわからない。ある意味常に振られているので b は数え切れないとも言えますが!! 【Q5】どんな顔・体の異性が好き?: 俯いてはにかむ笑顔が似合う子・黒髪 (というより地の色)・肩幅が狭い子。 黒髪の美しさに気付くべきなんだ (独り言) 【Q6】異性の体で好きな部分は?: 髪の毛・肌 【Q7】昔付き合ってた人と復縁する可能性アル?ナイ?: nounai の話ですか? 【Q8】好きな人ができたらどうやってアタックする?: 対話 「アタック」とか面倒くさいから、対話のなかで「なんかいいなぁ」って思える人がいい。 実際そんな人ってもう現れないと思うけどさ。 【Q9】今告白されたらOKしちゃう異性、今回りに何人いる?: だからそもそも(ry 【Q10】年上・年下どっちが好き?: ±2ぐらいがベストだけど、どちらかといえば年上で! 【Q11】浮気されたらどうする?: わからないけど、まぁそんなもんなのかなって思う。でもできれば「そんなもんなのかな」 と思わないぐらいの人と付き合いたいものだ。無理だ。 【Q 番外】ずばり今年のちょこれいとの数は?: ちょこれいと? たべたかず? きょうもたべたよ。きのうもたべたよ? せいさんりょう のはなしかなぁ。 【Q12】次にまわす人5人: 回せそうな人がだいたい nounai 系なんですが!! 生まれ変われるなら、可愛い女の子に生まれたい。 2006-03-24 ========== フィードバックを増やすためのメソッド 1 -------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/24/1 Written Time: 2006-03-24T04:48:09+09:00 Tags: method 素通り禁止です>< 必ずゲスブに一言書いてください。ネチケット 2.0 です>< Flickr の Creative Commons を使う理由 ------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/24/2 Written Time: 2006-03-24T04:52:20+09:00 Tags: license 自分の写真で CSS (Cascading Style Sheets) 書いても、あんまり面白くない。自分が撮った写真には、自分しかいない。 他人の写真は、少なくとも自分と撮影者の二人が確実にいる。さらに、同じようにその写真 をいいと思う人たちにそれぞれがいる。そういうのもあってかで、他人の写真は適度に刺激 があって面白いんだと思う。写真って、その人が見ているものを写しているから、他人の視 点というのがよくわかる。ただたんに「いい写真だなぁ」と思って、その後自分でその場に 居合わせたときどうやって撮るかを比較するっていうのも面白い。 それと写真に直接言葉は書かれていないということ。 写真は曖昧な伝達・表現手段だけど、それゆえに解りあった気分になれる。ひとつの写真を 通して、それぞれかなり思うところが違っていても「いい写真だなぁ」と思うところが変わ らない。そういうのが重要だと/いいと思うんです。人によって解釈が違う写真 (作品) の ほうが、面白い。どの解釈が正しいかなんてチリの価値もないと思う。 あんまり関係ないけど、完全に分かりあう必要性が見出せない。「どこかで分かり合えるは ずだ」と思い合って議論をするなら、「どこかで分かり合えるはずだ」っていう部分は共通 しているんだから、それでいい感じがする。実際俺はホンモノのちゃんとした、意味のある 議論を見たことがないから、議論っていうのがどういうものなのかわからない。でもそれに ついて、「ホンモノの議論が何か」を議論するつもりはないし、別段わかりたくもない。 話がずれたけど、他人の写真や画像を使って派生物を作るのは面白い。「あーしてみたい」 「こーしてみたい」っていうのをできるわけだから、すごくワクワクする。でもこれが Al l rights reserved なものだと、改変しても公開できなくてつまらない。その「あーしてこ ーして」っていう欲求よりも、許可をとるっていう行為は遥かに面倒くさい。 そういう面倒くさいうえにつまらない手続きを省いて、純粋に楽しいことをできるから、CC (Creative Commons) な画像を使ってる。Flickr は [Creative Commons 用のページ](http://www.flickr.com/creativecommons/) があって使いやすい。 でもまぁ、途中でライセンスが変わるのが怖くてなんともかんともな感じに今はなっている 次第でございます。favorites は増やしているけど! どの CC が適用されているか一目でわかるようにする ------------------------------------------------ Reference URI: http://lowreal.net/logs/2006/03/24/3 Written Time: 2006-03-24T23:28:44+09:00 Tags: js [flickr-cc-at-one-view.user.js](/2006/flickr-cc-at-one-view.user.js) by なのか by-nd なのかが一目でわからないので追加する。 2006-03-25 ========== ドメインの削除プロセス ---------------------- Reference URI: http://lowreal.net/logs/2006/03/25/1 Written Time: 2006-03-25T02:33:19+09:00 Tags: net 要するに期限切れの日から 35 日たつと開放されるってことかな。30 日の RGP (取り戻し猶予期間) のあと、5 日間の削除保留期間がある。 レジストラのキャッシュ?とかがよくわからない。 - [Deletion Cycle](http://www.snapnames.com/deleteprocess.html) - [削除済ドメイン名のための「請戻猶予期間」](http://www.nic.ad.jp/ja/dom/gtld-policy/rgp.html) screen backtick with Ruby ------------------------- Reference URI: http://lowreal.net/logs/2006/03/25/2 Written Time: 2006-03-25T04:27:16+09:00 Tags: screen なんかうまくいかねーってごちゃごちゃやっていたけど、$stdout.flush しないとだめだった。 あーあーあー [CLON - 2005/12/05](http://unknownplace.org/memo/2005/12/05#e003) に書いてあった……全部読んどくべき!! Ruby の場合 $| にあたるのは $stdout.sync かな? Good Dog Happy Men , tearbridge? -------------------------------- Reference URI: http://lowreal.net/logs/2006/03/25/3 Written Time: 2006-03-25T12:47:56+09:00 Tags: music [Works - tearbridge production](http://tearbridge.com/works/management/artist/gooddoghappymen.html) screen, zsh, 処理終わったか見たい --------------------------------- Reference URI: http://lowreal.net/logs/2006/03/25/4 Written Time: 2006-03-25T17:13:40+09:00 Tags: zsh screen ![スクリーンのスクリーンショット](/2006/0325-screen.png 長い処理させてウィンドウ切り替えたとき、バックグラウンドのウィンドウの処理が終わっ ているんだかいないんだかが気になるので手を入れた。 何かいい方法があるのかもしれないけど、よくわからないのでごちゃる。 [ari's diary - ステータスライン](http://www.nijino.com/ari/diary/?20020614&to=200206141S1#200206141S1) のスクリプトを使っている。 if [ "$TERM" = "screen" ]; then chpwd () { echo -n "^[_`dirs`^[\\" } preexe c() { # see [zsh-workers:13180] # http://www.zsh.org/mla/workers/20 00/msg03993.html emulate -L zsh local -a cmd; cmd=(${(z)2}) case $cmd[1] in fg) if (( $#cmd == 1 )); then cmd=(builtin jobs -l %+) else cmd=(bu iltin jobs -l $cmd[2]) fi ;; %*) cmd=(builtin jobs -l $cmd[1]) ;; cd) if (( $#cmd == 2)); then cmd[1]=$cmd[2] fi ;& *) echo -n "^[k$cmd[1]:t^[\\" prev=$cmd[1] return ;; esac local -A jt; jt=(${(kv)jobtexts}) $cmd >>(read num rest cmd=(${ (z)${(e):-\$jt$num}}) echo -n "^[k$cmd[1]:t^[\\") 2>/dev/null p rev=$cmd[1] } precmd() { #local prev; prev=`history -1 | sed "s/^[ 0 -9]*//" | sed "s/ .*$//" ` echo -n "^[k$:$prev^[\\" } chpwdfiみたいにした。precmd を追加しただけ。 これで、実行が終わったら$:prevcmd みたいなウィンドウ名になるので一目でわかりやすい気分。 上のスクリーンショットだと、0 が入力待ち (前回のコマンドは sleep) 1 がアクティブで emacs, 2 が sleep 実行中 preexec の処理を利用するようにした。cd の場合にちゃんとディレクトリになるように。 2006-03-26 ========== 色じゃなかったんだ。タブだったんだ。 ------------------------------------ Reference URI: http://lowreal.net/logs/2006/03/26/1 Written Time: 2006-03-26T03:31:53+09:00 Tags: life prog emacs がなかなか使えなかった理由はタブインデントをデフォルトでちゃんとしてくれない からだった。今までは色の設定を変えるのが面倒臭いからだと思ってた。 class Foo\tdef initialize(hoge, huga)\t\tfoooooooooooooooooooo(aaaaaaaaaaaaaaa,\t \t bbbbbbbbbbbbbbb)\tendend本当は上記のようにインデント (環境が変わってタブ幅が変わっても問題が起きないタブイ ンデント) をさせたいんだけど、さすがに無理っぽいので、タブの部分だけちゃんとできて いればいいことにした。 人それぞれ読みやすいインデント幅は違うから、誰にでも読みやすいソースを書くならタブ でインデントすべきだと思ってる。でも全部タブにすればいいってわけじゃなくて、文字幅 が重要なところには、ちゃんとスペースを使いたい、みたいな。 そんなにこだわる必要はないんだけど、少なくともタブインデントじゃないとコードを書く 気がしないことに気付いた。いやむしろ、タブインデントにすると書きたくなる (謎) 2006-03-28 ========== Shibuya.js でライトニングトークするみたい ----------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/28/1 Written Time: 2006-03-28T02:37:57+09:00 Tags: js [Shibuya.js Technical Talk #1](http://shibuyajs.org/articles/2006/03/27/shibuya-js-technical-talk-1) 俺だけ存在がおかしいですが気にしないように努めます。わろすわろす。 人前で喋るのは中学の部活紹介以来かな。何喋ったかは覚えていないけれど、同級生の部員 が俺含めて3人だったのはよく覚えている (内訳:やる気ない部員2, 幽霊部員1) シェルスクリプト, test で変数をクオートする理由 ----------------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/28/2 Written Time: 2006-03-28T23:48:28+09:00 Tags: sh [BASH Programming - Introduction HOW-TO: 参照テーブル, 11.2 文字列比較の実例](http://www.linux.or.jp/JF/JFdocs/Bash-Prog-Intro-HOWTO-11.html#ss11.2) なんで if [ "$X" = "$Y" ] とか if [ x$X = x$Y ] にするのかわからなかったけど、変数がセットされていないときにエラーになるらしいか らだった。へー 2006-03-29 ========== Riece, emacs vs xyzzy --------------------- Reference URI: http://lowreal.net/logs/2006/03/29/1 Written Time: 2006-03-29T00:58:53+09:00 Tags: irc emacs コンソール上で IRC (Internet Relay Chat) するのに Riece を入れてみた。というのも、りなざう使用時にいちいちウィンドウ切り替 えるのがめんどいから、端末内で全て完結させたいのだ。 新しいフレームを作るのが、xyzzy だと C-x 5 2 で、emacs だと C-x 6 2 ってところに激しくハマる。いぢめだ。いぢめだ。 うーん。フレームの名前ってひたすらインクリメントされるのかな。一覧の出し方がわから ない。 問題は、SKK の確定キーを RET にしていること。ぼーっとしてるといちいち▼と一緒に変 換文字列を送っちゃうのだ。困った。C-j を送信にして RET は RET のままにすればいいか な。 レポートやれよ -------------- Reference URI: http://lowreal.net/logs/2006/03/29/2 Written Time: 2006-03-29T02:00:47+09:00 Tags: life school レポート書けよ。レポート書けよと書く暇があったらレポート書けよ。あと数日でどうやっ てレポートやるつもりなんだろうか。まだ一文字も書いてないうえに本も読んでない。本気 でやばいんだけど、本気でやる気にならない。困った……いやだなぁ。直前になるまでやら ないで。直前になってあひゃあひゃいいながら (実際言うのだ) 課題をやるわけだけど、こ れでどうにかなってしまう。どうにかならないほうがいいってわけじゃないけれど、もっと やる気を出して生きたい。もう、そういう風に育ってしまったから、今更どうにかできるこ とではないのだけれど。まぁでもほんと留年しなくてよかった。後回しになっただけ感があ るし、必修授業のことを考えるとすごくいやな気分になるけど、とりあえずはよかった。 よくわからないかもしれない話をするけれど、まっすぐ歩くというのはめちゃくちゃ難しい 。眼を開いていようが閉じていようがまっすぐ歩くのってすごく難しい。磁石があっても難 しい。まっすぐ歩いていればいつかたどり着くというのはよくわからない。たどり着く先が 目的地ではない可能性のほうが高いように思う。 へりくつなら、なんとでもいえる やる気のない畑から出してくれようとする人と、やる気のない畑に叩き戻す人がいる。これ は良い悪いの問題じゃなくて、そういうシステムのようで、こちらからは (彼らにも) どう にもできない。絶妙のタイミングで叩き戻されたりするから、ちょっと「上手くできたシス テムだなぁ」と感心するぐらいだ。これはこれでバランスがとれてしまっているから、もし 最初にやる気のない畑に生まれてしまったら、死ぬまでやる気のない畑から出ることは出来 ない。でようとしても、ひっぱられたり、たたきもどされたりするだけだ。 へりくつなら、なんとでもいえる ある展覧会に (レポートのため) 行ったのだけれど、やる気に満ち溢れていてなんか疲れた 。それと、すごくいいものを作っていたりするのに、ウェブに公開していないことを残念に 思った。もっと楽に公開できるシステム (と検索するシステム) が必要だと思った。今より もっと楽にならないと、作品作りに集中している人は公開する気にならないと思った。でも 、デジタルならともかく、アナログな作品ってどうやったら楽に公開できるんだろうか。 無駄に長いことを書けるようになった。 2006-03-30 ========== XML と YAML ----------- Reference URI: http://lowreal.net/logs/2006/03/30/1 Written Time: 2006-03-30T02:17:29+09:00 Tags: xml なんか YAML (YAML Ain't Markup Language) の話とか読むと、ことごとく XML (Extensible Markup Language) が比較されて貶されてて寂しい。 確かに XML (Extensible Markup Language) ってちゃんと書かないと読みにくいし、名前空間とか意味不明だし、DOM (Document Object Model) とか面倒くさい。 全ての XML (Extensible Markup Language) は YAML (YAML Ain't Markup Language) に置き換えられる的に書かれた YAML (YAML Ain't Markup Language) の紹介とかもあったりして、なんかアレだなぁって思った。例えば HTML (Hyper Text Markup Language) より、YAML (YAML Ain't Markup Language) のほうが断然書きやすいとか、それは違うよって思った。いやそもそも HTML (Hyper Text Markup Language) は XML (Extensible Markup Language) じゃないからこの話にはあんまり関係ないんだけど。 というかどうも、YAML (YAML Ain't Markup Language) と XML (Extensible Markup Language) を比べるのに違和感を感じて仕方がない。なんかうまく言葉に出来ないんだけど、用途が 違うんだよなぁ……とはいえ用途が違う、YAML (YAML Ain't Markup Language) のほうが向いている分野に XML (Extensible Markup Language) が使われている (例えば SOAP (Simple Object Access Protocol) とか XML-RPC とか、そこらの設定ファイルとか) からこういう話になるんだろうけどさ…… だからといって XML (Extensible Markup Language) は悪い!みたいな勘違いを見たくないよ……なぜなら俺は XML (Extensible Markup Language) さんが好きだから! 適所適材てのをちゃんと考えたい。まぁ[設定ファイルに XML (Extensible Markup Language) なんて面倒くさすぎてやらない](my:2005/01/14/1)んだけど(w できるだけ負けるように ---------------------- Reference URI: http://lowreal.net/logs/2006/03/30/2 Written Time: 2006-03-30T04:28:50+09:00 Tags: life なるほどなぁ、ってすごく思った。だから上手く負けて生きたい。 課題を一つ終わらせた。先は長い。 インターネットを使っていろんなことをやると自分がいかに知識がないかってことが、よく わかる。何も知らないにほぼ等しい。だから例えば、小さなコミュニティに属するべきじゃ ない。いい気になりやすいからだ。 ライセンスをずばばっと表示する@Flickr ------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/30/3 Written Time: 2006-03-30T05:34:05+09:00 Tags: js ![オーバーレイでライセンスを表示してみる](/2006/flickr-show-licenses-user-js.jpg [flickr-show-licenses.user.js](/2006/flickr-show-licenses.user.js) マウスをホバーさせるとライセンスが表示されるように。 最初はとにかく全部表示させていたけど、さすがに Flickr にアタックかけているがごとく HTTP (Hyper Text Transfer Protocol) リクエストするのでホバー起動にしてみた。 2006-03-31 ========== さっそく矢のようにやる気が失せてくね 「あっそう」って言われて 君にきっと会えるね ---------------------------------------------------------------------------------- Reference URI: http://lowreal.net/logs/2006/03/31/1 Written Time: 2006-03-31T02:55:23+09:00 Tags: life thinking でも結局、真面目な話が嫌いとかいう話を書くあたり、頭が悪くて性格が悪い。 現在位置を自覚をせんとー結果は容易に予想できるー こう、

    huga

    とか書くと頭痛い。 言葉で細かく説明されても、直感的にわかりはしない。わかるっていうのは結局、過去の自 分の経験に照らし合わせて、うまくピースがハマることだから、曖昧さが多く、誰にでも適 用できるような説明がいいと思う。勘違いでもいい。でも全てがそうであるべき、とは言わ ない。法とかは仕方ないしね。 人間とは無理だけど、コンピュータとは分かり合える。なぜかといえば、コンピュータは意 見を変えないからで、こちら側が歩み寄るしかないから、かな。それに、変な期待がない。 やりたいことをやれればいい、という諦めがあるから、完全に道具として「扱う」ことがで きる。いやもちろん今のところコンピュータはただの道具なんだけどさ。ソフトウェア 世界はめちゃくちゃ広い。凄い人はいくらでもいる。でも、ずっと楽しんでいられる場所が あるほど、世界は広くない。 そろそろミカンの話をしようか ---------------------------- Reference URI: http://lowreal.net/logs/2006/03/31/2 Written Time: 2006-03-31T04:53:46+09:00 Tags: life 金曜日の6時限目に爆睡して、ホームルームでも起きなくて、いつの間にかみんないなくな って、起きたら一人クラスメイトの女の子がいて、「やっと起きた(笑)」って言われる、 そんなイベントが欲しい。 (BURGER NUDS の) ミナソコで想像するのって、夕暮れのプールサイドに立って、水底を立 ったまま見つめてる、夏制服の女の子だったりする。なぜか赤いワンピースじゃない。半そ でのYシャツとあんまり長くない髪。 女の子は水底にピントをあてて、子供のころの思い出を水面に写しているんだけど、はじめ たらやめられなくなって、いつの間にか涙が流れてて、日が暮れて、そこで誰かがやっと迎 えに来る。みたいな。 ちなみにまだ夏本番ではなくて、ちょうど夏服への衣替えが終わったぐらいの季節。プール のフェンス (緑色で網状のやつ) の周りにあじさいが咲いてる。プールは学校の校舎から少 し離れてて、校庭からは見えない位置にある。 キモイなぁ…… どうも日記のアレが上手く書けないので、hr 要素を使うことにした。十分に構造化されて いれば hr はいらないんだけど、日記を書くとき、どうしてもそういう構造化までいくと大 げさになってしまうので (言い換えれば面倒くさい) フラットな hr を使ってみる。 自分の発言がどうも矛盾していて気持ち悪い。もっと考えよう。もっと考えよう。 どういうのを Geek っていうんだろう。ヲタクはともかく、Geek はいいイメージがするな ぁ。 やばいな。ちゃんとキャリブレーションしないと色おかしい。現実逃避したくなるほど色が おかしい場合どうしたらいいだろう。見ているものが信用できないのは怖い。