Numb.

Avatar

さようなら keyconfig、こんにちは KeySnail

firefox のキーバインド変更をずっと keyconfig でしていましたが、数日前から keyconfig の代わりに KeySnail を使い始めました。

keyconfig の動作に不満はなかったんですが、add-on 自体が更新されなくなって長いのが気になっていて。今後 firefox のバージョンアップに伴い、古い add-on だし使えなくなるかもしれないけれど、依存して利用しているので動かなくなると大打撃。そうなったら怖いなーと思い、「keyconfig の代替えとなりうる、今も開発が続いていて、ちょうど手頃な add-on ないかなあ」と探していました。

keyconfig では以下のようなことをしていました。

  • 元々あるキーバインドを変えたり、追加したり
  • bookmarklet をワンキーで使ったり(CSS on/off を F1 キーで一発とか)
  • vim のように j で下にスクロール、k で上にスクロール、gg でページ先頭に移動、etc..

中々見つからず「きっと他にはないんだな…」と思って諦めたら、偶然 KeySnail という add-on を発見。探している時は見つからないのに、探してないと見つかるジンクス…!

さっそく試用してみたところ、これがよく出来ていて素晴らしい!久しぶりに「おおおー」と思う add-on でした。KeySnail は keyconfig で出来たことは出来るうえ、+α が大きいので、vimperator のように「環境」な面もあるかも。

2~3 日使ってみた感想は、keyconfig で出来たことは問題なく出来るし、管理もしやすいし、keyconfig にはなかったような機能もある、といった具合でかなり好印象です。この便利さはたまらないなーということで、長くお世話になった keyconfig から KeySnail に移行を決意 :)

KeySnail は Emacs ユーザー向きなのかな?と最初思ったのですが、Vim っぽい指定もできるのであまり問題なかったです。私は Vim っぽいキーバインド指定で使っています。

KeySnail プラグイン

KeySnaill はプラグインで機能を拡張させることができます。便利なものが多くて感動。特にいいなあと思ったものを紹介+メモ。

Prefer LDRize

このプラグインは、KeySnail と LDRize がぶつからないように、よきにはからうよう設定できるものです。
Prefer LDRize プラグインで LDRize と KeySnail をいい感じに共存させる – リタマス を参考にして、PRESERVE エリアに以下のように設定しました。

plugins.options["prefer_ldrize.keymap"] = {
    "p"   : null,
    "l"   : null,
    "v"   : null,
    "o"   : null,
};
plugins.options["prefer_ldrize.keymap"]["C-d"] = function () { ext.exec("prefer-ldrize-scroll-next-item"); };
plugins.options["prefer_ldrize.keymap"]["C-b"] = function () { ext.exec("prefer-ldrize-scroll-previous-item"); };

デフォルトだと LDRize の移動キーも j k 、私が設定しているスクロール用キーも j k でバッティングするので、私は後者を優先して LDRize のキーバインドを変更。これはグリモンの LDRize を開いてキー設定部分を書き換えてもいいかもしれません。

KeySnail を切れば通常の LDRize のキーバインドで動くし、バックアップするファイルも少ない方がいいし、ということで私は KeySnail の設定に書きました。

また、元々私の LDRize の利用方法は j k で移動するのがメインで、たまに v で開いたり、p でピンをたてて o で開いたり、といったライトなものだったので、必要最低限のキー p l v o だけ残し、あとは潰してしまうことに。思っていた以上に使いやすくなりました。

Yet Another Twitter Client KeySnail

Twitter クライアントです。これすごいな~。リストは見れないのですが、TL を気軽に見たり、ぱぱっと Twitter に投稿したりするには手軽で良いです。サクサク感がいいです :)

2010/02/24 追記
私が見落としていただけで、リスト表示にも対応していました。コメントで教えていただきました。ありがとうございます><

新しくなった Twitter クラアイントプラグインは操作性が格段に向上 – リタマス を参考に、PRESERVE エリアに以下のように指定。

plugins.options["twitter_client.keymap"] = {
    "C-e"   : "prompt-toggle-edit-mode",
    "SPC"   : "prompt-next-page",
    "b"     : "prompt-previous-page",
    "j"     : "prompt-next-completion",
    "k"     : "prompt-previous-completion",
    "g"     : "prompt-beginning-of-candidates",
    "G"     : "prompt-end-of-candidates",
    "q"     : "prompt-cancel",
    // twitter client specific actions
    "C-t"     : "tweet",
    "r"     : "reply",
    "R"     : "retweet",
    "D"     : "delete-tweet",
    "f"     : "add-to-favorite",
    "v"     : "display-entire-message",
    "V"     : "view-in-twitter",
    "c"     : "copy-tweet",
    "s"     : "show-target-status",
    "@"     : "show-mentions",
    "/"     : "search-word",
    "o"     : "open-url"
};

“C-e” : “prompt-toggle-edit-mode”, は、デフォルトだと “C-c” : “prompt-toggle-edit-mode”, となっていますが、これだとコピーのショートカットキー(C-c)を潰してしまうので押しやすくて使っていないキーを選んで C-e としました。

_keysnail.js に以下のように書いて、[C-s] [T] で今見ているページのタイトルと URL が入った書き込み欄、[C-s] [t] で普通の書き込み欄が出るようにしました。URL は、ちゃんと j.mp で短縮されるのが細かいながらに凄いなぁ。

key.setGlobalKey(['C-s', 'T'], function (ev, arg) {
    ext.exec("twitter-client-tweet-this-page", arg);
}, 'このページのタイトルと URL を使ってつぶやく', true);

key.setGlobalKey(['C-s', 't'], function (ev, arg) {
    ext.exec("twitter-client-tweet", arg);
}, 'つぶやく', true);

bit.ly (or j.mp) はアカウントを作って URL を短縮すると、クリックされた数などがみれます。デフォルトだと自分のアカウントにはならないので、「URL を自分の bit.ly (or j.mp) アカウントを使って短縮したい!」という場合には、プラグイン本体の yet-another-twitter-client-keysnail.ks.js を編集する必要があります。

具体的には、yet-another-twitter-client-keysnail.ks.js の 1271 ~1272 行目にある以下の部分の id と key を、自分の id と API key に書き換えれば OK です。自分の id と API key は、アカウントを作ってあれば http://bit.ly/account/ などで確認できます。

             const id  = "stillpedant";
             const key = "R_168719821d1100c59352962dce863251";

バージョンアップのたび書き換えないといけないので、私はそのうち失念してしまう予感がちょっとしますが、まぁとりあえず。この設定を _keysnail.js に書いておけるようになれば最高なんだけれど、いずれそうならないかな~

※プラグインは MIT ライセンスとなっていたので bit.ly (or j.mp) の id や API key を書き換えても大丈夫だと思いますが、行う場合には自己責任でお願いします。

2010/02/24 追記
作者の方がプラグイン本体を変更しなくても、_keysnail.js に設定を書いておけば良いようにしてくださいました!これでプラグインの更新があっても、都度書き換える必要がなくなりとても楽になりました。MOOZ さん本当にありがとうございます!

その他

他にも色々とプラグインがあるので、自分にあったものを探すのも楽しいかと思います :) あれもこれも試してみたくなってしまうなー><

その他設定 – migemo を利用

Customizing (Japanese) – keysnail – GitHub を参考に、PRESERVE エリアに以下のように書いて XUL/Migemo の機能を通じてマッチングするように。これはちょっと重くなるようなので、環境によっては指定しないほうがよいかもしれません。

//migemo 有効に
prompt.useMigemo           = true;
prompt.migemoMinWordLength = 3;

keyconfig でやっていた、bookmarklet へのキーバインド指定

_keysnail.js に以下のように書くことで可能でした。

key.setViewKey(['b', 'c'], function (ev, arg) {
    if (window.loadURI) {
        loadURI(getShortcutOrURI("css", {}));
    }
}, 'CSS on/off');

firefox の bookmarklet -> 右クリック -> プロパティ -> キーワード「css」、と予めして上記のように書けば、b を押してから c で、その bookmarklet が実行されます。

たとえば bookmarklet のキーワードを「hatebu」としていて、これを F1 に割り当てる場合には、以下のようにすれば OK です。

key.setViewKey('F1', function (ev, arg) {
    if (window.loadURI) {
        loadURI(getShortcutOrURI("hatebu", {}));
    }
}, 'hatebu に登録');

まとめ

書ききれないのですが、他にも設定できることはたくさんあっておもしろい!設定用の画面もありとっつきやすく、少し分かったらテキストエディタでがしがし編集も OK と柔軟に設定できます。カスタマイズ好きな方はハマると思います :)

2010 あけましておめでとうございます

あけましておめでとうございます!
今年もぬるくゆるくマイペースに続けていくと思いますので、どうぞよろしくお願いいたします。

おでさんのところの、「[トラックバック企画] みんなのお家のお雑煮見せて! – Odysseygate.com」企画に参加すべくお雑煮写真をアップ :)

我が家のお雑煮です :)
やつがしら、かまぼこ、ほうれん草、だいこん、鶏肉、お餅が入ってます。自分で盛ったため、盛りつけがちょっとへたですが…><

鶏肉から出た油がちょっと浮かんでますが、サッパリしててダシがきいてて、とても美味しかった~!母親の作るお雑煮が一番好きです(笑)。うちのはおそらく、母の実家の静岡風なお雑煮だと思います。

今年も一年がんばるぞ!

#1/2 追記:綺麗に盛りつけしたものに写真を差し替えてアップ!そしてトラックバック再送チャレンジ!

WP-Plugin 色々追加

年末になって少しまとまった時間が取れたので、WordPress を久々にいじってます :)
新たにいくつかプラグインを入れました。

WPtouch

これまでは「うちのサイトを携帯で見る人はいないだろう」となんとなく思っていて、モバイル対応は考えていませんでした。ちょっと前に iPhone を購入してから、モバイル環境でサイトを見ることが増えて「iPhone 用に最適化してあるサイトいい!」と思ったので「WPtouch」を導入。

iPhone で見る際に自動で theme を変えて最適化してくれます。高機能で割と良い感じに動いてくれています。このプラグインを利用しているサイトは見た目が全部一緒になってしまうのだけが難点かな?

普通の携帯にも対応させるかは、考え中。うちのようなコードが多いサイトって、iPhone や Android ならばまだ見るかもしれませんが、普通のガラパゴス携帯に対応させても、見にくいし内容的にどうなのだろう…

余談ですが、iPhone に対応させているうちに、「携帯から更新できるようにこれを機にしてみようかな?」と、ちょっと興味が沸いたり。これまでは興味がなかったのですが、モバイルからの WP も結構楽しいかも…!

WordPress Exploit Scanner

次に、「WordPress Exploit Scanner」。

もしあなたのサイトが最近攻撃されたと思われる場合、すべての問題点をしっかり修正した上で、WordPress Exploit Scanner(WordPress 脆弱性 スキャナー)を利用されるのをお勧めします。このプラグインはサイト上のファイル、データベースの投稿・コメントテーブルをスキャンし、不審なものを発見してくれます。また、有効化しているプラグイン中におかしなファイル名のファイルがないかもチェックします。

WordPress | 日本語 » WordPress 2.8.5: 強化リリースより引用』

これはセキュリティ目的です。別段改ざんされたり攻撃されたりした形跡はなかったのですが、念のためにチェックしてみたくて入れました。

日本語版用に、「WordPress › フォーラム » WordPress 日本語版用 Exploit Scanner ハッシュファイル」からハッシュファイルをダウンロードして差し替えました。

Google (XML) Sitemaps Generator for WordPress

「WordPress に入れるべきプラグイン!○個」など、お勧めプラグインをまとめたエントリに必ずといって良いほど入っている「Google (XML) Sitemaps Generator for WordPress」をやっと入れました。

「えっ、未だに入れてなかったの!?」と思われそうですが、『プラグインが増える=重い』という式が頭にあり「なんとなく負荷が高そうだし重くなったら嫌だしなー、別に入れなくてもそこそこクロールされてるし、なくてもいいかなー」と思って入れてなかったんです。

今回、WP 弄りの楽しさの勢い+時間があった、ということで試しに入れてみました。気にしていたような負荷は感じず、問題なさそうです。杞憂でした。ただ記事を投稿しても、サイトマップが自動で更新されていないような…?今 wp-cron がうまく動いていないらしい(※下の引用を参照)ので、そのためかもしれません。

残念なことに、先日の 2.9 リリースと一部のバージョンの PHP 組み合わせで cURL 拡張に関するバグが起こることが判明しました。該当するバージョンの cURL では、予約投稿およびピンバックが正しく処理されません。

WordPress | 日本語 » WordPress 2.9.1 ベータ 1より引用』

とりあえず、wp-cron が直るまでは記事を投稿したら手動でサイトマップを生成しなおして様子見。どうにもならなそうだったらサーバー側の cron で対応することを検討します。

ところでこのプラグインの導入時、説明をしっかり読まず使おうとしたらエラーが出てサイトマップが生成されず、少しだけ躓きました。ちょっと調べたら「sitemap.xml」「sitemap.xml.gz」の空ファイルをアップしていなかったためだと判明。

説明通りに空ファイルをアップしてパーミッションを 666 に設定したらちゃんとエラーが消え動きました。ちゃんと説明読まないとダメですねー@@ 書いておかないと忘れてしまいそうなのでメモ。

参考:WordPressのプラグイン:Google Sitemap Generator | コリス

Custom Field GUI Utility

カスタムフィールドを使ってちょっと試したいことがあって、カスタムフィールドを使いやすくする「Custom Field GUI Utility」を入れました。

まだ使い込んでないんですが、日本語インターフェースに安心しますw

おわり

追加したものは以上です。
しばらくぶりにあれこれやってますが、楽しいですねー!WP の醍醐味を思い出しましたw

今年もあとわずかですね~。
[トラックバック企画] みんなのお家のお雑煮見せて! – Odysseygate.com に参加するぞ~!

ノート PC いいなあ

ネットブックがやってきた! – MMRT daily life を見ていたら、だんだんとノート PC 欲しい熱が再燃してしまいました。

価格.com 見ながら、良いなあと思ったのは Acer の AS1410。色々なレビューも読んだけど、私の使用目的だとこのあたりがいいなあ。
使用頻度と必要度とお財布と相談してもう少し検討。

wp-hatena 拡張版 はてブ被リンク数表示バージョン

wp-hatena 拡張版に、はてブ被リンク数表示バージョンを追加しました。
「合計 10 個の SBS + はてブ被リンク数」を表示することができます。

なにができるの?

hatebulink

この画像の、右端にあるような「はてなブックマーク被リンク数」を表示できるようになりました。
表示できるモノは以下の通りです。

  • はてブ
  • del.icio.us
  • Livedoorクリップ
  • Yahoo!ブックマーク
  • FC2ブックマーク
  • ニフティクリップ
  • POOKMARK Airlines
  • Buzzurl
  • Choix
  • newsing
  • はてブ被リンク数 New!!今回追加

ダウンロード

現時点では _blank でリンク先が開くバージョンのみです。もし要望があれば、_blank で開かないバージョンも作るかもしれません。

設定

使い方は本家 wp-hatena と全く同じです。

表示させたいテンプレートに以下の内容を書くことで表示されます。
不要なものは一行まるごと削除で出力しないことも可能です。

<?php if(isset($wph)) {
	$wph->addHatena();
	$wph->adddelicious();
	$wph->addLivedoor();
	$wph->addYahoo();
	$wph->addFC2();
	$wph->addNifty();
	$wph->addPOOKMARK();
	$wph->addBuzzurl();
	$wph->addChoix();
	$wph->addnewsing();
	$wph->addHatenaCount();
}?>

※上記内容で、拡張バージョンで対応しているすべてが表示されます。

$wph->addHatenaCount();

ちなみに上記部分が、はてブ被リンク数表示の指定です。

参考

はてブ被リンク数の表示は、「ブックマーク数を画像で取得するAPI」を利用しています。

よろしければお使いください :)

FirefoxPortable をレジストリに

Win+R で「ファイル名を指定して実行」に firefox と入力して起動させたり、vim から起動させたり、ということがしたい場合レジストリの App Path にソフトを登録しておく必要があります。

普通の Firefox だとインストール時に設定されると思うのですが、最近 FirefoxPortable を利用していて OS を入れ替えても再インストールせずにフォルダごと移動させていたりするので App Path に登録するのは手動でやっています。

面倒なので、hoge.reg を作ってレジストリに追加するようにしました。
@ は規定値を意味しています。

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\firefox.exe]
@="D:\\FirefoxPortable\\FirefoxPortable.exe"
"Path"="D:\\FirefoxPortable"

参考:

HTML5 の分かりやすいスライド

とても分かりやすかったのでメモ。
簡潔にまとまっていて良いスライドだなー。

ローカルサーバー構築 ( Apache, Perl, PHP, MySQL )

いつもは XAMPP で一気に入れていましたが、今回は別々に入れてみました。入れたのは、Apache, Perl, PHP, MySQL, phpMyAdmin です。

※公開用サーバーをたてることが目的ではなく、開発用・テスト用環境の構築が目的です。
[Read more]

OS を入れ直した後、必ずすること

先日 OS を入れ直しました。OS を入れ直した後、必ずしておきたい設定や、入れておきたいものをいつも忘れて探すハメになるのでメモ。ソフト類は別パーティションに入れてるので通常入れ直し不要、再インストール必要なものだけリストアップ。(※自分用メモなので、他の方にとっても参考になるような汎用性の高いものではないです。)

  • 窓の杜 – Link Open
    ショートカットの右クリックでリンク先を開く
  • Copii
    右クリックメニューに「フォルダへコピー」「フォルダへ移動」機能を追加
    ※これを利用すると「Windowsメニュー>すべてのプログラム」内のフォルダ項目をダブルクリックで開いたり、右クリックからフォルダを開くことが不可能になるため使用を取りやめ。拡張コピーなどで代用することに。

各種ブラウザ

+ Virtual PC で IE6 環境作る。

忘れがち:EditMTU で MTU 値を変えて通信速度を上げる。

コーデック類は、コーデックインストールメモを以前書いたのでそれを参考に。

コンテキストメニュー編集。html, css などに gvim を。Kalen で。

"D:\vim\gvim.exe" -p --remote-tab-silent "%1"

KeySwap for XP で左 Ctrl を Win に、無変換を左 Ctrl に、半角/全角を Esc に、Esc を半角/全角に。

2009/11/03 追記
選んだフォルダをカレントフォルダにしてコマンドプロンプトを開く – デジタル – 日経トレンディネット

2009/11/13 追記
ATOK の設定もでした…ぼろぼろ漏れが。
[029378]同じキーを連続して押すと、「っ」が先頭に表示される

vim で日付や時間をインクリメント/デクリメント

speeddating.vim という vim のプラグインがすごい。今まで知らなかった…

1999-12-30

という日付の、30 にカーソルをあわせ 5 <CTRL-A> と押すと

2000-01-04

になるという。その他、時間、ローマ数字(IV とか)、1st, 2nd… などもインクリメント・デクリメント可能。

speeddating.vim 凄いなと思ったら、surround.vim の作者の方が作ってるようで。surround.vim はこれまた凄く便利なプラグインで手放せないです。この作者さん次から次に凄いモノを…。

sorround.vim については下記サイトなどを。

Page 1 of 1512345...Last »

PAGE TOP