<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/xml.xsl" type="text/xsl"?><feed xmlns="http://www.w3.org/2005/Atom">
  <title>nulog, NULL::something : out of the headphone &gt; 2006 &gt; March</title>
  <link href="http://lowreal.net/logs/2006/03"/>
  <icon>http://lowreal.net/img/banner.png</icon>
  <link rel="self" type="application/atom+xml" href="http://lowreal.net/logs/2006/03.atom"/>
  <link rel="alternate" type="application/xhtml+xml" href="http://lowreal.net/logs/2006/03.xhtml"/>
  <updated>2006-03-31T04:53:46+09:00</updated>
  <author>
    <name>cho45(砂糖)</name>
  </author>
  <id>http://lowreal.net/2006/03</id>
  <entry>
    <title>てきとう E4X</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/01/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/01/1.xhtml"/>
    <updated>2006-03-01T14:11:49+09:00</updated>
    <published>2006-03-01T14:11:49+09:00</published>
    <id>http://lowreal.net/2006/03/01/1</id>
    <category term="e4x"/>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>どうにも使い道が少ない <abbr title="ECMAScript for XML">E4X</abbr> をちょっとメモる。</p>
        <p>基本的に <abbr title="XML Path language">XPath</abbr> (の省略記法) に似ているので、相違点とかあげつつみたいな。<abbr title="XML Path language">XPath</abbr> は <abbr title="ECMAScript for XML">E4X</abbr> に似せるため省略記法を使います。省略しないと<em>全然違う</em>。</p>
        <pre class="ECMAScript">
var doc = &lt;root&gt;
    &lt;foo&gt;hoge&lt;/foo&gt;
    &lt;bar&gt;huga&lt;/bar&gt;
    &lt;baz&gt;
        &lt;foo name="neko"&gt;
            &lt;bar&gt;pqpq&lt;/bar&gt;
        &lt;/foo&gt;
    &lt;/baz&gt;
&lt;/root&gt;;

</pre>
        <dl title="XPath と比べる">
          <dt>
            <code>doc.baz..foo</code>
          </dt>
          <dd>
            <code>/root/baz//foo</code>
          </dd>
          <dd><abbr title="ECMAScript for XML">E4X</abbr> ではルートノードがない。</dd>
          <dt>
            <code>doc..foo.(@name == "neko")</code>
          </dt>
          <dd>
            <code>//foo[@name = 'neko']</code>
          </dd>
          <dd><abbr title="ECMAScript for XML">E4X</abbr> では括弧の前にドットがいる。括弧の中は ECMAScript の式そのまま。すなわち <code>or</code> は <code>||</code>, <code>and</code> は <code>&amp;&amp;</code>。</dd>
          <dt>
            <code>doc.*</code>
          </dt>
          <dd>
            <code>/root/*</code>
          </dd>
          <dd><code>*</code> はそのままの意味。<code>@*</code> もそのまま書ける。</dd>
          <dt>
            <code>doc..foo[0]</code>
          </dt>
          <dd>
            <code>//foo[1]</code>
          </dd>
          <dd>数値は普通の ECMAScript 配列とかとと同じように 0 基準。</dd>
          <dt>
            <code>doc..foo.length()</code>
          </dt>
          <dd>
            <code>count(//foo)</code>
          </dd>
          <dd><abbr title="XML Path language">XPath</abbr> の例はどうでもいいけど、数を知りたいときは <code>length()</code> を使う。括弧をつけず <code>length</code> と書くと <samp>length</samp> 要素を選択しようとするので注意が必要。</dd>
        </dl>
        <p><code>for each</code> とかいう構文がある (構文？)</p>
        <pre class="ECMAScript">
for each (ele in doc.*) {
    // hoge
}
</pre>
        <p><samp>XMLList</samp> とかいうオブジェクトがある。無名の要素をルートにして作る。ちょっときもい。</p>
        <pre class="ECMAScript">
// XMLList (DOM の DocumentFragment みたいなの)
var xmlList = &lt;&gt;
   &lt;li&gt;1&lt;/li&gt;
   &lt;li&gt;2&lt;/li&gt;
   &lt;li&gt;3&lt;/li&gt;
&lt;/&gt;;

var doc = &lt;root&gt;
   &lt;li&gt;999&lt;/li&gt;
&lt;/root&gt;;

doc.appendChild(xmlList);
doc.toString() //=&gt;
  &lt;root&gt;
     &lt;li&gt;999&lt;/li&gt;
     &lt;li&gt;1&lt;/li&gt;
     &lt;li&gt;2&lt;/li&gt;
     &lt;li&gt;3&lt;/li&gt;
  &lt;/root&gt;
</pre>
        <p>名前空間</p>
        <pre class="ECMAScript">var rssDoc = &lt;rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:dc="http://purl.org/dc/elements/1.1/"&gt;

    &lt;channel rdf:about="http://example.com/"&gt;
        &lt;title&gt;Example&lt;/title&gt;
        &lt;link&gt;http://example.com/&lt;/link&gt;
        &lt;items&gt;

            &lt;rdf:Seq&gt;
                &lt;rdf:li rdf:resource="http://example.com/3"/&gt;
                &lt;rdf:li rdf:resource="http://example.com/2"/&gt;
                &lt;rdf:li rdf:resource="http://example.com/1"/&gt;
            &lt;/rdf:Seq&gt;
        &lt;/items&gt;
    &lt;/channel&gt;

    &lt;item rdf:about="http://example.com/3"&gt;
        &lt;title&gt;ex3&lt;/title&gt;
        &lt;link&gt;http://example.com/3&lt;/link&gt;
        &lt;dc:date&gt;2006-03-01T13:52:32+09:00&lt;/dc:date&gt;
    &lt;/item&gt;

    &lt;item rdf:about="http://example.com/2"&gt;
        &lt;title&gt;ex2&lt;/title&gt;
        &lt;link&gt;http://example.com/2&lt;/link&gt;
        &lt;dc:date&gt;2006-03-01T13:52:30+09:00&lt;/dc:date&gt;
    &lt;/item&gt;

    &lt;item rdf:about="http://example.com/1"&gt;
        &lt;title&gt;ex1&lt;/title&gt;
        &lt;link&gt;http://example.com/1&lt;/link&gt;
        &lt;dc:date&gt;2006-03-01T13:52:24+09:00&lt;/dc:date&gt;
    &lt;/item&gt;
&lt;/rdf:RDF&gt;;

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/elements/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);
}</pre>
        <p>見ればわかるように Namespace オブジェクト作って <code>::</code> を解決に使うみたい。使わないなら別に宣言しなくてもいい。あくまで <abbr title="ECMAScript for XML">E4X</abbr> でアクセスするために名前をつける (=変数に代入する) ので、別にどんな名前でもいい。</p>
        <pre>
var h = new Namespace("http://www.w3.org/1999/xhtml");
default xml namespace = h;
var HtmlDoc = &lt;html&gt;
    &lt;head&gt;
        &lt;title&gt;E4X&lt;/title&gt;
    &lt;/head&gt;
    &lt;body&gt;
       &lt;h1&gt;for (;;)&lt;/h1&gt;
    &lt;/body&gt;
&lt;/html&gt;;

</pre>
        <p>みたいなこともできるみたい。</p>
        <p><abbr title="XML Path language">XPath</abbr> における <code>following-sibling</code> 軸のようなメソッドはないっぽい？とりあえず眺めてみたらないっぽい。よくわからん。</p>
        <p>しかし、GreaseMonkey で <abbr title="ECMAScript for XML">E4X</abbr> を使うにしても、XMLHttpReqeust のハンドラぐらいでしか使えなくてなんともかんとも。もちろん生成するのは自由なんだけど……</p>
        <ins datetime="2006-03-01T15:10:04+09:00">
          <p><code>@</code> の働きがいまいちわからない。ちゃんと仕様読もう</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>はてブと del.icio.us を同時に使うように</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/02/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/02/1.xhtml"/>
    <updated>2006-03-02T11:52:47+09:00</updated>
    <published>2006-03-02T11:52:47+09:00</published>
    <id>http://lowreal.net/2006/03/02/1</id>
    <category term="js"/>
    <category term="gm"/>
    <category term="net"/>
    <category term="web"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><abbr title="Common Gateway Interface">CGI</abbr> 設置するのとかめんどいので <a href="/2006/xpost-del-hatena.user.js">xpost-del-hatena.user.js</a>, <abbr title="GreaseMonkey | Game Master">GM</abbr> スクリプトにした。</p>
        <p>はてなの認証方法がややこしいので、はてなをメインにして、del.icio.us をスクリプトで同期するように。新規ブックマーク, 編集, 削除がそれぞれ del.icio.us にも反映される。ただ、編集の場合、del.icio.us で上にあがってしまう問題がある (はてなの編集画面にはポスト時刻が表示されないのでめんどい)。</p>
        <p>最初なぜか <abbr title="Application Program(ming) Interface">API</abbr> 使わないで実装してた。頭が悪い</p>
        <ins datetime="2006-03-03T23:55:39+09:00">
          <p>ちょっと補足します。</p>
          <p><abbr>Fx</abbr> 1.5.0.1 + GreaseMonkey 0.6.4 ではとりあえず動いています。中身で無駄に <abbr title="ECMAScript for XML">E4X</abbr> 使っているので、1.5 未満では絶対に動かないです。</p>
          <p>ついでに動いてても何も言われません。淡々と del.icio.us に追加されたり削除されたりします。(最初の一回は del.icio.us の API Basic 認証がでます。これには del.icio.us のユーザ名とパスを入れます。)</p>
          <p>del.icio.us 側の操作は<abbr>はてブ</abbr>に反映されません。「はてなをメインにして」はそういう意味です。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>はてダ の2カラムさえ</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/02/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/02/2.xhtml"/>
    <updated>2006-03-02T15:42:57+09:00</updated>
    <published>2006-03-02T15:42:57+09:00</published>
    <id>http://lowreal.net/2006/03/02/2</id>
    <category term="web"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><abbr>はてダ</abbr> の2カラムさえなんか邪魔になってきたので <a href="/2006/ignore-hatena-2c.user.js">ignore-hatena-2c.user.js</a> 書いた。</p>
        <p><abbr title="GreaseMonkey | Game Master">GM</abbr> ばっか書きまくり！！</p>
        <p><abbr title="GreaseMonkey | Game Master">GM</abbr> の Edit ボタンが効かなかったんだけど、改めて about:config で設定しなおしたら使えるようになった。前より簡単につくれる＞＜</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>コメントのポスト方法をちょっと変更</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/03/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/03/1.xhtml"/>
    <updated>2006-03-04T01:56:50+09:00</updated>
    <published>2006-03-04T01:56:50+09:00</published>
    <id>http://lowreal.net/2006/03/03/1</id>
    <category term="js"/>
    <category term="ajax"/>
    <category term="site"/>
    <category term="web"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>Ajax るようにした。<abbr title="User Interface">UI</abbr> がイマイチ。</p>
        <ul>
          <li>Comments を押したらとりあえず消えて欲しい。</li>
          <li>投稿したあとガックンってなるのがちょっとキモイ。</li>
        </ul>
        <p>なんかいい方法はないかなぁ。</p>
        <ins datetime="2006-03-04T02:07:02+09:00">
          <p>Opera でおかしい。めんどいので Opera はじく。</p>
          <p>なんだか、この今のスタイルがまずだめみたいで、Opera だと挙動不審になる。</p>
        </ins>
        <ins datetime="2006-03-04T02:14:01+09:00">
          <p>クッキーに保存を実装しろといいたい。誰に。俺に。</p>
        </ins>
        <ins datetime="2006-03-04T11:29:24+09:00">
          <p>Ajax のほうのフォームはクッキーに保存するようにした。Singleton Cookie オブジェクト</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>なんかもうめんどうくさい</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/04/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/04/1.xhtml"/>
    <updated>2006-03-04T02:30:40+09:00</updated>
    <published>2006-03-04T02:30:40+09:00</published>
    <id>http://lowreal.net/2006/03/04/1</id>
    <category term="site"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>なんか静的に <abbr title="XSL Transformations">XSLT</abbr> で変換している /about とかの再構築さえめんどうくさくなってきた。動的にしたいなぁ。</p>
        <p>って思って簡単な <abbr>CMS</abbr> (といえるものじゃない) を作ったんだけど、なんかいまいち使う気になれない。こうね、IPv4 と IPv6 の違いみたいになっちゃって、ね。要するに互換性がなくてめんどい。もちろんそれだけじゃなくて、<abbr title="Uniform Resource Locator">URL</abbr> とかを変えたくないから、mod_rewrite で全て <abbr title="Common Gateway Interface">CGI</abbr> に渡すハメになるんだけど、なんで <abbr title="Common Gateway Interface">CGI</abbr> でウェブサーバを再実装みたいなことをしないといけないんだって感じに。</p>
        <p>もうね。例えばこれが自分のサーバーで、lighttpd で動いてて、FastCGI を使えるなら、まだ導入する気にもなれるんだけど、ね。だめね。もっと考えないとね。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>ruby-xslt の parameters=</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/06/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/06/1.xhtml"/>
    <updated>2006-03-06T00:52:29+09:00</updated>
    <published>2006-03-06T00:52:29+09:00</published>
    <id>http://lowreal.net/2006/03/06/1</id>
    <category term="xslt"/>
    <category term="ruby"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><code>parameters=</code> に渡す値はすべて自分でクオートしとこう。</p>
        <p>libxslt はもともとパラメータの値に <abbr title="XML Path language">XPath</abbr> そのまんま書けるんだけど、なぜか ruby-xslt の <code>parameters=</code> ではクオートして必ず文字列で渡す。しかしながら、なんかこのクオートの実装が狂ってて、自分でクオート付け足してる癖に Invalid expression とか言い出してくれちゃう。やれやれだぜ！</p>
        <p>正確に言うとクオートを付与する段階で、与えた文字列を中途半端に破壊的に変更するらしく、クオーテーションがかたっぽだけ付く。セッションとかで保存させながらのコードでもうハマったハマった。<code>dup</code> してどうにかしたけど、自分でクオートして明示的に文字列にしたほうがよさげ。</p>
        <p>ソースは読んでないので間違っているかも。あくまで挙動からの推測</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>外部認証</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/07/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/07/1.xhtml"/>
    <updated>2006-03-07T22:10:29+09:00</updated>
    <published>2006-03-07T22:10:29+09:00</published>
    <id>http://lowreal.net/2006/03/07/1</id>
    <category term="web"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>外部認証をコメント投稿に導入したくていろいろやっているんだけど、なんともかんとも。</p>
        <p>Flickr, TypeKey を用いてログインするところまでは作った。とりあえず、コメントを投稿するとき、アイコンやら、名前やらもそのまま記録するような方式のをやってみたのだけど、やっぱ認証サービス側で名前とかが変わったら、こっちの過去の名前とかも変えたいなぁ、と思った。</p>
        <p>サービス名と、サービス内で特定できる ID だけをコメントの情報につけて、ログインするごとに他のデータを更新するような感じにしたい。でもめんどい。<abbr>RDB</abbr> でテーブル複数つくって関係付ければ簡単なんだけど、いかんせん全てのデータを <abbr title="Extensible Markup Language">XML</abbr> に入れてしまっているのでめんどうくさい。かなり重くなるだろうし……</p>
        <p>というところで、諦めて全部一気に保存して更新しないようにするか、ちゃんと更新するようにするかで悩む</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>秘密がある。HIMITSU GIRL。ヘッドフォン</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/07/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/07/2.xhtml"/>
    <updated>2006-03-07T23:52:27+09:00</updated>
    <published>2006-03-07T23:52:27+09:00</published>
    <id>http://lowreal.net/2006/03/07/2</id>
    <category term="music"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>ZAZEN BOYS の HIMITSU GIRL'S TOP SECRET がかっこよすぎる。特にカシオマン。</p>
        <p>そういえば、ここ最近 UR/40 を使っていたんだけど、ひさしぶりに ATH-A500 をつけたら付け心地がよすぎて困る。きもちいい。</p>
        <p>この前でかけたとき、明大前でアートモニターシリーズの何かのヘッドフォンをつけた人を見た。男だったけど</p>
        <p>黒かったけどなんだろ。A900LTD なのかなぁ。男だったけど</p>
        <p>もっといかにもゴツイヘッドフォンつけてる人は見かけるけど、アートモニターはあんまり見ないなぁ。男だったけど</p>
        <p>見ないなぁっていうか、そもそも外に出ないんだった。男はいらない。</p>
        <p>どうでもいいけど、女子高生って存在しないんだってね。最近知った。よく考えてみると女子高生なんて見たことなかったんだ。見たっていうおぼろげな記憶は妄想だったみたいだ。でもさ、もし女子高生の存在を信じている人がいても、余計なことは言わないようにしようと思う。サンタクロースの存在を信じるのも、女子高生の存在を信じるのも、夢があっていいことだからね。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>あひるほしい！</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/07/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/07/3.xhtml"/>
    <updated>2006-03-08T01:34:51+09:00</updated>
    <published>2006-03-08T01:34:51+09:00</published>
    <id>http://lowreal.net/2006/03/07/3</id>
    <category term="life"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>最近あひるが欲しいです。モニタの前においてお話したい。だっくたいぴんぐ</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>認証付きコメント実装</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/08/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/08/1.xhtml"/>
    <updated>2006-03-08T15:03:31+09:00</updated>
    <published>2006-03-08T15:03:31+09:00</published>
    <id>http://lowreal.net/2006/03/08/1</id>
    <category term="web"/>
    <category term="site"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>この日記にもつけてみた。</p>
        <p>結局大して書く人がいないだろうってことでログインごとにユーザー情報を保持している  <abbr title="Extensible Markup Language">XML</abbr> を更新し、それを <abbr title="XSL Transformations">XSLT</abbr> から <code>document()</code> 使って読み込むようにした。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>Ajax では URL が変わらない？</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/08/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/08/2.xhtml"/>
    <updated>2006-03-08T16:33:26+09:00</updated>
    <published>2006-03-08T16:33:26+09:00</published>
    <id>http://lowreal.net/2006/03/08/2</id>
    <category term="ajax"/>
    <category term="js"/>
    <category term="web"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>そうとは限らないし、ちゃんと変わったほうがいいことも多い。</p>
        <p>Ajax なりなんなりを含めて、JavaScript でいいことって画面遷移がないことであって、<abbr title="Uniform Resource Locator">URL</abbr> が変わらないことじゃない。</p>
        <p><abbr title="User Interface">UI</abbr> の補助ではなく、コンテンツを書き換える場合はむしろ <abbr title="Uniform Resource Identifer | Universal Resource Identifer">URI</abbr> は変わったほうがいい。要はあとでそのリソースにリンクを貼りたいとき、困るか困らないかが分かれ目だと思ってる。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>説明書を読むのが好き。</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/09/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/09/1.xhtml"/>
    <updated>2006-03-09T01:41:28+09:00</updated>
    <published>2006-03-09T01:41:28+09:00</published>
    <id>http://lowreal.net/2006/03/09/1</id>
    <category term="life"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>結構説明書読まない人って多いみたいだ。</p>
        <p>小学生のときはそれこそ読まない人が全く理解できなかったけど、最近説明書を読みたくないときがあって、もしかしたらこういう感じなのかなぁって分かり始めたかもしれない。それはなんかとにかくいじくりまわしたい衝動が先にくる感覚だったのだけれど。</p>
        <p>まぁでも結局そのあと説明書を最初から最後まで読んだわけです。何ができて何ができないのか、よくやる操作はどうやるのが一番スマートなにかを頭に入れておきたい。結構何度も説明書を読んでいると、新しい機能の発見があったりする。最初は「使わないだろう」って思って見逃しちゃうものを再発見できる。結構楽しい。</p>
        <p>仕様書やら、プログラミングのリファレンスなんかもそういう感じでよく読む。一時期は <abbr title="XSL Transformations">XSLT</abbr> と <abbr title="XML Path language">XPath</abbr> の仕様書が常に開きっぱなしだった。ECMAScript の仕様書 (日本語 <abbr title="Hyper Text Markup Language">HTML</abbr> 版) はむしろリファレンスとして使ってる。Ruby リファレンスマニュアルは気が付くと何故か上下になんどもスクロールしながら見てる。</p>
        <p>暇だからできることだけど、とにかく自分が使うものは隅々まで一応知っておきたい。もし必要な機能じゃなかったら、頭の片隅にその機能があることだけを覚えておけばいい。使い方はまたあとで見ればいいから。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>遊体離脱の空耳</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/10/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/10/1.xhtml"/>
    <updated>2006-03-10T15:52:27+09:00</updated>
    <published>2006-03-10T15:52:27+09:00</published>
    <id>http://lowreal.net/2006/03/10/1</id>
    <category term="music"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>そういえば、<q>貧困な思考はいつも　あなたのパターンを　安易なイメージ処理して</q> のところの最後をしばらくの間「アニメーションにして」と勘違いしていた。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>Flickr は親切だった。</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/10/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/10/2.xhtml"/>
    <updated>2006-03-10T15:54:23+09:00</updated>
    <published>2006-03-10T15:54:23+09:00</published>
    <id>http://lowreal.net/2006/03/10/2</id>
    <category term="net"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>めんどくさがって例外処理しなくても http://static.flickr.com/<em>0</em>/buddyicons/ 以下は全てリダイレクト。</p>
        <p>アイコンが設定されていないときは、特別に <a href="http://www.flickr.com/images/buddyicon.jpg">http://www.flickr.com/images/buddyicon.jpg</a> をアイコンとして使うんだけど、なんとなく面倒くさくてこの処理をしていなかった。というか、どういうレスポンスが返ってくるかわからなかったから放置していた。</p>
        <p>で、なんとなくアレしてコレして見てみたら、iconserver=0 がレスポンスされるらしい。例外処理しとくかーって思ったけどリダイレクトだった。細かい配慮ないす。</p>
        <ul title="参考リソース">
          <li>
            <a href="http://www.flickr.com/services/api/misc.buddyicons.html">Flickr API Documentation - Buddyicons</a>
          </li>
        </ul>
      </div>
    </content>
  </entry>
  <entry>
    <title>ログインに使ってるスクリプト</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/10/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/10/3.xhtml"/>
    <updated>2006-03-10T17:42:59+09:00</updated>
    <published>2006-03-10T17:42:59+09:00</published>
    <id>http://lowreal.net/2006/03/10/3</id>
    <category term="ruby"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><a href="/2006/weblogin.rb">weblogin.rb</a>, 名前失敗したけどもういいや。</p>
        <p>そのうち忘れるので使い方をめもる。</p>
        <p><code class="Ruby">@cgi.header</code> を使うことを前提にしてる。</p>
        <pre class="Ruby" title="api_keys">
api_keys = {
    "Flickr" =&gt; {
        "api_key" =&gt; "Flickr70c55b82e10021ffaaapi_key6",
        "secret"  =&gt; "Flickrdf5secret3"
    },

    "TypeKey" =&gt; "fsakfsTypeKeyafasAPI"
}</pre>
        <pre class="Ruby" title="認証スクリプト">
require "weblogin.rb"
@cgi = CGI.new
WebLogin.open(@cgi, api_keys) do |login|
    begin
        case login.auth
        when :login
            # login したときの処理
            # DB にユーザ ID とユーザ情報を保存したり
        end
    rescue WebLogin::NoActionError =&gt; e
        puts @cgi.header("type" =&gt; "text/plain")
        puts login.services # 有効なサービスの配列
    end
end
</pre>
        <p>上のようなのを認証スクリプトとしておいとく。このサイトだと <samp>/login.rb</samp> がコレ。ログインスクリプトの query_string が <samp>logout</samp> だったらセッションを破棄してリファラにリダイレクトする。ちょっとアレ。</p>
        <p><samp>/login.rb/Flickr?return_path=</samp> のようなリクエストをすると Flickr にリダイレクトして認証させる。認証されるとコールバック (Flickr の対応する API key のコールバックには <samp>http://example.com/login.rb/Flickr/callback</samp> のように指定しておく) にリダイレクトされるので、セッションに情報をセットして、return_path にリダイレクトする。</p>
        <p>login.auth は、path_info に何も指定されていなかったりすると NoActionError を投げる。</p>
        <pre class="Ruby" title="認証を使うスクリプト">
require "weblogin.rb"
@cgi = CGI.new
WebLogin.open(@cgi, api_keys) do |login|
    if login.service
        # login している場合
        login.service #=&gt; "Flickr"
        login.id #=&gt; "25514198@N00"
        login.user_name #=&gt; "cho45"
        login.profile_uri #=&gt; "http://www.flickr.com/photos/25514198@N00/"
        login.icon #=&gt; "http://static.flickr.com/23/buddyicons/25514198@N00.jpg"
        login.full_name #=&gt; "Hiroh Satoh"
    else
        # login していない場合
        # id その他上記メソッドは全て nil
    end
end
</pre>
        <p>いまいち気持ち悪いんだけどどうにもこうにもわからんのでこんな感じ。ブロックをとっているのはセッションファイルを確実に閉じるため。fcgi 環境で死ぬことがあったのでこういうことやってる。</p>
        <p>WebLogin クラスは、それ以下にある、サービス名に対応するクラスをインスタンス化してメソッドを呼び出す。例えば <samp>/login.rb/Flickr?return_path=somepath</samp> の場合、<code class="Ruby">WebLogin::Flickr.new(@cgi, @session, @api_keys["Flickr"]).auth</code> が呼ばれる。</p>
        <p>各サービス名の <code>auth</code> メソッドはサービスの認証画面にリダイレクトする。サービスは <samp>/login.rb/Flickr/callback</samp> にリダイレクトする。</p>
        <p><samp>callback</samp> が指定されている場合、インスタンス化されたサービスクラスの <samp>callback</samp> メソッドを呼ぶ。<samp>callback</samp> メソッドはユーザ情報をまとめて <code>Hash</code> にして返す。<code>WebLogin</code> はその <code>Hash</code> をセッションに保存して、最初に指定された <samp>return_path</samp> にリダイレクトする。</p>
        <p>いろいろアレなことが思い浮かんだけどあとで考えよう。</p>
        <ins datetime="2006-03-11T18:51:02+09:00">
          <p><code>new</code> にブロックって一般的じゃないんじゃ？という指摘をうけたので <code>open</code> にした。確かに <code>new</code> にブロックは微妙だった。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>いんたーねっと、コミュニケーション refusal desire</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/11/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/11/1.xhtml"/>
    <updated>2006-03-11T17:39:34+09:00</updated>
    <published>2006-03-11T17:39:34+09:00</published>
    <id>http://lowreal.net/2006/03/11/1</id>
    <category term="music"/>
    <category term="net"/>
    <category term="thinking"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>かさはもっています。ふくはぬれていません。</p>
        <p>拙い言葉で理解しあった気分になれるのがインターネット。あいまいでいい。程度の違いでしかないのだから、今なんとなくいい感じなら、それでいい。</p>
        <p>家にいながら、てきとーにコミュニケーションがとれる。面倒くさい話に巻き込まれないようにすれば、巻き込まれなくてすむ。いつの間にか巻き込まれているなかで、どうでもいいことに発言を求められるのは面倒くさい。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>Ruby, collect or map</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/11/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/11/2.xhtml"/>
    <updated>2006-03-12T03:39:12+09:00</updated>
    <published>2006-03-12T03:39:12+09:00</published>
    <id>http://lowreal.net/2006/03/11/2</id>
    <category term="ruby"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>ずっと <samp>collect</samp> を使ってきたんだけど、マイノリティなのか。</p>
        <p>今日 <a href="http://wota.jp/ac/?date=20060309" title="ヽ( ・∀・)ノくまくまー(2006-03-09) Rails - Active Support"><samp>Symbol#to_proc</samp></a> 関連で <samp>map</samp> をよく見かけたから、<samp>map</samp> ってなんだっけーとか思いつつリファレンスをひいたら、あら不思議、<samp>collect</samp> のシノニムだった。<abbr title="Internet Relay Chat">IRC</abbr> でそんなこと言ってたら「collect ってむしろなんだよ」的で驚いた。</p>
        <p><samp>map</samp> のほうが短くていいからこれからは <code>map</code> にしようかと思いつつ、やっぱどうも <samp>map</samp> に慣れないいやそれは当たり前だけど。</p>
        <p>そもそもなんで <samp>collect</samp> を使い始めたんだろう。謎だ。リファレンスマニュアルで <samp>map</samp> より上にあるからだろうか。</p>
        <p>あーそうだ。一応忘れないように印象を書いておいてみる。ちなみに俺は数学がわからんちんな坊やなので、<samp>map</samp> が写像だとかってのは微塵も知りませんでした。いやもだめすぎなんですが、その辺を考慮してください (謎)。</p>
        <p><samp>map</samp> ってなんか戻り値が予想できない感じがする。配列の各要素にブロックを適用する (脳内での map のイメージは適用だった)、までは名前から分かるのだけれど、そのあとどうやって返ってくるのかが直感的にわからなかった。</p>
        <p>対して <samp>collect</samp> は、集めて配列にするみたいなことが名前からわかるので戻り値は直感的だった。ついでに配列のメソッドにブロックを与えている時点でブロックを適用する感じを醸し出していたので、動作が予想できる感じ。</p>
        <p>書くなら断然 <samp>map</samp> のほうが楽だなぁ……</p>
        <p>ちなみに <samp>collect</samp>, <samp>find</samp>, <samp>select</samp> を使ってる。<samp>find_all</samp> じゃなくてなぜか <samp>select</samp>, <samp>detect</samp> じゃなくてなぜか <samp>find</samp>。この場合 <samp>find</samp> を <samp>detect</samp> にして語尾を統一すべきか。</p>
        <ins datetime="2006-03-12T04:18:48+09:00">
          <p>マイノリティじゃないかも。</p>
          <p><a href="http://jp.rubyist.net/magazine/?0001-Hotlinks">Rubyist Magazine - Rubyist Hotlinks 【第 1 回】</a> 最初は map はなかったみたいだ。だから collect のほうが上にあるのか。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>自信はどこからやってくる？</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/12/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/12/1.xhtml"/>
    <updated>2006-03-12T05:04:27+09:00</updated>
    <published>2006-03-12T05:04:27+09:00</published>
    <id>http://lowreal.net/2006/03/12/1</id>
    <category term="life"/>
    <category term="thinking"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>例えば就職するときには (別にバイトでもなんでもいいけれど) 自分を売り込む必要がある。自分がこういう能力をもっていて、こういうことができることを、自信を持って言わなければいけない。相手に自分を認めさせる必要がある。</p>
        <p>でも、その能力があるとかっていう自覚・自信をどうやってつければいいんだろう。自分で自分を認めて自信をつける場合、よくある自信過剰パターンに陥っている場合が殆ど。だから、他人に認めてもらう必要があるのだけれど、他人に認めてもらうには売り込む必要がある。売り込むには自信がいる。無限ループ。</p>
        <p>しかも、自信っていうのは時間がたつにつれて薄れていく。もっと自分より若い人達が現れてすごいことをやるし、あるいは世界が広がってもっとすごい先輩を発見することになる。</p>
        <p>で、そういう感じで、まぁいいやって思えてくると就職というかバイトさえできなくなる。人前というか面接だと平気で嘘をつけるので、その嘘をあとでどうやって回収するかを想像してどうにもこうにもいかなくなる。嘘じゃなくなるまで腕を磨くとか、そういう方向になるけど、結局上には上がいる以上嘘は嘘のままになる。</p>
        <p>例えば Ruby が書けるっていったらあたりまえだけど Ruby が書けないとだめだ。でもどのレベルから Ruby が書けるっていえるのかが全くわからない。人によって違うだろうし。例えばだから、Ruby に限らない。プログラミングができるっていうのはどのレベルからなのか、ウェブデザインっていうのは何を指しているのか。相手に聞けよ、というのは解決にならない。相手に聞く段階には既に自信が必要だし、嘘をつかないといけない情況になっている。</p>
        <p>中には嘘をあとから本当にすればいいという人もいる。でもそれは自分で撒いた嘘に追われる形になる。強制的に嘘によって何かをやらされることになる。そういうのはだめだ。何かをやらされているなんて感じるのはだめだ。もっと能動的に動かないといけない。でもまたそこで必要なのが自信だ。人前で能動的に動くには自信が必要になる。無限ループ。</p>
        <p>はいどうしよもない。ただ、どうしよもないからといって諦めてもいい問題じゃないのが鬱陶しい。誰もが働かないといけないから、自分もその例外じゃないのだ。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>2ch cloud / rep2</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/12/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/12/2.xhtml"/>
    <updated>2006-03-12T17:56:22+09:00</updated>
    <published>2006-03-12T17:56:22+09:00</published>
    <id>http://lowreal.net/2006/03/12/2</id>
    <category term="2ch"/>
    <category term="web"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a xmlns="http://www.w3.org/2005/Atom" href="/view-img/2006/0312-rep2-cloud.jpg" title="/2006/0312-rep2-cloud.jpg">
            <img src="/2006/0312-rep2-cloud.jpg" alt="クラウド表示させた VIP"/>
          </a>
        </p>
        <p>rep2 のスレッドリストに雲を表示する GreaseMonkey スクリプト <a href="/2006/rep2-cloud.user.js">rep2-cloud.user.js</a></p>
        <p>インストールしたら設定で include の設定しないとだめです。もしかしたらデフォルトの rep2 ではだめかも。勢いが表示されてないとだめです。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>指輪 / BURGER NUDS, 自分の印象</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/12/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/12/3.xhtml"/>
    <updated>2006-03-12T23:26:01+09:00</updated>
    <published>2006-03-12T23:26:01+09:00</published>
    <id>http://lowreal.net/2006/03/12/3</id>
    <category term="music"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>最初聞いたときは、最後の「望んだ世界はどうだった？」の意味を完全に無視して、プロポーズ系の唄なんだろうか、とてきとーに考えてた。</p>
        <p>聞き込むにつれて「望んだ世界はどうだった？」がどう考えてもキーになっているように感じはじめた。というか明らかに文脈が違う。</p>
        <p>それで、もしかしてそれまでの綺麗だったりする部分は全部「望んだ世界」で、悪魔が、夢を見せた後に「望んだ世界はどうだった？ (そして今の情況を見てみろよ)」訊いているような解釈をした。ようは MARCH 系。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>指輪 / BURGER NUDS</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/12/4.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/12/4.xhtml"/>
    <updated>2006-03-12T23:33:21+09:00</updated>
    <published>2006-03-12T23:33:21+09:00</published>
    <id>http://lowreal.net/2006/03/12/4</id>
    <category term="music"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>だいたい固定されたので書く。でも書かないほうがいいかもしれない。基準が曖昧だ。だから、曖昧に書く。</p>
        <p>当たり前だけれど、正しい解釈は存在しない。いや、間違った解釈は存在しない。感じたままでいい。だから、もし指輪を聞き込んでいないなら、なおさら読まないほうがいいと思う。</p>
        <p>指輪は BEST に収録されており、解説がついているから、それを参考にする。っていうかこの解説が既に意味不明なのがどうもこうも。ぎりぎりセーフってなんだよもう。</p>
        <p>解説には三つのヒントがある。それは「指輪」が、「いつでも振り返る事で新しいステップを踏み出す力をくれる、思い出」を唄っているということと、「望んだ世界はどうだった？」は過去の自分による今の自分への問いかけであるということ、そして「望んだ世界」は今の自分にとって「どうしよもないもの」であること。これを前提にして考える。</p>
        <p>最初の部分は悪い状態の自分に関するところ。<q>子供たちは残酷に笑う　皆いつか　大人になるから　だけど気負ってない　こんな眼はしてない</q> までのところ。「大人になるから」とあるけど、たぶん「大人になるのに」という意味だと思う。大人になって汚くなっていくことが決まっている子供たちを見つつ、汚くなっていくことに対して気負いがない純粋さが、自分にとって残酷である、ぐらい。子供たちは気負っていないけど、自分は気負っているわけだ。汚くなりかけの時期に、汚くなりたくないことを望んで。</p>
        <p>そいで少し飛ばして <q>何か忘れたろ？　そんな眼をしてる</q>だ。自分は何かを忘れている。あとでもう一度この問いかけが繰り替えさえれるけど、その忘れたモノをしっかり思い出すことが<em>「指輪」の目的</em>である。</p>
        <p>忘れたものを思い出すために、<q>ピカピカのピンセットで腐乱した情熱の解剖実験</q>をする。解剖実験は記憶をほじくりかえす作業そのもの。</p>
        <p>で、思い出したのが「あの日細い指に　錆びた指輪をして　全てに笑いかけたろ」なわけだ。笑いかけているのはまだでてきていないけど「君」なはず。「君」って誰だかわからないけれど、とりあえず綺麗なので女の子ってことにしとく。いやどうでもいい。ここで重要なのはもちろん「錆びた指輪」だ。「錆びた指輪」はおそらく「腐乱した情熱」と同じもの。「君」は腐乱した情熱をもっていたのにも関わらず、笑っていた。</p>
        <p><q>何を恐れてんだよ　錆びた指輪でいい　気取っている場合じゃないだろ</q> 「錆びた指輪」は「腐乱した情熱」と読み替えてもいい。「気取っている」というのは、純粋なままであろうとするということ。腐らないように、錆びないように生きていくことが「気取っている」こと。</p>
        <p>ここで戻るけど <q>いつかここは地獄と言ったろ　それは嘘で実はよく分からない　別に気取ってない　そんな不快じゃない</q> がわかるようになる。いつかここを地獄といった。地獄というのは腐乱した、錆びた世界について自分が持っているイメージだ。でも、だんだん気持ちが変わってきている。腐乱していて、錆びている世界でもいいのかもしれないと思い始めている。気取っていない、すなわち、自分の素をさらけ出した状態でも、「そんな不快じゃない」と思えるようになった。という変化。</p>
        <p><q>何を忘れたの？　それを確かめなきゃ　「生きる意味」も軽いだけ</q> ここでまた忘れたものは何かという問いかけがある。ピカピカのピンセットで腐乱した情熱を解剖して、思い出し、確かめないといけない。気負ったまま、笑えないままでは「生きる意味」も軽いのだ。</p>
        <p>そして「あの日細い指に」と入る。<q>君は指輪をして　世界一の笑顔で</q> -snip- <q>「全て」に笑いかけたろ</q>。「君」は錆びた指輪をしつつも、世界一の笑顔で笑っていられた。腐乱した情熱の中に、硬いガラス玉のようなものを持っていられた。硬いガラス玉というのは、すなわち忘れたモノである。記憶の中の「君」を通して、忘れたものを見つけられた状態が最後の部分。変わっていない部分があるということに気付く。</p>
        <p>それで最後に「望んだ世界はどうだった？」だけど、「望んだ世界」がなんだったかというと、純粋なままでいられる世界・純粋なまま生きていける世界。でも、結局どう転んでも、変わらない部分があることがわかっていれば、表向きが腐ろうが錆びてしまおうが、あまり関係ないわけだ。だから、そういう世界にこだわっても無駄だし、「どうしよもなかったもの」と笑い飛ばせる。</p>
        <p>つまり、自分が腐ってしまった、あるいは、腐ってしまうかもしれないと思うときに、いつまでも根底に変わらないものがあることを思い出させるのが「指輪」なわけだ。終わり。</p>
        <ins datetime="2006-03-13T01:46:10+09:00">
          <p>「プラチナ」について言及しなかったけれど、それはぶっちゃけよくわからないから。腐食に強い金属の代表かな？ エンゲージリング (マリッジリング) によく使われるからかしら。安直だけど</p>
        </ins>
        <ins datetime="2006-03-13T04:04:52+09:00">
          <p>「全てに笑いかける君」という非現実さと、「冷たい水を求める」理想感と、「腐るしかない」ということを暗示させる現実感が共存しているのが美しいと思う。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>taglibro の今後の予定</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/13/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/13/1.xhtml"/>
    <updated>2006-03-13T02:12:06+09:00</updated>
    <published>2006-03-13T02:12:06+09:00</published>
    <id>http://lowreal.net/2006/03/13/1</id>
    <category term="taglibro"/>
    <category term="site"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>たぶんやらないけど、やりたいことを書いとく。</p>
        <ul>
          <li>まず libxml-ruby を捨てて REXML を使う。もともと libxml-ruby を使おうと思ったのは REXML が名前空間をまともに処理してないからだったんだけど、名前空間とかどうでもよくなった。んで、libxml-ruby は Pure Ruby じゃないのでいちいち環境間で面倒くさい。REXML は標準添付だからその辺は心配ない。できるだけ Pure Ruby じゃない外部ライブラリを使わないようにしたい。</li>
          <li>ちゃんとライブラリ化する。</li>
          <li>公開できるようにする。</li>
        </ul>
      </div>
    </content>
  </entry>
  <entry>
    <title>Last.fm の他人へのリンクで最近のトラックを表示させる GM スクリプト</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/13/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/13/2.xhtml"/>
    <updated>2006-03-13T13:10:16+09:00</updated>
    <published>2006-03-13T13:10:16+09:00</published>
    <id>http://lowreal.net/2006/03/13/2</id>
    <category term="js"/>
    <category term="net"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="/2006/pop-up-recent-lastfm.user.js">pop-up-recent-lastfm.user.js</a>
        </p>
        <p>例えば Neighbours とか Friends のリンクとか</p>
        <p>実装がすごい汚い。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>JS の XPath</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/13/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/13/3.xhtml"/>
    <updated>2006-03-13T14:21:48+09:00</updated>
    <published>2006-03-13T14:21:48+09:00</published>
    <id>http://lowreal.net/2006/03/13/3</id>
    <category term="xpath"/>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>前々からいちいちあのクソながったらしい <samp>evaluate</samp> を書くのがだるかったのでちゃんと関数はさむようにした。</p>
        <ins datetime="2006-03-16T23:19:09+09:00">
          <p>大きなバグがあります。詳細は<a href="http://lowreal.net/logs//2006/03/16/1">XPath, $X function, NSResolver</a>に書きました。以下のコードは非推奨です。</p>
        </ins>
        <pre class="ECMAScript">
$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.stringValue;
        case XPathResult.NUMBER_TYPE : return result.numberValue;
        case XPathResult.BOOLEAN_TYPE: return result.booleanValue;
        case XPathResult.UNORDERED_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 &lt; len ; i++) {
                ret.push(result.snapshotItem(i));
            }
            return ret;
        }
    }
    return null;
}

alert($X("//p")); // Array of p elements
alert($X("count(//node())")); // =&gt; node number
alert($X("count(//body) = 1")); //=&gt; must be true

// Firefox が嫌いになる GM スクリプト
if ($X("contains(string(/), 'Firefox')")) {
    alert("I LOVE FIREFOX!");
}</pre>
        <p>これでコピペ地獄から開放される。</p>
        <ul>
          <li>
            <a href="http://lowreal.net/logs//2006/01/03/1">XPath 1.0 チートシート</a>
          </li>
        </ul>
      </div>
    </content>
  </entry>
  <entry>
    <title>簡易ビルダー</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/13/4.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/13/4.xhtml"/>
    <updated>2006-03-13T14:39:41+09:00</updated>
    <published>2006-03-13T14:39:41+09:00</published>
    <id>http://lowreal.net/2006/03/13/4</id>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><a href="http://lowreal.net/logs//2006/03/13/3" title="JS の XPath">まえ</a>のとあわせて</p>
        <pre class="ECMAScript">$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 &lt; len; i++) {
                var child = childs[i];
                if (typeof child == "string") {
                    ret.appendChild(document.createTextNode(child));
                } else {
                    ret.appendChild(child);
                }
            }
            break;
        }
    }
    return ret;
}

var pq;
document.body.appendChild($N("div", {}, [
    $N("div", {style:"font-weight:bold"}, "foobar"),
    $N("div", {}, [
        pq = $N("ol")
    ])
]));
for (var i = 0; i &lt; 10; i++)
    pq.appendChild($N("li", {}, "hoge");

var div = $N("div");
</pre>
        <p>みたいなのを使ってる。</p>
        <p><samp>innerHTML</samp> を使いたくない (<samp>application/xhtml+xml</samp> では一切使えない) けど、<code>document.createElement</code> の嵐はキモイ。中間とって GreaseMonkey のテンプレート (xyzzy の拡張 lisp を入れてる) にごちゃごちゃ書いてしのいでるます。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>scroll イベントが起きたり起きなかったり</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/13/5.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/13/5.xhtml"/>
    <updated>2006-03-13T20:53:19+09:00</updated>
    <published>2006-03-13T20:53:19+09:00</published>
    <id>http://lowreal.net/2006/03/13/5</id>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><abbr title="GreaseMonkey | Game Master">GM</abbr> で <code>window.addEventListener("scroll", fuction (e) {}, false);</code> とかやってみたんだけど、どうもページごとにイベントが発生したりしなかったりする。なんでだろう。全然わからない。</p>
        <p>例えばこのサイトだと、日記のページは全てイベントが発生しない。で、/about とか /xbel とかはちゃんと発生する。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>Ruby で、Ruby に限らず</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/14/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/14/1.xhtml"/>
    <updated>2006-03-14T06:34:56+09:00</updated>
    <published>2006-03-14T06:34:56+09:00</published>
    <id>http://lowreal.net/2006/03/14/1</id>
    <category term="prog"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>やっぱ最初のころは Ruby のブロック引数が全く理解できんかった。yield をよぶとどこに飛ぶか、とか結構悩むと思うんだ。</p>
        <p>each の「使い方」を先に覚えて、実行してみてやっとブロック引数の概念が理解できた。んで、「じゃあ自分で書くときはどうするんだ」とかでリファレンスを読むと yield とか書いてあって、でもそれ以上はリファレンス読んでもよく分からなかったから、てきとーにサンプル作ってみてやっと理解した。</p>
        <p>それまで書いていたのが <abbr title="PHP: Hypertext Preprocessor">PHP</abbr> とかいう謎言語だったので、Ruby が余計に神がかってみえた。Perl は読めなかったし、Python は知らなかったし。今は Perl とか Python を勉強しようと思っても、必要性が見当たらなくて書けない。所詮「勉強」にすぎなくなるから、やる気があんまり起こらない。しかし Perl はホントに、本当に読めない。<code>map { hoge } hage {} @foobar</code> みたいなのをよく見るけど、どういう仕組みで評価されてるのかよくわからない。</p>
        <p>まぁ、とりあえず、自分は実装を触りながらじゃないとぜんぜん理解できない。頭が悪い上に「自分の今考えてること」に対してかなり不安を覚えるので、すぐにコンピュータで実行させて、考えていることがあっているのか間違っているのかを確定させたい。</p>
        <p>あんまり頭の中で構造を考えないで、とにかく動かしてみる。一行書いて、<code>p</code> 書いて、実行して、ってのを繰り返す。しかもこれ、未だにこういう感じなのだ。数行書くごとに実行する。とにかく <code>p</code> を書きまくる。んで、暇なときにリファレンスを眺めて、「こういうことができるのか」ってまた書いて実行してみたりする。</p>
        <p>だから、何か作ろうとしていないと、そもそもプログラムを書かないからなかなか理解できるようにならない。Perl も書いてみたらわかるかもしれないけど、Perl を使って書きたいものがない。気がつくと面倒くさくて Ruby を使ってる。だめじゃん。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>XPath, $X function, NSResolver</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/16/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/16/1.xhtml"/>
    <updated>2006-03-16T23:06:04+09:00</updated>
    <published>2006-03-16T23:06:04+09:00</published>
    <id>http://lowreal.net/2006/03/16/1</id>
    <category term="xpath"/>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><a href="http://lowreal.net/logs//2006/03/13/3">JS の XPath</a> なんて書きましたけど、重大なバグがありまして、っていうかなんで気がつかなかったんだろう、えーそれは application/xhtml+xml なページ、すなわち <abbr title="Extensible Markup Language">XML</abbr> として、名前空間をちゃんと扱うページではまともにセレクトできないんですよーははははー、例えばこのサイトとかね。</p>
        <pre class="ECMAScript">
$X = function (exp, context) {
    if (!context) context = document;
    var resolver = 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.stringValue;
        case XPathResult.NUMBER_TYPE : return result.numberValue;
        case XPathResult.BOOLEAN_TYPE: return result.booleanValue;
        case XPathResult.UNORDERED_NODE_ITERATOR_TYPE: {
            result = exp.evaluate(context, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
            var ret = [];
            for (var i = 0, len = result.snapshotLength; i &lt; len ; i++) {
                ret.push(result.snapshotItem(i));
            }
            return ret;
        }
    }
    return null;
}

alert($X("//x:p")); // Array of p elements
alert($X("count(//node())")); // =&gt; node number
alert($X("count(//x:body) = 1")); //=&gt; must be true

</pre>
        <p>かなり強引に修正してみた。</p>
        <p><abbr title="XML Path language">XPath</abbr> で要素を指定するとき <samp>x</samp> という prefix (上のコードの場合は別になんでもいいんだけど、普通は x とか xhtml とかいうのをつける) を必ずつけるようにしとく。使い勝手が悪くなったけど、仕方ない。prefix がないときは resolver をよんでくれないみたいだ。</p>
        <p>そう、で、resolver なんだけど、実はただの関数だった。<code>evaluate</code> は prefix を見つけると、resolver に prefix を渡し、URI を返すように要求する。resolver は prefix に対応する <abbr title="Uniform Resource Identifer | Universal Resource Identifer">URI</abbr> を返す。<code>null</code> の場合はエラー, <code>""</code> の場合は、名前空間が null のものとして扱われるみたい (要追試)。</p>
        <p>つまり、上のコードの resolver がやってることは、とりあえず普通の場合のように NSResolver を作って投げてみて、ダメだったら contentType にあわせて名前空間を返してやるっていう、かなり強引な (二回目) 方法なわけです。誰かもっと美しくして！</p>
        <ins datetime="2006-03-16T23:24:33+09:00">
          <p><q>使い勝手が悪くなったけど</q> と書いたけど、<abbr title="XSL Transformations">XSLT</abbr> で使うような XPath と同じになった。まぁ名前空間を考慮するとこういうことになるっていう名前空間マジックなんだけど、やっぱり面倒くさいよなぁ。</p>
          <p><code>$X("count(//x:body) = 1")</code> を <code>$X("count(//*[local-name() = 'body' and namespace-uri() = "http://www.w3.org/1999/xhtml"]) = 1")</code> みたいに書きたくはないし、<abbr title="Hyper Text Markup Language">HTML</abbr> なページと <abbr title="Extensible Hyper Text Markup Language">XHTML</abbr> ページとで、同じ XPath を使おうとするとこんなもんになってしまうような気もする。</p>
        </ins>
        <ins datetime="2006-03-17T02:41:30+09:00">
          <p>冷静に考えると <samp>x</samp> より <samp>h</samp> のほうがいいや。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>ソースの色づけを復活</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/17/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/17/1.xhtml"/>
    <updated>2006-03-17T17:42:31+09:00</updated>
    <published>2006-03-17T17:42:31+09:00</published>
    <id>http://lowreal.net/2006/03/17/1</id>
    <category term="js"/>
    <category term="site"/>
    <category term="prog"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><code>pre</code> だけ色付けするようにした。</p>
        <p>前に Pure JavaScript で色つけていたことがあったけど、あからさまにブラクラだった。で、なんとなく思いついたのでもっかい別の方法で実装してみた。</p>
        <p>なんていうか非常にローテクといいますか他力本願な方法でして、<a href="http://pear.php.net/package/Text_Highlighter">PEAR::Text_Hightlighter</a> に Ajax で丸投げというソリューションでございますです。</p>
        <pre class="PHP">&lt;?php

header("content-type: text/xml");

require_once 'Text/Highlighter.php';
require_once 'Text/Highlighter/Renderer/Html.php';
$options = array(
    'numbers' =&gt; HL_NUMBERS_LI,
    'tabsize' =&gt; 4,
    );
$renderer =&amp; new Text_Highlighter_Renderer_HTML($options);
$hl =&amp; Text_Highlighter::factory($_GET["lang"]);
$hl-&gt;setRenderer($renderer);

$ret = $hl-&gt;highlight($_GET["source"]);


echo '&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;';
echo $ret;
echo '&lt;/div&gt;';
?&gt;</pre>
        <p>こんなスクリプト書いたら、あとは <abbr>JS</abbr> で <code>pre</code> 要素列挙して投げてあげる。レスポンスを <code>importNode</code> して、<code>pre</code> と置き換える。みたいな。</p>
        <p>でもこんなクソ簡単なスクリプトなのに <abbr title="Internet Explorer">IE</abbr> ではちゃんとうごかない。importNode がだめなのか、それとも responseXML から importNode ができないのか……謎。</p>
        <ins datetime="2006-03-17T18:15:01+09:00">
          <p>あーHtml.php の <code>&amp;nbsp;</code> は全部 <code>&amp;#160;</code> に置き換えた。DTD がないからエラーになる。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>ソースの色づけを復活 2</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/18/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/18/1.xhtml"/>
    <updated>2006-03-18T03:21:15+09:00</updated>
    <published>2006-03-18T03:21:15+09:00</published>
    <id>http://lowreal.net/2006/03/18/1</id>
    <category term="prog"/>
    <category term="js"/>
    <category term="site"/>
    <category term="prog"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><a href="http://qbnz.com/highlighter/">GeSHi - Generic Syntax Highlighter</a> を使うようにした。対応言語が多いことと、シンタックスファイルを増やし易いことがいい感じ。ただし時々 well-formed じゃないエラーがでることがあるっぽい。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>.toSource(), forEach, etc</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/18/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/18/2.xhtml"/>
    <updated>2006-03-18T04:29:38+09:00</updated>
    <published>2006-03-18T04:29:38+09:00</published>
    <id>http://lowreal.net/2006/03/18/2</id>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object:toSource">toSource</a> とかはじめて知った。</p>
        <p>GreaseMonkey で設定値保存するときはこれ使うといいね！　わざわざ <abbr>JSON</abbr> 云々のコピペなんてしなくてよさげ。</p>
        <pre class="ECMAScript">

var foo = new Object;
foo.bar = "test";
foo.baz = "pqpq";
foo.toSource(); //=&gt; '({bar:"test", baz:"pqpq"})'

(new Date).toSource(); //=&gt; (new Date(1142625169156))
(function () { return ""}).toSource(); //=&gt; '(function () { return "";})'
alert.toSource(); //=&gt; 'function alert() {[native code]}'
</pre>
        <p>ていうか、forEach とかあるのね！　やべ。</p>
        <pre class="ECMAScript">
var sum = 0;
[1, 2, 3].forEach(function (item, index, array) {
    sum += item;
}, this); // 第二引数は callback 中の this
alert(sum);

</pre>
        <p>同じように (Ruby -&gt; JS) select -&gt; filter, all -&gt; every, map -&gt; map, any -&gt; some が使えるみたいだ。どうせ <abbr>Fx</abbr> 用の GM しか書かないから使いまくろう。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>A -&gt; Z</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/19/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/19/1.xhtml"/>
    <updated>2006-03-19T02:48:38+09:00</updated>
    <published>2006-03-19T02:48:38+09:00</published>
    <id>http://lowreal.net/2006/03/19/1</id>
    <category term="life"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>必要なのは技術じゃないってことは分かっているつもりだけど、俺はその必要なものを手に入れるのが嫌なわけで、そのへんどうにかしないといけないんだけど、その辺どうにかすると俺は俺でなくなるわけで、まぁ俺が考えている俺は所詮誰かが作った俺でしかないんだけどさってことを昨日友達の父親の友人の吉弥さんが言ってた。</p>
        <p>コミュニケーション能力が必要とか、そういう話だけど、欲しくないのだ。真面目な話を一対一あるいは、一対多でするのがめちゃくちゃ嫌いなのだ。それって楽しくないから。</p>
        <p>ネットワークゲームなんかで、ギルド戦について真面目に議論を交わして揉めているのとか、めちゃくちゃ嫌なわけで、悪いわけじゃないんだけど、単純にああいうのを楽しめない。そういうときはログアウトするんだけどっていうか、ギルド戦とか結局嫌で仕方ないからやらなかったんだけど、っていうかホムンクルスをプログラミングしてみたいんだけど、っていうかアカウントないんだけど、っていうか1500円はたけぇよ、いやこんなの関係ないんだけど。</p>
        <p>ネットワークゲームなんかは「ゲーム」であるから、嫌ならばログアウトすればいい。でも実際の面を合わせた情況ではそういうわけにはいかない。そういうわけにはいかない。面を合わせて真面目な話というのは、逃げ道 (例えば相手を認める余裕だったり) を確保することすらぎりぎりのラインだから、本当に話たいことなんて、全く伝わりはしない。もともと伝わらないのがさらに伝わらなくなるわけだ。もういい。</p>
        <p>例えばどこから沸いてくるかわからない自信とか、昔はモテたんだぜ今の俺は仮の俺だとか、とりあえず批判しとけとか、とりあえず謝っとけとか、とりあえずお前うざいとか、そういうのが苦手なのでコーヒーゼリー食いたい。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>よく使うジェスチャ・最後の日</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/20/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/20/1.xhtml"/>
    <updated>2006-03-20T00:08:51+09:00</updated>
    <published>2006-03-20T00:08:51+09:00</published>
    <id>http://lowreal.net/2006/03/20/1</id>
    <category term="soft"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>これなしで生きていけないジェスチャ</p>
        <ol>
          <li>← - 戻る</li>
          <li>↓→ - 現在のタブを閉じる (ウィンドウは閉じないようにカスタマイズ)</li>
          <li>↑←↑ - 一つ上の階層を開く</li>
          <li>↑↓ - リロード</li>
        </ol>
        <p>思いついたようにときどき壮絶に使いまくるジャスチヤー</p>
        <ol>
          <li>Any Gestures + →↑← - Any Gestures でホバーしたリンクをすべてタブで開く。mixi とか、■ばっかり並んでる絵サイトとかで使いまくる。</li>
        </ol>
        <p>このホバーしたリンクを全部開くのは魔法ちっくで好き。こうね、杖をふる的な、ね。</p>
        <ins datetime="2006-03-20T01:26:28+09:00">
          <p>だいじなことを書き忘れていた。ようするに言いたいことはハーマイオニー可愛いよってことで、それ以上でも以下でもない。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>何かを書きたい</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/20/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/20/2.xhtml"/>
    <updated>2006-03-20T02:31:41+09:00</updated>
    <published>2006-03-20T02:31:41+09:00</published>
    <id>http://lowreal.net/2006/03/20/2</id>
    <category term="life"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>何かを書きたい。</p>
        <ul>
          <li>理想の女性像を明確に想像できないことに気付いた。萌える女の子は明確だけど、あぁだめだ自分きもすぎる。</li>
          <li>なにかしら美しいものを見つけたい。</li>
          <li>目を閉じるととにかく手がある。</li>
          <li>俺は正常かつこの上なく普通な人間である。</li>
          <li>日記が日記として機能しなくなるのは悲しいことだ。</li>
          <li>タイミングさえあっていればあとはてきとーでもいい。</li>
          <li>それっぽい口調が重要らしい。</li>
          <li>名前が重要であって中身は重要じゃない。</li>
          <li>だからそれっぽい口調では書きたくないし、名前もてきとーなままにしておきたい。</li>
          <li>俺がなぜウェブに日記を書くというキモイ行動をしているかを、誰かは考えない。</li>
          <li>それでいい。余計な分析はいらない。</li>
          <li>表に出していいものと、出すべきじゃないのがある。</li>
          <li>分かり合えるかもしれない、ぐらいの状態でコミュニケーションを止めるべき。</li>
          <li>他人に気を使うのは果てしなく面倒くさい。</li>
          <li>自分で考えることができる可能性をすべて考慮しても、考慮しすぎるということはない。</li>
          <li>グロゲーと殺人ゲーは苦手。</li>
          <li>誰か一人でいい。</li>
          <li>まいっか。</li>
          <li>あらゆるやるべきことに対してやる気が起きない。それがかつてやりたいことであったとしても、やるべきことになったとたんやる気が起きなくなる。内容じゃなくて、情況・環境がじゅうようなのだ。</li>
          <li>別に君に訊いてはいるわけじゃないんだから、わざわざ嫌な顔して答えなくてもいいよ。</li>
          <li>そんなこと、誰も訊いてないよ。</li>
          <li>余計なことは言わないようにしよう。何度決めたかわからないけど、特に、つまらない話に関しては気をつけよう。</li>
          <li>メレンゲについて何度か書いては消しを繰りかえしているけど、うまく書けない。</li>
          <li>そういえば <q title="鋼鉄の朝 / BURGER NUDS">地下室で死んだふりしようよ　外は怖いことだらけ</q> って面白すぎるよなぁ。笑っちゃうよなぁ。このフレーズ大好きなんだけど笑える。日々の唄ってこれだよこれ。これこれ詐欺。</li>
          <li><q title="センチメンタル過剰 / NUMBER GIRL">はずかしそうに水たまりをよけながら </q> よすぎる。ああ。あああ。</li>
          <li>Omae Ga Dai-Kirai Da / bloodthirsty butchers</li>
          <li>マナーについて考えようよ。「マナーについて考えようよ」と何かあるごとに言うのが、真にマナーがない。</li>
          <li>お察しください。</li>
          <li>鯖の金を払ってない。早く払えよ。無駄なことばかり、書きすぎて、腹出てるぜ。そんなこといったって、ケーブル切る気に、なれないなぁ？　もうだって、両手は、</li>
          <li>誰かの言うことを聞きたくないなぁ。</li>
          <li>知りたくないことを教わるのが好きじゃない。</li>
          <li>だから、ね、あなたに、僕は、何も訊いていないんだよ？</li>
          <li>(a, b) だったらお前らは</li>
          <li>独学できないやつが何できるっていうんだ。やる気があるなら独学でできるだろ。</li>
          <li>少し前までは「忙しい」っていう社会人の人は本当に「忙しい」んだと思ってたけど、実際は「忙しい」ぐらい忙しくないってことに気がついた。</li>
          <li>そこでまた、誰かが言うんだよ「社会人の人」っておかしくね、ってね。</li>
          <li>やろうとすれば、いくらでも他人を貶すことができるから、何が本当に悪いのかを見極めたい。そのためにまず、何が良いのかを考えたい。</li>
          <li>ということを力がないうちから言っていると、そもそも生きていけないらしい。つまり、むしろそのことで自分は損害を被るってことさ</li>
          <li>まぁそれでもいいか。いざとなって耐え切れなくなったら死ねばいいのだ。許可はもらったからだいじょうぶ。</li>
          <li>どちらかといえば、理想的に生きていたい。現実的だと、何か得をするんかな？</li>
          <li>今なら、なんでもできそうだ。忘れないようにしとこう。</li>
          <li>今日成績通知がくるだろうけど、それの結果が良くても悪くても、先の数日は地獄だ。結果が良かったらクソやりたくない課題をやらないといけないし、悪かったら</li>
          <li>やーほんと、課題をちゃんとこまめに出来る人ってすごいよなぁ。そういうシステムってどうやって得たのかな。「課題ができる」ことじゃなくて「課題が進められる」ことがすごい。すごすぎる。どうやったら手に入ったのかなぁ。セーブしとけばよかった。LV30 飽きてきた。</li>
          <li>無理さ</li>
        </ul>
      </div>
    </content>
  </entry>
  <entry>
    <title>成績通知がきたよ</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/20/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/20/3.xhtml"/>
    <updated>2006-03-20T20:28:56+09:00</updated>
    <published>2006-03-20T20:28:56+09:00</published>
    <id>http://lowreal.net/2006/03/20/3</id>
    <category term="life"/>
    <category term="school"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>必修で落としたのは二科目四単位でした。情報処理概論 (講義に出てない) と、ネットワーク情報概論１ (講義に出てない)</p>
        <p>教養 (哲学・論理学) は一つも取れませんでした。講義に出てない。テストも出てない。健康科学論も同じ。</p>
        <p>他のとれた科目は A:B:C = 4:9:1 。どうでもいいけど情報処理概論が2点なのが謎い。何よ2って。</p>
        <p>ということで課題に追われるほうになりました。よかったね。</p>
        <p><abbr title="Compact Disc">CD</abbr> コースのかたはよろしく。成績見る限り <abbr title="Compact Disc">CD</abbr> に全く向いていませんが、強制グループワークで忍耐力をつけたいと思います。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>textarea の大きさの呪縛から逃れるための GM スクリプト</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/22/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/22/1.xhtml"/>
    <updated>2006-03-22T00:45:40+09:00</updated>
    <published>2006-03-22T00:45:40+09:00</published>
    <id>http://lowreal.net/2006/03/22/1</id>
    <category term="js"/>
    <category term="net"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="/2006/expand-textarea.user.js">expand-textarea.user.js</a>
        </p>
        <p>flickr の textarea がいちいち小さいので作ってみた。textarea の右下のはじっこのほう (謎) をドラッグすると大きさが変わる。</p>
        <p>なんで getElementsByTagName を使っていないのかというと、forEach が使いたかったから！！　getElementsByTagName が返すのは NodeList であって、Array じゃない。</p>
        <ins datetime="2006-03-22T01:03:58+09:00">
          <p>もうちょいまともにするように修正。</p>
          <p>それと「左下」って書いてたのを修正した。ひだりもみぎもわかりませんがなにか？</p>
        </ins>
        <ins datetime="2006-03-22T01:26:36+09:00">
          <p>拡張では <a href="http://www.extensionsmirror.nl/?showtopic=2796">Resizeable Textarea 0.1a, Resize textareas to your needs</a> っていうのがあるみたい。ってことを <abbr title="Internet Relay Chat">IRC</abbr> で <a xmlns="http://www.w3.org/2005/Atom" href="http://okowa.org/vector/">klm さん</a>に教えてもらった。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>ソースの色づけに伴い</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/22/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/22/2.xhtml"/>
    <updated>2006-03-22T01:39:42+09:00</updated>
    <published>2006-03-22T01:39:42+09:00</published>
    <id>http://lowreal.net/2006/03/22/2</id>
    <category term="site"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>コピペのしにくさが激しいので、オリジナルソースへのリンクをつけた。data スキームで飛ばす。</p>
        <p>あるいはコピー用の Flash を使ったほうがいいかもしれない。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>mabinogi, ポポスカートについて</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/22/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/22/3.xhtml"/>
    <updated>2006-03-22T04:58:20+09:00</updated>
    <published>2006-03-22T04:58:20+09:00</published>
    <id>http://lowreal.net/2006/03/22/3</id>
    <category term="mabinogi"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a xmlns="http://www.w3.org/2005/Atom" href="/view-img/2006/mabinogi_2006_03_21_004.jpg" title="/2006/mabinogi_2006_03_21_004.jpg">
            <img src="/2006/mabinogi_2006_03_21_004.jpg" alt="シュガーレスのスクリーンショット"/>
          </a>
        </p>
        <p>ポポスカートが好きなんですよ。低価格・高耐久なのに、とても素敵だと思うのですよ。裁縫で作れば防御も稼げるし言うこと無しですよ。防御高いポポスカのために裁縫を7にした感じですよ。メインキャラのポポスカは銘入りですよ。</p>
        <p>なんとなくスクリーンショットあさってたらポポスカツーショットが数枚でてきた。</p>
        <dl>
          <dt>
            <a xmlns="http://www.w3.org/2005/Atom" href="/view-img/2006/mabinogi_2006_02_24_002.jpg" title="/2006/mabinogi_2006_02_24_002.jpg">
              <img src="/2006/mabinogi_2006_02_24_002.jpg" alt="あの世にて白黒ポポスカ＊２"/>
            </a>
          </dt>
          <dd>少し前のあの世のアルベイ祭壇前にて。一言も喋らず (めんどくさかった) にコミュケーションをとりつつ、とか奇妙なことをやってた。</dd>
          <dt>
            <a xmlns="http://www.w3.org/2005/Atom" href="/view-img/2006/mabinogi_2005_05_30_001.jpg" title="/2006/mabinogi_2005_05_30_001.jpg">
              <img src="/2006/mabinogi_2005_05_30_001.jpg" alt="銀行にてパイオニアと"/>
            </a>
          </dt>
          <dd>去年の。ポポスカに関しては、実はこの横に写っている人の影響が強く、勝手に自分の中 (とギルドの一部中) で「ポポスカの先駆者」を呼んでいたりしました。やー、作ったポポスカが気に入ったのでずっと着ていたらなんと向こうから話しかけられまして、先駆者きたーっとギルチャで言ったか言わなかったかしました。たまに見かけますが未だにポポスカのようです。</dd>
        </dl>
        <p>関係ないけど、画像のレイアウトがうまくいかない。<abbr title="Internet Explorer">IE</abbr> で float: right はご法度だし、CSS がだんだんスパゲティになってきて !important が多くなってきて萎える。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>Creative Commons on Flickr</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/23/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/23/1.xhtml"/>
    <updated>2006-03-23T00:47:03+09:00</updated>
    <published>2006-03-23T00:47:03+09:00</published>
    <id>http://lowreal.net/2006/03/23/1</id>
    <category term="cc"/>
    <category term="license"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>サイトの CSS を一つ前に戻した。とはいえ alternate になっているだけだけれど。</p>
        <p>その CSS で使っている画像が All rigthts reserved になっていて、しかも許可をとっていなかったからだ。でもこの写真、もともとは Creative Commons で公開されていたはずなんだよね。いつのまにか All rights reserved になっていることに今日気付いた。(flickr の favorites を整理していた)</p>
        <p>こういう場合、俺は派生作品をどう扱えばいいんだろうか。俺は著作権侵害で訴えられる可能性がある？</p>
        <p>ここで、例えば訴えられたとき、「俺が見たときは CC でライセンスされていた」と主張しても、確実に証明ができる気がしない。今だって、実は最初から CC じゃなくて、自分の勘違いだったんじゃないか、と自分でも少し思ってしまう。</p>
        <p>ライセンス関連の勉強不足のせいか、いまいち途中でライセンスが変わったときの対応方法がわからない。そもそもライセンスを途中で変えていいのかとか、そういうのも含めてよくわからない。厳しいライセンスから緩いライセンスにするのはよさそうだけど、その逆は無理な感じがする。</p>
        <p>Flickr の場合、デフォルトのライセンスを設定しておくと、アップロード直後は必ずそのライセンスで一度公開されてしまう。だからもし、デフォルトライセンスに CC をしていたら、少なくとも一瞬はそのライセンスで公開される。</p>
        <p>俺の Flickr のデフォルトのライセンスは最初から CC-by だから、途中にあるいくつかの All rights reserved な写真は「あとから変えた」ものになる。だから、一瞬のスキで見た人は俺と同じような思いをしているかもしれない (とはいえ Flickr は何人見たかが表示されるけど)。特別にシビアな理由があってそうなっているわけじゃないから何時でも CC にできるけど、なんか気持ち悪い。</p>
        <p>そういう場合は、デフォルトのライセンスを All rights reseved にして、あとから CC に変えないといけないのかな。面倒くさい。Flickr はポスト時にライセンスを指定させるべきで、そのときのデフォルトを設定のデフォルトにすべきなんじゃないかなぁ。緩いライセンスから厳しいライセンスにできないとしたら、だけど、普通に考えるとできるように思えない。(じゃあなんでやってるの、って言われそう)</p>
        <p>ライセンスを変えるのは、システム的にはいつでもできる。途中から CC にしようが、All rights reserved になろうが、どうにでもできる。</p>
        <p>途中でライセンスを変えられて、権利主張されたら、主張された方はどうしようもないよなぁ。誰が CC で公開していたことを証明してくれるんだろう。定期的に巡回してライセンス表示を確認して、「まだ大丈夫だ」なんてビクビクしながら利用しないといけないんだろうか。</p>
        <p>と、一般ピーポーな俺は思ってしまうわけでした。とりあえず完全にライセンスを気にしなくて良い <abbr title="Cascading Style Sheets">CSS</abbr> を一枚書かないとなぁ。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>CSS をでっちあげた。</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/23/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/23/2.xhtml"/>
    <updated>2006-03-23T04:03:27+09:00</updated>
    <published>2006-03-23T04:03:27+09:00</published>
    <id>http://lowreal.net/2006/03/23/2</id>
    <category term="site"/>
    <category term="css"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>今回は他人のものを使わず、安全に作ってみた。</p>
        <ul title="既知の問題">
          <li>IE でオーバーレイ検索がダサイ。</li>
          <li>
            <del>日記以外のページの最初の見出しがきもい</del>
          </li>
          <li>
            <del datetime="2006-03-23T04:16:23+09:00">Opera がおかしい。</del>
          </li>
        </ul>
      </div>
    </content>
  </entry>
  <entry>
    <title>何バトンかわからないけど空気が読めないバトン</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/23/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/23/3.xhtml"/>
    <updated>2006-03-23T23:38:42+09:00</updated>
    <published>2006-03-23T23:38:42+09:00</published>
    <id>http://lowreal.net/2006/03/23/3</id>
    <category term="baton"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p><a href="http://mixi.jp/view_diary.pl?id=106237582&amp;owner_id=3330143">空気が読めない日記 (mixi)</a> をこたえる。久しぶりにバトンだ。</p>
        <dl>
          <dt>【Ｑ１】今つきあってる人はいる？</dt>
          <dd>えぇ。もちろん nounai サーバーに、ですけれど。名前は教えませんわ。</dd>
          <dd>人じゃなくていいなら Ruby さんとか。</dd>
          <dt>【Ｑ２】今好きな人、気になる人はいる？</dt>
          <dd>BURGER NUDS にでてくる女の子が好きです。nounai。</dd>
          <dd>まじれすすると、そもそも周りに女の子がいません。最後に女性と話したのはいつかな？</dd>
          <dt>【Ｑ３】a：告白した回数 b：告白された回数は？</dt>
          <dd>{a =&gt; 1, b =&gt; 0} どういうのをカウントするんだろう？　明確に好きだと言ったことはないと思う。あれ、あった気もする。でもあれはカウントしていいんだろうか。あんまり覚えてないんだけど、っていうか、今まで忘れてたけど、最悪だな。とか、まぁ、キラめく世界。<q title="デイパス / Syrup16g">君の好きなあの娘の 写真はもうここにはない まあでもキラめく世界</q> 一応カウントしといた。ああ</dd>
          <dt>【Ｑ４】a：振った回数 b：振られた回数は？</dt>
          <dd>{a =&gt; 0, b =&gt; 0} これもカウント方法がよくわからない。ある意味常に振られているので b は数え切れないとも言えますが！！</dd>
          <dt>【Ｑ５】どんな顔・体の異性が好き？</dt>
          <dd>俯いてはにかむ笑顔が似合う子・黒髪 (というより地の色)・肩幅が狭い子。</dd>
          <dd>黒髪の美しさに気付くべきなんだ (独り言)</dd>
          <dt>【Ｑ６】異性の体で好きな部分は？</dt>
          <dd>髪の毛・肌</dd>
          <dt>【Ｑ７】昔付き合ってた人と復縁する可能性アル？ナイ？</dt>
          <dd>nounai の話ですか？</dd>
          <dt>【Ｑ８】好きな人ができたらどうやってアタックする？</dt>
          <dd>対話</dd>
          <dd>「アタック」とか面倒くさいから、対話のなかで「なんかいいなぁ」って思える人がいい。実際そんな人ってもう現れないと思うけどさ。</dd>
          <dt>【Ｑ９】今告白されたらOKしちゃう異性、今回りに何人いる？</dt>
          <dd>だからそもそも（ｒｙ</dd>
          <dt>【Ｑ１０】年上・年下どっちが好き？</dt>
          <dd>±2ぐらいがベストだけど、どちらかといえば年上で！</dd>
          <dt>【Ｑ１１】浮気されたらどうする？</dt>
          <dd>わからないけど、まぁそんなもんなのかなって思う。でもできれば「そんなもんなのかな」と思わないぐらいの人と付き合いたいものだ。無理だ。</dd>
          <dt>【Ｑ　番外】ずばり今年のちょこれいとの数は？</dt>
          <dd>ちょこれいと？　たべたかず？　きょうもたべたよ。きのうもたべたよ？　せいさんりょうのはなしかなぁ。</dd>
          <dt>【Ｑ１２】次にまわす人5人</dt>
          <dd>回せそうな人がだいたい nounai 系なんですが！！</dd>
        </dl>
        <p>生まれ変われるなら、可愛い女の子に生まれたい。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>フィードバックを増やすためのメソッド 1</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/24/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/24/1.xhtml"/>
    <updated>2006-03-24T04:48:09+09:00</updated>
    <published>2006-03-24T04:48:09+09:00</published>
    <id>http://lowreal.net/2006/03/24/1</id>
    <category term="method"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>素通り禁止です＞＜ 必ず<abbr title="ゲストブック">ゲスブ</abbr>に一言書いてください。ネチケット 2.0 です＞＜</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>Flickr の Creative Commons を使う理由</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/24/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/24/2.xhtml"/>
    <updated>2006-03-24T04:52:20+09:00</updated>
    <published>2006-03-24T04:52:20+09:00</published>
    <id>http://lowreal.net/2006/03/24/2</id>
    <category term="license"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>自分の写真で <abbr title="Cascading Style Sheets">CSS</abbr> 書いても、あんまり面白くない。自分が撮った写真には、自分しかいない。</p>
        <p>他人の写真は、少なくとも自分と撮影者の二人が確実にいる。さらに、同じようにその写真をいいと思う人たちにそれぞれがいる。そういうのもあってかで、他人の写真は適度に刺激があって面白いんだと思う。写真って、その人が見ているものを写しているから、他人の視点というのがよくわかる。ただたんに「いい写真だなぁ」と思って、その後自分でその場に居合わせたときどうやって撮るかを比較するっていうのも面白い。</p>
        <p>それと写真に直接言葉は書かれていないということ。</p>
        <p>写真は曖昧な伝達・表現手段だけど、それゆえに解りあった気分になれる。ひとつの写真を通して、それぞれかなり思うところが違っていても「いい写真だなぁ」と思うところが変わらない。そういうのが重要だと/いいと思うんです。人によって解釈が違う写真 (作品) のほうが、面白い。どの解釈が正しいかなんてチリの価値もないと思う。</p>
        <p>あんまり関係ないけど、完全に分かりあう必要性が見出せない。「どこかで分かり合えるはずだ」と思い合って議論をするなら、「どこかで分かり合えるはずだ」っていう部分は共通しているんだから、それでいい感じがする。実際俺はホンモノのちゃんとした、意味のある議論を見たことがないから、議論っていうのがどういうものなのかわからない。でもそれについて、「ホンモノの議論が何か」を議論するつもりはないし、別段わかりたくもない。</p>
        <p>話がずれたけど、他人の写真や画像を使って派生物を作るのは面白い。「あーしてみたい」「こーしてみたい」っていうのをできるわけだから、すごくワクワクする。でもこれが All rights reserved なものだと、改変しても公開できなくてつまらない。その「あーしてこーして」っていう欲求よりも、許可をとるっていう行為は遥かに面倒くさい。</p>
        <p>そういう面倒くさいうえにつまらない<em>手続き</em>を省いて、純粋に楽しいことをできるから、<abbr title="Creative Commons">CC</abbr> な画像を使ってる。Flickr は <a href="http://www.flickr.com/creativecommons/">Creative Commons 用のページ</a> があって使いやすい。</p>
        <p>でもまぁ、途中でライセンスが変わるのが怖くてなんともかんともな感じに今はなっている次第でございます。favorites は増やしているけど！</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>どの CC が適用されているか一目でわかるようにする</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/24/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/24/3.xhtml"/>
    <updated>2006-03-24T23:28:44+09:00</updated>
    <published>2006-03-24T23:28:44+09:00</published>
    <id>http://lowreal.net/2006/03/24/3</id>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="/2006/flickr-cc-at-one-view.user.js">flickr-cc-at-one-view.user.js</a>
        </p>
        <p>by なのか by-nd なのかが一目でわからないので追加する。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>ドメインの削除プロセス</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/25/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/25/1.xhtml"/>
    <updated>2006-03-25T02:33:19+09:00</updated>
    <published>2006-03-25T02:33:19+09:00</published>
    <id>http://lowreal.net/2006/03/25/1</id>
    <category term="net"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>要するに期限切れの日から 35 日たつと開放されるってことかな。30 日の <abbr title="Redemption Grace Period">RGP</abbr> (取り戻し猶予期間) のあと、5 日間の削除保留期間がある。</p>
        <p>レジストラのキャッシュ？とかがよくわからない。</p>
        <ul title="参照リソース">
          <li>
            <a href="http://www.snapnames.com/deleteprocess.html">Deletion Cycle</a>
          </li>
          <li>
            <a href="http://www.nic.ad.jp/ja/dom/gtld-policy/rgp.html">削除済ドメイン名のための「請戻猶予期間」</a>
          </li>
        </ul>
      </div>
    </content>
  </entry>
  <entry>
    <title>screen backtick with Ruby</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/25/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/25/2.xhtml"/>
    <updated>2006-03-25T04:27:16+09:00</updated>
    <published>2006-03-25T04:27:16+09:00</published>
    <id>http://lowreal.net/2006/03/25/2</id>
    <category term="screen"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>なんかうまくいかねーってごちゃごちゃやっていたけど、<code>$stdout.flush</code> しないとだめだった。</p>
        <ins datetime="2006-03-25T04:49:40+09:00">
          <p>あーあーあー <a href="http://unknownplace.org/memo/2005/12/05#e003">CLON - 2005/12/05</a> に書いてあった……全部読んどくべき！！</p>
          <p>Ruby の場合 <code>$|</code> にあたるのは <code>$stdout.sync</code> かな？</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>Good Dog Happy Men , tearbridge?</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/25/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/25/3.xhtml"/>
    <updated>2006-03-25T12:47:56+09:00</updated>
    <published>2006-03-25T12:47:56+09:00</published>
    <id>http://lowreal.net/2006/03/25/3</id>
    <category term="music"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="http://tearbridge.com/works/management/artist/gooddoghappymen.html">Works - tearbridge production</a>
        </p>
      </div>
    </content>
  </entry>
  <entry>
    <title>screen, zsh, 処理終わったか見たい</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/25/4.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/25/4.xhtml"/>
    <updated>2006-03-25T17:13:40+09:00</updated>
    <published>2006-03-25T17:13:40+09:00</published>
    <id>http://lowreal.net/2006/03/25/4</id>
    <category term="zsh"/>
    <category term="screen"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a xmlns="http://www.w3.org/2005/Atom" href="/view-img/2006/0325-screen.png" title="/2006/0325-screen.png">
            <img src="/2006/0325-screen.png" alt="スクリーンのスクリーンショット"/>
          </a>
        </p>
        <p>長い処理させてウィンドウ切り替えたとき、バックグラウンドのウィンドウの処理が終わっているんだかいないんだかが気になるので手を入れた。</p>
        <p>何かいい方法があるのかもしれないけど、よくわからないのでごちゃる。</p>
        <p><a href="http://www.nijino.com/ari/diary/?20020614&amp;to=200206141S1#200206141S1">ari's diary - ステータスライン</a> のスクリプトを使っている。</p>
        <pre class="sh">if [ "$TERM" = "screen" ]; then
    chpwd () { echo -n "^[_`dirs`^[\\" }


    preexec() {
        # see [zsh-workers:13180]
        # http://www.zsh.org/mla/workers/2000/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=(builtin jobs -l $cmd[2])
                fi
                ;;
            %*)
                cmd=(builtin jobs -l $cmd[1])
                ;;
            cd)
                if (( $#cmd == 2)); then
                    cmd[1]=$cmd[2]
                fi
                ;&amp;
            *)
                echo -n "^[k$cmd[1]:t^[\\"
                prev=$cmd[1]
                return
                ;;
        esac

        local -A jt; jt=(${(kv)jobtexts})

        $cmd &gt;&gt;(read num rest
            cmd=(${(z)${(e):-\$jt$num}})
            echo -n "^[k$cmd[1]:t^[\\") 2&gt;/dev/null

        prev=$cmd[1]
    }
    precmd() {
        #local prev; prev=`history -1 | sed "s/^[ 0-9]*//" | sed "s/ .*$//"  `
        echo -n "^[k$:$prev^[\\"
    }
    chpwd
fi</pre>
        <p>みたいにした。precmd を追加しただけ。</p>
        <p>これで、実行が終わったら<samp>$:prevcmd</samp> みたいなウィンドウ名になるので一目でわかりやすい気分。</p>
        <p>上のスクリーンショットだと、0 が入力待ち (前回のコマンドは sleep) 1 がアクティブで emacs, 2 が sleep 実行中</p>
        <ins datetime="2006-03-25T18:22:29+09:00">
          <p>preexec の処理を利用するようにした。cd の場合にちゃんとディレクトリになるように。</p>
        </ins>
      </div>
    </content>
  </entry>
  <entry>
    <title>色じゃなかったんだ。タブだったんだ。</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/26/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/26/1.xhtml"/>
    <updated>2006-03-26T03:31:53+09:00</updated>
    <published>2006-03-26T03:31:53+09:00</published>
    <id>http://lowreal.net/2006/03/26/1</id>
    <category term="life"/>
    <category term="prog"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>emacs がなかなか使えなかった理由はタブインデントをデフォルトでちゃんとしてくれないからだった。今までは色の設定を変えるのが面倒臭いからだと思ってた。</p>
        <pre class="Ruby-">
class Foo
\tdef initialize(hoge, huga)
\t\tfoooooooooooooooooooo(aaaaaaaaaaaaaaa,
\t\t                      bbbbbbbbbbbbbbb)
\tend
end
</pre>
        <p>本当は上記のようにインデント (環境が変わってタブ幅が変わっても問題が起きないタブインデント) をさせたいんだけど、さすがに無理っぽいので、タブの部分だけちゃんとできていればいいことにした。</p>
        <p>人それぞれ読みやすいインデント幅は違うから、誰にでも読みやすいソースを書くならタブでインデントすべきだと思ってる。でも全部タブにすればいいってわけじゃなくて、文字幅が重要なところには、ちゃんとスペースを使いたい、みたいな。</p>
        <p>そんなにこだわる必要はないんだけど、少なくともタブインデントじゃないとコードを書く気がしないことに気付いた。いやむしろ、タブインデントにすると書きたくなる (謎)</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>Shibuya.js でライトニングトークするみたい</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/28/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/28/1.xhtml"/>
    <updated>2006-03-28T02:37:57+09:00</updated>
    <published>2006-03-28T02:37:57+09:00</published>
    <id>http://lowreal.net/2006/03/28/1</id>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="http://shibuyajs.org/articles/2006/03/27/shibuya-js-technical-talk-1">Shibuya.js Technical Talk #1</a>
        </p>
        <p>俺だけ存在がおかしいですが気にしないように努めます。わろすわろす。</p>
        <p>人前で喋るのは中学の部活紹介以来かな。何喋ったかは覚えていないけれど、同級生の部員が俺含めて3人だったのはよく覚えている (内訳：やる気ない部員2, 幽霊部員1)</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>シェルスクリプト, test で変数をクオートする理由</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/28/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/28/2.xhtml"/>
    <updated>2006-03-28T23:48:28+09:00</updated>
    <published>2006-03-28T23:48:28+09:00</published>
    <id>http://lowreal.net/2006/03/28/2</id>
    <category term="sh"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="http://www.linux.or.jp/JF/JFdocs/Bash-Prog-Intro-HOWTO-11.html#ss11.2">BASH Programming - Introduction HOW-TO: 参照テーブル, 11.2 文字列比較の実例</a>
        </p>
        <p>なんで <code class="bash">if [ "$X" = "$Y" ]</code> とか <code class="bash">if [ x$X = x$Y ]</code> にするのかわからなかったけど、変数がセットされていないときにエラーになるらしいからだった。へー</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>Riece, emacs vs xyzzy</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/29/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/29/1.xhtml"/>
    <updated>2006-03-29T00:58:53+09:00</updated>
    <published>2006-03-29T00:58:53+09:00</published>
    <id>http://lowreal.net/2006/03/29/1</id>
    <category term="irc"/>
    <category term="emacs"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>コンソール上で <abbr title="Internet Relay Chat">IRC</abbr> するのに Riece を入れてみた。というのも、りなざう使用時にいちいちウィンドウ切り替えるのがめんどいから、端末内で全て完結させたいのだ。</p>
        <p>新しいフレームを作るのが、xyzzy だと C-x <em>5</em> 2 で、emacs だと C-x <em>6</em> 2 ってところに激しくハマる。いぢめだ。いぢめだ。</p>
        <p>うーん。フレームの名前ってひたすらインクリメントされるのかな。一覧の出し方がわからない。</p>
        <p>問題は、SKK の確定キーを RET にしていること。ぼーっとしてるといちいち▼と一緒に変換文字列を送っちゃうのだ。困った。C-j を送信にして RET は RET のままにすればいいかな。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>レポートやれよ</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/29/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/29/2.xhtml"/>
    <updated>2006-03-29T02:00:47+09:00</updated>
    <published>2006-03-29T02:00:47+09:00</published>
    <id>http://lowreal.net/2006/03/29/2</id>
    <category term="life"/>
    <category term="school"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>レポート書けよ。レポート書けよと書く暇があったらレポート書けよ。あと数日でどうやってレポートやるつもりなんだろうか。まだ一文字も書いてないうえに本も読んでない。本気でやばいんだけど、本気でやる気にならない。困った……いやだなぁ。直前になるまでやらないで。直前になってあひゃあひゃいいながら (実際言うのだ) 課題をやるわけだけど、これでどうにかなってしまう。どうにかならないほうがいいってわけじゃないけれど、もっとやる気を出して生きたい。もう、そういう風に育ってしまったから、今更どうにかできることではないのだけれど。まぁでもほんと留年しなくてよかった。後回しになっただけ感があるし、必修授業のことを考えるとすごくいやな気分になるけど、とりあえずはよかった。</p>
        <p>よくわからないかもしれない話をするけれど、まっすぐ歩くというのはめちゃくちゃ難しい。眼を開いていようが閉じていようがまっすぐ歩くのってすごく難しい。磁石があっても難しい。まっすぐ歩いていればいつかたどり着くというのはよくわからない。たどり着く先が目的地ではない可能性のほうが高いように思う。</p>
        <p>へりくつなら、なんとでもいえる</p>
        <p>やる気のない畑から出してくれようとする人と、やる気のない畑に叩き戻す人がいる。これは良い悪いの問題じゃなくて、そういうシステムのようで、こちらからは (彼らにも) どうにもできない。絶妙のタイミングで叩き戻されたりするから、ちょっと「上手くできたシステムだなぁ」と感心するぐらいだ。これはこれでバランスがとれてしまっているから、もし最初にやる気のない畑に生まれてしまったら、死ぬまでやる気のない畑から出ることは出来ない。でようとしても、ひっぱられたり、たたきもどされたりするだけだ。</p>
        <p>へりくつなら、なんとでもいえる</p>
        <p>ある展覧会に (レポートのため) 行ったのだけれど、やる気に満ち溢れていてなんか疲れた。それと、すごくいいものを作っていたりするのに、ウェブに公開していないことを残念に思った。もっと楽に公開できるシステム (と検索するシステム) が必要だと思った。今よりもっと楽にならないと、作品作りに集中している人は公開する気にならないと思った。でも、デジタルならともかく、アナログな作品ってどうやったら楽に公開できるんだろうか。</p>
        <p>無駄に長いことを書けるようになった。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>XML と YAML</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/30/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/30/1.xhtml"/>
    <updated>2006-03-30T02:17:29+09:00</updated>
    <published>2006-03-30T02:17:29+09:00</published>
    <id>http://lowreal.net/2006/03/30/1</id>
    <category term="xml"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>なんか <abbr title="YAML Ain't Markup Language">YAML</abbr> の話とか読むと、ことごとく <abbr title="Extensible Markup Language">XML</abbr> が比較されて貶されてて寂しい。</p>
        <p>確かに <abbr title="Extensible Markup Language">XML</abbr> ってちゃんと書かないと読みにくいし、名前空間とか意味不明だし、<abbr title="Document Object Model">DOM</abbr> とか面倒くさい。</p>
        <p>全ての <abbr title="Extensible Markup Language">XML</abbr> は <abbr title="YAML Ain't Markup Language">YAML</abbr> に置き換えられる的に書かれた <abbr title="YAML Ain't Markup Language">YAML</abbr> の紹介とかもあったりして、なんかアレだなぁって思った。例えば <abbr title="Hyper Text Markup Language">HTML</abbr> より、<abbr title="YAML Ain't Markup Language">YAML</abbr> のほうが断然書きやすいとか、それは違うよって思った。いやそもそも <abbr title="Hyper Text Markup Language">HTML</abbr> は <abbr title="Extensible Markup Language">XML</abbr> じゃないからこの話にはあんまり関係ないんだけど。</p>
        <p>というかどうも、<abbr title="YAML Ain't Markup Language">YAML</abbr> と <abbr title="Extensible Markup Language">XML</abbr> を比べるのに違和感を感じて仕方がない。なんかうまく言葉に出来ないんだけど、用途が違うんだよなぁ……とはいえ用途が違う、<abbr title="YAML Ain't Markup Language">YAML</abbr> のほうが向いている分野に <abbr title="Extensible Markup Language">XML</abbr> が使われている (例えば <abbr title="Simple Object Access Protocol">SOAP</abbr> とか <abbr>XML-RPC</abbr> とか、そこらの設定ファイルとか) からこういう話になるんだろうけどさ……</p>
        <p>だからといって <abbr title="Extensible Markup Language">XML</abbr> は悪い！みたいな勘違いを見たくないよ……なぜなら俺は <abbr title="Extensible Markup Language">XML</abbr> さんが好きだから！</p>
        <p>適所適材てのをちゃんと考えたい。まぁ<a href="http://lowreal.net/logs//2005/01/14/1">設定ファイルに <abbr title="Extensible Markup Language">XML</abbr> なんて面倒くさすぎてやらない</a>んだけど（ｗ</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>できるだけ負けるように</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/30/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/30/2.xhtml"/>
    <updated>2006-03-30T04:28:50+09:00</updated>
    <published>2006-03-30T04:28:50+09:00</published>
    <id>http://lowreal.net/2006/03/30/2</id>
    <category term="life"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>なるほどなぁ、ってすごく思った。だから上手く負けて生きたい。</p>
        <p>課題を一つ終わらせた。先は長い。</p>
        <p>インターネットを使っていろんなことをやると自分がいかに知識がないかってことが、よくわかる。何も知らないにほぼ等しい。だから例えば、小さなコミュニティに属するべきじゃない。いい気になりやすいからだ。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>ライセンスをずばばっと表示する@Flickr</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/30/3.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/30/3.xhtml"/>
    <updated>2006-03-30T05:34:05+09:00</updated>
    <published>2006-03-30T05:34:05+09:00</published>
    <id>http://lowreal.net/2006/03/30/3</id>
    <category term="js"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a xmlns="http://www.w3.org/2005/Atom" href="/view-img/2006/flickr-show-licenses-user-js.jpg" title="/2006/flickr-show-licenses-user-js.jpg">
            <img src="/2006/flickr-show-licenses-user-js.jpg" alt="オーバーレイでライセンスを表示してみる"/>
          </a>
        </p>
        <p>
          <a href="/2006/flickr-show-licenses.user.js">flickr-show-licenses.user.js</a>
        </p>
        <p>マウスをホバーさせるとライセンスが表示されるように。</p>
        <p>最初はとにかく全部表示させていたけど、さすがに Flickr にアタックかけているがごとく <abbr title="Hyper Text Transfer Protocol">HTTP</abbr> リクエストするのでホバー起動にしてみた。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>さっそく矢のようにやる気が失せてくね　「あっそう」って言われて　君にきっと会えるね</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/31/1.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/31/1.xhtml"/>
    <updated>2006-03-31T02:55:23+09:00</updated>
    <published>2006-03-31T02:55:23+09:00</published>
    <id>http://lowreal.net/2006/03/31/1</id>
    <category term="life"/>
    <category term="thinking"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>でも結局、真面目な話が嫌いとかいう話を書くあたり、頭が悪くて性格が悪い。</p>
        <p>
          <q title="SAPPUKEI / NUMBER GIRL">現在位置を自覚をせんとー結果は容易に予想できるー</q>
        </p>
        <p>こう、<code class="XML">&lt;p&gt;&lt;q title="hoge"&gt;huga&lt;/q&gt;&lt;/p&gt;</code> とか書くと頭痛い。</p>
        <p>言葉で細かく説明されても、直感的にわかりはしない。わかるっていうのは結局、過去の自分の経験に照らし合わせて、うまくピースがハマることだから、曖昧さが多く、誰にでも適用できるような説明がいいと思う。勘違いでもいい。でも全てがそうであるべき、とは言わない。法とかは仕方ないしね。</p>
        <p>人間とは無理だけど、コンピュータとは分かり合える。なぜかといえば、コンピュータは意見を変えないからで、こちら側が歩み寄るしかないから、かな。それに、変な期待がない。やりたいことをやれればいい、という諦めがあるから、完全に道具として「扱う」ことができる。いやもちろん今のところコンピュータはただの道具なんだけどさ。ソフトウェア</p>
        <p>世界はめちゃくちゃ広い。凄い人はいくらでもいる。でも、ずっと楽しんでいられる場所があるほど、世界は広くない。</p>
      </div>
    </content>
  </entry>
  <entry>
    <title>そろそろミカンの話をしようか</title>
    <link rel="alternate" type="text/html" href="http://lowreal.net/logs/2006/03/31/2.html"/>
    <link rel="alternate" type="application/xml+xhtml" href="http://lowreal.net/logs/2006/03/31/2.xhtml"/>
    <updated>2006-03-31T04:53:46+09:00</updated>
    <published>2006-03-31T04:53:46+09:00</published>
    <id>http://lowreal.net/2006/03/31/2</id>
    <category term="life"/>
    <content type="xhtml" xml:base="http://lowreal.net/">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>金曜日の6時限目に爆睡して、ホームルームでも起きなくて、いつの間にかみんないなくなって、起きたら一人クラスメイトの女の子がいて、「やっと起きた（笑）」って言われる、そんなイベントが欲しい。</p>
        <hr/>
        <p>(BURGER NUDS の) ミナソコで想像するのって、夕暮れのプールサイドに立って、水底を立ったまま見つめてる、夏制服の女の子だったりする。なぜか赤いワンピースじゃない。半そでのYシャツとあんまり長くない髪。</p>
        <p>女の子は水底にピントをあてて、子供のころの思い出を水面に写しているんだけど、はじめたらやめられなくなって、いつの間にか涙が流れてて、日が暮れて、そこで誰かがやっと迎えに来る。みたいな。</p>
        <p>ちなみにまだ夏本番ではなくて、ちょうど夏服への衣替えが終わったぐらいの季節。プールのフェンス (緑色で網状のやつ) の周りにあじさいが咲いてる。プールは学校の校舎から少し離れてて、校庭からは見えない位置にある。</p>
        <p>キモイなぁ……</p>
        <hr/>
        <p>どうも日記のアレが上手く書けないので、hr 要素を使うことにした。十分に構造化されていれば hr はいらないんだけど、日記を書くとき、どうしてもそういう構造化までいくと大げさになってしまうので (言い換えれば面倒くさい) フラットな hr を使ってみる。</p>
        <hr/>
        <p>自分の発言がどうも矛盾していて気持ち悪い。もっと考えよう。もっと考えよう。</p>
        <hr/>
        <p>どういうのを Geek っていうんだろう。ヲタクはともかく、Geek はいいイメージがするなぁ。</p>
        <hr/>
        <p>やばいな。ちゃんとキャリブレーションしないと色おかしい。現実逃避したくなるほど色がおかしい場合どうしたらいいだろう。見ているものが信用できないのは怖い。</p>
      </div>
    </content>
  </entry>
</feed>
