问题标签 [xmonad]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
18864 浏览

haskell - Xmonad 切换全屏 / xmobar

鉴于我对 Haskell 的有限(零)知识,xmonad.hs 可能具有挑战性。

我正在寻找如何修改我的配置文件以允许“真实”全屏使用例如 VLC 观看视频。

我当前的 xmonad.hs:

目前,我的 xmobar 在观看视频时也是可见的,我在显示视频的窗口上有一个红色边框。

如何修改此配置以允许例如使用 Mod-b 在全屏模式和正常模式之间切换?

0 投票
1 回答
176 浏览

haskell - xmonad 子图不起作用

我是 xmonad 和 haskell 的新手。我尝试自己创建一个 xmonad 配置,这是当前状态:https ://gist.github.com/sbechtel/7900440

我的问题是第 45 行不同搜索提示的子图。它编译没有问题,但没有做任何事情。我相信它正在工作,但现在它不再工作了所以我的猜测是某种副作用,因为我没有改变那条线上的任何东西?

亲切的问候,塞巴斯蒂安

0 投票
1 回答
885 浏览

haskell - Xmonad 扩展来循环最近的窗口

我发现在 xmonad 中在两个窗口之间来回切换有点尴尬。是否有允许这样做的扩展(或核心 xmonad 的一部分)?

例如,我想经常在 firefox 和 emacs 之间切换,它们可能不在同一个工作区。我目前通过键入使用 gotoMenu 来执行此操作M-g firefox<cr>M-g emacs<cr>但这很尴尬,特别是如果任一应用程序有多个实例。理想情况下,我想要一个快捷方式来执行诸如给最近使用的未聚焦窗口提供焦点之类的操作,我可以一遍又一遍地按下它来来回切换。

0 投票
1 回答
717 浏览

haskell - XMonad 根据显示的监视器设置布局

是否可以根据我显示的物理屏幕以某种方式更改工作区布局?

我想在左显示器的布局上使用 reflectHoriz(来自 XMonad.Layout.PerWorkspace),以便主窗格始终最靠近 2 个屏幕的中心。

我尝试了 XMonad.Layout.IndependentScreens 但这只是创建了依赖于双显示器的工作区,这不是我的目标。理想情况下,我希望同一个工作区具有不同的布局设置,具体取决于显示它的监视器。

0 投票
2 回答
2573 浏览

haskell - How to use Dzen instead of Xmobar in this unusual setup

I am a Haskell newbie and I currently don't have time to really learn Haskell so I'm asking for help from the experts that have it already figured out. :)

This is my current xmonad.hs file: https://github.com/Greduan/dotfiles/blob/dd45d287fade73a3191ad313ec37231a8c802942/xmonad/xmonad.hs

How can I add/configure keybindings (see the myKeys variable) and how can I change from Xmobar to a basic (no config yet) Dzen setup.

It's a setup that doesn't seem to be used in any config I've found and every time eI try to convert it to the other format it doesn't work all that well.

The other format is the main = do etc. etc. etc. BTW.

And also, how can I just convert from this format to the one that's more commonly used.

0 投票
0 回答
356 浏览

session - 为什么 XMonad 在新会话中运行子进程?

我对 XMonad 运行程序程序有一些疑问。我希望这些问题的答案也能解释在 X 环境中运行应用程序的“规范”方式。

XMonad 使用函数“ spawn ”来运行终端模拟器和程序启动器(例如 gmrun)。

这个函数调用'spawnPID',它构造了'/bin/sh cmd'命令。

问题一:为什么我们需要执行'/bin/sh -c cmd',而不是简单的'cmd'?

我的假设:用于解析参数,可以添加到 xmonad.hs 中的命令中。

更远。对于执行构造命令 'spawnPID' 称为 'xfork' 函数,其中:

  • fork 进程(可能是为了防止进程成为组长,setsid 系统调用需要);
  • 恢复默认的 SIGPIPE 和 SIGCHLD(看起来像 forkProcess 行为解决方法);
  • 调用“createSession”(setsid 系统调用包装器);
  • 执行在“spawnPID”中构造的命令。

问题 2(主要):为什么 XMonad 在它自己的会话中执行每个子进程?

在我看来,会话主要与用户登录会话或“用户独立”程序相关联,即。e. 守护进程。不是在一个登录会话下的每个单独的程序。

问题3:为什么连forkProcess+executeFile都用到了,而不是shell+createProcess或者proc+createProcess?

'forkProcess' 似乎已部分弃用(在某些情况下,在多处理器系统下,请参阅),但在这种情况下,'createProcess' 必须正常工作,并且支持在 shell 下执行而无需键入 '/bin/sh -c'。

这可能是处理执行程序的更好方法。但我对此并不专业,只是简单地阅读了文档。

0 投票
1 回答
2778 浏览

xmonad - xmonad 中的自定义键绑定而不影响其他绑定

我正在使用 xmonad,并且想要一种锁定屏幕的好方法。所以我安装了 slock (apt-get install slock),效果很好。

然后我想要一个简单的按键序列来触发 slock,所以我在 xmonad.hs 中定义了这个新函数:

并添加keys = myKeys到主函数中。

这使我能够使用 很好地锁定屏幕Ctrl+Alt+l,但是其他 xmonad 快捷方式都不起作用!

有没有办法让我添加一个新的键绑定,但不改变任何现有的绑定?

0 投票
2 回答
9425 浏览

haskell - Xmonad 找不到模块 XMonad(或任何其他)

每当 xmonad 启动、重新启动或重新编译时,我都会收到一条 xmessage:

这不会阻止它启动,但我只会在系统重新启动时看到 xmonad 或 xmobar 设置的更新。我目前的 xmonad.hs 只是

它仍然会产生错误。任何导入其他模块的尝试都会产生类似的结果。我两者都有xmonad,并且xmonad-contrib是从 Arch 存储库安装的,所以这些模块应该正确地位于 ghc 搜索路径中,对吧?我已经尝试像其他一些来源建议的那样从 Cabal 重新安装软件包,但它变成了一个完整的混乱,所以我回到了 Arch repos,它应该可以工作。有点不知从何下手;任何帮助将不胜感激。

编辑:ghc-pkg list xmonad返回

ghc-pkg check输出在这里:http : //pastebin.com/BsCPMn8M。看到这个问题后问题就更清楚了,但我仍然不明白为什么~/.cabal当 pacman 从 Arch repos 解决所有包及其依赖项时它会查看它。

0 投票
1 回答
408 浏览

bash - xmonad 中的 dmenu 顶部栏运行一些项目(Chromium),但不是 ranger 或其他项目

我在 Arch 上安装了“股票”xmonad。

我的 xmonad.hs 还没有变化

我已经安装了dmenu。

它由默认的 alt-p 运行,并按预期显示和过滤。

Chromium 运行,但其他项目,如 ranger、alsamixer 或其他任务不运行。

我在任何地方都没有发现任何人必须做任何事情才能让这些项目运行,也没有人对此有任何问题。

那么,我的安装肯定有问题。

我的 dmenu_run 如下:

我通常会使用 bash 或 zsh 运行术语。我试图将 SHELL 更改为/bin/bash,但无济于事。

还有其他我必须查看的地方或我应该改变的项目吗?

很遗憾,到目前为止我真的很喜欢 xmonad,并且希望在我开始探索 xmonad.hs 之前让 dmenu 工作......

提前致谢

更新:我在 Archwiki 找到了以下内容 其中涉及更改 dmenu_run 并在自己的家中添加 .demenu_term。它似乎有效,但仍然想知道是否有更正统的机制。

0 投票
1 回答
1051 浏览

haskell - xmonad的dynamicLog如何格式化无焦点窗口的标题?

我要解决的问题是我有一个坏习惯,就是将工作区设置为完整布局,然后忘记我打开了其他窗口。

我想使用的解决方案是继续通过 ppTitle 将主窗口的标题显示为黑底白字,但也将我的其他窗口显示为灰色(并且可能修剪了一下,但这不是重点)。我希望 ppTitleUnfocused 或其他东西,但据我所知,ppTitle 是唯一的标题格式选项。

有没有办法做我想要的开箱即用?如果没有,我该如何扩展dynamicLog?如果这很重要,那么将魔术字符附加到 ppTitle 并在 ppOutput 期间替换它呢?(我想我可以处理追加和替换,但生成替换文本超出了我的 Haskell 能力。)