SREチームの長田です。
KAYAC Advent Calendar 2021の16日目です。 今回はSREとはあんまり関係ないエディタのおはなしです。
TL;DR
- プロジェクトとしてまとまっているものはVisual Studio Code
- 単体のテキストファイルはEmacs
登場人物
Emacs
- ほぼEmacs一本で生活していた
- Spacemacsを導入してからはカスタマイズコストも下がって快適に
Visual Studio Code
(以下VSCodeと表記)
- 今年の9月頃からメインの開発用エディタとして使用中
- 前から軽く触ってはいたけど、やりたいことやるために設定ちょっといじっては放置を繰り返していた
なぜVSCode使うようになったのか
開発環境をリモート化したい*1、というのが一番の理由です。 GitHubのCodespacesを使いたいんですよね。
エディタの共存
これまでは全てのテキストを同じインターフェイスで編集したいと思っていたので、 どんなテキストファイルでもEmacsで開いていました*2。
最近は適材適所でエディタなりIDEなりを使い分ければいいかなーという気持ちになっています。 自分の中ではEclipseの印象が強かったので、 「IDE=重い」というイメージだったのがようやく払拭できたのではないかと。
要約にも書きましたが、いまはこのように使い分けています
- プロジェクトとしてまとまっているものはVSCode
- 単体のテキストファイルはEmacs
プロジェクトディレクトリ外のファイルをVSCodeで開くこともできますが、 扱いづらさを感じたのでこのような使い分けをしています。
例外として、凝ったテキスト編集を行いたい場合はプロジェクト内のファイルでもEmacsで開くことがあります。 正規表現による置換結果が見やすいとか、検索結果を直接編集できるとか、キーボードマクロが使えるとか。 ただ、このあたりは慣れ・成長しきった設定・長年鍛えられたEmacs筋によるものが大きく、 VSCodeの使い方開拓や拡張を見つけるなり作るなりすることで、テキスト編集に関する両者の差は少なくなっていきそうです。
引き継がれるEmacsの面影
とはいえ長年のEmacs生活の影響は大きく、見た目や使い勝手はEmacsを使っていたころものに寄せています。
同時に起動するので、見分けが付きやすいようにカラーテーマをそれぞれライトなものとダークなものに設定しています。
ちなみにどちらもキーバインドはVimです。
おまけ: VSCodeで開いているファイルをEmacsで開く
VSCodeで開いているファイルをEmacsで開く場合は、Open in Editorという拡張を以下のように設定するとスムーズです。 VSCodeで開いているファイルの同じ行・同じ列位置にカーソルがある状態でEmacsを開くことができます。
"alt-editor.binary": "emacsclient", "alt-editor.args": "-n +{line}:{column} {filename}",
※Emacsで server-start
している必要があります
おまけ:エディタ乗り換えの歴史
ついでいつ頃どんなエディタを使っていたのかを振り返ってみたら案の定フラフラしていました。 半年くらい別のエディタに乗り換えてはEmacsに戻ってくるというのを繰り返していたようです。
期間 | エディタ | 当時の記憶 |
---|---|---|
〜2010年 | xyzzy | Windowsユーザーだった |
2010年 | Emacs | 就職したら強いEmacsの人がいた/Macユーザーになった |
2012年 | Vim | 触ってみたくなった |
2012年 | Emacs | やっぱり違ったらしい |
2013年 | Sublime Text 2 | 気分転換 |
2014年 | Emacs | 結局戻ってきた |
2014年 | Atom | .emacs.d を無くしたので |
2014年 | Emacs | 物足りなかったらしい |
2016年 | Emacs (Spacemacs) | Vimキーバインドに移行 |
2020年 | Emacs (Spacemacs) + VSCode | VSCodeはデバッガのUIとして使っていた程度 |
2021年 | Emacs (Spacemacs) + VSCode | VSCodeを本格的に使い始めた |
おわり
また気が変わるかもしれないですが、しばらくは Emacs + VSCode で行くはずです。