0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VSCodeでRuffを設定したけど、うまく動かなかった時の対処法 [備忘録]

Posted at

先日、RuffをVScodeに設定する話をQiitaに書きましたが、既存のプロジェクトで使用しようとした際に、Ruffが動かず右往左往したのでその備忘録です。

設定は下記記事を参照してください。
適切な設定ができている前提で話を進めます。

VSCodeの画面右下からRuffのログを出力します。

スクリーンショット 2024-11-12 18.22.34.png

私の場合、こんな感じになっていました。

command
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インタープリターを選択する方法で解決しました。

  1. VS Codeのコマンドパレットを開く:
    Ctrl+Shift+P(Windows/Linux)または Cmd+Shift+P(Mac)を押して、コマンドパレットを開きます。

  2. Pythonインタープリターを選択:
    コマンドパレットに「Python: Select Interpreter」と入力し、表示されたオプションを選択します。

  3. インタープリターを選択:
    使用したいPythonインタープリターをリストから選択します。Python 3.7以上のバージョンを選択してください。

インタープリターって何?

ChatGPTに聞いてみました。

インタープリタ(Interpreter)は、プログラムのソースコードを一行ずつ読み取り、その場で実行するプログラムです。インタープリタは、コンパイラとは異なり、ソースコード全体を事前に機械語に変換するのではなく、実行時に逐次的にコードを解釈して実行します。

リアルタイムで実行することで、Ruffとかも機能するって話なんだと思います。

上記作業で無事保存した時にRuffがフォーマットしてくれるようになりました。
変更箇所が多すぎて、GitHubが忙しいことになっています。

最後に

Ruffを設定した際は、なんか自然と使えていましたが、他の環境で動かずびっくりしました。
環境周りへの理解不足が原因だと思います。
環境への理解大切ですね。

エラーが出たら、とりあえずlogを確認して
あとは生成AIとうまくやっていけば大抵のことは解決できそうです。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?