KiCad5のプラグイン全部吹っ飛ばしたので、重い腰をあげてKiCad6に移行するための準備進めたので記録。
基本資料
一部名前変わったっぽいけど大体5と一緒っぽい
変わった単語は例えば以下
- Module -> Footprint
KiCad7ではかなり破壊的な変更するみたいなことをどっかで見た気もする
pcbnewの準備
「プラグインを更新」に対してホットキーを追加する
開発中に何か変更するたびに「ツール>外部プラグイン>プラグインの更新」をマウスで選択するのはめんどくさいので、ホットキーを割り当てる。
設定>設定から設定を開き、ホットキーの設定を開く。
「プラグインの更新」で絞り込みをし、適当な重複してないショートカットキーを割り当てる。
私はCtrl+R
があいているように見えたのでそれを設定した。
適当な20x20pxのpng画像を用意する
プラグインのアイコン用。 配布する予定がないなら手元で区別がつけばいいので適当に。 アイコン未設定でもマウスオーバーすれば名前が出るが、同じアイコン並んでるとしんどいと思うので適当に作るとよさそう。
Visual Studio Codeの準備
プラグインディレクトリに.vscode/settings.json作る
題のファイルを作って以下の内容にする。それぞれのパスは環境に応じて変更すること。 変更したらwindow reopenして新しいターミナルを開いてパスが通っていることを確認する。
{ "python.defaultInterpreterPath": "C:/Program Files/KiCad/6.0/bin/python.exe", "terminal.integrated.env.windows": { "PATH":"C:\\Program Files\\KiCad\\6.0\\bin;C:\\Program Files\\KiCad\\6.0\\bin\\Scripts;${env:PATH}" } }
python.defaultInterpreterPath
型補完
terminal.integrated.env.windows
vscodeのターミナルのパス設定。 設定するとpython.exeを呼んでもストアが起動せず、pipが呼べる。 pip呼ばないならいらない。
型ヒントを付ける
python詳しくないのでわからないけど、pcbnewライブラリのあらゆる関数の戻り値がanyに推定される。 型定義の戻り値に全部ダブルクォートがついてるからなのかdllを参照してるっぽいからかはわからない。
このままだとboard = GetBoard()
した段階で board
がanyになるので board
が何を持っているのかがリファレンスを読み込まないとわからない。
KiCad5はpython2だったのでどうしようもなかったが、KiCad6はpython3になった。 python3.5からは型ヒントが使える。
board:pcbnew.BOARD = pcbnew.GetBoard()
各所に明示的に型を書いていけばコード補完ができる。