Kategorie szkoleń | Egzaminy | Kontakt
  • 1
  • 4
  • 39

Pracuję z laptopem korzystając z różnych konfiguracji monitorów. Ot:

  1. używając stacji dokującej i monitora wbudowanego (LVDS1) i 2 monitorów podpiętych jako DP2 i DP3 - jednego po prawej a drugiego po lewej stronie)
  2. używając podpiętego monitora pod DP1 i LVDS1
  3. używając projektora pod DP1 gdzie projektor mam z "prawej" strony od monitora
  4. używając projektora pod DP1 gdzie na projektorze mam to samo co na monitorze (uwzględniając uwspólnienie rozdzielczości)

Oskryptowałem już konfigurowanie monitorów dla każdego z potrzebnych scenariuszy, natomiast zostały mi aplikacje.

 

Czy jest jakiś mechanizm pozwalający skryptowo przenieść konkretne aplikacje na zadany display? Tak by uruchomić skrypt i mieć (w scenariuszu 1):

  • komunikator na lewym ekranie (DP2)
  • przeglądarkę na prawym(DP3)
  • wszystkie konsole na wbudowanym (LVDS1)

?

Andrzej_Dopierała
  • Zapytał
  • @ Andrzej_Dopierała | 01.10.2015
    • lider
    • laureat
    • ekspert
    • 83
    • 65
    • 169

Odpowiedź (1)

  • 3

Znalazłem rozwiązanie.

W kwestii liczb - są dla konkretnie mojej konfiguracji - monitory o rozdzielczości 1600x900. Stąd rozdzilczości.

Wykorzystałem dwa narzędzia - wmctrl pozwalający na maksymalizować/odwrócić maksymalizację, oraz xdotool - przesuwający zadane okno i wyszukujący id okien o zadanych parametrach.

 

Interesujący fragment:

if [ "`xrandr -q |grep " connected" |wc -l`" -eq 3 ] ;then
xdotool search --class pidgin |while read id; do
        wmctrl -ir $id -b remove,maximized_vert,maximized_horz
        xdotool windowmove $id 0 25
        wmctrl -ir $id -b add,maximized_vert,maximized_horz
done
xdotool search --name Terminal |while read id; do
        wmctrl -ir $id -b remove,maximized_vert,maximized_horz
        xdotool windowmove $id 1599 25
        wmctrl -ir $id -b add,maximized_vert,maximized_horz
done
xdotool search --name chromium |while read id; do
        wmctrl -ir $id -b remove,maximized_vert,maximized_horz
        xdotool windowmove $id 3200 25
        wmctrl -ir $id -b add,maximized_vert,maximized_horz
done
fi

Skrypt nie jest idealny - nie uwzględnia "niezmaksymalizowanych" okien - aczkolwiek dla mnie jest ok :-)

Andrzej_Dopierała
  • Odpowiedział
  • @ Andrzej_Dopierała | 08.10.2015
    • lider
    • laureat
    • ekspert
    • 83
    • 65
    • 169