Obsidianのpython3 ENOENTエラーの解消方法 プラグインTerminal使用時

高機能ノートアプリObsidianとgeminiなどの生成AIを組み合わせるためにプラグインの「Terminal」を使うことが多いと思います。

TerminalはObsidian上でコマンドライン操作をするためのプラグインです。

私はコマンドライン自体にそれほど詳しくないのですが、提供されているプラグイン以上にObsidianの拡張性を上げるのに役立つようですね。
(例えば、Obsidianにはgeminiと連携する機能はないですが、Terminalを間に挟めば実質連携して使えるといった感じです。他にもコマンドラインから使えるアプリならほとんど対応できると思います)

私はgeminiをObsidian上で使用するためにTerminalを導入しました。
ブラウザ版と同様に保存ファイルの要約や新しいアイデアの創造などができます。

ブラウザ版の場合は、複数のファイルをまとめて読み込む場合に制限があったり、有料プランの変更が必要だったりします。

一方、TerminalからコマンドラインのGeminiを利用する場合は、無料枠の範囲内で複数のファイルを処理したり、読み込んでもらって新しい意見を出力してもらったりできる点がメリットです。

無料枠は、記事ファイルがいくつか入ったフォルダを読み込ませるぐらいでは10%も消費しません。ライトに使う程度なら無料枠でも十分だと思いました。

実際にTerminalプラグインを使うと不具合なのか
「Pythonの確認中にエラーが発生しました」
「Error: spawn python3 ENOENT」
という表示が出ます。無視して普通に使うこともできますが、気になることはないでしょうか。

そのエラーを解消して出なくなる方法を見つけたので、本記事に記載しておきます。

スポンサーリンク

エラー「ENOENT」とは指定ファイルなどが実在しないという意味

調べるとStackOverflowにエラーの意味が書かれていたので引用します。

It’s an abbreviation of Error NO ENTry (or Error NO ENTity), and can actually be used for more than files/directories.

Why does ENOENT mean “No such file or directory”? ENOENT (ENOENT が「そのようなファイルまたはディレクトリはありません」を意味するのはなぜですか?)

この翻訳ツールによれば「これは、Error NO ENTry (または Error NO ENTity) の略称で、実際にはファイル/ディレクトリ以外にも使用できます。」と書かれています。

つまり、「Error: spawn python3 ENOENT」とは、「コマンドライン上でpython3を呼び出そうとしたけど呼べなかったよ」といった感じのエラーと考えられます。

解決するには

  1. pythonをインストールしてないならインストールする
    • 公式サイト)(インストールガイド
    • インストーラー起動時に「Add Python x.x(バージョン) to PATH」にチェックを入れる
    • コマンドラインを起動して「python -V」と入力し、バージョン確認する
      (できなかったらPATHが通ってないので、再インストでチェックを入れ直す)
      • PATHが通ってないとコマンドラインからpythonを起動したり、pythonが必要なアプリを利用したりできない
  2. Terminalプラグインのプロファイルオプションを変更する

といった手順を踏む必要があります。

pythonをインストールしていても、プラグインではpython3を呼ぼうとしているので、そこを書き換えないとエラーは消えません。

1が終わっている場合は、下記を読んで2の変更を済ませてください。

エラー「spawn python3 ENOENT」を消す手順

python3をpythonに書き換える

手順は以下です

  1. Obsidianのオプションを開く
  2. コミュニティプラグインの欄からTerminalを探して開く
  3. Terminalの画面から「プロファイル」項目を探して、そのメニューボタンを開く
  4. プロファイルの一覧が出るので、上から2番目の項目の編集アイコンを押す
  5. 上記画像の画面が出るので、Python実行ファイルを「python3」→「python」に変える
  6. 5でやった作業をプロファイルで表示されたすべての項目に対して行う
    • 「python実行ファイル」の欄が無い場合もあるので、その場合は書き換え不要

エラーはこれでなくなります。

Terminalからgeminiを起動する場合、表示(描画)が重複するように流れて見辛い状態になることがあります。

その場合は、Terminalの設定画面の一番下にある項目「レンダラー」を「canvas」に変えると、表示が正常に戻ります。(戻らなかったら他のも試すといいかも)

タイトルとURLをコピーしました