0

我正在尝试使用 xmonads 和 xfce 垂直调整大小的窗口。问题是,一旦我使用 Xmonad.Layout.ResizableTile 更改我的配置文件以实现这一点,窗口就会覆盖我的面板。我怎样才能解决这个问题?

这是我的 xmonad.hs:

import XMonad
import XMonad.Config.Xfce
import XMonad.Layout.ResizableTile
import qualified Data.Map as M

myLayout = tall ||| Mirror tall ||| Full 
    where
    tall = ResizableTall 1 (3/100) (1/2) []

myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList
    [ ((modm, xK_a), sendMessage MirrorShrink),
      ((modm, xK_z), sendMessage MirrorExpand)
    ]
newKeys x = myKeys x `M.union` keys xfceConfig x

main = xmonad $ xfceConfig
            { layoutHook = myLayout, 
              keys = newKeys
            }

有人至少可以解释为什么这个配置隐藏了面板吗?谢谢!

4

1 回答 1

0

编辑: 我回答得太快了,下面的答案似乎还不够。我还没有安装 XFCE 来测试,但是这里这里有更多关于使用 XMonad 和 XFCE 的信息。

很抱歉没有给出明确的答案...


使用avoidStruts应该可以解决问题。

import XMonad.Hooks.ManageDocks
...
myLayout = avoidStruts (tall ||| Mirror tall ||| Full)
    where tall = ResizableTall 1 (3/100) (1/2) []

如果这应该只应用于某些布局,请像这样使用它

    myLayout = (myTall ||| myFull)
    where myTall = avoidStruts $ ResizableTall 1 (3/100) (1/2) []
          myFull = Full
于 2015-12-19T10:33:03.860 回答