Let's write β

プログラミング中にできたことか、思ったこととか

VimからVSCodeに移行する時にした設定メモ

Vimをずっとつかってきたが、最近VSCodeも使いはじめた。 エディタのモーションはVSCodeVimをいれているのですが、それ以外のUIの表示や挙動にたいして使っている時に感じた使いづらさを分解して少しずつ設定しました。

ファイルツリーが視覚的にツラい

VimではNERDTreeをつかっていたのですが、VSCodeで標準のExploerに移行してなんとなくストレスがたまりやすいなぁという事に気がつきました。

それを分解して考えてみたところ、ファイルの横にでているファイルタイプベースのアイコンにはファイルをさがしている時に関心がないという自分に気がつきました。

プロジェクトを書いている時にはたいていフォルダツリーは安定していて、ファイルタイプごとにどの場所に配置するのかというのはきまっています。 そのため、ファイルツリーを見ている時にファイルやフォルダ名以外の情報は実はファイルをさがす時に関心がないのに目にとびこんで来る事によって逆にファイルを探しづらくなっている自分に気がつきました。

そこで

"workbench.iconTheme": null,

という設定を追加して、ファイルとフォルダであるという事だけが最低限わかるような設定に変更しました。

f:id:Pocket7878_dev:20200625143340p:plain

画面に大きく表示されている物以外に開かれているファイル

Vimで作業している時には、基本的にいま関心があって編集しているファイルは画面上にはっきりと出ている事が常でした。 VSCodeでは対象的にTabを利用してファイルを開いていくので、ブラウザのタブ増えすぎ問題とおなじで、タブを毎回切りかえたり、画面を分割してTabを移動したりと 結局、ファイルをさがす時に、Tabがどこにあるのかという事を確認する作業が発生していました。

OpenEditorsを見にいくようにしたとしても同じで、開いているファイルが視覚的にわからない状態というのはVimから移行した時の違和感の一つでした。

そこで、

    "workbench.editor.enablePreview": false
    "workbench.editor.enablePreviewFromQuickOpen": false,
    "explorer.openEditors.visible": 0,
    "workbench.editor.limit.perEditorGroup": true,
    "workbench.editor.limit.value": 1,
    "workbench.editor.limit.enabled": true,
    "workbench.editor.revealIfOpen": true,

のような設定をして

  • VSCode特有のPreview状態で開くという事を無くした
  • OpenEditorsという表示を消した
  • エディターグループ(分割した領域)ごとに開けるファイルは1つだけ
  • ターミナル等からジャンプした時にすでにそのファイルを開いているエディタがあればそこにフォーカスがあたる

という設定をしました。

このような設定にするとTabも非表示にするような設定をする事も考えられるのですが、残念ながらそのような設定にすると 未保存ファイルのバッファに別のファイルが開かれようとすると未保存なのにUIからは消えてしまう という状態になってしまいました。

これは、perEditorGroupのリミットは「保存済みのエディタ」にたいしての上限であって、未保存のエディタはいくらあっても良いという事になるので、 Tabが表示されていないと単に表示が隠れてしまってアクセスできなくなってしまいました。

このあたりの挙動に関しては正直「未保存のエディタの状態で開こうとしたら保存するかキャンセルするかの確認がでる」といった挙動になってほしい気がします。