「FVWM」- The F(?) Virtual Window Manager

  CREATED BY JENKINSBOT

FVWM,是X Window系统的一个非常强大的、符合ICCCM兼容的多虚拟桌面窗口管理器。FVWM什么样子呢?这个很难说,它可以是任何样子,因为它的高度可定制性,决定它的千变万化,相关的「ScreenShot」可以参考官网中的列表,项目位于在「GitHub」托管。

Fvwm是X11的窗口管理器,旨在最大限度地减少内存消耗,并为窗口边框提供3D外观和虚拟桌面等功能。

Fvwm提供了一个大型的虚拟桌面(Vitrual Desktop)和多个分离的桌面(Disjoint Desktops),可以单独使用或者一起使用。虚拟桌面允许你假装你的屏幕很大,你可以在桌面上滚动。多个分离的桌面允许你假装有几个工作屏幕,但每个屏幕是完全无关的,等同于Linux下的Desktop Pager。

Fvwm提供的键盘快捷键允许您使用键盘快捷键进行窗口管理(移动、调整窗口大小、操作菜单等)。

Fvwm还克服了大多数窗口管理器中的配置命令和动作命令之间的区别。通常情况下,配置命令通常用于设置字体、颜色、菜单内容、键和鼠标功能绑定,而操作命令则用于升高、降低窗口。Fvwm没有这样的区别,并允许任何时候改变任何东西。

fvwm和其他X11窗口管理器之间的另一个差异是引入了SloppyFocus和NeverFocus方法来处理焦点。焦点策略可以为不同的窗口组分别进行指定。使用SloppyFocus的Windows获取焦点时,当指针进入它们并保持焦点,直到其他窗口获得它。当指针移动到根窗口时,这样的窗口不会失去焦点。NeverFocus策略通常针对无输入类型的窗口(例如xclock,oclock,xbiff,xeyes,tuxeyes),如果SloppyFocus窗口具有焦点,将指针移到有NeverFocus的窗口上时,NeverFocus的窗口不会剥夺焦点。

请注意,有几个窗口管理器名称中有“fvwm”。过去,fvwm的2.x版本通常被称为fvwm2,与之前的1.x版本(fvwm甚至fvwm1)区分开来。由于很久以前1.x版本已经被版本2.x所取代,所以我们在本文档中简单地调用2.x版本和所有版本fvwm,而可执行程序被命名为fvwm。有一个叫做fvwm95的fvwm后代,它大多是fvwm-2.0.43的补丁版本。 fvwm95的主要目标是提供Windows 95的外观和感觉。从那以后,fvwm得到了很大的提升,fvwm几乎可以实现所有fvwm95的功能。

为什么要使用FVWM?

忘了第一次用FVWM是因为什么了,后来换成LXDE了,但是有使用XRDP进行远程的需要,这就有一个问题,LXPanel没有办法使用$DISPLAY环境变量来指定X Server进行启动,这就导致远程桌面无法启动LXPanel。

当然,这肯定不是使用FVWM的真正理由。。。。。。:)

相关术语

在配置和使用FVWM的过程中,会设计到一些其他的术语和概念,这里简单的说明一下。

Xinerama

详细参考「Wikipedia/Xinerama」的介绍。
Xinerama是对X Window System的扩展,使应用程序和窗口管理器能够将两个或更多的物理显示器当作一个大型的虚拟显示器(将多个物理显示器视为一个逻辑显示器)。

MWN – Motif Window Manager

详细参考「Wikipedia/Motif Window Manager」的介绍。

窗口管理器。FVWM提供的一些用于模拟MWM行为的选项。

EWMH – Extended Window Manager Hints

详细参考「Wikipedia/EWMH」的详细介绍。

扩展窗口管理器提示(又名NetWM或Net WM),是X Window System中的窗口管理器(Window Manager)的标准。 它定义了窗口管理器、工具程序、应用程序之间的各种交互,是整个桌面环境的所有部分。它建立在ICCCM功能的基础之上。

ICCCM – Inter-Client Communication Conventions Manual

详细参考「Wikipedia/ICCCM」的介绍。

客户端间通信约定手册?(又名ICCCM,I39L)是X Window System中标准协议,指定了同一个X Server的Client间的通信。主要用于X Server的其他客户端与窗口管理器之间的通信。

参考文献

访问FVWM官方主页
访问GitHub项目主页
查看FVWM官方手册
FVWM简明使用指南