当前位置:操作系统 > Unix/Linux >>

XF86Conifg文件详解

X-Window系统给我们提供了许多配置工具,但最终也是生成了一个配置文件:XF86Config,它存放在/etc/X11目录下。如果你能够直接读懂它,那么对其做一些小的调整,那将是十分容易的事。现在我们就一起来分析一下这个配置文件。

  它分成了许多个小节,每个小节分别配置一部分。

  一、 File配置小节

  设置X Window系统所用的字体路径,下面是一个配置实例:

  Section "Files"

  RgbPath "/usr/X11R6/lib/X11/rgb"

  FontPath "/usr/X11R6/lib/X11/fonts/TrueType"

  FontPath "unix/:-1"

  EndSection

  其中Section “Files”表示Files小节开始,EndSection表示这个小节结束。其间有几个配置项:

  1) RgbPath:设置RGB色彩数据库的路径。这个配置项的内容是在安装的时候就写好的,肯定没错,别改它。

  2) FontPath:用来设置字体的路径。而象Redhat linux会采用X Font Server(字体服务器)来管理所有的字体,这时,你就会看到字体路径就象:"unix/:-1"

  二、 Server Flag配置小节

  设置X Server的各种选项,包括一些功能键的设置,下面是一个配置实例:

  Section "ServerFlags"

  # NoTrapSignals

  # DontZap

  # DontZoom

  # DisableVidModeExtension

  # AllowNonLocalXvidtune

  # DisableModInDev

  # AllowNonLocalModInDev

  EndSection

  Section "ServerFlags"表示Server Flags小节的开始,EndSection表示该小节的结束,其中有以下几个配置项:

  1) NoTrapSignals:不捕捉信号,在错误发生时直接dump产生Core文件。若启用这项设置将可能导致控制台不稳定,不过对于高手而言,dump产生的core文件有利于纠错。建议不启用。

  2) DontZap:取消使用Ctrl+Alt+Backspace组合热键退出X Window系统的功能。默认是注释掉它,也就是说可以使用Ctrl+Alt+Backspace组合热键退出X Window系统。建议不启用。

  3) DontZoom:取消使用Ctrl+Alt++和Ctrl+Alt+-组合键切换显示模式的功能。默认是注释掉它的,也就是说可以使用这两个组合键进行显示模式的切换。建议不启用。

  4) DisableVidModeExtension:禁示使用xvidtune程序调整画面。

  5) AllowNonLoaclXvidtune:允许使用非本地端的xvidtune程序

  6) DisableModInDev:关闭动态变更输入设备的设置

  7) AllowNonLocalModInDev:允许非本地端变更键盘和鼠标的设置

  注:xvidtune程序是X windows中提供的一个应用程序,它用来调整画面显示大小和位置的程序。

  三、 键盘配置小节

  设置各式键盘,在此可以指定键盘的传输协议、语系、信号、字符对照表,下面是一个配置实例:

  Section "Keyboard"

  Protocol "Standard"

  AutoRepeat 500 5

  # ServerNumLock

  LeftAlt Meta

  RightAlt Meta

  ScrollLock Compose

  RightCtl Control

  # XkbDisable

  # XkbModel "pc102"

  # XkbModel "microsoft"

  #

  #

  # XkbOptions "ctrl:swapcaps"

  XkbRules "xfree86"

  XkbModel "pc101"

  XkbLayout "en_US"

  EndSection

  Section "Keyboard"表示Keyboard小节的开始,EndSection表示该小节的结束,其中有以下几个配置项:

  1) Protocol:用来配置键盘所使用的传输协议。可选值为:

  Standard:标准传输协议

  Xqueue:使用X队列传输协议

  默认值就是Standard,一般无需修改,大家的大都是标准的键盘。

  2) AutoRepeat:用来配置对按住某键不放的处理,格式为:

  AutoRepeat 毫秒数 次数

  如:AutoRepeat 500 5,表示当按住某键500毫秒(0.5秒)后,开始自动送出该按键信号,每秒5次。

  3) ServerNumLock:让X server处理NumLock信号,效果等于关闭键盘右方数字键的功能。

  4) 以下一组配置项是用来设置键盘上Alt、Ctrl、Shift、ScrollLock等键的 功能定义:

  LeftAlt Meta

  RightAlt Meta

  ScrollLock Compose

  RightCtl Control

  左边是键名,LeftAlt就是左边的ALT键,RightAlt就是右边的ALT键……,而右边则是功能定义,包括:

  Compose:等于一般Scroll Lock按键的功能;

  Control:等于一般Ctrl按键的功能;

  Meta:等于一般Alt按键的功能;

  ModeLock:等于一般Caps Lock按键的功能

  ModeShift:等于一般Shift按键的功能。

  接下来则是关于XKB的配置:

  5) XkbDisable:关闭键盘扩展属性,也即不指定其类型及对应的语言

  6) XkbCompat:设置键盘兼容性,缺省值是“default”,包含有“Basic”的设置,按串口的“mousekeys”、“accessx”、“misc”、“iso9995”与“japan”,相关文件配置放在/usr/X11R6/lib/X11/xkb/compat目录下。

  7) XkbGeometry:指定键盘结构,不同的键盘有不同的硬件结构,除非是使用Amiga、Atari、Macintosh等专用键盘,否则应使用缺省值“pc”,不设置也行。它的相关选项在/usr/X11R6/lib/X11/xkb/geometry目录下。

  8) XkbKeycodes:指定键盘按键送出的信息,缺省值为“xfree86”,其余的可用设置位于/usr/X11R6/lib/X11/xkb/keycodes目录下。

  9) XkbKeymap:指定键盘配置类型设置文件,可用的文件位于/usr/X11R6/lib/X11/xkb目录里的keymap子目录。如果设置了本选项相当于同时设置了XkbKeycodes、XkbTypes、XkbCompact、XkbSymbols以及XkbGeometry。

  10)XkbLayout:设置键盘输出语系,使用缺省值“us”即采用美式英文。可选值为:

  de:德文 fr:法文 it:意大利文 jp:日文 ru:俄文

  11)XkbModel:设置键盘的型号,常见的是 “pc101”、“pc102”。若采用具有微软标志的键盘的话,请改为“pc104”。

  12)XkbOptions:设置键盘选项,通常并不需要任何选项设置,除非您想要交换按键的定义。如“ctrl:swapcaps”就可以将Ctrl与Caps Lock键互换。

  13)XkbRules:指定X window采用的键盘规范文件,除非有特殊需要(使用SGI的键盘),否则应使用缺省值:“xfree86”,其它的可选值在/usr/X11R6/lib/X11/xkb/rules目录下。

  14)XkbSymbols:定义键盘各按键所对应的字码,各国键盘革些字码不尽相同。缺省使用“us”,即ASCII,字码表对照文件放在/usr/X11R6/lib/X11/xkb/symbol目录下,用户可以修改。

  15)XkbTypes:设置键盘的种类,缺省值为“default”,在/usr/X11R6/lib/X11/xkb/types目录下给出了所有的选项。

  16)XkbVariant:设置键盘变量,通常无须设置。

  四、 鼠标配置小节

  设置诸如鼠标、触摸屏等标准输入设备。下面是一个配置实例:

  Section "Pointer"

  Protocol "PS/2"

  Device "/dev/mouse"

  # Protocol "Xqueue"

  # BaudRate 9600

  # SampleRate 150

  Emulate3Buttons

  Emulate3Timeout 50

  # ChordMiddle

  EndSection

  与前面一样,Section "Pointer"代表该小节的开始,EndSection代表该小节结束。在该配置小节中,共有以下配置项:

  1) Protocol:设置鼠标使用的传输协议,可使用的协议有:

  Auto:让X window自已检测,但可能不准确

  BusMouse:总线型鼠标,早期的串口鼠标

  GlidePoint:使用ALPS串口版本的GlidePoint触摸屏及其兼容产品

  GlidePointPS/2:使用ALPS PS2版本的GlidePoint触摸屏及其兼容产品

  IMPS/2:使用微软PS/2版本的IntelliMouse及其兼容产品

  IntelliMouse:使用微软串口版本的IntelliMouse及其兼容产品

  Logitech:使用旧版Logitech串口鼠标,新版的已改为“Microsoft”协议

  Microsoft:在1992年起的5-8年间使用的串口鼠标

  MMHitTab:使用旧版Logitech串口的HitTablet手机板

  MMSeries:使用旧版Logitech串口的MouseMan鼠标

  MouseMan:使用中期的Logitech串口的MouseMan鼠标

  MouseManPlusPS/2:使用LogitechPS/2版本的天貂及其兼容产品

  MouseSystem:采用MouseSystem传输协议的串口鼠标可以使用该选项

  NetMosuePS/2:使用Genius PS/2版本的NetMouse网络鼠标及其兼容产品

  NetScrollPS/2:使用Genius PS/2版本的NetScroll滚轮鼠标及其兼容产品

  OSMouse:使用由操作系统控制的鼠标,而非让X Window控制鼠标

  PS/2:现在最广泛使用的PS/2接口的鼠标

  SysMouse:让FreeBSD能够使用外围设备代号为/dev/sysmouse的鼠标设备

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,