AtomからVisual Studio Codeに乗り換えた

Visual Studio Code Advent Calendar 2017 - Qiita

の4日目。

最近、長らく使っていたAtomからVisual Studio Codeに乗り換えた。

理由はただひとつ、「重すぎる」

なんだかんだでずっとCodeに乗り換える機会を伺っていた。

まずAtomのいいところ

Atomはとても良い。 拡張機能で何でも揃えられるし、どんな言語でも扱えるし、 一度起動してしまえばさくさく動いて快適。

使っているパッケージに不満があればプルリクを送って改善していけるし、 みんなで作り上げていくとても良いアプリケーション。

ずっと死ぬまで使い続けていくのだろうなと、あの頃は思っていた。

Atomの悪いところ

とにかく重い。

週1の常駐業務で32bitのWindows7Atomを使っていたが起動と終了が重すぎる。 複数のプロジェクトを同時進行しようとすると話にならない。

自分のPCは昔ゲーム用に買ったスペックの良いものなのでそれほど気にはならなかったが、 時々PC自体が完全にフリーズするのでおかしいと思ったらAtomを開きすぎるとそうなるっぽかった。

また、オートコンプリート機能などのパッケージは、裏で解析を始めるので途端に重くなる。 キー入力も遅延が生じ始める。仕方がないのでそういったパッケージは使用を断念する。

最近IDE機能が追加されたので期待して試してみたが、期待はずれだった。 このあたりで完全にAtomへの想いが冷めたのだと思う。

Visual Studio Codeへの乗り換えの懸念

Codeがやけに速くて快適なのはちょくちょく試していたので気づいていた。 乗り換え直前等はAtomの重さを最大限に感じていた時なので、天と地の差くらいには感じていた。

ではなぜ乗り換えなかったかというと、Vimパッケージへの不満だった。

AtomVimパッケージは、元々あったVimパッケージを日本人開発者の方が別パッケージにして強化して主導権を奪い取ったもので、非常に快適。

CodeのVimは、下記が出来なくて日常的に使うのは厳しいなと感じていた。

  • Insert modeの時もCtrl+Fを奪ってしまって検索、置換が面倒
  • modeによってはCtrl+PgUp, PgDnでタブ切り替えが出来ない
  • システムのClipboardを使う設定にすると一部操作ができなくなる不具合がある(現在改善されている)

たったこれだけではあるがスピード感が失われてストレスが半端ないので使用できなかった。

解決方法

解決したので即Codeに乗り換えた。

キーバインディングは自由に設定できるので自分で勝手に設定すれば良いだけだった。 今使っているキーバインディングは下記のような感じ。

[
    {
        "key": "ctrl+f",
        "command": "actions.find",
        "when": "editorTextFocus && vim.active && vim.use<C-f> && vim.mode == 'Insert' && !inDebugRepl"
    },
    {
        "key": "ctrl+pageup",
        "command": "workbench.action.terminal.focusPrevious",
        "when": "terminalFocus"
    },
    {
        "key": "ctrl+pagedown",
        "command": "workbench.action.terminal.focusNext",
        "when": "terminalFocus"
    },
    {
        "key": "ctrl+pageup",
        "command": "workbench.action.previousEditor",
        "when": "editorTextFocus && vim.active && vim.use<C-pageup> && !inDebugRepl"
    },
    {
        "key": "ctrl+pagedown",
        "command": "workbench.action.nextEditor",
        "when": "editorTextFocus && vim.active && vim.use<C-pagedown> && !inDebugRepl"
    },
    {
        "key": "tab",
        "command": "editor.action.indentLines",
        "when": "editorFocus && vim.active && !inDebugRepl && vim.mode != 'Insert'"
    }
]

乗り換えて

非常に快適。とにかく速い。 詳しくはわからないが、Language Serverというのを使っているせいか、オートコンプリートなどの重い機能もやけに速くストレスが無い。

何気にGitの簡単な操作もCode上でできてしまうので便利。

Visual Studioを使っており、いつも重いなぁと思いながら使っていたが、 もしかするとMicrosoftが作っていなかったらもっと遅いIDEになっていたのかもしれないとさえ思った。

とにかくVisual Studio Codeおすすめ。