追加のライブラリが必要なPythonプログラム用ランチャー

追加のライブラリが必要なPythonプログラム用ランチャー

WikidPad(Python)プログラムで実行プログラムが機能するようにします。
私はすでにPythonプログラムを持っていてファイルを見ました/usr/share/applications/taskcoach.desktop。実行ラインは簡単ですtaskcoach.py

ただし、WikidPadを起動するために「WikidPad.py」を入力することはできません。これを作成する必要があり、python WikidPad.pyコマンドラインから正しく開始されます。

だから私は.desktop filewikidpad用に書いたexec行にそれを作成しましたpython /home/abc/wikidpad/WikidPad.py

しかし、正しい結果を得るには、同じディレクトリにある必要があるようです。それ以外の場合はエラーが発生しますNo module named pwiki.Enum

だからexecラインをcd /home/abc/wikidpad;python WikidPad.py

しかし、それも動作しません。エラーメッセージはですcd could not be executed, file or directory not found

BashスクリプトでLinuxコマンドを実行し、「コマンド/ファイルが見つかりません」エラーが発生した場合は、PATH変数を調整するか、コマンドのフルパスを作成します。これは一般的に役立ちます。

ただし、この場合、コマンドへのフルパスを取得するためにcd作成できない組み込みbashコマンドです。whereis cd

私はこれを続ける方法がわかりません。

答え1

これ執行者.desktopファイルを入力してください受け入れる実行可能ファイル名は1つだけです(+パラメーター)。

これ執行者キーにはコマンドラインを含める必要があります。コマンドラインは実行可能プログラム(オプションで1つ以上の引数が続きます)で構成されています。

したがって、次のいずれかを実行してください。

  • 明示的なシェル呼び出しを使用しますsh -c "command_string"(ここではcommand_string=実際のコマンド)。

    Exec=sh -c "cd /home/abc/wikidpad; python WikidPad.py"
    

または

  • コマンドをスクリプト(あなたのどこか$PATH)に入れて実行可能にし、ファイルに.desktopスクリプトを実行させます。

    Exec=my_script
    

    (またはExec=/full/path/to/my_scriptスクリプトがあなたのスクリプトにない場合$PATH

答え2

pwikiこれはディレクトリ(またはファイル)の場所によって多少異なりますが、その場所pwiki.pyにあると仮定すると、/home/abc/wikidpad/以下を追加できます。/home/abc/wikidpad/WikidPad.py 今後インポートpwiki.Enum

import sys
sys.path.insert(0, '/home/abc/wikidpad')

(ディレクトリを見つけたディレクトリに置き換えますpwiki

関連情報