fvwm是一个很强大的窗口管理器,但是默认界面非常难看,也很难用。基本的概念我就不在这里说了,有兴趣的可以去看看王垠的个人主页。现在这个主页已经无法上了,不过我这里提供一个镜像,有兴趣的可以先去
这里看看。默认的界面不但很难看,而且也很难用。我把我设置Fvwm的一些心得放在这里留个底,分成几篇。
首先是全局设置。
第一步,你需要设置一些环境变量,方便fvwm调用。下面是我的设置:
####### Set Environment variables
SetEnv fvwm_config_dir $[HOME]/.fvwm/configs
SetEnv fvwm_wallpaper_dir $[FVWM_USERDIR]/images/wallpaper
####### Set Default programe
SetEnv browser firefox
SetEnv term urxvt
####### Set ImagePath
ImagePath $[FVWM_USERDIR]/images/
这里首先设置的是fvwm_config_dir。我把配置文件分成了很多个单独的文件,放在fvwm_config_dir里面,然后由主配置文件用 read来读取。然后是fvwm_wallpaper_dir,这个是我壁纸存放的文件夹。除了文件夹之外,还可以设置一些你喜欢fvwm使用的程序。这 里我把我自己的浏览器设置为firefox,term设置为rxvt-unicode。最后设置的ImagePath,告诉fvwm到哪里去寻找图片。可 以设置多个文件夹,中间以分号隔开。其实这里的SetEnv可以看作是为文件夹或者程序设置一个别名,像C语言里面的DEFINE一样,很好理解。其实你 还可以在这里设置字体啊什么的,都是方便以后在配置文件中调用,会使配置文件清晰明了。
接下来,你需要设置一下你的虚拟桌面。这里是我的配置:
#######Virtual Desktops
DesktopSize 4x1
EdgeScroll 100 100
EdgeResistance 150 150
EdgeThickness 1
在Fvwm中可以设置多个桌面,每个桌面又可以分成若干个页面。可以使用DesktopName n name 这样的格式设置多个桌面,n是桌面的个数,从0开始,name是桌面的名字。默认的桌面只有一个,名字是desk 0。 DesktopSize是设置每个桌面中页面的数量和排列方式,这里表示我的桌面是4行一列。 EdgeScroll告诉我当鼠标移动到边界的时候,移动一定百分比的桌面到下一个页面上 ,例子中是移动100%。EdgeResistance说明需要多长的时间才被认为需要滚屏。EdgeThickness是边界宽度。设定值是像素。如果不喜欢这样的滚屏动作,你可以将它设置为0,或者设置EdgeScroll 0 0。
然后设置鼠标行为
ChickTime 350
MoveThreshold 3
ChickTim设置被认为是一次点击的极限时间,超过这个时间,就被认为是hold。MoveThreshold设置移动多少个像素被认为是鼠标在移动。
还有一些杂项的设置,像下面这个样子:
OpaqueMoveSize unlimited 如果一个窗口移动时显示内容,那么它必需占屏幕面积的 x%.这里设置为unlimited表示任何情况下窗口移动均显示其内容,设置成-1也是一样的。
IgnoreModifiers L25 忽略某些键盘控制键,这里表示忽略Numlok,Scrlk和Capslk键。
EwmhBaseStructs 0 0 20 0 设置可用的桌面面积,4个值分别是左右上下可用桌面面积离边界的像素值。
HideGeometryWindow Always 移动或缩放窗口时,隐藏显示的位置和尺寸窗口。Never参数表示不隐藏。
首先是全局设置。
第一步,你需要设置一些环境变量,方便fvwm调用。下面是我的设置:
####### Set Environment variables
SetEnv fvwm_config_dir $[HOME]/.fvwm/configs
SetEnv fvwm_wallpaper_dir $[FVWM_USERDIR]/images/wallpaper
####### Set Default programe
SetEnv browser firefox
SetEnv term urxvt
####### Set ImagePath
ImagePath $[FVWM_USERDIR]/images/
这里首先设置的是fvwm_config_dir。我把配置文件分成了很多个单独的文件,放在fvwm_config_dir里面,然后由主配置文件用 read来读取。然后是fvwm_wallpaper_dir,这个是我壁纸存放的文件夹。除了文件夹之外,还可以设置一些你喜欢fvwm使用的程序。这 里我把我自己的浏览器设置为firefox,term设置为rxvt-unicode。最后设置的ImagePath,告诉fvwm到哪里去寻找图片。可 以设置多个文件夹,中间以分号隔开。其实这里的SetEnv可以看作是为文件夹或者程序设置一个别名,像C语言里面的DEFINE一样,很好理解。其实你 还可以在这里设置字体啊什么的,都是方便以后在配置文件中调用,会使配置文件清晰明了。
接下来,你需要设置一下你的虚拟桌面。这里是我的配置:
#######Virtual Desktops
DesktopSize 4x1
EdgeScroll 100 100
EdgeResistance 150 150
EdgeThickness 1
在Fvwm中可以设置多个桌面,每个桌面又可以分成若干个页面。可以使用DesktopName n name 这样的格式设置多个桌面,n是桌面的个数,从0开始,name是桌面的名字。默认的桌面只有一个,名字是desk 0。 DesktopSize是设置每个桌面中页面的数量和排列方式,这里表示我的桌面是4行一列。 EdgeScroll告诉我当鼠标移动到边界的时候,移动一定百分比的桌面到下一个页面上 ,例子中是移动100%。EdgeResistance说明需要多长的时间才被认为需要滚屏。EdgeThickness是边界宽度。设定值是像素。如果不喜欢这样的滚屏动作,你可以将它设置为0,或者设置EdgeScroll 0 0。
然后设置鼠标行为
ChickTime 350
MoveThreshold 3
ChickTim设置被认为是一次点击的极限时间,超过这个时间,就被认为是hold。MoveThreshold设置移动多少个像素被认为是鼠标在移动。
还有一些杂项的设置,像下面这个样子:
OpaqueMoveSize unlimited 如果一个窗口移动时显示内容,那么它必需占屏幕面积的 x%.这里设置为unlimited表示任何情况下窗口移动均显示其内容,设置成-1也是一样的。
IgnoreModifiers L25 忽略某些键盘控制键,这里表示忽略Numlok,Scrlk和Capslk键。
EwmhBaseStructs 0 0 20 0 设置可用的桌面面积,4个值分别是左右上下可用桌面面积离边界的像素值。
HideGeometryWindow Always 移动或缩放窗口时,隐藏显示的位置和尺寸窗口。Never参数表示不隐藏。