ЛитМир - Электронная Библиотека
Содержание  
A
A

5.2.1.3. Секция InputDeviсe. Windows-раскладка клавиатуры

Секция InputDevice используется для описания клавиатуры и мыши (листинг 5.3).

Листинг 5.3. Описание клавиатуры и мыши

Section "InputDevice"

 Identifier "Keyboard0"

 Driver "kbd"

 Option "XkbModel" "pc105"

 Option: "XkbLayout" "us,ru"

 Option "XkbOptions" "grp:shiftis_toggle,grp_led:scroll"

EndSection

Section "InputDevice"

 Identifier "Mouse1"

 Driver "mouse"

 Option "Buttons" "5"

 Option "Device" "/dev/input/mice"

 Option "Name" "ImPS/2 Generic Wheel Mouse"

 Option "Protocol" "еxрlоrеrps/2"

 Option "ZAxisMapping" "4 5"

EndSection

Обратите внимание: клавиатура и мышь описываются в разных секциях InputDevice, а секция InputDevice для мыши может вовсе отсутствовать, причем будут работать обе кнопки мыши и колесико (если оно есть). Обычно описание мыши отсутствует, если мышь стандартная и для нее не нужен какой-либо специальный драйвер или нe нужно указывать какие-либо специальные параметры. В моем конфигурационном файле сейчас вообще отсутствует описание мыши и, нем не менее, она работает.

Наверное, вы обратили внимание на то, что в Fedora 8 русская раскладка клавиатуры не совсем такая, как в Windows, к которой вы привыкли. Например, для того, чтобы ввести точку (.), нужно нажать ‹Shilt+7›, а для ввода запятой - ‹Shift+8›. Да и с другими знаками пунктуации не все в порядке.

Чтобы исправить данную проблему, нужно в секцию Input-Device клавиатуры добавить опцию Option "XkbVariant" ", winkeys".

Измененная секция InputDevice представлена в листинге 5.4.

Листинг 5.4. Задание Windows-раскладки клавиатуры

Section "InputDevice"

 Identifier "Keyboard0"

 Driver "kbd"

 Option "XkbModel" "pcl05"

 Option "XkbLayout" "us,ru"

 Option "XkbOptions" "grp:shifts_toggle,grp_led:scroll"

 Option "XkbVariant" ",winkeys"

EndSection

5.2.1.4. Секция Module

Секция Module используется для загрузки различных модулей. Загрузка модуля осуществляется директивой Load (листинг 5.5).

Листинг 5.5. Пример секции Module

Section "Module"

 Load "dbe"

 Load "type1"

 Load "freettype" 

 Load "extmod"

EndSection

Секция Module может отсутствовать, если не загружаются никакие дополнительные модули.

5.2.1.5. Секции Monitor и Modes

В данной секции описывается монитор. Обратите внимание на параметр Identifier, задающий идентификатор монитора (листинг 5.6). В вашем файле конфигурации может быть описано несколько мониторов, но к секции Screen будет определен только один монитор. Чтобы указать, какой монитор вы хотите использовать, нужно указать его идентификатор.

Листинг 5.6. Пример секции Monitor

Section "Monitor"

 Identifier "Monitor0"

 ModelName "LCD Panel 1280x1024"

 HorizSync 31.5 - 64.0

 VertRefresh 56.0 - 65.0

 Option "dpms"

EndSection

Параметр ModelName задает имя монитора. Также может быть указан параметр VendorName, определяющий производителя монитора, например:

VendorName "ACR" ModelName "AL1916"

Параметры HorizSync и VertRefresh задают допустимую частоту горизонтальной (в кГц) и вертикальной развертки соответственно. Значения для данных параметров можно взять из руководства по вашему монитору или найти в Интернете - на сайте производителя монитора.

Обратите внимание на опцию dpms. DPMS (Display Power Management Signaling) - это сигналы управления питанием монитора. Без опции dpms невозможно управление питанием монитора.

Необязательный параметр UseModes может задавать имя секции описания режимов работы монитора (обычно в ней описывается разрешение монитора): UseModes "Modes0"

Пример секции Modes приведен в листинге 5.7.

Листинг 5.7. Пример секции Modes

Section "Modes"

 Identifier "Modes0"

 ModeLine "1280x1024" 100.0 1280 1328 1440 1688 1024 l025 1028 1066 +hsync +vsync

EndSection

Режим работы монитора описывается с помощью директивы ModeLine. Формат ModeLine следующий:

Modeline "имя_режима" D H1 Н2 H3 Н4 V1 V2 V3 V4 Flags

Здесь:

имя_режима - текстовое описание режима, можно написать все, что угодно, но обычно записывается разрешение работы монитора, например, "1024x786", но с тем же успехом вмести "1024x768" можно написать "my_mode" (данный параметр предназначен для пользователя и никак не влияет на работу монитора);

• D - частота выдачи точек на монитор, частота задается в мегагерцах;

• Н1-Н4 - значения горизонтальной развертки (строчной синхронизации);

• V1-V4 - значения вертикальной развертки (кадровой синхронизации);

• Flags - флаги, обычно относящиеся к развертке (обычно используются флаги +hsync и +vsync, лучше не изменять этот параметр).

Обычно режимы работы монитора устанавливаются автоматически - конфигуратором. Но если нам хочется поэкспериментировать, тогда используйте программу xvidtune, позволяющую создать особые режимы работы монитора, например, компенсировать недостаток строк, задать синхронизацию по определенному каналу.

Сразу предупреждаю: используйте данную программу на свой страх и риск. Ни я, ни разработчики данной программы не несут ответственности за возможные последствия применения сгенерированных программой режимов!

5.2.1.6. Секция Device

В данной секции описывается видеокарта (листинг 5.8).

Листинг 5.8. Пример описания видеокарты

Section "Device"

 Identifier "Videocard0"

 Driver "nvidia"

 Option "AddARGBGLXVisuals" "True"

EndSection

Самое главное в данной секции - это параметр Driver, задающий драйвер для видеокарты, В данном случае используется драйвер производителя - nvidia. Стандартный драйвер nVidia, входящий в состав Fedora 8, называется nv.

При описании видеокарты могут указываться дополнительные унции, которые зависят от самой видеокарты и от используемого драйвера.

Если в системе установлена всего одна видеокарта, тогда параметр BusID, описывающий, в каком именно слоте установлена видеокарта, может отсутствовать. Если же в системе две видеокарты, то параметр BusID обязателен для каждой видеокарты, например: BusID "1:0:0"

Остальные параметры, которые могут встречаться в этой секции, например, VideoRam, задающий размер видеопамяти, или Ramdac, задающий тип RAMDАС видеокарты, попросту не нужны, поскольку современный Х-сервер автоматически определяет параметры видеокарты.

5.2.1.7. Секция Screen

Секция Sсrееn описывает экран. Как уже отмечалось, здесь нужно указать идентификаторы монитора и видеокарты (листинг 5.9).

Листинг 5.9. Пример секции Screen

Section "Screen"

 Identifier "Screen0"

 Device "Videocard0"

 Monitor "Monitor0"

 DefaultDepth 24

 Subsection "Display"

  Viewport 0 0

  Depth 24

 EndSubSection

EndSection

Обратите внимание на следующие параметры:

• Identifier - задает идентификатор экрана (понадобится в секции ServerLayout);

• Device - задает используемую видеокарту;

• Monitor - позволяет указать, какой монитор нужно использовать;

• DefaultDepth - задает глубину цвета по умолчанию.

В секции Screen может быть несколько подсекций Display. Каждая подсекция может описать особый режим работы монитора, например, задать необходимую глубину цвета и поддерживаемые разрешения (режимы работы монитора):

Subsection "Display"

 Depth 16

 Modes "1280x1024" "1024x768" "800x600"

EndSubSection

SubSection "Display"

28
{"b":"99508","o":1}