啓蒙するとかどうとかじゃなくて、普通に見た目とデータの分離っつうのをどうやって理解させたらいいやらようわからん。全角スペースで margin やら text-align を実現しようとしたり、物理的な ruby 要素(←説明するのが激しくめんどい類)を使ったり。「てめーここでも読んで理解しやがれ」とか「このバカが」とか言ったところで意味ないどころか逆効果。全角スペースであれこれは俺の中で最高にダサい上に表示のことしか考えてないやつに全角スペースを使うなと言っても「じゃあこれをやるにはどうする」とか、そういう話になってうんこ臭いのでもうやめよう。

なんか朝焼けが激しい。外見たら世界の終わりがやってきたかとおもたyo。かみさまごっこしよう

  1. トップ
  2. web
  3. 見た目の分離とか

sabなんとか XSLT 処理系で preceding がようわからない。いや、仕様通りかもしれないけど、それも意味がわからない。

注: 一つのドキュメントは (アトリビュートノードとネームスペースノードは除いて) ancestor および descendant、following、preceding、self の基準点によって分割される。つまり、これらの基準点には重なる部分はなく、全て一緒にするとドキュメント内のすべてのノードを指定することになる。

らしいけど。preceding が前のノードを全て選択してないような。前のノードっていうのを勘違いしてるやもしれない。

<doc>
<ele1>
<ele2>text</ele2>
</ele1>
<ele1>
<ele3>
<ele2>text</ele2>
</ele3>
</ele1>
</doc>

みたいな構造で、コンテキストノードが /doc/ele1[position() = 2]/ele3/ele2 だとしたときに preceding::ele2 としても /doc/ele1[position() = 1]/ele2 が選択されないっぽい。この文脈で preceding::* で選択できるのは ele1 だけ。 (自分の祖先を除く前の要素だけど、中身は含んでない) これって正しいのかしら? 正しいとしたら (正しくなくとも) sort を使うときに上手くいかない。(sort 使わないなら position() で頑張ればOK)

んでも実際上の簡易構造で試してないから間違ってるかもしれない。とりあえずやりたいことが長いこと上手くできる方法が見つからなくて疲れた。

  1. トップ
  2. web
  3. preceding

function array_index(val) {
for (var i = 0; i < this.length; i++) {
if (this[i] == val)
return i;
}
return false;
}
Array.prototype.index = array_index;
// str のキーストローク数を求める。key はオプション
function get_stroke(str, key) {
if (!key)
key = [["@"], ["a", "b", "c"], ["d", "e", "f"],
["g", "h", "i"], ["j", "k", "l"], ["m", "n", "o"],
["p", "q", "r", "s"], ["t", "u", "v"], ["w", "x", "y", "z"],
[",", "."]];
var ret = 0;
for (var i = 0; i < str.length; i++) {
for(var j = 0; j < key.length; j++) {
var pos = key[j].index(str.charAt(i));
if (pos !== false) {
ret += pos + 1;
if (key[j].index(str.charAt(i-1)) !== false)
ret += 1;
}
}
}
return ret;
}
get_stroke("aaa"); // => 5;
get_stroke("lowreal.net"); // => 23;
get_stroke("adg.jp"); // => 7

key を変更すればひらがな入力のストローク数も!(意味ないけど)てか2バイトはできないかも。どうでもいい

key はボタンごとの文字の配列。前の文字が同じボタンの場合、そのままじゃ入力できないので +1 してる。なんかアレだ……

キャリアによってキー配置が違うかもしれないけど、知らない。

.jp ドメインはさりげなく最短なので素敵よね。

  1. トップ
  2. prog
  3. 携帯のキーストローク数

☆太宰府☆

このメールが来た人!アナタは受験合格間違いナシ(^O^)何たって有名な太宰府天満宮でお払いして貰った携帯からのメールなんだから☆大学進学専門学校一般就職全部合格間違いなし!でも↓合格して欲しい友達5~7人に回さないとダメ!去年のデータからも分かるケドメールを信じて5~7人に回した人→合格率72%(^0^)/回さなかった人→合格率29%(-o-)信じる信じナイは自由!友達思いの人は回シテアゲヨウ☆http://コロスケ/gif/2003.10.30/9748wK9AI.gif

やれやれ。悪質なメールだな。こういうのってさ、これを書いてる姿を思い浮かべると、すごくめげちゃうじゃないか。しかもさ、いろんな人に同時に送ってアドレスが見えまくりなんだよね。まわしてる人には悪意なんてないかもしれないからさ、どうやって返信すればいいか悩むんだよ。でもまあ、こんなメールを回す人が合格するんだとしたら、本当の所、世の中は僕の考えてるのよりも素敵なのかもしれないよね。もちろんそんなわけないんだけどさ。

とかまぁ……ホールデン風味。数日前(何時だから忘れてしまった)キャッチャー・イン・ザ・ライ読み終わったのですよ。村上春樹訳のほう。ちと前の訳も読んでみたい。ついでに原文もチラチラ覗き見したい。

  1. トップ
  2. net
  3. 太宰府 SPAM

Moji

The moji project aims to help foreigners learning Japanese language to read web pages. OK 粋だ。何か面白いじゃねぇか。今度入れてみる(何時?)

入れてみた。なんか面白い。てか読み方分からない漢字につかえr。とか思いつつ、ひけない語もまぁ多いのでそりゃ無理です。うん。素直に goo 辞書ひけと。あー誰か辞書のサイドバーを普通に作ればいいんだよ。あるのかな。そのうち探そう。めんどい

なんか漢字って面白いなぁ。「自」をひくと oneself 「己」をひくと self 「自己」をひくと self, oneself なんてか、こういう風になってると「ハァ? なんだてめぇ。冗長じゃねぇのか? てめー」とか言いたくならないのかなぁと。こちとら無意識に使ってますからねホント

  1. トップ
  2. web
  3. Moji, the Firefox extension
  1. トップ
  2. soft
  3. Moji, the Firefox extension

結構前からいろいろやってるんだけど、ソケット関連が未だによくわかってない。巨大なバイナリデータを送受信するとして、どうやって順次受信してファイルに保存していくかとか、よくわからない。一定量受信して、その受信した分を string につっこんで、別スレッドで書き込まれた string を順次読み出して処理するのかしら。C でも Ruby でもいいからなんかサンプルが欲しい……短いデータのやり取りなら仕組みがよくわからないでも gets で読み出してけばてけとーにできるんだけども……

ちなみに C の場合もっと意味わからない。というかサンプルめちゃ少ない。オープンソースのプロジェクトとかのソース見てみようとしても、だいたいプロジェクトっていう名前がついてるのは大規模すぎて読めない罠。

  1. トップ
  2. prog
  3. socket