在深入研究之前,Awesome WM 是否可以做到这一点?

Before diving in, is this possible with Awesome WM?

我一直在尝试不同的平铺 WM,看看哪一个最适合我的需要。每次我尝试一个新的,它看起来不错,但我发现其他的东西并不像我喜欢的那样。我的要求随着我的发展而发展。最初,我不想进入 Awesome,因为必须学习 Lua 不在我的愿望清单上,但也许我应该尝试一下,如果它能比其他平铺 WM 更好地完成我想要的事情。

我会尽可能具体地说明我想要什么。我是 运行 3440x1440 显示器。我想尽可能多地使用垂直 space(意思是,全宽、持久但大部分为空的状态栏不是一个选项,但我确实喜欢通知区域和 date/time)。

我知道它可能不会完全按照我想要的方式做所有事情,这没关系。如果它或多或少地完成了我想要的大部分功能,我可以在 Awesome 和其他平铺 WM 之间权衡我的选择(实际上,只有 i3,这是我现在使用的,但我愿意接受更好的建议)。如果人们不只是对它做不到的事情说不,而是说 "no, but it can do ...",我将非常感激。换句话说,请随时提出可能也有帮助的替代方案。

非常感谢!

一般答案是"Awesome configuration is code and it can do whatever you want"。但是有一个问题! Awesome 可以像你描述的那样配置吗?是的,完全是。至少有 2 个分布足够接近(mine[1] 和 worron[2])(至少对于平铺工作流程而言,而不是外观)。

"catch" 是您描述的工作流程并不是真正的 "Awesome way"。 Awesome 通常用作自动平铺机。您拥有描述工作流程(代码、网络、互联网)的布局,并根据客户的编程管理客户。一旦您拥有适当的布局,就很少需要手动磁贴管理。这并不意味着你不能,我做到了,但可能值得跳出框框思考,看看你是否可以进一步自动化你的工作流程。

此外,默认的布局系统不是很现代,因此很难实现您请求的功能。我的布局系统(参见下面的 link)可以用作模块或分支,并支持上述所有功能。 Awesome 非常可配置,它的组件可以被模块替换。

https://github.com/awesomeWM/awesome/pull/644

布局 "serialization" 文档在此处:

https://elv13.github.io/libraries/awful.layout.html#awful.layout.suit.dynamic.manual

它与 i3 类似,但布局和容器更多。至于 "leaving blank space" 部分,它是使用 fill_strategy:

配置的

https://awesomewm.org/doc/api/classes/wibox.layout.ratio.html#wibox.layout.ratio.inner_fill_strategy

作为结论,我会注意到你问的是 "work exactly like i3"。如果你想要这样的东西,那么,使用 i3。 Awesome 是一个 window 管理器框架。它的目标和用途是创建自定义桌面 shell / WM。如果它是你想要的,那就继续学习它,没有什么比你能摆脱它的可能性和控制水平更接近的了。但是,要达到 "your own perfect desktop" 的水平需要花费时间和精力。我们的用户完美桌面:

https://github.com/awesomeWM/awesome/issues/1395

[1] https://gfycat.com/SmallTerribleAdamsstaghornedbeetle

[2]https://www.youtube.com/watch?v=-yNALqST1-Y

您要查找的 WM 是 herbstluftwm (hlwm). Its a manual tiling window manager. The tiles which you are talking about are called frames in hlwm. Each frame can contain multiple windows. A frame can also be empty. Only if you kill a frame the other frames will automatically resize. You can add new frames vertically and horizontally and resize them. Each frame can also have a different layout to organize the windows inside. The layout you are looking for is max. This will stack the windows inside a frame on each other. It doesn't show you tabs like i3 however. hlwm allows you to create rules to open certain applications always in certain frames and workspaces. hlwm doesn't have a statusbar buildin. I personally like to use tint2。它可以替代您将 运行 应用程序视为选项卡的要求。