无论您在计算机上使用多少显示器,您都无法在桌面上放置所有应用程序窗口。 当然,除非你有合适的工具。
窗口管理器是一个完美的工具,可以很好地满足这一要求,并允许您充分利用计算机/外部显示器的屏幕空间。
但它到底是什么,它可以做什么,你可以在 Linux 上使用哪些最好的窗口管理器? 这是一个指南,其中包含所有此类问题的答案。
什么是窗口管理器?
就像任何其他类 Unix 操作系统一样,Linux 也使用 X 窗口系统 (或 X11)作为其默认窗口系统,以生成各种基于 GUI 的应用程序运行所需的基本 GUI 元素。
然而,除此之外,X11 系统并没有什么可提供的。 因此,您无法使用它来根据自己的喜好管理和组织桌面上的应用程序窗口。
这就是窗口管理器的用武之地。它允许您管理应用程序窗口在计算机显示器或外接显示器上的显示和行为方式。 这样,您可以控制它们的位置,从而控制外观,这样您就可以充分利用显示器的屏幕空间并改善您的多任务处理体验。
适用于 Linux 的最佳窗口管理器
以下是适用于 Linux 的最佳窗口管理器列表(浮动和平铺),您可以使用它们来充分利用屏幕的空间。
1. 莫纳德
图片来源:Komrade Toast/维基百科
Xmonad 是一个免费的开源 Linux 动态平铺窗口管理器。 它是用 Haskell 编写的,并带有一个配置文件,可帮助您根据自己的喜好个性化其行为。
由于它是用 Haskell 编写的,因此立即理解和配置 xmonad 的配置文件可能非常具有挑战性,特别是如果您之前没有使用 Haskell 的经验。 但是,对于那些对语言有很好理解的人来说,可定制性和可用性的范围远远超出了大多数窗口管理器所能提供的范围。
xmonad 的最大优势之一是它可以为您自动安排窗口,因此您可以更好地专注于完成工作。 至于其功能集,该程序提供了广泛的扩展库、Xinerama 支持(用于多显示器设置)和动态重新配置等。
要在 Debian/Ubuntu 上安装 xmonad,请运行:
sudo apt install xmonad
在 Arch Linux 上:
sudo pacman -S xmonad
在 Fedora/CentOS 和其他基于 RHEL 的系统:
sudo dnf install xmonad
2. 惊人的
图片来源: 维基百科
Awesome 最初是 DWM(动态窗口管理器)的一个分支,但后来演变成一个成熟的 Linux 窗口管理器。 该计划的目标之一是在不影响高级功能的情况下提供快速简单的窗口管理解决方案。 在大多数情况下,它已经成功地做到了这一点。
它是用 Lua 编写的,这是一种功能强大的编程语言,在定制方面具有广泛的使用范围。 如果您是想要完全控制 GUI 和窗口管理的高级用户,那么 Awesome 可以为您提供几乎所有您想要的东西,并提供有据可查的 API 来帮助您。
让 awesome 从其他一些窗口管理器中脱颖而出的一个方面是,它不是使用已知会导致延迟的 Xlib 库,而是使用异步 XCM 库来确保您的操作不会受到太多影响潜伏。
在 Debian/Ubuntu 上安装 awesome:
sudo apt install awesome
在 Arch Linux 上:
sudo pacman -S awesome
在 Fedora/CentOS/RHEL:
sudo dnf install awesome
3. 分布式管理
图片来源:Anselmgarbe/维基百科
DWM 或动态窗口管理器是此列表中较旧的 Linux 窗口管理器之一。 它是一个动态窗口平铺管理器,并且一直是 xmonad 和 awesome 等流行窗口管理器开发背后的灵感来源,主要是因为它的最小化和简单化的功能运行良好。
然而,作为这种轻量级方法的结果,DWM 面临着某些缺点。 其中之一是缺少配置文件,这使得自定义程序元素变得复杂,因为现在您必须修改其源代码并在每次想要进行更改时构建它。
正是由于这个原因,DWM 通常是那些需要简单的窗口管理器的人的首选窗口管理器,它只做一项工作——窗口管理——而不是充满额外元素和功能的东西,这可能会增加复杂性到体验。
要在 Debian 和 Ubuntu 上安装 DWM,请使用:
sudo apt install dwm
在 Arch Linux 上:
sudo pacman -S dwm
安装 DWM Fedora/CentOS 和基于 RHEL 的系统很简单:
sudo dnf install dwm
4. 冰WM
图片来源:Eryk Wdowiak/维基百科
IceWM 是一个用 C++ 编写的堆叠窗口管理器。 它完全专注于提供快速流畅的窗口管理体验,这使其非常适合动力不足的 Linux 机器。 然而,尽管是轻量级的,该程序并没有在基本的可用性和可定制性上妥协。
它使用纯文本文件,更容易修改并使定制变得轻而易举。 不仅如此,它还提供文档化指南来帮助您修改配置文件。 另外,这里和那里都有随机(读作“有用”)工具提示,让您熟悉 GUI 元素及其功能。
IceWM 中一个有趣的 GUI 新增功能是底部的内置任务栏,它进一步简化了桌面上应用程序窗口和工作区的管理和组织。 同样,它还提供对 RandR 和 Xinerama 的支持,这对于帮助您进行多显示器设置非常有用。
在 Debian/Ubuntu 上安装 IceWM:
sudo apt install icewm
在 Arch Linux 上:
sudo pacman -S icewm
在 Fedora/CentOS/RHEL:
sudo dnf install icewm
5. i3
图片来源:迈克尔·斯塔佩尔伯格/维基百科
i3 窗口管理器是一个手动窗口平铺器,支持一堆窗口组织设置。 它是用 C 语言编写的,与 IceWM 非常相似,它还通过纯文本文件提供配置功能,这使得根据您的风格修改其元素变得容易。
i3 的核心目标是快速和最小化,同时仍能吸引高级用户。 因此,您可以获得手动窗口放置、主题、多焦点模式等基本功能,以及任务栏、可配置键绑定等高级选项,以及创建自定义脚本以进行进一步自定义的能力。
总的来说,i3 的方法非常适合所有类型的用户,因为它让您可以控制您希望如何在系统上使用该程序。 您可以按原样使用它,也可以完全修改它以满足您的需要。 这使得它也适用于低功率计算机。
在 Debian/Ubuntu 上:
sudo apt install i3
在 Arch Linux 上安装 i3:
sudo pacman -S i3
在 Fedora/CentOS/RHEL 系统:
sudo dnf install i3
在 Linux 上有效管理应用程序窗口
如果您是必须在计算机上的一堆应用程序和显示器之间来回切换的人,那么您可以使用上面的任何窗口管理器来充分利用您的屏幕空间和高效地执行多任务。
如果您刚刚开始使用 Linux,我们建议您查看 i3 窗口管理器。 它速度快、体积小,并且提供了保持应用程序窗口井井有条并最大限度地提高工作效率所需的几乎所有基本功能。