wil*_*hor 13 haskell window-managers xmonad
我想要
目前,我正在使用XMonad.Layout.NoBorders中的smartBorders从mplayer中删除边框,并在该窗口是工作区中唯一的窗口时删除窗口的边框.但是,当我在两个工作区之间切换时,这两个工作区都有一个非浮动窗口(无论模式(高/镜像/满)),然后我看到窗口(在我正在改变的工作空间中)"跳"了一下,绘制边框,然后删除一小段时间(如果将borderWidth设置为大数,效果会更明显).
我的〜/ .xmonad/xmonad.hs的相关部分如下所示.
import XMonad.Hooks.ManageDocks
import XMonad.Layout.NoBorders
myLayout = tiled ||| Mirror tiled ||| Full
where
tiled = Tall 1 (3/100) (3/5)
main = xmonad $ defaultConfig
{ layoutHook = avoidStruts $ smartBorders $ myLayout
, borderWidth = 4
, normalBorderColor = "#000000" -- black
, focusedBorderColor = "#ff3f3f" -- reddish
}
Run Code Online (Sandbox Code Playgroud)
你们大家都知道我是如何实现这种效果的吗?(是第2部分.甚至是可能的吗?)对扩展和/或现有配置的建议和指示,以实现类似的效果非常感激.
我解决了pt.1使用来自XMonad.Layout.NoBorders的名为OnlyFloat的Ambiguity构造函数.
import XMonad.Hooks.ManageDocks
import XMonad.Layout.NoBorders
myLayout = tiled ||| Mirror tiled ||| Full
where
tiled = Tall 1 (3/100) (3/5)
main = xmonad $ defaultConfig
{ layoutHook = lessBorders OnlyFloat $ avoidStruts $ myLayout
, borderWidth = 4
, normalBorderColor = "#000000" -- black
, focusedBorderColor = "#ff3f3f" -- reddish
}
Run Code Online (Sandbox Code Playgroud)
我没有解决过这个问题.2.此外,当我切换到工作区时,聚焦窗口的边框颜色"闪烁",因为最初,窗口没有聚焦(因此其边框按照normalBorderColor着色),此后窗口变得聚焦(因此它的边框得到颜色focusedBorderColor).