nUmer_inaczej Apprentice
Joined: 24 Apr 2007 Posts: 165 Location: Bydgoszcz
|
Posted: Mon Jan 19, 2015 12:24 pm Post subject: [Fluxbox] Dwie różne tapety na dwu różnych moniotrach. |
|
|
Cześć.
Wybieranie dwu różnych tapet na dwa fizyczne monitory
Napisałem niewielki skrypt, który pozwala na wybór z menu tapet na dwa różne monitory.
1) Skrypt picture do pobrania tutaj.
- pamiętając o nadaniu praw do wykonania (chmod +x program)
2) Edytujemy /home/user/.fluxbox/menu na kształt:
Code: | (...)
[submenu] (Wallpapers) {Choose a wallpapers...}
[wallpapers] (/home/user/.fluxbox/wallpapers) {/home/user/bin/picture -f }
[end]
(...) |
i dopisujemy zarówno ścieżkę do tapet /home/user/.fluxbox/wallpapers która może być dowolna oraz ścieżkę do programu {/home/user/bin/picture -f }. Oczywiście program można umieścić w dowolnym miejscu na dysku, pamiętając o właściwym podaniu dostępu.
3) Edytujemy /home/user/.fluxbox/startup na kształt, dopisując:
Code: | /home/numer/skrypty/fluxbox/picture -l & |
Uwagi:
- program tworzy tylko jeden plik, w którym zapamiętuje potrzebne do uruchomienia tapety przy starcie fluxboxa o nazwie /home/user/.fluxbox/.picture_wallpapers (jeśli zostanie usunięty utworzy się ponownie podczas wyboru tapety)
- pierwsza tapeta uruchomi się na pierwszym monitorze, druga na drugim (zatem w menu wybieramy 2 tapety lub inaczej - tapeta z 2 monitora zostaje przesunięta na 1)
Mam nadzieję, że się przyda. Napisałem tylko na 2 monitory - bo tylko tyle posiadam ale w razie potrzeby jestem w stanie dopisać potrzebne fragmenty.
Uwaga: program do ustawiania tapety korzysta z przeglądarki feh.
program w ver 0.3 pozwala na ustalenie dowolnych tapet na dwolnie przypiętej ilosci monitorach.
Zrzutka ekranu z dwu różnych fizycznie monitorów.
Dla poniższego przykładu tworzymy w katalogu domowy katalog shoot z dwoma podkatalogami big oraz small (kolejno dla większego i mniejszego ekranu).
Code: |
mkdir ~/shoot
mkdir ~/shoot/big
mkdir ~/shoot/small
|
Następnie musimy przekazać rozmiary dwu ekranów dla programu convert co uzyskujemy z wyjścia programu xrandr
Code: |
xrandr:
Screen 0: minimum 8 x 8, current 3286 x 1080, maximum 16384 x 16384
DVI-I-0 connected primary 1366x768+0+312 (normal left inverted right x axis y axis) 410mm x 230mm
1366x768 59.8*+
1280x720 60.0
1024x768 75.0 70.1 60.0
800x600 75.0 72.2 60.3 56.2
640x480 75.0 72.8 59.9
DVI-I-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 disconnected (normal left inverted right x axis y axis)
DVI-D-0 connected 1920x1080+1366+0 (normal left inverted right x axis y axis) 598mm x 336mm
1920x1080 60.0*+ 59.9 50.0 60.1 60.0 50.0
1680x1050 60.0
1600x1200 60.0
1440x900 75.0 59.9
1280x1024 75.0 60.0
1280x960 60.0
1280x800 59.8
1280x720 60.0 59.9 50.0
1152x864 75.0
1024x768 75.0 70.1 60.0
800x600 75.0 72.2 60.3 56.2
720x576 50.0
720x480 59.9
640x480 75.0 72.8 59.9
DP-1 disconnected (normal left inverted right x axis y axis)
|
Kolejnym krokiem jest odpowiednie uruchomienie programu scrot tworzącego obraz najwyższej jakości z datą w nazwie o rozszerzeniu jpg.
To utworzy nam zrzutkę z dwu fizycznych ekranów, którą rozdzielamy na dwa fizyczne ekrany formatu jpg o rozmiarach uzyskanych z xrandr i przekazanych kolejno do podkatalogów big oraz small.
Ostatnim krokiem jest podpięcie w Fluxboxie tych poleceń pod klawisze Cotntrol+Shift+P:
Code: |
Control Shift P :execcommand scrot -q 100 '%Y-%m-%d.jpg' -e 'mv $f ~/shoot/' ; convert -crop 1366x768+0+312 -quality 100 ~/shoot/`date +%Y-%m-%d`.jpg ~/shoot/small/`date +%Y-%m-%d`.jpg ; convert -crop 1920x1080+1366+0 -quality 100 ~/shoot/`date +%Y-%m-%d`.jpg ~/shoot/big/`date +%Y-%m-%d`.jpg
|
_________________ nUmer w sieci |
|