定义xmonad键映射以在当前窗口上设置doFullFloat

时间:2015-10-08 10:38:50

标签: xmonad

我想从标准地图中做这样的事情:

, ((modMask,     xK_t     ), withFocused $ windows . W.sink)

但相反的是有点像:

, ((modMask,     xK_t     ), withFocused $ windows . W.doFullFloat) 

我得到了一些方法:

, ((modMask,     xK_t     ), withFocused $ float) 

但这并没有最大化它 - 它将是

, ((modMask,     xK_t     ), do
   withFocused $ float
   [SOMETHING TO MAXIMISE WINDOW]
) 

有什么建议吗? 感谢

2 个答案:

答案 0 :(得分:2)

float function from XMonad.StackSet采用窗口和矩形。

使用import qualified XMonad.StackSet as W

((modm, xK_f), withFocused $ windows . (flip W.float $ W.RationalRect 0 0 1 1)),

答案 1 :(得分:0)

稍微正交的答案,但这个答案符合我的实际需要 - 而不是我的计划方式:Using MultiToggle

这是神奇的模块:MultiToggle

我通过修改我的布局注入

来做到这一点
id . smartBorders . mkToggle (NOBORDERS ?? FULL ?? EOT)
在布局列表之前

然后添加一个键映射

, ((modMask, xK_w ), sendMessage $ LMT.Toggle FULL)                                      

如果有人能回答我原来的问题/方法,我会将其作为正确答案投票!感谢。

似乎提供了另一种替代方案Layout.Maximise