作为一个 Linux 桌面用户,我们可以有许多选择来管理我们的窗口,包括 GNOME、KDE、Xfce、LXDE 和许多其他桌面环境。然而,除了这些官方提供的选择之外,还有一些更加专业但负责任的窗口管理器。其中之一就是 fvwm。
fvwm 是一个不断发展的轻量级窗口管理器,它具有高度的可配置性和灵活性,支持自定义和脚本。它是区别于其他桌面和窗口管理器的一个好选择,因为它可以让你几乎完全掌控你的桌面。这种控制范围包括窗口的放置、大小、行为、外观和感觉。
如果你想获得自定义桌面的完全控制,那么 fvwm 绝对是你的最佳选择。在本文中,我们将探讨 fvwm 的功能和优点,以及如何在 Ubuntu 和其他基于 Linux 的系统上安装和配置它。
## fvwm 是什么?
fvwm 全称为 Feeble Virtual Window Manager(虚弱的虚拟窗口管理器),它是 Unix 和 Linux 操作系统上的一个窗口管理器。它最初是由 Robert Nation 开发的,但现在,由于它是一个开源的项目,所以有许多人贡献了代码。
fvwm 是一个高度可定制的窗口管理器,它允许你完全控制窗口的外观、大小、位置和行为。它支持键绑定、自定义菜单、菜单项、实现好的位置规则和最重要的是脚本。
## fvwm 的安装
可以在 Debian、Fedora、openSUSE、Arch Linux 和许多其他发行版的官方库中找到 fvwm,这些库包含最新的稳定版本。你可以使用你的发行版默认的包管理器来安装它。
### Ubuntu
在 Ubuntu 中可以使用以下命令来安装它。
```bash
sudo apt install fvwm
```
### Arch Linux
在 Arch Linux 中可以使用以下命令来安装它。
```bash
sudo pacman -S fvwm
```
### Fedora
在 Fedora 中可以使用以下命令来安装它。
```bash
sudo dnf install fvwm
```
## fvwm 的特点
fvwm 可以满足不同的人和不同的需求,但以下是其主要特点:
### 高度可定制
fvwm 允许用户定制应该如何在他们的桌面上表现的方方面面。这使得它成为了一个很好的窗口管理器选择,当我们需要在同一系统上配置多个不同用户的桌面时非常有用。
### 轻量级
fvwm 是一个很轻量的窗口管理器,它使用很少的资源并很快地运行。
### 灵活
fvwm 可以配置很多设置,如键绑定、外观和感觉以及使用不同的主题。这种灵活性使得用户可以完全控制他们的桌面。
### 脚本支持
fvwm 有一个强大的脚本语言,它可以让你在许多方面控制你的桌面,例如实现自定义菜单和键绑定,修改窗口的外观和感觉,以及实现更复杂的配置。
### 快速
由于它是一个轻量级的窗口管理器,fvwm 非常快速,因此你可以更快地访问你的应用程序和其他窗口。
## fvwm 的配置
首先,我们需要知道 fvwm 中的配置文件应该存储在哪里。顾名思义,它应该位于 `.fvwm` 目录中。如果该目录不存在,则可以使用以下命令创建它:
```bash
mkdir ~/.fvwm
```
现在我们已经知道 fvwm 配置文件的位置,那么我们可以在下面介绍它们。
### fvwmrc
布置 fvwm 基本设置的配置文件是 `~/.fvwm/fvwmrc`。通常情况下,默认的 .fvwmrc 文件只是包含模板和基础配置的文件。为了使你的 fvwm 环境正常工作,你需要复制默认的`~/.fvwm/system.fvwmrc`文件并进行相应的修改。
```bash
cp /usr/share/doc/fvwm/examples/system.fvwmrc ~/.fvwm/
vim ~/.fvwm/system.fvwmrc
```
### fvwm 事件
`~/.fvwm/events` 目录包含要触发的自定义事件的脚本。可用自定义事件的列表,如何定义事件并自定义它们,详见 fvwm 手册。
### fvwm 模块
`~/.fvwm/modules` 目录包含要加载到 fvwm 中并应用特定功能的模块的脚本(例如 SysInfo 和 Pager)。
### fvwm 图标
`~/.fvwm/icons` 目录应包含用于菜单和其他界面元素的图标集。
此外,默认情况下,fvwm 通过在 .fvwmrc 文件中填写以下行来启用 X Window 系统的原生窗口装饰和边框:
```bash
Style "*" UseDecor
Style "*" BorderWidth 1
```
你可以随意更改这些设置来更好地适应你的需求。下面是一些常见设置:
设置窗口名称:
```bash
SetEnv FRAME_TITLE_FMT "%n: %t"
```
位置规则,显示窗口时,略带销毁。
```bash
DestroyFunc start
AddToFunc start
+ I Module FvwmButtons
+ I Module FvwmPager
+ I Module FvwmTaskBar
+ I Module SysInfo
+ I exec xscreensaver –no-splash &
```
## 使用 fvwm 经验
在开始使用 fvwm 前,最好先了解它的一些基础知识。下面是一些简单实用的命令:
- `Alt + f2` 打开命令运行器;
- `Ctrl + Shift + Tab` 切换工作空间;
- `Ctrl + Alt + d` 显示桌面;
- `Alt + Return` 在终端打开一个新窗口;
- `Alt + Tab` 在活动窗口和最近使用的窗口之间进行切换;
- `fvmw-menu` 在 fvwm 中启用菜单;
## 结论
fvwm 窗口管理器是一个强大而灵活的工具,它可以提高 Linux 桌面用户的生产力。如果你想有一个定制化的桌面,那么 fvwm 是你的最佳选择。安装后,通过一些简单的配置,它可以帮助你更好地管理你的窗口和桌面,让你变得更加高效。虽然学习 fvwm 需要花费一些时间和精力,但对于个性化配置和高度可定制性的人来说,它是一个非常值得的考虑。