---
name: "keyboard"
section: "4x"
platform: "linux"
package: "xserver-xfree86"
version: "4.3.0.dfsg.1-14sarge7"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/keyboard/4x"
---

# keyboard(4x)

Keyboard input driver

## NAME

keyboard - Keyboard input driver

## SYNOPSIS

```
Section "InputDevice"
  Identifier "idevname"
  Driver "keyboard"
  ...
EndSection
```

## DESCRIPTION

**keyboard** is an XFree86 input driver for keyboards.  The driver supports the standard OS-provided keyboard interface.  This driver is currently built-in to the core X server.

The **keyboard** driver functions as a keyboard input device, and may be used as the X server's core keyboard.  This driver is currently built-in to the core X server, and multiple instances are not yet supported.

## CONFIGURATION DETAILS

Please refer to [XF86Config-4(5x)](/XF86Config-4/5x.md) for general configuration details and for options that can be used with all input drivers.  This section only covers configuration details specific to this driver.

The following driver **Options** are supported:

- **Option "Protocol" "***string***"**

  Specify the keyboard protocol.  Valid protocol types include:

Standard, Xqueue.

Not all protocols are supported on all platforms.  Default: "Standard".

- **Option "AutoRepeat" "***delay rate***"**

  sets the auto repeat behaviour for the keyboard.  This is not implemented on all platforms. *delay* is the time in milliseconds before a key starts repeating. *rate* is the number of times a key repeats per second.  Default: "500 30".

- **Option "XLeds" "***ledlist***"**

  makes the keyboard LEDs specified in *ledlist* available for client use instead of their traditional function (Scroll Lock, Caps Lock and Num Lock).  The numbers in the list are in the range 1 to 3.  Default: empty list.

- **Option "XkbDisable" "***boolean***"**

  disable/enable the XKEYBOARD extension.  The -kb command line option overrides this config file option.  Default: XKB is enabled.

NOTE: This option should be specified in the **ServerFlags** section rather than here.  It's use here is deprecated.

- **Option "XkbRules" "***rules***"**

  specifies which XKB rules file to use for interpreting the **XkbModel**, **XkbLayout**, **XkbVariant**, and **XkbOptions** settings.  Default: "xfree86" for most platforms, but "xfree98" for the Japanese PC-98 platforms.

- **Option "XkbModel" "***modelname***"**

  specifies the XKB keyboard model name.  Default: "pc101" for most platforms, but "pc98" for the Japanese PC-98 platforms, and "pc101\_sol8x86" for Solaris 8 on x86.

- **Option "XkbLayout" "***layoutname***"**

  specifies the XKB keyboard layout name.  This is usually the country or language type of the keyboard.  Default: "us" for most platforms, but "nec/jp" for the Japanese PC-98 platforms.

- **Option "XkbVariant" "***variants***"**

  specifies the XKB keyboard variant components.  These can be used to enhance the keyboard layout details.  Default: not set.

- **Option "XkbOptions" "***options***"**

  specifies the XKB keyboard option components.  These can be used to enhance the keyboard behaviour.  Default: not set.

Some other XKB-related options are available, but they are incompatible with the ones listed above and are not recommended, so they are not documented here.

## SEE ALSO

[kbd(4x)](/kbd/4x.md), XFree86(1), [XF86Config-4(5x)](/XF86Config-4/5x.md), xf86config(1), [Xserver(1)](/Xserver/1.md), [X(7x)](/X/7x.md).
