LoginSignup
9
7

More than 1 year has passed since last update.

QGIS+VSCodeでのデバック環境構築

Posted at

はじめに

QGISのためのVSCodeでのデバック環境を構築します。

環境

  • Windows 10
  • QGIS 3.16
    • OSGeo4W

最初の環境構築(QGISとVSCodeのインストール)

  1. QGISのインストール
    1. ネットワークインストーラーで可変な環境をインストールしましょう
    2. https://qgis.org/ja/site/forusers/download.html
  2. VSCodeのインストール
    1. https://azure.microsoft.com/ja-jp/products/visual-studio-code/

VSCodeでのデバック準備

ptvsdのインストール

  1. OSGeo4Wのshellを起動する
    1. C:/OSGeo4W64/OSGeo4W.batでcmdを起動する
  2. python3をメインで使用するようにコマンドを実行する
    1. py3_envでpython3をメインで使えるようになる
  3. pipをインストールする
    1. 存在する場合はインスールしなくてよい
    2. python -m ensurepip --default-pipでpipをインストールする
  4. VSCodeでのデバック用にptvsdをインストールする
    1. python -m pip install ptvsd
> py3_env
> python -m ensurepip --default-pip
> python -m pip install ptvsd

QGISにDebug用プラグインをインストールする

  1. プラグインの管理とインストールを起動
    1. メニューバープラグインプラグインの管理とインストール
  2. debugvsを検索しインストール

VSCode側のデバック設定を作成

  1. VSCodeを起動する
  2. launch.jsonを作成する
    1. .vscode/launch.json
  3. launch.jsonにリモートデバック用の設定を記載する
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Python: Remote Attach",
      "type": "python",
      "request": "attach",
      "connect": {
        "host": "localhost",
        "port": 5678
      },
      "pathMappings": [
        {
          "localRoot": "${workspaceFolder}",
          "remoteRoot": "${env:HOMEPATH}/AppData/Roaming/QGIS/QGIS3/profiles/default/python/plugins/sample_plugin"
        }
      ],
      "justMyCode": false
    }
  ]
}
  • localRoot
    • ローカルのコードが存在するパスを記述する
  • remoteRoot
    • シンボリックリンクを使用している場合はリンク先のパスを記述する
    • 直接コードを編集している場合はlocalRootと同じで良い
  • justMyCode
    • 他のコード内までデバックを行ないたい場合、falseにする

デバックを実行する

  1. QGISを起動する
  2. debugvsEnable Debug for Visual Studioを実行する
  3. VSCodePython: Remote Attachでデバックを実行する
  4. VSCode上でブレイクポイントを設定し、QGISでプラグインを実行する

メモ

  • シンボリックリンクでpluginsにプラグインを入れていたため、デバックできずにハマった
    • launch.jsonRemoteRootにリンク先を書こう!!まじで
  • pip3でインストールできないって困った
    • py3_envでpython3用にパスが通るぞ!!らく

参考

環境構築
https://www.gispo.fi/en/blog/cooking-with-gispo-qgis-plugin-development-in-vs-code/

QGIS+PTVSD関連
Debugging QGIS 3.x python plugins on OSX using VS Code
Debugging QGIS 3.x python plugins on Windows 10 using VS Code
RemoteDebuggingQgisVsCode

QGISのpipインストール参考

その他

9
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
7