Jest to kontynuacja wcześniejszego pytania na temat automatycznego uruchamiania aplikacji w poszczególnych obszarach roboczych za pomocą menedżera okien i3 oraz tego, co można i czego nie można zrobić w ~/.i3/config
pliku konfiguracyjnym.
Po pierwsze, dostarczone rozwiązanie oparte na dokumentacji Arch Linux i aktualizacji dostarczonej przez op, gdzie popycha logikę dalej:
exec --no-startup-id i3-msg 'workspace 1:Web; exec /usr/bin/firefox'
exec --no-startup-id i3-msg 'workspace 1; exec firefox; workspace 2; exec urxvt; workspace 1'
Interesująca jest także wymiana informacji na temat wykorzystania niektórych z nich bezpośrednio w wierszu polecenia bez powielania:
i3-msg workspace 3; i3-msg exec firefox
i3-msg workspace 9; i3-msg exec chromium
Ale nigdy nie widziałem konfiguracji, która automatycznie uruchamia wiele okien / aplikacji w każdym obszarze roboczym zgodnie z pożądanym układem pionowym lub poziomym. Moim celem jest automatyczne uruchomienie tej prostej konfiguracji, której używam:
_____ _____ ___________ ___________
| lx | lx | | |u_| | | | proportions:
|_____|_____| | FF |lx| |spacefm | 1- 25% each
|medit| lx | | |__| | | vlc | 2- 75/25 x 25/50/25
|_____|_____| |________|u_| |_____|_____| 3- 50/50
1 2 3
Więc zaczyna się od czegoś takiego w config
pliku:
exec --no-startup-id i3-msg 'workspace 1; exec i3-sensible-terminal; layout toggle split; layout splitv; split vertical; exec i3-sensible-terminal; exec i3-sensible-terminal; exec i3-sensible-terminal; workspace 2; exec firefox; exec urxvt; exec i3-sensible-terminal; exec urxvt; workspace 3; exec spacefm; exec vlc'
Ale w jaki sposób na świecie osiągasz pożądany układ i podział w poziomie / w pionie? Próbuję, ale nie jest jasne, jak „miksujesz” wykonanie i układ. Składnia wydaje się dziwaczna, ponieważ uruchamia się i3-img
w konfiguracji i3. Czy używasz split h
(lub v) - layout split v
- exec layout split v
- focus down
(lub w prawo) pomiędzy każdym exec
połączeniem?
W przypadku pojedynczego obszaru roboczego konfiguracja uruchamia wszystkie aplikacje w pionie lub w poziomie i nie mogę wpływać na układ - lub ostatnie split
polecenie w łańcuchu decyduje, czy okna są dodawane pionowo czy poziomo. i3-msg
pozornie ignoruje części polecenia, które nie są odpowiednio sformatowane w niektórych przypadkach, więc trudno jest debugować. Sytuację dodatkowo pogarsza fakt, że naprawdę musisz wyjść z X i startx
ponownie za każdym razem, aby zweryfikować wyniki, ponieważ samo odświeżenie konfiguracji mod+shift+R
nie spowoduje jej odcięcia, nawet jeśli zamkniesz wszystko w każdym obszarze roboczym.
Jaki jest właściwy sposób skonfigurowania tego? Czy ktoś ma rozwiązanie, które implementuje coś takiego? Dokumentacja jest całkiem dobry, ale to nie świadczy, że mogę zobaczyć szczegółowy przykład, który miesza wykonanie i rozmieszczenie na wielu obszarach roboczych.