Есть ли способ создать макет, похожий на высокий макет, за исключением того, что когда вы добавляете больше окон в основную панель, они упорядочиваются по столбцам, а не по строкам?
Компоновка аналогична вертикальной компоновке, за исключением того, что окна основной области расположены в столбцах.
Ответы (1)
У меня нет однозначного ответа, но я использую что-то подобное для просмотра PDF-файлов, один или два столбца с подчиненным справа (если есть подчиненные окна).
import XMonad.Layout.ResizableTile
import XMonad.Layout.GridVariants
...
myPDFLayout = myPDFLayout1 ||| myPDFLayout2
myPDFLayout1 = ResizableTall 1 (3/100) (7/8) []
myPDFLayout2 = SplitGrid L 1 2 (7/8) (16/10) (3/100)
Не стесняйтесь добавлять больше столбцов - я думаю, SplitGrid
можно использовать и для трех или более столбцов, подробности см. в документация. Если вы еще не знаете, ознакомьтесь с дополнениями xmonad, они содержат довольно много разные макеты, например два выше.
Эти макеты по умолчанию изменены с помощью mod-Space
. Вы можете повторно привязать их к определенным рабочим пространствам, например
((modMask, xK_comma), bindOn [("PDF", sendMessage NextLayout)])
но, насколько я знаю, нет ничего похожего на PrevLayout
, и он будет циклически переключаться между макетами, а не останавливаться.
edit: я думал, что на SO есть ветка о циклическом цикле назад, , но я ошибался (не читал и не проверял это)
mod-,
, чтобы увеличить количество основных окон? - person deshtop   schedule 11.06.2015