Googleカレンダーと連携し、直近の予定をデスクトップ上にオーバーレイ表示するアプリケーションです。 背景が透過され、常に最前面に表示されるため、他の作業をしながらでも常に次の予定を確認できます。
- Googleカレンダー連携: 選択したGoogleカレンダーから予定を自動で取得します。
- カウントダウン表示: 次の予定の開始まで、または現在の予定の終了までの時間を表示します。
- オーバーレイ表示: 背景透過、クリック透過の状態でデスクトップの最前面に表示されます。
- 表示カスタマイズ: フォント、文字サイズ、色、表示位置、表示する予定の数などを自由に変更できます。
- タスクトレイ常駐: タスクトレイのアイコンから設定画面の表示やアプリの終了が可能です。
- CLIモード: コマンドラインからの対話形式で、表示内容やウィンドウ位置を動的に変更できます。
- 自動更新: 日付が変わると自動で予定を再取得します。
python calender.py実行すると、デスクトップにカレンダーが表示され、タスクトレイにアイコンが常駐します。
python calender.py --cliカレンダー表示に加え、コマンドプロンプト(ターミナル)が対話モードになり、コマンド入力でアプリを操作できます。
- 移動: 設定画面を開くとウィンドウがドラッグ可能になります。表示されている予定や時計の部分をドラッグして、好きな位置に移動できます。
タスクトレイにあるアイコンを右クリックすると、以下のメニューが表示されます。
- 設定: 設定ウィンドウを開きます。
- 表示: 非表示になっているメインウィンドウを再表示します。
- 終了: アプリケーションを終了します。
設定画面は「カレンダー」「外観」「表示設定」の3つのタブで構成されています。
- 表示するカレンダー: Googleアカウントに登録されているカレンダーの一覧が表示されます。チェックを入れたカレンダーの予定が表示対象となります。
- フォント設定: 英数字と日本語でそれぞれ異なるフォントを指定できます。
- フォントサイズ: 「予定」と「時計」でそれぞれ異なるフォントサイズを指定できます。
- 色設定: 文字色をカラーピッカーで選択できます。
- 表示する予定の数: 同時に表示する未来の予定の数を設定します。(デフォルト: 1)
- 今日の予定のみを表示する: チェックを入れると、翌日以降の予定は表示されなくなります。
- 遠い予定を非表示にする: チェックを入れると、指定した時間よりも未来の予定は表示されなくなります。
- 表示する最大時間: 上記オプションで非表示にするまでの時間を時間単位で指定します。(デフォルト: 24時間)
- ウィンドウ操作:
- 非表示/表示: メインウィンドウの表示・非表示を切り替えます。
- 中央に移動: ウィンドウを画面中央に配置します。
- 寄せボタン: ウィンドウを画面の上下左右の端に配置します。
- 位置を適用: X/Y座標を数値で指定してウィンドウを移動します。
設定を変更した後は、**「保存」**ボタンを押してください。
python calender.py --cli で起動した際に使用できるコマンドです。
help: このヘルプメッセージを表示します。config <key> <value>: 設定を変更します。- 例:
config font_size 30 - 例:
config selected_calendars "カレンダー名1,カレンダー名2" pos [x|y|l|r|t|b]=<val>: ウィンドウを指定した座標に移動します。- 例:
pos r=0 b=0(右下に配置) - 例:
pos x=center(水平中央に配置) center: ウィンドウを画面中央に移動します。show: ウィンドウを表示します。hide: ウィンドウを非表示にします(タスクトレイに格納)。refresh: Google Calendarから予定を再取得します。calendars: 利用可能なカレンダーの一覧を表示します。exit: アプリケーションを終了します。
- 場所: ユーザーのホームディレクトリ (
C:\Users\<ユーザー名>) - ファイル名:
.calendar_app_settings.json
このファイルには、フォント設定、選択したカレンダー、ウィンドウの位置など、アプリのすべての設定がJSON形式で保存されます。直接編集することも可能ですが、アプリが予期せぬ動作をする可能性があるため注意してください。
初回起動時には、Googleアカウントへの認証が必要です。自動的にブラウザが開き、認証を求める画面が表示されますので、許可してください。
認証が成功すると、token.json というファイルがスクリプトと同じディレクトリに生成され、次回以降はこのファイルを使って自動で認証が行われます。