ここからはじまるよ

趣味なし・特技なしの43歳、なにかやろうと思いまして。

VSCodeでGolangをデバッグ実行するときのlaunch.jsonとキーボードショートカットキー

考えて、書いて、実行して、確認(修正)して、また考えて・・・がプログラミングの基本サイクルだとします。

気合いれてEnterキーをタァーーン!とする実行方法もわるくありません、個人的には好きです。ただ可能であれば大技は最後にとっておきたいものです。 つまり通常の基本サイクルにおいては「書いて、実行して」はセットで扱いたいです。

そのために下記を紹介。

  • デバッグ実行するための設定ファイル(launch.json)を紹介
  • スパッとデバッグ実行するためのキーボードショートカット設定を紹介

Goプログラム用のlaunch.json

ひとまずこれで動きました!という記録。

launch.json

{
    // IntelliSense を使用して利用可能な属性を学べます。
    // 既存の属性の説明をホバーして表示します。
    // 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch Program",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "program": "${workspaceRoot}",
        }
    ]
}

必須項目と任意項目があるようです、typeとprogramのみでも動きました。特にprogramは環境事情にあわせて幾通りも書き方が生まれてくると思いますが、ここではいったんプログラムファイルが置いてあるフォルダ直下で実行する場合、ということになるんだと思います。

詳しくは公式情報を。 code.visualstudio.com

キーボードショートカット

デバッグ実行は、標準では下記のように定義されているそうです。英語だらけでよくわかりませんがどうにかこうにか雰囲気は。 code.visualstudio.com

先日読むだけ読んだ「A Tour of Go」に習って、Shift + Enterを実行ショートカットキーとすることにしました。

keybindings.json

    {
        "key": "shift+enter",
        "command": "workbench.action.debug.start",
        "when": "debuggersAvailable && debugState == 'inactive'"
    },
    {
        "key": "shift+enter",
        "command": "workbench.action.debug.continue",
        "when": "debugState == 'stopped'"
    },
    {
        "key": "shift+alt+enter",
        "command": "workbench.action.debug.stop",
        "when": "inDebugMode && !focusedSessionIsAttach"
    },

これでF5キーまで指を伸ばさなくても、両手の小指をちょいと広げてShift + Enterするだけで手軽にデバッグ実行ができます。きっとストレスフリー!