Sziasztok!
Ügyeskedek Openbox alatt egy kis scripttel, aminek a fő eleme az ablakok címének variálása. A script leegyszerűsítve a következő:
A=`xdotool getactivewindow getwindowname`
echo $A # itt jól néz ki
xdotool getactivewindow set_window --name "$A"
A fenti parancs lekérdezi az aktív ablak címét, és ugyanazt a címet beállítja neki címnek. Ez egész addig működik is, amíg nincs ékezetes karakter az ablak címében. Ékezetes karakterek esetén a karakterek "szétesnek" további fura karakterekre.
Hasonlóan a
xdotool getactivewindow set_window --name "áéűúőóüöí"
parancs csupa "szemetet" állít be az ablak címének.
i3wm alatt nem tapasztaltam ezt a dolgot, és valószínűleg más ablakkezelők alatt sincs vele gond, az Openboxnak viszont gondot okoznak a karakterek. A probléma az, hogy nem találok leírást arról, hogy az openbox milyen karakerkódolást használ az ablakok címéhez. Minthogy az én scriptemen kívül minden más alkalmazásnak sikerül rendes ékezetes karaktereket kicsikarnia az openboxból, valószínűleg valamiféle trükközéssel az én scriptemnek is működnie kell.
Kérdésem, hogy mivel lehetne próbálkozni?
Alternatív kérdés: wmctrl-ben hogyan lehet egy window ID-t megadni? (a MAN elég haszontalan). A wmctrl-nek is van title változtató funckiója.
wmctrl -r "KTorrent" -T "string"
Tehát ezt lecserélni a KTorrent helyett egy PID-re.
Végülis sikerült megoldani, ha valakinek kell. Az xdotool pocsék erre az esetre. A wmctrl ugyanígy használható (csak sokkal rondább):
A=`xdotool getactivewindow getwindowname`
ID=`wmctrl -lp | grep $(xprop -root | grep _NET_ACTIVE_WINDOW | head -1 | \
awk '{print $5}' | sed 's/,//' | sed 's/^0x/0x0/') | cut -d' ' -f1`
echo $ID
wmctrl -ir "$ID" -T "aűúőóüö"