EmacsからSublime Textに移行中
ずっとEmacsを使っていて大きな不満となるものはなかったのですが何となく前から気になったていたSublime Textに移行することにしました。
これまでもたまに(RubyMotion用のコードを書く時のコード補完がとっても便利)Sublime使っていたのでちょっとは触っていたのですが本格的に移行しようという気持ちにはならなかったのですが、アプリ申請して、なんとなく作業が一区切りしてることもあり、ひとまずとりかかることにしました。
※直接的なきっかけというのは、正直思いつかず、なんで重い腰があがったのか自分でもよくわかりません ^_^;
設定ファイルの修正
ほんのちょっとだけど、Sublime の良さを指が覚えつつある。なるべくSublime 由来のものを覚えようとしてるけど、設定ファイルが読みやすいのもあって、どうにも気持ち悪い所だけ設定カスタマイズしていけばという気分になる。
— hiroshi oyamada (@h5y1m141) February 19, 2013
こんなことをつぶやいたのですが、なるべくSublime 由来のショートカットを覚えようとしてますが、一部はこれまで手が馴染んでるものがあるのでそこはカスタマイズする方針にしました
コマンドキー + w の割り当てについて
これまでの自分の環境でEmacsでのキーバインドでは、コマンドキー + w は、kill-ring-save になっていたので、その動作にならないと結構ストレスなので、それを実現するようにしました。
具体的には、Package Controll でsublemacsproを導入。その後
/Users/USERNAME/Library/Application Support/Sublime Text 2/Packages/Default.sublime-keymapを開いて
// { "keys": ["super+w"], "command": "sbp_delete_to_mark" }, { "keys": ["ctrl+w"], "command": "sbp_delete_to_mark" },
という感じに変更。super+w の箇所をコメントアウトしているので影響ないとも思うけど、Defaultのキーバインドのやつとバッティングするかもしれないのと、ウィンドウを閉じる機能ショートカットで、コマンドキー + w は利用しないので、 Sublime Text2 のメニューから Preferences > Key Bindings Defaultと進み
// { "keys": ["super+w"], "command": "close" },
と修正
undoの割り当て
OS X の標準的なundoは、コマンドキー + z だと思うのですが、自分のEmacs環境のそれだと、ctrl+/ にてやっていたのでSublime Text2 のメニューから Preferences > Key Bindings Defaultと進み
// { "keys": ["super+z"], "command": "undo" }, { "keys": ["ctrl+/"], "command": "undo" },
と修正。
作業して実感したこと
Emacsの場合だと設定ファイルを他の人のやつを参考にしながら設定するものの、自分のスキル不足もあって、正直どこがどうなってるのか理解があまり出来ていませんでした。
Sublime Textの場合には、自分にとって慣れ親しんでるJSON形式なので、割りと直感的に理解しやすく感じたので、Emacsと比べた場合に積極的にカスタマイズしようかなという気分になりました
今後課題
自分の環境(OS X、Google日本語入力、Sublime Text 2)固有かどうかわからないのですが、日本語のインライン入力中に不具合があります。
具体的には、候補自体を選べるのですが、日本語をタイプミスしてしまった時にその間違った日本語が候補の画面内に残ってしまうため、凄くストレスになってます。
コード書く時にはあまり問題にならないのですが、ブログ等の日本語文章を書いてる時に長文を入力する気にはとてもならないので、仕方がなくその時だけは、これまで慣れ親しんでいるEmacs+Markdownモードで書いてます
これさえ解決すれば、本格的に移行できるんですけどね・・・
参考にしたサイトの情報
自分が設定する時にググっていた時に参考になったサイトがいくつかあり、後々また見返すような気がするのでメモ