何かのきっかけになれば
僭越ながらVSCodeのsetting.jsonとkeybindings.jsonを公開します。
「おすすめ」という意味ではなくて、
「そういう設定項目があるんだな」というヒントにしていただけると幸いです。
結構基本的なところしかいじってないです。
どの設定もコメント付きなので、
自分にフィットするものを探したり、改造していただければと思います。
settings.json
setting.jsonの開き方
-
Ctrl+,を押して設定画面を開く - 右上の「設定 (JSON) を開く」ボタンを押す
難しければ以下のやり方でもいいです
- メニューバーで
[移動]⇒[コマンド パレット] - "
Open User Settings (JSON)"と入力して選択
- 注意点
- これはデフォルトの設定を書き換えたりしません。あくまで追加設定です。
{
// --------------------------------------------------------
// 初期設定
// --------------------------------------------------------
// Welcomeページとか超いらない
"workbench.startupEditor": "none",
// ファイルの最後よりさらにスクロールするとか意味不明
"editor.scrollBeyondLastLine": false,
// ミニマップは邪魔 (糞長いスパゲッティコードでも書けと言うのか)
"editor.minimap.enabled": false,
// 関数名やクラス名を上部に固定表示にする機能は邪魔 (独特すぎる)
"editor.stickyScroll.enabled": false,
// ターミナルも同様で狭い中で上部固定されると本当に邪魔 (独特すぎる)
"terminal.integrated.stickyScroll.enabled": false,
// Shift_JISの文字化けを抑える
"files.autoGuessEncoding": true,
// Ctrlを押しながらマウスホイールしたときに拡大/縮小 (リセットは"Reset Editor Font Size")
"editor.mouseWheelZoom": true,
// 半角スペースやタブを表示しないエンジニアなんていない (色の薄さもちょうどいい)
"editor.renderWhitespace": "all",
// タブ挿入時のスペースは2つ (jsとかxmlを書くことが多い、とは言えJavaだけは下で設定し直す)
"editor.tabSize": 2,
// grep時に行番号を表示する (なぜデフォルトがfalseなんだ?)
"search.showLineNumbers": true,
// 括弧やクォーテーションを入力したときに自動的に後ろを閉じない
// (自分で入力したいときに邪魔、ただしVS Codeのバグで効かないことが多い)
"editor.autoClosingBrackets": "never",
// 括弧やクォーテーションを消したしたときに自動的に後ろを消さない
// (予想外のものをよく消してしまうので邪魔、ただしVS Codeのバグで効かないことが多い)
"editor.autoClosingDelete": "never",
// 選択範囲を括弧やクォーテーションで囲わない
// (上書きしたいときに勝手に囲われてしまうので邪魔、ただしVS Codeのバグで効かないことが多い)
"editor.autoSurround": "never",
// .gitignoreを使って検索対象外にすると、検索したいものが引っ掛からずに困ることがある
// (代わりに"search.exclude"を使って、trueにしたくなったらプロジェクト単位で設定する)
"search.useIgnoreFiles": false,
// 「このフォルダを信頼しますか?」と聞かれても結局「はい」って押しちゃうから無効化
"security.workspace.trust.untrustedFiles": "open",
// --------------------------------------------------------
// その他の設定
// --------------------------------------------------------
// Javaのインデントはスペース4つ (デファクトスタンダードは壊さない)
"[java]": {
"editor.tabSize": 4,
},
// "*.txt"もMarkdowonで認識するようにする ("**"で太文字にできるだけでも便利)
"files.associations": {
"*.txt": "markdown",
},
// HTMLの属性名の色を変える (HTMLで必須)
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "entity.other.attribute-name",
"settings": {
"foreground": "#E6C07B",
},
},
],
},
// インデントの線の色を指定 (HTMLで必須) (indent-rainbowとも共存できる)
"workbench.colorCustomizations": {
"editorIndentGuide.background1": "#726477",
},
// --------------------------------------------------------
// デバッグ設定
// --------------------------------------------------------
// デバッグ中にインラインで変数の内容を表示する
"debug.inlineValues": "on",
// デバッグセッションが開始されると毎回デバッグコンソールを表示する
"debug.internalConsoleOptions": "openOnSessionStart",
// デバッグセッションが開始されると毎回デバッグウィンドウを表示する
"debug.openDebug": "openOnSessionStart",
// デバッグツールバーをデバッグウィンドウに埋め込む
"debug.toolBarLocation": "docked",
// --------------------------------------------------------
// アドオン設定
// --------------------------------------------------------
// [Prettier] VS Code標準のJSONフォーマッタは改行を詰めるのがつらい
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
},
// [Markdown All in One] テーブルの罫線のフォーマットが優秀
"[markdown]": {
"editor.defaultFormatter": "yzhang.markdown-all-in-one",
},
// [code-eol] 改行コードの色
"code-eol.color": "#666666",
// [insertDateString] 日付フォーマット
"insertDateString.format": "YYYY/MM/DD hh:mm:ss",
"insertDateString.formatDate": "YYYY/MM/DD"
}
keybindings.json
keybindings.jsonの開き方
-
Ctrl+Shift+P(メニューバーから行くなら[移動]⇒[コマンド パレット]) -
Open Keyboard Shortcuts (JSON)と入力して選択
Open Keyboard Default Shortcuts (JSON)ではないです!"Default"がついてない方です!
[
// --------------------------------------------------------
// 基本設定
// --------------------------------------------------------
// 行削除
{
"key": "ctrl+d",
"command": "editor.action.deleteLines",
"when": "editorFocus"
},
// 行の右側を削除
{
"key": "ctrl+r",
"command": "deleteAllRight",
"when": "editorFocus"
},
// 行の重複化 (duplicate)
{
"key": "ctrl+shift+d",
"command": "editor.action.copyLinesDownAction",
"when": "editorFocus"
},
// 行結合
{
"key": "ctrl+j",
"command": "editor.action.joinLines",
"when": "editorFocus"
},
// 対応する括弧に移動
{
"key": "ctrl+m",
"command": "editor.action.jumpToBracket",
"when": "editorFocus"
},
// 対応する括弧を選択
{
"key": "ctrl+shift+m",
"command": "editor.action.selectToBracket"
},
// 大文字化・小文字化
{
"key": "ctrl+shift+u",
"command": "editor.action.transformToUppercase",
"when": "editorFocus"
},
{
"key": "ctrl+shift+l",
"command": "editor.action.transformToLowercase",
"when": "editorFocus"
},
// 同じ単語をマルチカーソルで選択 (eclipse風キーバインド)
{
"key": "shift+alt+r",
"command": "editor.action.addSelectionToNextFindMatch",
"when": "editorFocus"
},
// 矩形選択(マルチカーソル)開始
// (デフォルトのCtrl+Shift+Altを簡易化してShift+Altも可にする)
{
"key": "shift+alt+up",
"command": "cursorColumnSelectUp",
"when": "editorFocus"
},
{
"key": "shift+alt+down",
"command": "cursorColumnSelectDown",
"when": "editorFocus"
},
{
"key": "shift+alt+left",
"command": "cursorColumnSelectLeft",
"when": "editorFocus"
},
{
"key": "shift+alt+right",
"command": "cursorColumnSelectRight",
"when": "editorFocus"
},
// --------------------------------------------------------
// その他の設定
// --------------------------------------------------------
// "Ctrl+Shift+,"でkeybindings.jsonを開く (これデフォルトでもいいと思う)
{
"key": "ctrl+shift+,",
"command": "workbench.action.openGlobalKeybindingsFile"
},
// 開いているファイルをエクスプローラで開く (これデフォルトでもいいと思う)
{
"key": "alt+enter",
"command": "revealFileInOS",
"when": "editorFocus"
},
// マークダウンプレビューを横に開く
{
"key": "ctrl+alt+m",
"command": "markdown.showPreviewToSide",
"when": "editorLangId == 'markdown'"
},
// VSCodeタスクを実行する (デバッグ系がF11を使っているので隣のF12を使う)
{
"key": "ctrl+f12",
"command": "workbench.action.tasks.runTask"
},
// --------------------------------------------------------
// アドオン設定
// --------------------------------------------------------
// [change-case] 大文字のアンダースコア区切りに変換
{
"key": "ctrl+k ctrl+u",
"command": "extension.changeCase.constant",
"when": "editorFocus"
},
// [change-case] スネークケースに変換 (アンダースコア区切り)
{
"key": "ctrl+k ctrl+s",
"command": "extension.changeCase.snake",
"when": "editorFocus"
},
// [change-case] ケバブケースに変換 (ハイフン区切り)
{
"key": "ctrl+k ctrl+k",
"command": "extension.changeCase.kebab",
"when": "editorFocus"
},
// [change-case] キャメルケースに変換 (小文字大文字区切り)
{
"key": "ctrl+k ctrl+c",
"command": "extension.changeCase.camel",
"when": "editorFocus"
},
// [Insert Date String] 今日の日付を挿入 "ctrl+shift+:" で起動する
{
"key": "ctrl+shift+oem_1",
"command": "insertDateString.insertDate",
"when": "editorFocus"
}
]
おまけ
インターネットから断絶されている環境でVSCodeを動かして、
VSCodeが何度もプロキシ越しにネットワークアクセスを試みて困った経験がありました。
それを回避するために組んだsettings.jsonを残しておきます。
{
"update.mode": "none",
"extensions.autoCheckUpdates": false,
"extensions.autoUpdate": false,
"telemetry.telemetryLevel": "off",
}
サクラエディタとの関係
前著の2026年版 サクラエディタの初期設定の仕方!と少し関係しています。
サクラエディタしか使えない状況に陥ったときも、
自分なりのキーバインドを設定し直せば少しはやっていけます。逆も然り。