使用DisableModInDev选项,可以屏蔽客户程序对输入设备(鼠标或键盘)的动态改变 。而AllowNonLocalModInDxev选项可以许可非本地的程序(xset)能动态改变键盘或鼠标的设置 。同样,这两个选项是冲突的 。
键盘设置
Section "Keyboard"Protocol"Standard"#Protocol"Xqueue"AutoRepeat 500 5#ServerNumLock#Xleds1 2 3LeftAltMetaRightAltModeShiftRightCtlComposeScrollLockModeLock#XkbDisable XkbKeycodes"xfree86" XkbTypes"default" XkbCompat"default" XkbSymbols"us(pc101)" XkbGeometry"pc" XkbRules"xfree86" XkbModel"pc104"XkbLayout"us"EndSection"Keyboard"用于定义键盘的参数,指定了键盘使用的协议、重复率以及对一些功能键的重映射 。通常在XF86Setup下就可以设置这些选项,而不必手工修改这些设置 。
"Standard"和"Xqueue"是两种不同的键盘协议,一般应该使用Standard协议,Xqueue是一种同时支持键盘和鼠标的硬件使用的协议,在个人计算机平台上很少使用 。
"AutoRepeat"用于定义键盘的重复速度,"ServerNumLock"让X服务器处理NumLock的状态,否则是由系统的键盘驱动程序处理这个状态 。有些X客户程序不能从系统键盘驱动程序中获得小键盘的情况,此时就需要设置这个选项 。”Xleds”允许X程序,如xset,能够改变键盘上三个LED状态灯NumLock、CapsLock和ScrollLocal的状态 。
下面的"LeftAlt"等设置,用于将个人计算机键盘上的键重新映射为一些传统Unix工作站的键盘上使用的键,如Meta、Compose等,由于传统X程序大多数是在工作站上开发的,因此这些程序需要这些特殊的功能键来完成操作,就需要映射这些键的定义以保证兼容性 。
"XkbDisable"选项可以用于屏蔽X服务器对键盘的扩展能力,通常不应该屏蔽这个能力,而不设置这个参数 。这样就可以在设置文件中使用下面的设置选项重新定义键盘的类型、排列方式、符号类型、型号、编码等等 。当然一般情况下可以不重新定义这些参数,缺省设置为101键PC键盘,适用于绝大多数的情况 。
鼠标设置
Section "Pointer"Protocol"Sysmouse"Device“/dev/sysmouse”#Protocol"Microsoft"#Device"/dev/ttyd0"#BaudRate1200#SampleRate150#Emulate3Buttons#Emulate3Timeout50#ChordMiddleEndSection"Pointer"部分用于定义鼠标的参数,最重要的内容是定义鼠标的类型和使用的设备文件 。对于使用moused来管理鼠标的情况,鼠标配置相当容易,首先在控制台下设置好鼠标,然后使用/dev/sysmouse作设备文件,Sysmouse作为鼠标类型即可 。如果不打算使用moused来管理鼠标,而想直接使用鼠标设备,就需要正确指定鼠标类型及其设备文件 。例如最常见的MS两键串口鼠标使用/dev/ttyd0(或ttyd1串口),使用Microsoft鼠标类型,等等 。
注意必须保证系统内核识别出所使用的鼠标设备(或者串口设备) 。
此外,BaudRate与SampleRate参数定义鼠标驱动程序与设备通信的波特率和采样率,Emulate3Buttons和Emulate3Timeout让两键鼠标能模拟三键鼠标,然而伪设备Sysmouse的模拟三键能力的设置需要在moused的启动参数中设置,这里的设置是无效的 。ChordMiddle与上面参数意义相反,定义按下三键鼠标的中间键,等价于同时按下左右两键 。
显示器设置
Section "Monitor"IdentifIEr"Hyundai DeluxScan 15G "VendorName"Unknown"ModelName"Unknown"HorizSync30-70VertRefresh 50-150#ModeLine "1024x768i" 45 1024 1048 1208 1264 768 776 784 817 Interlace#Mode "1024x768i"#DotClock 45#HTimings 1024 1048 1208 1264#VTimings 768 776 784 817#Flags"Interlace"#EndMode# 800x600 @ 72 Hz, 48.0 kHz hsyncModeline "800x600"50800856976 1040600637643666hsyncvsync# 1024x768 @ 70 Hz, 56.5 kHz hsyncModeline "1024x768"751024 1048 1184 1328768771777806 -hsync -vsync# 1280x1024 @ 87 Hz interlaced, 51 kHz hsyncModeline "1280x1024"801280 1296 1512 15681024 1025 1037 1165 InterlaceEndSection"Monitor"部分定义了显示器的各种属性,其中前三项设置Identifier、VendorName、ModelName起到的只是标识显示器的作用,如果具备多个显示器定义选项的时候可以用来区分不同的定义选项,因此这三个设置主要用在配置文件内部,并不重要 。后面的水平同步HorizSync与垂直刷新VertRefresh的数据才是真正定义显示器属性的参数,应该与具体的硬件相一致,这将决定显示器能否工作在具体的显示模式下 。
推荐阅读
- FreeBSD 软件安装
- NFS FreeBSD Network File System 系统
- 43 FreeBSD连载:NFS服务器
- 38 FreeBSD连载:配置缓冲或转发方式的named
- FreeBSD ipfw 防火墙基础指南
- FreeBSD 安装Linuxigd
- FreeBSD DNS服务器进阶篇
- FreeBSD DNS服务器
- 45 FreeBSD连载:安装XFree86
- FreeBSD网站平台建设全过程 第三步