IronPythonのスクリプトをVisual Studio Codeで実行する方法

 30th January 2024 at 10:07pm

IronPythonのスクリプトファイルをVisual Studio Codeで実行・デバッグする方法です。2024年1月版です。

ちなみに、Visual Studio CodeのPythonプラグインはIronPythonに正式対応していません。

本記事でのやり方は特殊です。

しかも最新のVisual Studio Codeで動作しなくなってしまいました。。。

私の環境では、3系で以下のバージョンで動作することを確認しました。(2024年1月)

Visual Studio Code
1.81.1まで(1.82.0以降、勉強不足かもしれませんが、正常動作しませんでした。。。)
拡張機能「Python プラグイン」
2018.7.1まで

(1) 拡張機能「Python プラグイン」をダウンロードします

Visual Studio Codeの拡張機能の「別のバージョンをインストール」のリストに「2018.7.1」が表示されなくなってしまいました。リポジトリから直接ダウンロードしてインストールします。

microsoft/vscode-python の 2018.7.1

ms-python-insiders.vsixをダウンロードしてください。

(2) 拡張機能の自動アップデートをOFFにします

Visual Studio Codeのデフォルトのままだと勝手に拡張機能を更新してしまいます。これをOFFにします。

ファイル -> ユーザー設定 -> 設定 -> 検索バーに「extensions.auto」まで入力すると以下の項目が表示されます。

自動的な更新の確認機能をOFF、自動更新をなしに設定します。ここで、Visual Studio Codeを再起動します。

(3) 拡張機能「Python プラグイン」をインストールます

まず、「Python プラグイン」が入っているなら、アンインストールします。

次に、[F1]キーを押し、表示された入力ボックスに「vsix」と入力すると、「拡張機能: VSIX:VSIからのインストール」が表示されますので選択します。

後は、先ほどダウンロードしたms-python-insiders.vsixを選択してインストールしてください。

(4) サンプルを作成します

実際にデバッグを試してみるためにサンプルを作成します。testフォルダを作成し、そのフォルダ内にtest.pyを作成します。

内容は、

print("Hello 1")
print("Hello 2")
print("Hello 3")
print("Hello 4")
print("Hello 5")

(5) 「settings.json」ファイルの「python.pythonPath」に適切なパスを設定します

ファイル -> フォルダを開く

先ほど作成したフォルダを開きます。

ファイル -> ユーザー設定 -> 設定 -> 「ワークスペース」タブ -> 設定(JSON)を開く

.vscode\settings.jsonが作成されますので以下を入力して保存してください。python.pythonPathは自分のPCの環境に合わせてください。

{
    "python.linting.pylintEnabled": false,
    "python.pythonPath": "C:/IronPython27/ipy.exe"
}

ちなみに別バージョンの.vscodeがある場合は削除してください。

(6) 「launch.json」ファイルを作成します

実行とデバッグ -> launch.jsonファイルを作成します -> Pythonを選択します

(4) デバッグを試してみます

では、デバッグを試してみます。

test.pyを選択します。

デバッグと実行 -> 「Python: Terminal (Integrated)」

「デバッグの開始」ボタン(緑色の三角形のアイコン)を押すと実行できます。ブレークポイントも使えます。

ちなみに、ブレークポイントが無効になっている場合があります。そんな時は、

ファイル -> ユーザー設定 -> 設定 -> 検索バーに「allowBreakpointsEverywhere」を入力し、「Allow Breakpoints Everywhere」のチェックボックスをONにしてください

実行されるターミナルが「Command Prompt(cmd.exe)」になるように設定してください。

ファイル-ユーザー設定ー設定(v1.81.1の場合)

Terminal.External.WindowsExec
C:\WINDOWS\System32\cmd.exe

Visual Studio Codeのバージョンによって項目が変わっているような気がします。「Terminal」で検索してみてください。


HomeへIronPythonの記事Topへ