先日、RuffをVScodeに設定する話をQiitaに書きましたが、既存のプロジェクトで使用しようとした際に、Ruffが動かず右往左往したのでその備忘録です。
設定は下記記事を参照してください。
適切な設定ができている前提で話を進めます。
VSCodeの画面右下からRuffのログを出力します。
私の場合、こんな感じになっていました。
2024-11-04 11:10:03.786 [info] Module: ruff
2024-11-04 11:10:03.786 [info] Python extension loading
2024-11-04 11:10:03.786 [info] Waiting for interpreter from python extension.
2024-11-04 11:10:05.498 [info] Python extension loaded
2024-11-04 11:10:05.693 [error] Python interpreter missing:
[Option 1] Select Python interpreter using the ms-python.python.
[Option 2] Set an interpreter using "ruff.interpreter" setting.
Please use Python 3.7 or greater.
ChatGPTに意味を聞いてみたら、この環境のデフォルトのPythonのバージョン低く、Python3.7以上にしなさいとエラーが出ています。
Ruffが動くためには、Python3.7以上が必要とのことでした。
今回はVScodeでPythonインタープリターを選択する方法で解決しました。
-
VS Codeのコマンドパレットを開く:
Ctrl+Shift+P(Windows/Linux)または Cmd+Shift+P(Mac)を押して、コマンドパレットを開きます。 -
Pythonインタープリターを選択:
コマンドパレットに「Python: Select Interpreter」と入力し、表示されたオプションを選択します。 -
インタープリターを選択:
使用したいPythonインタープリターをリストから選択します。Python 3.7以上のバージョンを選択してください。
インタープリターって何?
ChatGPTに聞いてみました。
インタープリタ(Interpreter)は、プログラムのソースコードを一行ずつ読み取り、その場で実行するプログラムです。インタープリタは、コンパイラとは異なり、ソースコード全体を事前に機械語に変換するのではなく、実行時に逐次的にコードを解釈して実行します。
リアルタイムで実行することで、Ruffとかも機能するって話なんだと思います。
上記作業で無事保存した時にRuffがフォーマットしてくれるようになりました。
変更箇所が多すぎて、GitHubが忙しいことになっています。
最後に
Ruffを設定した際は、なんか自然と使えていましたが、他の環境で動かずびっくりしました。
環境周りへの理解不足が原因だと思います。
環境への理解大切ですね。
エラーが出たら、とりあえずlogを確認して
あとは生成AIとうまくやっていけば大抵のことは解決できそうです。