2007年 06月 29日

間食 チキンラーメン without おゆ

vimperator のコマンドラインで C-[ がきかないのをなおす userChrome.js

Mac だけなのか、それとも「おれの」Mac だけなのか、あるいは Windows でもそうなのかしらないけど、コマンドモードで C-[ がきかなくてイライラするので userChrome.js で対処する。まじめにやるならパッチかいたほうがいいとおもうけど、chrome 展開したのをインストールとかよくわからないので

setTimeout(function () {
	if (!keyToString.mod) {
		var _orig_keyToString = keyToString;
		keyToString = function (evt) {
			var ret = _orig_keyToString(evt);
			return (ret == "<C->") ? "<C-[>" : ret;
		};
		keyToString.mod = true;
	}
}, 500);

C- のあとのは C-v C-[ で入力。

.vimperatorrc つかえよ

http://lab.lowreal.net/trac/browser/config/.vimperatorrc
.vimperatorrc も実は setTimeout で実行されるんだぜ…… (だからなんだ

vimperator つかってなおかつ URL バーを表示させているとき、URL バーから C-[ で脱出するための .vimperatorrc

:js <<EOF
(function () {
	var urlbar = document.getElementById("urlbar");
	if (!urlbar.urlbar_escaped) {
		urlbar.urlbar_escaped = true;
		urlbar.addEventListener("keypress", function (e) {
			if (keyToString(e) == "<C-[>") {
				setCurrentMode(MODE_NORMAL);
				hah.disableHahMode();
				focusContent(true, true);
			}
		}, true);
	}
})();
EOF

下の keyToString を適用ずみで
URL オートコンプリートは Fx デフォのほうがいい…… <Cmd-L>fli<TAB><RET> でふりっかーだもんなぁ

朝食 おにぎり みそしる ブルーベリー
昼食 ぶたきむぶたきむ グレープフルーツジュース
夕食 タラコレタススパゲティ サラダ

2007年 06月 28日

朝食 赤飯おにぎり みそしる
昼食 チキンカツサンド 午後の紅茶ミルクティー
夕食 ブタキムチ

plusplusbot on IRC

http://lab.lowreal.net/trac/browser/chokan/trunk/plugins/plusplus.rb

プラグイン用のディレクトリをとれる API がいるなぁ……

vimperator の command を userChrome.js で拡張する

/*
 * [
 *     0: [all names of this command],
 *     1: usage,
 *     2: short help
 *     3: helptext
 *     4: function (arguments in this order: args, special, count, modifiers)
 *     5: completefunc
 * ]
 */
setTimeout(function () {
	// for reloading uc.js
	if (g_commands._orig_g_commands) {
		g_commands = g_commands._orig_g_commands.concat();
	} else {
		g_commands._orig_g_commands = g_commands.concat();
	}
	showStatusbarMessage("Loading Additional Commands...", STATUSFIELD_URL);

	const prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService);
	var proxySetting = [
		function Disable () {
			prefs.setIntPref("network.proxy.type", 0);
		},
		function LocalSocks () {
			prefs.setIntPref("network.proxy.type", 1);
			prefs.setCharPref("network.proxy.socks", "localhost");
			prefs.setIntPref("network.proxy.socks_port", 10080);
		},
		function ArrogationCharlotte () {
			prefs.setIntPref("network.proxy.type", 1);
			prefs.setCharPref("network.proxy.http", "charlotte");
			prefs.setIntPref("network.proxy.http_port", 5432);
		},
		function ArrogationLocal () {
			prefs.setIntPref("network.proxy.type", 1);
			prefs.setCharPref("network.proxy.http", "charlotte");
			prefs.setIntPref("network.proxy.http_port", 5432);
		},
		function School () {
			prefs.setIntPref("network.proxy.type", 1);
			prefs.setCharPref("network.proxy.http", "proxy");
			prefs.setIntPref("network.proxy.http_port", 8081);
		},
	];

	g_commands.push([
		["proxy"],
		["proxy {setting name}"],
		"Change proxy settings.",
		"",
		function (args, special, count) {
			var name = args;
			for (var i = 0; i < proxySetting.length; i++) {
				if (proxySetting[i].name.toLowerCase() == name.toLowerCase()) {
					proxySetting[i]();
					showStatusbarMessage("Loading Setting " + name, STATUSFIELD_URL);
					break;
				}
			}
		},
		function (filter) {
			g_completions = [];
			g_substrings  = []; // これやらないと変な補完される?
			proxySetting.forEach(function ($_) {
				if ($_.name.toLowerCase().indexOf(filter.toLowerCase()) == 0) {
					g_completions.push([$_.name, ""]);
				}
			});
			return g_completions;
		}
	]);

}, 500);

vimperator は Chrome Window のグローバル変数を汚染しまくる。(g_commands とか g_ からはじまるやつはグローバル変数。g_substring を補完関数で初期化しないと変な補完がされる。なんてこった)

拡張が実行される順序がよくわからないので setTimeout してる。

help は g_commands から自動生成されているので、うえのがちゃんとロードされると、ヘルプページの最後に :proxy の説明がでてくるよ!

2007年 06月 27日

スプートニクの恋人

読みおわった。高校のときに読んで以来で、特に読もうと思って買ったわけではないのだけれど、小田急がとまってしまったときに暇潰しのために買った。

なぜスプートニクの恋人を買ったのかといえば、ミュウの観覧車のシーンが印象的だったから (他の作品で観覧車がでてくると、よくこのシーンが頭にうかぶぐらい) そして、結末を忘れていたこと (すみれは帰ってきた、というシーンが「あった」というのが、はたして本に描写されていたことなのか、自分で続きを想像したことなのかがわからなくなっていた)

読んでも全然わかんない作品だなぁ。最後にすみれから電話があるけど、あれがすみれなのかよくわからない。あのすみれは主人公自身な気もする (そういう表現もあるけど)、ミュウの半身がどっかにいってしまったように、主人公の半身もどっかにいってしまった (そして帰ってきた) という感じがする。じゃあ最初からずっとすみれは主人公だったのか、というと違うだろうし、よくわからない。

「半身」みたいな話は確か海辺のカフカでもどっかに書いてあった気がする。

はあ、もっとしっかりしないとダメだなぁ……
どうすれば良いのだろう

朝食 オニギリ みそしる
昼食 ツナサンド 午後の紅茶ミルクティー
夕食 ハンバーグ パイナップル

Good Dog Happy Men - the GOLDENBELLCITY ep1

B000QTD2Y6the GOLDENBELL CITY ep1/ Good Dog Happy Men

3部作の最初。1曲目からカッコイイ。

でもかなりスルメ系だと思われるので、一ヶ月ぐらい聞き込もうと思う。雨と仲良くはアルバム全体で通しで聞いてみるとすごく良く感じるなぁ。