シェルでKDEの状態を照会する方法は?具体的には、Polybarで使用するKDEアクティビティのリストと現在のアクティブアクティビティのリストを取得します。

シェルでKDEの状態を照会する方法は?具体的には、Polybarで使用するKDEアクティビティのリストと現在のアクティブアクティビティのリストを取得します。

KDEアクティビティを表示するようにPolybarを設定したい:

  • すべてのアクティビティを一覧表示
  • 現在の活動を強調
  • 変更するにはクリックしてください。

たとえば、

「標準|開発者|ビデオ」

私はこのために標準のKDEドックを設定しましたが、非常にうまく機能し、アクティブなサムネイルレンダリングを提供します。しかし、私はミニマリストスタイルを試したかったのです。

使い方がわかりませんqdbus。他の質問によると、 KDEアクティビティの概念をシェルに拡張

マニュアルページや開発リソースはどこにありますか?

➤ man qdbus
No manual entry for qdbus

答え1

もう少しインターネット検索をしてみると私の質問に答えることができるようです。間違いなくこれは少し素朴ですので、より良い答えをいただきありがとうございます。

マニュアルページや開発リソースが見つかる場所

私のソリューション

#!/bin/sh
dbus-send --session --dest=org.kde.ActivityManager --type=method_call --print-reply /ActivityManager/Activities org.kde.ActivityManager.Activities.ListActivities
dbus-send --session --dest=org.kde.ActivityManager --type=method_call --print-reply /ActivityManager/Activities org.kde.ActivityManager.Activities.ActivityName string:"721d6c82-12b1-4a3f-8f0b-97b1765faeb3"
dbus-send --session --dest=org.kde.ActivityManager --type=method_call --print-reply /ActivityManager/Activities org.kde.ActivityManager.Activities.ActivityState string:"721d6c82-12b1-4a3f-8f0b-97b1765faeb3"
dbus-send --session --dest=org.kde.ActivityManager --type=method_call --print-reply /ActivityManager/Activities org.kde.ActivityManager.Activities.CurrentActivity

出力:

method return time=1616745604.890259 sender=:1.57 -> destination=:1.88 serial=73 reply_serial=2
   array [
      string "721d6c82-12b1-4a3f-8f0b-97b1765faeb3"
      string "e40ecce6-7002-47e8-81d0-835eb4461a26"
      string "47552415-c847-435b-b96c-7467c53ef489"
   ]
method return time=1616745604.892564 sender=:1.57 -> destination=:1.89 serial=74 reply_serial=2
   string "_std"
method return time=1616745604.894646 sender=:1.57 -> destination=:1.90 serial=75 reply_serial=2
   int32 2
method return time=1616745604.896475 sender=:1.57 -> destination=:1.91 serial=76 reply_serial=2
   string "721d6c82-12b1-4a3f-8f0b-97b1765faeb3"

関連情報