记得xmonad工作区布局吗?

6
使用 XMonad.Layout.PerWorkspace,您可以为每个工作区设置独立的布局,并针对您的应用程序进行调整。然而,我希望某些工作区能够跟踪我的设置。例如,如果我在使用 Tall 布局的 Workspace 2 上按下 Mod-h,那么下次启动(或重新启动 X,等等)时 Workspace 2 上的 Tall 布局的主窗格会略微变小。
这是一个经常需要的功能,但我找不到任何解决方案。
理想情况下,这将存储在一些 ~/.xmonad/persistentLayouts/workspace*/layout*.conf 文件中,如果需要,您可以手动删除/编辑这些文件。但这只是额外的奖励。
如果它不存在,我可以自己实现这个功能,但我的文件 I/O Haskell 程序有点新手,所以也许有人可以提供一些指针。

你有没有想过像这样构建一些东西? - avramov
@egasimus:抱歉,迄今为止我还没有时间去做。如果有时间的话,我会在这里发布的。 - bitmask
1个回答

6

xmonad已经可以在可执行文件重新启动时保留其状态(例如mod+q等),那么为什么不借鉴这种机制呢?我认为它只是使用了read和show,因此您不需要特别强的IO技能;readFilewriteFile应该就足够了。您可以从xmonad本身窃取一些代码。序列化代码来自restart,反序列化代码来自xmonad。您需要稍微修改一下——您不想保留窗口ID信息,因为它将被新的X会话无效化,但其中很多内容可能可以直接采用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接