はじめに
Emacsのヘビーユーザーですがなんとなく気分を変えたくてAtomを触ってみたのでその時の設定備忘録です.
筆者はAtom超初心者ですので間違い等ございましたらご指摘ください.
キーバインド関連
これだけでほぼAtomがEmacs化します.ただし,C-k
がAtomではプレフィックスに設定されてしまっているのでこれを無効化します.
設定画面でExcept Community Packages
にemacs-plus, atomic-emacs
を追加,Prefix Keys
にctrl-k
を追加します.
これ以降,あらゆるパッケージのキーバインドが無効になるのでパッケージを追加するたびに~/.atom/keymap.cson
に設定を追加します.
dired, neotree
Atomにはデフォルトでneotree
風のtree-view
なるパッケージが入っています.ただしneotree
では開くたびに編集中のファイルがあるフォルダのツリーを表示するのに対してtree-view
では明示的に追加したプロジェクトのツリーしか表示されません.
これを解決するのがauto-project
で,これでほぼneotree
と同様の機能となります.呼び出し用のホットキーは好みのものを~/.atom/keymap.cson
に追加.以下の例ではC-\
をホットキーに設定してます.
'body':
'ctrl-\\': 'tree-view:toggle'
shell-pop
同様のものが幾つかあるので好みのもの,もしくは環境でしっかり動作するものを選びましょう.Emacs上のシェルはeshell
にしろansi-term
にしろ常用するには色々厳しかったですがplatformio-ide-terminal
は完全なターミナルエミュレータであり普通のターミナルとしてしっかり使えます.ホットキーの設定を忘れずに.
isearch
Atomにはもちろんデフォルトでサーチ機能があるがEmacsユーザー的にはごてごてし過ぎなので好みで同パッケージを入れるといいです.例えば以下のようなキー設定をすると良いでしょう.
'.platform-win32 atom-workspace atom-text-editor:not(.mini), .platform-linux atom-workspace atom-text-editor:not(.mini)':
'ctrl-s': 'incremental-search:forward'
'.platform-win32 atom-workspace .isearch atom-text-editor, .platform-linux atom-workspace .isearch atom-text-editor':
'ctrl-s': 'incremental-search:forward'
quickrun
特に説明はなくquickrun
と同様です.設定画面のDefault Current Working Directory(CWD) Behavior
をDirectory of the script
にしておきましょう.
ほぼすべてと言って良い言語に対応しており,Hyも動かせるのがGood.
hl-line
特に説明はなし.
py-yapf, その他各コードフォーマッター
コード整形ツール.HTML, CSS, JavaScript, PHP, Python, Ruby, Java, C, C++, C#, Objective-C, CoffeeScript, TypeScript, Coldfusion, SQLなどなどが整形できます.
保存時に実行する場合は設定画面のGeneral
→ Beautify Entire File On Save
にチェックを入れておきます.
その他
Atomはファイルを開くとタブがたくさん出来て鬱陶しいので好みで入れる.任意のホットキーを設定しておけばタブを表示したり非表示にしたりできます.
例えばF1
をホットキーにするなら以下のような設定を~/.atom/keymap.cson
に追加します.
'body':
'f1': 'atom-hide-tabs:toggle'
おわりに
Atomをはじめて使って見ましたが結構Emacsの代替として機能しそうな感じです.TUIでのEmacsの置き換えにはなりませんがGUIならEmacsと十分並んでいると思います.
Windows環境ならEmacsよりも全然アリかと思います.