xdotool桌面問題

xdotool桌面問題

我對此很陌生,所以我希望不要冒犯。我正在嘗試為我的 HTPC(家庭劇院電腦)建立 Desktop.desktop 圖示。每個圖示一旦按下就會開啟 URL 並最大化螢幕。我下面的程式碼可以做到這一點,但是 xdotool 沒有最大化。但是,當我在終端機上執行 xdotool 時,可以正常工作!我認為程式碼在開啟 URL 和最大化之間需要某種延遲?

[Desktop Entry]
Name=YouTube
Type=Link
URL=https://www.youtube.com/
Comment Terminal=false
Icon=/home/babak/Myicons/YouTube.png
Exec=xdotool search "google chrome" windowactivate --sync key F11

提前致謝。

答案1

.desktop 檔案將開啟 URL 或執行命令,但不能同時開啟兩者。若要讓它開啟 URL 並對已建立的視窗執行某些操作,請在該exec =行中組合這兩個操作。

有兩種方法可以將兩個操作組合到一條Exec =線上。

  1. 使用 Exec=` 行等構造將多個命令傳遞到 shellsh -c "command 1; command 2". This is a way to pass two commands through a single command: an僅處理單一命令。
  2. 建立一個包含所需命令的 bash 腳本,並在您的Exec=行中呼叫該 bash 腳本。

因此,刪除該行URL=,並將該Exec=行更改為

sh -c 'google-chrome https://www.youtube.com/ && xdotool search "google chrome" windowactivate --sync key F11'

您可以替換shbash.您也&&可以使用;,但前者將確保xdotool僅在第一個命令成功執行時才執行該命令。

如果有計時問題,請嘗試插入暫停,例如

...&& sleep 0.3 && xdotool

在執行之前會等待 0.3 秒xdotoolxdotool還有一個內建的睡眠命令,所以&& xdotool sleep 0.3 search也應該可以做到這一點。

相關內容