ぎゃ日記

 

2009-11-28

はてなtouchのテスト

f:id:gya0521:20091128205756j:image

帰り道

iPhone を持ってると生活が豊になるという幻想と共に

2009-07-11

Olympic Game

QWOP

というちょっと人体の不思議?を感じれるかもしれないようなものを発見したので、

紹介してみましょう。

スペースも恐らく沢山使いますが、

操作は4つのキー Q,W,O,P のみ。

オリンピックの 100m 走が舞台の様ですが、10m 進むのも至難の技だったり、、、

試行錯誤がだんだん楽しくなってくるか、イライラして投げだすか、どっちかになると思います。

適当にやって動きを見るだけでもちょっと面白いかもしれません。

さぁ、あなたも winner に!?

ちなみに、

-2.5m 付近に壁があります。

現在の自己 Best は 19.7m 。

その先は未知の世界です。

ちょっとスペランカーとか思い出さなくもない感じです。

古き良き?ゲームに興味がある方?はこちらもどうぞ。

クソゲー処理概論

2009-01-29

jQuery tablesorter

最近何かとお世話になっている jQuery の plugin に

http://tablesorter.com/docs/#Support:tablesorter

というものがあるのだが、こいつがどうもデフォルトでは

微妙に期待通りに動いてくれない。

どうやら、0 を数字として認識して頂けないようで、

0 が入ったカラムは文字列としてソートしてくれる模様。

まぁ毎回指定すれば良いのだが、そんなことするよりも、

plugin の方のデフォルト認識を変える方が

今後の為にも良いのではないかと思ってちょっぴり中身を覗く。

どうもこの辺りが怪しい。

668 this.isDigit = function(s,config) {
669 var DECIMAL = '\\' + config.decimal;
670 var exp = '/(^[+]?0(' + DECIMAL +'0+)?$)|(^([-+]?[1-9][0-9]*)$)|(^([-+]?((0?|[1-9][0-9]*)' + DECIMAL +'(0*[1-9][0-9]*)))$)|(^[-+]?[1-9]+[0-9]*' + DECIMAL +'0+$)/';
671 return RegExp(exp).test($.trim(s));
672 };

FireBug で監視してると、671 行目の返り値が "0" を受け取った時に flase に、、、

ここを変更すれば良いだろうと思って、

671 return (s == '0' ? true : RegExp(exp).test($.trim(s)));

とすると、とりあえず期待通りに動いてくれた。

しかし何故 '0' が isDigit() で false を返すような仕様なのだろうか。

他に影響が出ないことを祈る。

2008-10-23

ubiquity の bilt-in command 消滅事件と大量コマンド登録

数ヶ月前に

を参考に導入して以来、

いつもお世話になっている firefox の便利なアドオンツール ubiquity の 0.1.2 がリリースされたのようなので、ちょっといじろうとした。

日本語が通らなくて微妙に使えなかったり、追加コードに無駄が多過ぎたりとかするし、

ちょっとどうにかしようかなぁと考えていた。

そんな折、

このページを発見したので、これ幸いと command-editor を起動。んー、重いよなんか。

まぁそれはいつものことだし、とりあえず既に入力された 4,000 行以上をコピーっと、、、

(FireFox は帰らぬ人になったので、ぬっころす→再起動) x3 ぐらいやった。

するとどうでしょう。

何故かビルトインコマンドまで綺麗さっぱり失われているではないですか。。。

唯一残っていたのは、Alt-M に変更していた起動コマンドのみ。???

こりゃわけわからんなーと、とりあえず google 先生に聞いたが、

とかぐらいしか出てこない。みんなあまり無茶なことはしないのだろうか。

バージョンアップしたらなおったとのことだが、

(uninstall -> 0.1.1 をインストール -> 0.1.2 にバージョンアップ) x2 ぐらいやってみたが、

ビルトインコマンドは復活してくれない。

とりあえず about:config を覗いて ubiquity の設定ぽいものを見ると

extensions.ubiquity.commands

extensions.ubiquity.lastversion 0.1.2

extensions.ubiquity@labs.mozilla.com.install-event-fired true

とかいうのがあるじゃないですか。

しかもよく見ると、 commands が空になっている。

こいつら消せばいいのかな。とか思ったが、消せない???

しょうがない、とりあえず install-event-fired の値と lastversion を

false と 0.1.0 とかにしてみたらなんとか復活した。

まぁたぶん他に困っている人はおらんと思うけど、備忘録程度に。。。

もう一つ、先の大量コマンドを突っ込むのはいいが、大量に冗長コードが含まれているので、

正しい書き方かどうかは知りませんが、以下のような感じで共通部分を抜き出したら、

2,000 行ぐらい削減されて、なんとなく軽くなった気がした。

ので一応メモ程度に残しておこうかと。

function UQ_getQuery(directObject) {
    var query = this.name;
    if (directObject.text != "")
      query += " " + directObject.text;
    return encodeURI(query);
}

function UQ_preview( pblock, directObject ) {
    var shot_url = "http://mozshot.nemui.org/shot?";
    var img_url = "<img src='" + shot_url + this.query_url + "'/>";
    var help = "<p>" + this.help + "</p>";
    pblock.innerHTML = help + img_url;
}

function UQ_execute(directObject) {
    var url = "http://www.startcommand.com/stand/" + this.stand + "?cmd={QUERY}";
    var query = this._getQuery(directObject);
    var urlString = url.replace("{QUERY}", query);
    Utils.openUrlInBrowser(urlString);
}

CmdUtils.CreateCommand({
  name: "2ch",
  description: "2ちゃんねる検索",
  help: "2ちゃんねるのスレッド(議題)のタイトルから検索します。",
  query_url: "http://find.2ch.net/?BBS=ALL&TYPE=TITLE&COUNT=&SORT=MODIFIED&SCEND=A&STR=",
  icon: "http://find.2ch.net/favicon.ico",
  stand: "startcommand",
  takes: {parameter: noun_arb_text},

  preview: UQ_preview,
  execute: UQ_execute,
  _getQuery: UQ_getQuery
})

大本は単独でちゃんと動作して何も考えずともコピペすれば良いというようなものなので、仕方無いのだけれど。大量に登録する人にはもしかしたら役立つかもしれません。というより既にやられている気もしますが。

2007-11-18

増加中

ここのところずっと運動不足とお菓子の食べ過ぎで、増え続けてます。

ちょっと増え過ぎてきた感があるので、

また調整に入りたいと思います。