Wykonaj polecenia wmctrl w xinitrc

2

Używam XMonada skonfigurowanego do akceptowania poleceń wmctrli chciałbym uruchomić kilka aplikacji xinitrci przenieść je do określonego obszaru roboczego.

Te polecenia działają, gdy korzystam z terminala:

# Launch a terminal with ncmpcpp and move it to workspace 9
urxvt -e ncmpcpp && wmctrl -r ncmpcpp -t 9 

Ale jeśli spróbuję włożyć je do .xinitrcsiebie, już nie działają. Aplikacje uruchamiają się, ale nie są przenoszone do właściwego ekranu. Podejrzewam, że dzieje się tak, ponieważ wywołania są wykonywane przed uruchomieniem Xmonada.

xinitrc:

(urxvt -e ncmpcpp && wmctrl -r ncmpcpp -t 9) &
exec xmonad

Próbowałem już dodać okres snu, ale to też nie pomogło i chciałbym, aby działało to niezawodnie:

(urxvt -e ncmpcpp && sleep 5 && wmctrl -r ncmpcpp -t 9) &
exec xmonad
pmr
źródło

Odpowiedzi:

2

Musisz uruchomić xmonad przed uruchomieniem terminali i próbą ich przeniesienia.

xmonad &
(urxvt -e ncmpcpp && wmctrl -r ncmpcpp -t 9)

źródło
Czy nie ma na celu execzastąpienia bieżącego procesu procesem uruchomionym przez argumenty i jak wykonywane są potem polecenia?
pmr
To moje złe, jestem zbyt zmęczony, aby myśleć teraz.