rumpsを使ってMac向けアプリをPythonで作る
もくじ
とつぜん、Mac向けのメニューバー常駐アプリが作りたくなったので動作確認でハロワまで作って見ました。
というお話。
ただ怖いことが1点あって、rumpsを使うとバカみたいに簡単にできる(公式より)らしいのですが、 これpython2.6+って書いてあるんですよね、、、さてPython3でどこまでいけるかなー?
これで作ったものは、いつまで使えるのかな?
今後の発展性やらメンテナンスやらを考えると、メニューバーを諦めてTkinter
とかKivy
とかをいじったほうがいいのかも?🤔
と、ネガティブな発言が続きましたが、踏み出してみましょう👍
何がしたいの?
- rumpsを使ってHello worldっぽいものをつくる
もとい、上のイメージが切れちゃってるので再度貼っつけますが、こんなものが作られました(笑)
前提
- python3
では 作っていきましょう👻
環境を作る
このあたりは定型文
$ mkdir rumps-my-hello
$ cd rumps-my-hello
$ python3 -m venv .venv
$ source .venv/bin/activate
.gitignoreは面倒なのでgithubのものを使います(笑)
$ curl https://raw.githubusercontent.com/github/gitignore/master/Python.gitignore > .gitignore
requirements.txt
を追加
$ pip install rumps
$ pip freeze | grep rumps >> requirements.txt
ハロワと書いてみる
はじめ、README.md
通りに実装したのですが、早速alert
が動かずフリーズするのでnotification
だけ実装しました😅
iconは下記のフリー素材を使わせていただきました👍
http://flat-icon-design.com/?p=354
from datetime import datetime
import rumps
class HelloApp(rumps.App):
@rumps.clicked("挨拶")
def hello(self, _):
show_text = f"現在時刻は[{datetime.today()}]です"
rumps.notification(
"Helloタイトル",
"Hello world",
show_text,
icon="app.png",
)
if __name__ == "__main__":
HelloApp("HelloApp", icon="app.png", quit_button="終了").run()
コーディングはこれで終了です😳😳😳😳
驚きですね!
後は実行するとメニューに登場します。
$ python app.py
うーん、便利ですねー。
まとめ
Macのメニューバーの常駐アプリをバカみたいに簡単につくれるrumps
を使って見ました。
一部機能が動かなかったですが(原因は追求してません)驚くべき手軽さで作ることができました😁