xmonad - 如何将当前工作区而不是当前窗口发送到不同的屏幕?
问题描述
有时我想将整个当前工作区发送到另一个屏幕,而不仅仅是当前窗口。
我知道这greedyView
会将指定的工作区放到当前屏幕上。
但是,如果我
不想先到目标屏幕才能运行
greedyView
,而是想直接将当前聚焦的工作区发送到另一个屏幕。不想将目标屏幕上的原始工作区交换到原始屏幕上(即,原始工作区现在应该不投影到任何屏幕)
greedyView
似乎无法满足上面的这两个需求。另外,我更喜欢使用view
而不是greedyView
使用我的默认键绑定。
有没有其他选择?谷歌搜索似乎没有出现任何有用的结果。
解决方案
您可能必须制作自己的功能。如果你看一下 greedyView 是如何实现的:
greedyView :: (Eq s, Eq i) => i -> StackSet i l a s sd -> StackSet i l a s sd
greedyView w ws
| any wTag (hidden ws) = view w ws
| (Just s) <- L.find (wTag . workspace) (visible ws)
= ws { current = (current ws) { workspace = workspace s }
, visible = s { workspace = workspace (current ws) }
: L.filter (not . wTag . workspace) (visible ws) }
| otherwise = ws
where wTag = (w == ) . tag
所以相关的行是:
ws {
current = (current ws) { workspace = workspace s }
, visible = s { workspace = workspace (current ws) } : L.filter (not . wTag . workspace) (visible ws)
}
推荐阅读
- azure-machine-learning-studio - Azure 机器学习工作室 SelectColumnsTransform - 如何修补或设置 Web 服务输入参数?
- sql - POSTGRESQL 仅选择具有至少一个重复电话号码的重复帐户
- spring-mvc - 无法在应用程序路径 Spring mvc (java.io.FileNotFoundException) 中存储图像
- css - IE11中另一个背景图像上的线性渐变背景图像
- c# - 为什么声明不会给出 CS0201 编译器错误?
- rest - 离子浏览器应用程序中的 CORS 标头问题
- c++ - 其他项目调用的 boost::mutex 导致访问冲突
- azure - Azure 虚拟机映像在部署时禁用自动登录
- winforms - 如何跟踪复选框的状态变化?
- python - 如何在 LIKE '%input%' 子句中防止 SQL 注入?