TWM 是TabWindow Manager for the X WindowSystem的简称,它是一个
窗口管理器,初次发布于1988年4月,是个非常容易上手的WindowManager。
软件简介
TWM
不像其他的X程序,它没有基于任何GUI组件,而是直接使用的
XLib,这样带来的好处就是:小、更方便的配置。所谓
窗口管理器,它是一个特殊的程序,它用来给X程序提供诸如:标题的绘制、窗口阴影、窗口图标化、用户自定义宏、鼠标点击、键盘焦点、缩放等功能。
它和
GNOME、
KDE不同,不是一个
桌面环境(DesktopEnviroment,DE)。那些所谓的桌面环境都会有一个窗口管理器,比如
CentOS的GNOME用的就是MetaCity,这些DE集成了大量的应用程序,包括一些非常便利的
系统管理工具、实用小工具、游戏等,大大方便了用户。
桌面环境纵有千般好,也会有它的短处,比如:由于它的庞大,在系统启动的时候会显的很慢,其实有很多应用我们都不会用到,这个时候,你可选择只加载一个
窗口管理器即可。而且你将会发现,几乎所有的窗口管理器都可以用rc文件来配置,你可以在允许的范围内,任意的配置。比如TWM的配置文件就是.twmrc。它位于用户目录下,在TWM启的时候它会首先从用户的主目录下找这个文件,如果它找不到,TWM就会使用一个系统共用的配置文件,一般情况下它位于:/usr/X11R6/lib/X11/twm/system.twmrc。
为了要启动TWM,而不是
GNOME或
KDE,我们需要在用户的目录下编辑一个.xinitrc的文件,它的内容如下:
这样,当你在执行startx的时候,就只会启动TWM了。最后一行表示启动TWM,前面的两行表示启动的其他程序,比如
xclock,它是一个时钟程序,它后面的参数表示它启动后所在的位置和大小。需要注意的是,除了最后一行,其他的行要在最后加上后台运行标志,否则后面的程序都没法进行了。除了最后一行,其他的都是可选的,你可以把你常用的一些程序放在exectwm前,这就和Windows下的启动一样。startx后,你将会发现,TWM的启动非常的快,至少比
GNOME,
KDE快多了,当然这样比有失公平。
TWM的配置逻辑上被分为三类概念:
变量(Variables)、绑定(Bindings)和
菜单(Menus)。它们都保存在用户目录下的.twmrc文件中。
变量
变量的配置必须放在第一,它用来描述字体、颜色、
指针、边框宽度、图标、窗口的位置摆放,高亮、自动获得焦点等。
绑定
绑定配置通常放在第二位,主要用于描述键盘或者鼠标在窗口、图标、标题、框架上动作时,产生的影响。
比如我们可以把F1键绑定为最小化操作,把F2绑定为更改窗口的层次,把F11绑定为最大化窗口,把Shift+F4绑定为关闭窗口,F12用来把窗口焦点移到某个窗口上。
菜单
菜单用于给用户提供自定义菜单的机会。它们可以被分成不同组,方便管理。每个菜单都由一个名字来标识,这个名字将来用作f.menu的参数。并且,我们还可以定义菜单的背景色、
前景色、菜单的项以及该项所对应的动作。
图标管理器
如果
桌面上的图标过多,用起来比较麻烦,我们这个时候可以用图标管理器来简化工作。TWM支持多个图标管理器,每个还可以有一列或者多列,比如你想把所有的
XTerm类程序的图标都放在一个图标管理器中管理。
有用的设定
TWM默认情况下,在建立新窗口时,需要用户指定窗口的位置,这个“特色“实在让人头疼,不知道TWM的作者当初的用意何在。还好,有参数可以关闭它,在.twmrc的最上面加入RandomPlacement即可,以后新打开的窗口就会自动的找一个位置了。
在.twmrc中加入AutoRelativeResize,然后你就可以拖动
标题栏最右边的按钮来改变窗口大小了。在实际操作中,我发现,如果要缩小窗口,需要先向放大的方向拖动,然后再往缩小的方向拖动才可以。如果不加入这个参数,要想改变窗口大小,需要把鼠标移动到右下角才可以,不够方便。
结尾
TWM并不是一个完美的
窗口管理器,比如它在某种意义上说不够漂亮。但是每个窗口管理器都有它自己独特的地方,每个人都有可能爱上TWM,也许有一天你厌烦了别的管理器,你会尝试用一下TWM,以缓解一下审美疲劳。