皆さまこんにちは、ウチイダです。

Pythonの環境設定をいろいろ試しているところで、タイトルの事象が発生しました。

VSCodeでは、コード上の変数やクラス名にカーソルを置いてF12を押すと、その定義を開いてくれる機能があります。

その機能がいつの間にか使えなくなっていました。

「定義が見つからない」と表示される

原因:LSPが設定できていなかった

定義へ移動する機能は、LSP(Language Server Protocol)によって実現されています。

詳細はこちらで…

https://github.com/microsoft/language-server-protocol

VSCodeで編集している内容に対して、このLanguage Serverを介して機能を提供する仕組みです。

そのため、Language Serverが動作していないといけないということになります。

通常はVSCode起動時に、指定されたLanguage Serverが起動するようになっているはずです。

そこで、VSCode の設定を確認してみたところ、Python のLanguage Server で「None」が選択されており、を起動しない設定になっていました。

これを「Default」に変更したところ、改善しました。

Mypyを導入する際に既定のLanguage Server であるPylanceと併存できるかいろいろ調べていたので、その時にやってしまったのかもしれません。

原因究明するまでに結構時間がかかってしまいました。

以上です。あなたのお役に立てればうれしいです。