4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【EV3 MicroPython】VSCodeでpybricks-apiの自動補完ができるようにする

Last updated at Posted at 2020-03-27

インフォメーション
より簡単な設定手順をまとめたものをこちらの記事に再投稿しました.
(pybricksがpipに対応したため,パッケージの自動補完設定をするだけで簡単に入力補完ができるようになりました)

LEGO Mindstorms EV3は,公式でPython(EV3 MicroPython=pybricks)に対応しており,Microsoft社のフリーの統合開発環境であるVSCode(Visual Studio Code editor)の拡張機能とEV3のファームウェアが公開されています1

VSCodeに拡張機能を追加するだけで簡単に使えるので,EV3を使ったテキストプログラミングの入門にオススメなのですが,コーディングするにあたって不満点が一つあります.それは,自動補完の機能がないということです.

ここでは,VSCodeでEV3MicropythonのAPIを自動補完するための手順を紹介します.

前提条件として,Python3GitがPCにインストールされており,かつ,VSCodeの拡張機能として,Microsoft PythonEV3MicroPythonがインストールされているものとします.(MacOSの場合は,XCodeのインストールも必要です)

#設定手順

  1. 拡張機能EV3MicroPythonからプロジェクトを新規作成します.

  2. main.pyを開き,Pythonの拡張機能を立ち上げます(main.pyを開くと,VSCodeの画面左下にPython extention loading...と表示され,自動的に立ち上がります).

  3. ターミナル(Crl+Shift+`)を立ち上げ,プロジェクト(フォルダ)の直下に.venvファイルをを作成します.

    Macの場合
    python3 -m venv .venv
    
    Windowsの場合
    py -3 -m venv .venv
    
  4. VSCodeがWe noticed a new virtual environment has been created. Do you want to select it for the workspace folder?と聞いてくるので,"yes"を選択します.

  5. コマンドパレット(Cmd+Shift+PあるいはCrl+Shift+P)を開き, Python: Create Terminalを選択してPython Terminalを立ち上げます2

  6. Python Terminalで,以下のコマンドを実行します.

    $ python -m pip install --upgrade pip
    $ pip install git+https://github.com/pybricks/pybricks-api@master
    
  7. 最後に,プロジェクト内の.vscode/setting.jasonファイルを編集します.

    1. "python.linting.enabled"と"python.languageServer"をコメント化する.
    2. "python.pythonPath"を削除する.
    3. 画面左下に表示されているPythonのバージョンをクリックし,使用するPythonを選択する("python.pythonPath"と,選択したPythonのPathが自動的に記述される)3

以下は,投稿者の.vscode/setting.jasonファイルの中身です(環境によって,PythonのPathは異なります).

.vscode/setting.jason
// Place your settings in this file to overwrite default and user settings.
{
	"files.eol": "\n",
	"debug.openDebug": "neverOpen",
	"python.pythonPath": "/Users/ユーザ名/.pyenv/versions/3.7.1/bin/python",
	// "python.linting.enabled": false,
	// "python.languageServer": "None",
}

#自動補完

Pythonファイルを開くと,VSCodeの画面左下にPython extention loading...と表示され,Python拡張機能が読み込まれます.
次に,Analyzing in background...と表示され,コードの分析が開始されます.
これらが完了すると,pybricksのAPIが自動補完されるようになります
(画像は,Motorクラスのインスタンスであるleft_motorを記述した際に,メソッドの候補が表示されている様子です)
スクリーンショット 2020-03-27 14.25.43.png

  1. https://education.lego.com/ja-jp/support/mindstorms-ev3/python-for-ev3

  2. Windowsでスクリプトの実行が無効となっている場合は,こちらのサイトを参考にスクリプトの実行を有効にしてください.

  3. Failed to set 'pythonPath'. Error: ファイルが変更されているため、フォルダー設定を書き込めません。'プロジェクト名' フォルダー設定ファイルを保存してから、もう一度お試しください。と表示された場合は,指示にしたがってsetting.jasonを保存し,VSCodeを再起動してから再度試してみてください.

4
2
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
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?