Я не думаю, что это возможно со стандартом XMonad Tall
, но альтернативные макеты, такие как ResizableTall
от xmonad-contrib
Поддержка изменения размера мастер-панели.
Чтобы изменить размер главной панели при использовании макета ResizableTall
, связывайте сообщения XMonad.Layout.ResizableTile (MirrorShrink, MirrorExpand)
.
Например, в my config я определяю мой layoutHook
и keys
использовать ResizableTall
с двумя главными панелями, а также с Mod-M
+ клавиши со стрелками, связанные с изменение размеров мастер-панелей, используя (упрощенный)
main = xmonad gnomeConfig
{ layoutHook = Full ||| tall ||| Mirror tall
, keys = myKeys
}
where
-- Two master panes, 1/10th resize increment, only show master
-- panes by default. Unlike plain 'Tall', this also allows
-- resizing the master panes, via the 'MirrorShrink' and
-- 'MirrorExpand' messages.
tall = ResizableTall 2 (1/10) 1 []
-- Add bindings for arrow keys that resize master panes.
myKeys x = M.fromList (newKeys x) `M.union` keys gnomeConfig x
newKeys [email protected](XConfig {XMonad.modMask = modm}) =
[ ((modm, xK_Left), sendMessage MirrorExpand)
, ((modm, xK_Up), sendMessage MirrorExpand)
, ((modm, xK_Right), sendMessage MirrorShrink)
, ((modm, xK_Down), sendMessage MirrorShrink)
]
Может подтвердить, что [ 'ResizableTall'] (http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-ResizableTile.html) работает для вертикального изменения размера. – ElDog