at backyard

Color my life with the chaos of trouble.

mac上でダブルクリックでPySimpleGUIを用いたGUIアプリケーションを起動する方法

下記のポストに引き続き、PySimpleGUIに関するポスト。

shinshin86.hateblo.jp

macでは .command という形式で .sh ファイルを作成することで、ダブルクリックでそのシェルスクリプトファイルを実行することができる。

この仕組を応用して、ファイルをダブルクリックすることでPySimpleGUIを用いたGUIアプリケーションを起動してみたのが今回の備忘録となる。

実行するPySimpleGUIアプリケーションについて

実行するPySimpleGUIアプリケーションについては、前回のポストにも書いたテーマカラーの一覧を表示するものとする。

下記のコードを display-theme.py として保存する。

import PySimpleGUI as sg
sg.theme_previewer()

このコードを実行すると下記のような画面が立ち上がる。

f:id:shinshin86:20210925091059p:plain
PySimpleGUIのテーマカラー一覧が表示される

.commandファイルを作成してみる

では、実際に.commandファイルを作成してみる。

直接下記のように.command ファイルを作成しても良いし、

vim display-theme.command

一旦 .shファイルで作成してから下記のように .command に変更しても良い。

mv display-theme.sh display-theme.command

記載するシェルスクリプトの内容

# .commandファイル実行時カレントディレクトリがrootになっているため、
# 下記のコマンドでファイルが存在する場所に移動する
cd `dirname $0`

# Pythonスクリプトを実行
# 一応正常に実行されたか、実行結果をechoで出力させている
python display-theme.py
echo $?

# いずれかのキーを押すことでターミナルが閉じる
# これをつけない場合、ターミナルは瞬時に閉じるため、正常に実行されたかを確認するためにも一応挟んでおいた
read a

以上の内容でシェルスクリプトを作成したら、下記のように実行権限を付与する。

chmod u+x display-theme.command

ちなみにこの段階でファイル構造は下記のようになっている。

.
├── display-theme.command
└── display-theme.py

あとはFinderから直接この .command ファイルをダブルクリックすればテーマカラー一覧が表示されたGUIアプリが立ち上がる。

実際のコードをGitHubにも置いた。

github.com