これはVisual Studio Code Advent Calendar 2016の25日目の記事です(間に合わなかった……)。
自分も拡張機能を作って記事にしたかったところですが、案の定クリスマスには時間が取れず断念。最終日にアレですが、エディタ定番の設定ファイル晒しをします。
アップデートのたびにいくつか設定が追加され、最近出たバージョン1.8では設定の検索や変更補助が便利になっているので、既に使い込んでいる人もこの機会に見直してみてはいかがでしょうか。
設定項目の解説は、設定画面の左ペイン「規定の設定」にコメントで書かれているほか、右ペインでも設定にフォーカスをあてるとポップアップで表示されます。
settings.json
{
// フォントファミリー(お好みで)
"editor.fontFamily": "'Source Han Code JP', Menlo, Monaco, 'Courier New', monospace",
// フォントサイズ(お好みで)
"editor.fontSize": 14,
// (お好みで)スペース2個インデントの言語を触ることが多いので
"editor.tabSize": 2,
// ウインドウ幅で折り返す
"editor.wrappingColumn": 0,
// 自動フォーマットする
"editor.formatOnType": true,
// カーソルがにゅるっと点滅する
"editor.cursorBlinking": "smooth",
// ホワイトスペースを表示する。ただし単語間の単一スペースは表示しない
"editor.renderWhitespace": "boundary",
// 制御文字を表示する
"editor.renderControlCharacters": true,
// インデントガイド(インデントに沿って縦線を表示)
"editor.renderIndentGuides": true,
// 現在行をガターを含めてハイライトするので視認性が上がる
"editor.renderLineHighlight": "all",
// 差分を横に並べて表示ではなく行内に表示する
"diffEditor.renderSideBySide": false,
// Quick Openで開いたファイルはプレビューにしない方が使いやすい
"workbench.editor.enablePreviewFromQuickOpen": false,
// codeコマンドで(ディレクトリではなく)ファイルを開いたときは、既に開いているウインドウがあればそこに表示する
"window.openFilesInNewWindow": false,
// 再起動時に開いていたウインドウをすべて復元する
"window.reopenFolders": "all",
// タイトルバーにファイルのフルパスを表示する
"window.showFullPath": true,
// 余分なホワイトスペースを削除
"files.trimTrailingWhitespace": true,
// ファイルの末尾は改行で終わらせる
"files.insertFinalNewline": true,
// ファイルを自動保存
"files.autoSave": "afterDelay",
// 「ファイル モニタリングから除外するファイル パスの glob パターンを構成します。この設定を変更すると、再起動が必要になります。始動時に Code が消費する CPU 時間が多い場合は、大規模なフォルダーを除外して初期ロードを減らせます。」
// とのこと。vendorには大抵外部ライブラリが入っているので追加で指定している
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/node_modules/**": true,
"**/vendor/**": true
},
// 検索(Quick Open含む)から除外するファイルを指定。エクスプローラーには表示される
// files.excludeはエクスプローラーからも検索からも除外され、完全にないものとして扱われる http://qiita.com/shimoju/items/f64a0a7f0baa9cfafd4b
"search.exclude": {
"**/node_modules": true,
"**/bower_components": true,
"**/bundle": true,
"**/composer": true,
"**/tmp": true,
"**/.tmp": true
},
// 拡張機能を自動更新
"extensions.autoUpdate": true,
// 「端末の開始時にロケール変数を設定するかどうかを制御します。OS X では既定で true になり、その他のプラットフォームでは false です。」
// とのことだが、自分のMacではうまく設定されず日本語が文字化けしてしまうのでfalseに
"terminal.integrated.setLocaleVariables": false
}
コメントなし版はgistにアップしています。