2012/02/22(水) [n年前の日記]
#1 [javascript] enchant.jsを勉強中
ドットインストールの動画は見終わったので、Web記事を探しつつ勉強中。
Aptana Studio 3 上で打って試しているのだけど。行数が増えるとソースフォーマッターがエラーを出してしまうことに気付いた。なんだコレ。functionの中が長くなると処理できなくなるのだろうか? 何にせよ困った。手作業でソース整形なんてやってられないし。そのあたりも含めて、javascript 対応のヨサゲなIDEって無いものかしら。
Aptana Studio 3 上で打って試しているのだけど。行数が増えるとソースフォーマッターがエラーを出してしまうことに気付いた。なんだコレ。functionの中が長くなると処理できなくなるのだろうか? 何にせよ困った。手作業でソース整形なんてやってられないし。そのあたりも含めて、javascript 対応のヨサゲなIDEって無いものかしら。
[ ツッコむ ]
#2 [pc] キーボードの配列図ってなかなか見つからない
キーボードを販売してるメーカでは公開されてたりするのだけど、「改変しちゃダメ」が前提のようで。自由に使える配列図がなかなか見つからず。「自分で描かなきゃダメなのか…」と途方に暮れていたところで、
_109日本語キーボード
というページに遭遇いたしました。おお…ありがたや。
こういった図を描くのは大変ですわな。ある程度描画を自動化できないものか。でも、作ったところで需要は滅多に無いか。
メーカではどうやって描いてるんだろう。コツコツ描いていくのだろうか。しかしそれでは、キー配列の検討作業すら一苦労だろうし。おそらく何か専用ツールがあるに違いない。どんなツールなのだろう。
こういった図を描くのは大変ですわな。ある程度描画を自動化できないものか。でも、作ったところで需要は滅多に無いか。
メーカではどうやって描いてるんだろう。コツコツ描いていくのだろうか。しかしそれでは、キー配列の検討作業すら一苦労だろうし。おそらく何か専用ツールがあるに違いない。どんなツールなのだろう。
[ ツッコむ ]
#3 [pc][neta] gvimでjとkを同時に押してみたり
何も起きなかった。hとlも同様。真っ当な作りになっているらしい。…チッ。<おい。
なんとなく思ったけど、これ、ショートカットキーの割り当てに使えないかな。もしかしてキーボード側で、ハードウェア的にソレはできないようになってるんだろうか。
仮にできたとしても、同時に押すタイミングがシビアだから実用にはならないかもしれず。入力を受け付けるために一定時間待っていたのでは反応が悪くなりそうだし。うむ。どう転んでも使い道は無さそう。
いや待て。本当にそうだろうか。「まさか、それとそれを同時に押すとは! そんな使い方があったなんて!」みたいな何かが…。
やっぱり思いつきませんが。
なんとなく思ったけど、これ、ショートカットキーの割り当てに使えないかな。もしかしてキーボード側で、ハードウェア的にソレはできないようになってるんだろうか。
仮にできたとしても、同時に押すタイミングがシビアだから実用にはならないかもしれず。入力を受け付けるために一定時間待っていたのでは反応が悪くなりそうだし。うむ。どう転んでも使い道は無さそう。
いや待て。本当にそうだろうか。「まさか、それとそれを同時に押すとは! そんな使い方があったなんて!」みたいな何かが…。
やっぱり思いつきませんが。
[ ツッコむ ]
#4 [windows] タイプ数カウンターをインストールしてみたり
久々にちょっと測定してみようかと、Windows7 x64上にタイプ数カウンターをインストール。ちゃんとカウントされているように見える。ありがたや。
画面を見ながらカウントされる様子を眺めていたら、異様に Ctrl と w の打鍵数が多いことに気が付いた。何故。…あ、そうか。マウス(A4tech X-718BK)の拡張ボタンに、Ctrl+wを割り当てているせいか。Firefoxでタブをガンガン閉じていく時に、入力されてしまうのだな。であれば、Ctrl と w の打鍵数は除外して分析しないと。
これ、記録をファイル保存できないのが痛い。せめて、ウインドウサイズが変更可能で、かつ、リスト表示領域を縦に長くすることができたら、テキストでは残せないまでも、キャプチャして記録を画像として残すことも可能なのだろうけど。
画面を見ながらカウントされる様子を眺めていたら、異様に Ctrl と w の打鍵数が多いことに気が付いた。何故。…あ、そうか。マウス(A4tech X-718BK)の拡張ボタンに、Ctrl+wを割り当てているせいか。Firefoxでタブをガンガン閉じていく時に、入力されてしまうのだな。であれば、Ctrl と w の打鍵数は除外して分析しないと。
これ、記録をファイル保存できないのが痛い。せめて、ウインドウサイズが変更可能で、かつ、リスト表示領域を縦に長くすることができたら、テキストでは残せないまでも、キャプチャして記録を画像として残すことも可能なのだろうけど。
[ ツッコむ ]
#5 [pc][neta] emacsのキー割り当てっておかしいよなあ
自分は軟弱者だから、emacs系エディタ上でも、カーソル移動にカーソルキーを使ってしまうのだけど。改めて考えてみれば、emacsのキー割り当てって、やっぱりおかしいよなあ…と唐突に思ったのでなんとなくメモ。
emacsの「『正統』なカーソル移動」は、 C-p,C-n,C-f,C-b、だっけ? 図にすると、こう。
どれが「↑↓←→」か分かります? 自分は分からない。知ってるけど、見ても分からない。
例えば、ゲーム界隈ではWASD配置(?)てのがあるんだけど。
比べてみて、どうスか?
*1
ちなみにvimは、HJKLがカーソル移動。
emacsよりはマシだけど、上下が分かりづらい。どうしてこうなったかというと、
_ADM-3aはhjklに矢印が刻印されてた
からだそうですが。なんというチート。まあ、ホームポジションから(さほど)指を離さずに操作できるから、これはこれで…うむむ。
再度確認するけど、emacsは、こう。
どんだけ理屈をこね回して肯定してみても、図にすれば一目瞭然。「emacsって…うわぁ…」とフツーの感性なら思うのではないかと…。ありえねえだろ、この割り当て。おかしいだろ。と。
などと言いつつも。どうしてこうなったのか明確な理由が。例えば _このページ を眺めると、
察するに、emacsには基本思想があるのだろうと思うわけですよ。「全ては言葉に支配される」という思想が。…勝手な想像ですが。
M-x で機能名を打ち込むのも、その思想の表れだろうなと。そして、カーソル移動すらその思想に基づいて割り当てがされている。最初から終わりまで、一つの方針を貫いている。いや、貫こうとしてきた。それがemacsであり、emacsの文化。なのだろうと。それに、道具の属性を思い返すと、筋は通っている気もする。延々とテキストを相手に戦う道具なのだから、各仕様についてどうしようかと悩んだ時は、「テキストは、名前は、単語は、どうなっているか?」を考えるべきだ! みたいな。…あくまで勝手な想像ですが。
でもね。それってどうなんだろうな、と。
自分は以前、半年ほど、キーのタイプ数をカウントするソフトを入れて、どのキーがどれだけ押されているか実測したことがあるのですけど。カーソルキーは、他のキーと比べて、打鍵数が数倍違うのです。そのくらい、カーソル移動ってヤツは、利用頻度が圧倒的に高い。けして、他のキーや、他の機能と、同列に扱っていい存在じゃない。…嘘だと思うなら試しに測ってみてください。測ってみれば、ほとんどの人は納得してくれるはず。「forwardのf」なんてノリで割り当てを決めていい機能じゃないですわ。なのにemacsは、このカーソル移動のデフォルト割り当てを、30年間(?)そのまま放置ですよ。
プログラムを作る時は、ベンチマークを取るでしょう? キー割り当ても同じ。本来は実測と分析が必要。自分も含めて皆サボって、頭の中だけで考えてテキトーに決めちゃって慣れてしまってこれで良かったんだと思い込んじゃってるけど。延々と触る道具だからこそ、本当なら、調べて、考えて、分かった上で決めていかないといけない。…面倒臭くてサボっちゃうけど。
そう考えるとemacsは、「分かってないままここまで来ちゃったエディタ」かも、と疑念が湧くのです。カーソル移動以外にも、「これはいかがなものか」という部分が、触った人なら思い浮かぶはず。アレとか、アレとか、アレとか。怪しいでしょ。ねえ。いかがなものかと。そんなアレコレも、実測してみれば、ここは特別扱いすべきだ、基本ルールから外れても効率を追求しなきゃいかん部分だと分かったのではないか。そんな夢想をするのです。どこかの時点で、「皆、今までスマンカッタ。この割り当ては合理的ではなかった。今からでも遅くない、こっちの割り当てに変更する!」という強権発動が出てきてもおかしくはなかったのではないかと。…実はそういう議論も昔はあったのかしら。絶対ありそう。分かりませんけど。
とはいえ。QWERTY配列と同様、「慣れ」の前では全ての合理性は否定されるのです。ここまで来たら、変えるわけにはいかない。変えたら達人の皆様からブーイングの嵐だろうし。 *3 しかし、だからといって。カーソル移動すらこんな状態で、「emacsを使うべき」とは…ちょっと…ねえ?
ま、カーソルキー使えば済む話なんですけど。
何はともあれ、emacsのキー割り当てはおかしいよなあ、という話でした。そんだけッス。
emacsの「『正統』なカーソル移動」は、 C-p,C-n,C-f,C-b、だっけ? 図にすると、こう。
例えば、ゲーム界隈ではWASD配置(?)てのがあるんだけど。
ちなみにvimは、HJKLがカーソル移動。
再度確認するけど、emacsは、こう。
などと言いつつも。どうしてこうなったのか明確な理由が。例えば _このページ を眺めると、
- C-f : f)orward-char
- C-b : b)ackward-char
- C-n : n)ext-line
- C-p : p)revious-line
察するに、emacsには基本思想があるのだろうと思うわけですよ。「全ては言葉に支配される」という思想が。…勝手な想像ですが。
M-x で機能名を打ち込むのも、その思想の表れだろうなと。そして、カーソル移動すらその思想に基づいて割り当てがされている。最初から終わりまで、一つの方針を貫いている。いや、貫こうとしてきた。それがemacsであり、emacsの文化。なのだろうと。それに、道具の属性を思い返すと、筋は通っている気もする。延々とテキストを相手に戦う道具なのだから、各仕様についてどうしようかと悩んだ時は、「テキストは、名前は、単語は、どうなっているか?」を考えるべきだ! みたいな。…あくまで勝手な想像ですが。
でもね。それってどうなんだろうな、と。
自分は以前、半年ほど、キーのタイプ数をカウントするソフトを入れて、どのキーがどれだけ押されているか実測したことがあるのですけど。カーソルキーは、他のキーと比べて、打鍵数が数倍違うのです。そのくらい、カーソル移動ってヤツは、利用頻度が圧倒的に高い。けして、他のキーや、他の機能と、同列に扱っていい存在じゃない。…嘘だと思うなら試しに測ってみてください。測ってみれば、ほとんどの人は納得してくれるはず。「forwardのf」なんてノリで割り当てを決めていい機能じゃないですわ。なのにemacsは、このカーソル移動のデフォルト割り当てを、30年間(?)そのまま放置ですよ。
プログラムを作る時は、ベンチマークを取るでしょう? キー割り当ても同じ。本来は実測と分析が必要。自分も含めて皆サボって、頭の中だけで考えてテキトーに決めちゃって慣れてしまってこれで良かったんだと思い込んじゃってるけど。延々と触る道具だからこそ、本当なら、調べて、考えて、分かった上で決めていかないといけない。…面倒臭くてサボっちゃうけど。
そう考えるとemacsは、「分かってないままここまで来ちゃったエディタ」かも、と疑念が湧くのです。カーソル移動以外にも、「これはいかがなものか」という部分が、触った人なら思い浮かぶはず。アレとか、アレとか、アレとか。怪しいでしょ。ねえ。いかがなものかと。そんなアレコレも、実測してみれば、ここは特別扱いすべきだ、基本ルールから外れても効率を追求しなきゃいかん部分だと分かったのではないか。そんな夢想をするのです。どこかの時点で、「皆、今までスマンカッタ。この割り当ては合理的ではなかった。今からでも遅くない、こっちの割り当てに変更する!」という強権発動が出てきてもおかしくはなかったのではないかと。…実はそういう議論も昔はあったのかしら。絶対ありそう。分かりませんけど。
とはいえ。QWERTY配列と同様、「慣れ」の前では全ての合理性は否定されるのです。ここまで来たら、変えるわけにはいかない。変えたら達人の皆様からブーイングの嵐だろうし。 *3 しかし、だからといって。カーソル移動すらこんな状態で、「emacsを使うべき」とは…ちょっと…ねえ?
ま、カーソルキー使えば済む話なんですけど。
何はともあれ、emacsのキー割り当てはおかしいよなあ、という話でした。そんだけッス。
◎ 余談。 :
どうしてわざわざキーのタイプ数を実測したことがあるかと言うと、
_Logicool K340がとにかく使いづらくて。
一体全体自分はどんだけカーソルキーを押してるのだと疑問が湧いたからなのですが。色々発見がありました。enterキーが可哀相とか。半年間一度も押されないキーとか。
あの製品、コンパクトでグッドな感じだったのだけど。いかんせん、カーソルキーがなあ…。
あの製品、コンパクトでグッドな感じだったのだけど。いかんせん、カーソルキーがなあ…。
◎ 更に余談。 :
emacsを日本に持ち込む際に、
いや…それは…どうだろうか…。む。ここで「どうだろうか」と思うってことは、emacsの方針がやっぱりおかしい証拠かもしれず。
改めてキーボードを眺めてみると、0〜9、a〜zのどこにカーソル移動を割り当てるかは実に悩ましい。記号キーに割り当てれば、文字の形から働きを類推しやすいかもしれないけれど、英語キーボードと日本語キーボードでは記号キーの配置が違うことも多いから、不都合が生じそう。そう考えると、vim のモード切替+HJKL割り当てが合理的に見えてくる。どこでも通用しそうだし。
カーソルキーが無い状態でカーソル移動しようとすると、悩みますな。「forwardのf」も分かります。悩むわ、コレ。難しい。「ああ、もう、forwardのfで!」も分かっちゃう。
それにしても、どんな割り当てが妥当だったんだろう…?
- C-m : m)igi
- C-h : h)idari
- C-s : s)hita
- C-u : u)e
いや…それは…どうだろうか…。む。ここで「どうだろうか」と思うってことは、emacsの方針がやっぱりおかしい証拠かもしれず。
改めてキーボードを眺めてみると、0〜9、a〜zのどこにカーソル移動を割り当てるかは実に悩ましい。記号キーに割り当てれば、文字の形から働きを類推しやすいかもしれないけれど、英語キーボードと日本語キーボードでは記号キーの配置が違うことも多いから、不都合が生じそう。そう考えると、vim のモード切替+HJKL割り当てが合理的に見えてくる。どこでも通用しそうだし。
カーソルキーが無い状態でカーソル移動しようとすると、悩みますな。「forwardのf」も分かります。悩むわ、コレ。難しい。「ああ、もう、forwardのfで!」も分かっちゃう。
それにしても、どんな割り当てが妥当だったんだろう…?
[ ツッコむ ]
以上、1 日分です。