UNIX系OSのプログラマが好むエディタとして、VimとEmacsという二大エディタがあります。どちらも、使いこなすには時間がかかるものの、快適なプログラミングを支援する機能が充実しており、「使い込んできたら手放せない」というプログラマも多く存在します。
私の場合は新人の頃に、師匠(的な先輩)から半強制的にEmacs(※1)を使わされ、半泣きでEmacsのキーバインドやら設定方法を覚えていました。ちなみにこの師匠からは、他にも「自宅にFreeBSDのサーバーたてて、いろいろ実験しろ」という命令を受けたりして、いま考えると非常にありがたい指導を受けていたようです(当時は辛かったですが… そのころ組み込み系でしたし)。
※1…実際はWindows上で動作するEmacsクローンであるMeadowというアプリケーションでしたが、ここではEmacsと書いています。
その後も、こつこつEmacsを使い続け、メーラーもWebブラウザもCVSクライアントもFTPクライアントも大抵のことはEmacs上で全てできるようになりました。そして、「いや〜Emacs最高、これさえあればOSが変わってもへっちゃらだ」と、周りに勧めまくったりしていたのでした。私とEmacsの仲は非常にうまくいっていると思っていました。実際のところ、全体的には問題は無く、優しく穏やかな時間が流れていたと思います。でも。すぐそばに破滅が佇んでいた。
いつも通りカーソルキーには触らず、Ctrl-f押下でカーソルを「前に前に」進めていたある日のこと、Emacsを使っていてご機嫌なはずの私の表情は曇っていました。額には脂汗も滲んでいたようです。「左手の小指が痛い…もうコマンドキャンセル(C-g)もできないよ」。EmacsではCtrlキーを多用します。いや、多用するというよりも左手小指で押しっぱなしにします。Wikipediaにまで載っている「Emacs小指」というやつです。「このままじゃ壊れてしまう…」と身の危険を感じた私は、全然使わないCaps LockキーにCtrlキーを割り当て、左Ctrl二刀流にしました。多少使いやすくなったものの、根本的な解決には至りませんでした。
代替案として真っ先にあがったのはVimでした。もともと、viの操作がたどたどしくて、Emacsが入っていない(かつ入れられない)まっさらマシンでの作業に不安を持っていたので、「Vimを使いまくるイコールviも上達。すなわち、弱点克服し幸せに」、という副効果も期待しました。
Vimの習得については、日本語文字コード周り以外は特に苦労せず使いこなせるようになりました。そして、肝心の左手小指の痛みも無くなり、快適な日々を送っています。viの操作も向上し無意識にカットアンドペーストもできるようになりました(maで範囲選択開始、d`aでカット、pでペースト)。
現状、プログラミング環境・エディタとしては満足しているのですが、Vimだけで全ての作業が完結しないことがちょっと不満だったり(あまりVimスクリプトを調べていないのが根本的な原因…)、set -o emacsの環境でたまにコマンドラインからC-aとか打つと、一打で移動できてしまうことがうらやましくなってしまったり、プログラミング環境を整えるのはEmacsのほうが楽だなぁ、と思ったりして、最近はEmacsに戻ってみようかしらと迷っております。
ただ、やはりネックは左手小指の痛みです。これを解決せねば… ということで適当にWeb上の情報を漁ってみると(キーワードは「emacs 小指」または「emacs pinky」)、以下の対応案が出てきました。
1.左手小指の付け根で押す。
2.フットペダルをCtrlに割り当てて足で操作する
(kinesis社製のものが有名)。
3.変換キー(スペースキー横)をCtrlキー化して右手親指で押す。
1は昔試したことがあって、何だか窮屈な感じが耐えられなかったので没。2はすごく心惹かれるのだけど、買ってみる勇気が無い&一回慣れたらふつうのキーボードが使えなくなりそうなので没。残るは3か… 変換キーは現在、全角/半角に割り当てているのですが、その辺りは何とかなりそうです。カタカナ/ひらがなキーを使っても良いし。
その他、「自分でもオリジナルの打開案を!」と意気込んで考えてみた結果、「マイクに向かってハミングするとCtrl」というアイディアが誕生しました。マイクであれば安く揃えられるし、どの指も痛みません!ただ、プログラミング中、プログラマーが一斉に「ンン〜、ンンンン〜」とか言っている状況を想像して、即却下しました。
ということで、仕事の谷間を見つけて3の対応&久しぶりのEmacsを試してみようかと思っています。まぁ、それはそれで、Vimとの決別に悩みそうな気が…。
今回エントリー書き終えて、一番の感想は「kinesisのキーボード欲しい!」です。一度使ってみたいっす。
※このエントリはZDNetブロガーにより投稿されたものです。朝日インタラクティブ および ZDNet編集部の見解・意向を示すものではありません。
時代変化に乗れ!中堅中小のIT投資変化するIT投資のあり方を押さえ
中堅中小ならではの先取りの一手
サントリー、ベネッセが何を考えたか
ミドルウェアフォーラムにて明らかに!!
SaaS型サービスへのトレンドシフト
好調企業ほどグループウェア重視の傾向が
自社での要件を固める!情報システムの
ライフサイクルにそった検証方法を紹介
Google Appsパートナー企業に聞く
高まるシステム移行の需要にきめ細かく対応
仮想環境を安定・効率的に運用するポイント
調査結果から分かった企業の現状と課題とは
無料アセスメントでストレージの健康診断
無理なくダイエットを実現、その秘密は!?
BI、検索、ソーシャル、モバイルの4つの壁
をSharePointで越える【講演資料有】
ITマネジメントに関わる責任者やITプロが
このイベントに参加すべき3つの理由を紹介
Google Maps&Earthをビジネスに活かす!
公益事業での成功事例を続々紹介
Google Appsパートナー企業に聞く
無料アドオンを提供してさらに利用性向上
Google Maps&Earthをビジネスに活かす!
通信・情報サービス業での成功事例を紹介
ビッグデータのトレンドをどう読み解くか
クラウドは「ネットの脳」?
安全なモバイルワークスタイルを
実現する「Aventail」
株式会社エムアンドティーティー
NRIセキュアテクノロジーズ株式会社
ピーエムシー・シエラ・ジャパン株式会社
ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。