スキップしてメイン コンテンツに移動

一日30分節約できるかもしれない変態キーバインド(2/3)

英字配列か日本語配列か



キーバインドの話に入る前に、まずキーボードを選択する必要があります。



プログラミングをする際に用いられるエディタは日本製のではない限り、おおよそほとんどが英字配列を意識してショートカットが割り当てられているため、日本語配列では手の動きに無理が生じる可能性が高いです。



そのため、英字配列を選択する方も多いと思うのですが、自分は日本語配列を使っています。

理由は、キー数が多いからです。キー数が多いということは、その分充てられるキーの数が多くなるということで、モディフィアキー(CtrlやShift、Alt等)を組み合わせればホームポジションから押せるキーが著しく増加します。

配置の意味での英字配列は、キーバインドを使って充てれば良いので、日本語配列を使って損をすることは何もありません。



使っているキーバインドツール



キーボードの選択が終わったところでキーバインドの設定へ移りたいところですが、前段階としてそのキーバインドをどんなソフトウェアで実現するかというのが問題になってきます。

キーバインド設定ソフトには、割と有名なところで、changekey猫まねAutoHotKey 等があります。

自分は、シェアウェアの のどか を使っています。WindowsXPであれば、フリーソフトの 窓使いの憂鬱 でも、ほぼ同様の設定ができるはずですし、Windows7でも拡張された物などがあり、フリーでも使用できる方法があるようです。



日本語配列から英字配列へ



ここからようやくキーバインド設定の話に入ります。

まず、冒頭で説明したように、日本語配列をキーバインドで英字キー配列へ変更しましょう。

のどかの設定ファイル(詳細はのどかのページを読んでください)に以下を記述します。



https://gist.github.com/1130197



それから編集した設定ファイルをのどかに読み込ませます。

これで、日本語配列のキーボードでも、ほぼ英字配列のキーボードと同じ位置にキーが配置されるようになります。



人間の手が届く範囲



ここから徐々にコアな話に入ってきます。まず、これから紹介させていただくキーバインド設定を解釈して、自分なりに改造していくために考えないといけないこととして、人間の手の大きさがあります。



人の手をホームポジションに置いた際に指が届く範囲はキーボード全体をカバーすることはできません。人によって若干違いはあるものの、大体以下程度になると思われます。



(http://ja.wikipedia.org/wiki/キー配列#109.E3.82.AD.E3.83.BC.E3.83.9C.E3.83.BC.E3.83.89の画像を使わせていただいています)
  • 青:無理なくホームポジションから届くキー
  • 黄:指を伸ばすことでなんとかホームポジションから届くキー
  • 赤:人間には到達不可能なキー




驚くべきはコーディングやショートカットにおいて頻繁に用いられる、ControlキーやEnterキーでさえ人間が到達することのできない秘境にあるということです。BackSpaceやEscキーに到ってはこの世のものとは思えないほど遠くに配置されています。



このように一般的な日本語配列と自分の手を見比べることで、キーボードというのはキーバインドをしなければ使うことのできないデバイスだということが理解できると思います。



この気づきが、自分に最適なキーボードの配列を考える第一歩になります。



こ の先は、キーボードを扱う個々人で最適なキーバインドが異なってくるため、何が正解かというものは存在しません。日ごろコーディングを行ううえで、この キーがもっと近くにあれば、より自然に素早くコードを書くことができるのにという気づきと、普段使っているキー配置とのマージを繰り返してより最適なもの を導き出していく必要があります。



以下では、今現在自分がキーバインド設定で歩んだ道の一部を紹介します。自分もまだプログラマーとしては日が浅いので、まだまだ改善点は多々あるはずですが、最適なキーバインド考察の一助となれば幸いです。



次 : http://kmnk.blogspot.com/2011/08/3033.html



コメント

このブログの人気の投稿

就職活動現況報告

今週若干余裕があるので少しネタの更新・・と思っていますが 研究も進めないといかんので保留。。 本を読む本 (講談社学術文庫) をほぼ読み終わったので 電車の中で次はviの本かWebプログラミング基本みたいな本を読もうと思います。 後は久々に漫画を衝動買い。 ぷりぞな6 1 (サンデーGXコミックス) これ。絵描いてる人が韓国の人らしい。 ブラックラグーンの作者が支持みたいなことが書いてあったので読んで見ました。 まー絵は萌え系みたいな感じだけどシリアス混じってて面白そうかな? Amazonでは絵が無いですが一応公式の紹介は GX作家&作品紹介 こんな感じです。 結構表紙飾っているようなので見たことある人も居るかもしれません。 で、タイトルの就活現況では、前回順調とか言ってましたが 志望していた6社のうちとうとう1社落ちました。 しかも結構でかいところです。 グループ面接の時点で落ちてしまったので、 もしかしたら表面の部分(礼儀とか仕草)で落とされたのかもしれないですが、 反省としては 内容が冗長で話す内容が長かった 何か反論された時に言い訳じみた答えを返してしまった 自分はエンジニア経験があるんだ的な内容を押しすぎた 辺りと考えています。 で、対策。 まず冗長分ですが、今のところ話す内容を完全に決めてしまわずに、 ある程度の枠を決めてその場で考えて話しているので もうちょっと 質問の後に結論を考えてから内容を話す ように気をつけようと思います。 反論じみた言い訳というのは、とっさに返してしまう対応策みたいなもので、 相手に この人は実務でミスしてもその場対応するんじゃないか という印象を与えてしまった気がしております。 ので、対策としては 一度相手の内容を肯定して、その上で簡潔にこうすればいいんじゃないかと思うと一言返す 位に留めようと思います。 最後にエンジニア押しは、一応自分の売りの一つではあるので止めることはせずに 事実だけをしっかり伝えて冗長分は省く というような感じにしようかと思います。 以上。 自分の反省なので発信するような内容じゃないんですが、 文に書かないとなかなか省みない性格なので文にして発信。 結論を言えば「もっと落ち着いて簡潔に」を心がけるといったところでしょう。 正直面接凄い苦手なのでなかなか落ち着くのはきついですが、 省みなずに 運...

日記をつけはじめて1年とちょっと経ったまとめ

日記をつけはじめて1年とちょっと経ったまとめ 去年(2017)の 1/11 から日記をつけ始め、気づくともう1年以上ほぼ毎日つけていました まさか習慣化するとは思っていなかったんですが、意外と続いたので一旦まとめておこうと思ってのエントリ このエントリでは どういう手法で続けてきたか や 続けてきた結果どうなったか などをまとめておいて、自分用の改善材料にすること、及び、このエントリを見た人の判断材料にすることを目的としています …ので、書き始めた主要因である書籍 日記の魔力 については、覚えている内容を参考にする程度で、本自体の紹介はほぼしないです(読み返すのが面倒だっただけじゃないです) まとめ 書いてみたら長くなったので、まとめから 自分用のフォーマットを整えれば意外と書くのは楽 愚痴も悩みもとりあえず文字に吐き出すと精神衛生上良い 忘れっぽいと思っていたら、思っていたより数倍物事を忘れていることに気づく 万が一興味を持ったら一度 日記の魔力 を読んでみては 今後は… これまで通り毎日ログを書く ふりかえりの意義を再考して、ちゃんと毎週&毎月ふりかえるようにする ふりかえりの中で、どういうログを書いておくと使いやすいか考えて、日記自体も改善する 以降、自分のふりかえりも兼ねているため長文ですが、つらつらと書きます きっかけ 最初のきっかけは、 Twitter のタイムラインに流れてきたブログのエントリ 思考や行動を改善できる「日記の魔力」とは の引用…だった気がする(この時はまだログをつけていなかったので記録も記憶も残っていない…) ここで紹介されている 日記の魔力 という本を一通り読み、本に書いてあるとおりに 騙されたと思って日記を書き始めてみよう と思ったのが最初の一歩 手法 記憶が朧げですが、確か本の著者の方の手法は ワープロかPCか何かで、毎日のログを隙間時間にファイルに記述する 10日に一度くらいのスパンでそれまで書いた日記をふりかえる ふりかえりの中で、自分が人生で追っていきたい主題みたいなものに関連する内容を別のファイルにコピペして貯めていく みたいな形だったはず。色々と細かいルール(天気などの後から調べれば分かることは書かない等)が少しあった気がするけれど、既に覚えて...

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

あけましておめでとうございます。 去年は1年通して仕事が忙しかったことを言い訳に、何も抱負を達成せずにのんべんだらりと過ごしてしまった一年でした。 去年一切達成できなかった抱負ですが、盛大にハードルを下げつつ、今年も書いておこうと思います。 - 英会話コースを受講する - 隔月で新しいことを体験する(間の月は次の月にやることを考える) - 個人でゲームを作成してプラットフォームへ上げる - 4半期ごとに達成状況を確認して、余裕があったら目標を追加する 以上です。 今年もよろしくお願いいたします。