# Keyboard

This module allows you to choose how your keyboard works.

There are three tabs in this module.

## The Hardware tab

The actual effect of setting these options depends upon the features provided by your keyboard hardware and the X server on which &plasma; is running. As an example, you may find that changing the key click volume has no effect because that feature is not available on your system.

Keyboard model:

- Here you can set your keyboard model. This setting is independent of your keyboard layout and refers to the "hardware" model, &ie; the way your keyboard is manufactured. Modern keyboards that come with your computer usually have two extra keys and are referred to as "104-key" models, which is probably what you want if you do not know what kind of keyboard you have.

NumLock on Plasma Startup

- You can choose to either always Turn on or Turn off the NumLock when &plasma; starts, or you can choose to have &plasma; leave NumLock at whatever it was set to before &plasma; started up.

When a key is held:

- It is possible to select one of the tree options here, namely

  Show accented and similar characters

- If this option is selected, when a key is held down while entering text, a popup is shown which lets one choose between various accented forms of the character.

Do nothing

- This option allows you to turn off any activities when you pressing and holding down the keys.

Repeat the key being held

- When this option is selected, pressing and holding down a key emits the same character repeatedly until the key is released. Pressing and holding the key will have the same effect as pressing it multiple times in succession.

  Almost all users will want to have this option enabled, because it makes navigating through documents with the arrow keys significantly easier.

Delay

- This option allows you to set the delay after which a pressed key will start generating keycodes.

Rate

- This option allows you to set the rate at which keycodes are generated while a key is pressed.

Type some characters into the Test area text box to verify the settings.

Many computers won't support this function.

## The Layouts tab

This tab lets you choose what keyboard layouts you want to use, what indicator you want in the system tray, how you want to switch and which shortcuts you will use.

Layout Indicator

- You can choose to Show layout indicator which will show the language iso name in the system tray. You can choose to show the indicator even if you have a single layout enabled and you can show the language flag instead of only the ISO code by checking Show flag.

Switching Policy

- If you select Application or Window switching policy, changing the keyboard layout will only affect the current application or window. Global will change the keyboard layout globally and Desktop will change it only for the current virtual desktop.

Shortcuts for Switching Layout

- Main shortcuts is a shortcut for switching layouts which is handled by X.org. 3rd level shortcuts is a shortcut for switching to a third level of the active layout (if it has one) which is handled by X.org. It allows modifier-only shortcuts. Alternative shortcut is a shortcut for switching layouts which is handled by &plasma;. It does not support modifier-only shortcuts and also may not work in some situations (⪚ if popup is active or from screensaver).

Configure layouts

- If you check Configure layouts you will be able to add and remove keyboard layouts in order to switch between them when you need.

  Clicking on Add will open a dialog where you will be able to choose the new keyboard layout you want to add as well as its variant, label and shortcut.

  The list of layouts right to the Layout label in the Add Layout dialog can be narrowed down using Limit selection by language drop-down list. You can click on Preview button to preview chosen layout in a separate window.

  You can order the layouts with the up and down buttons, the top one being the default one.

Spare layouts

- This option can be enabled only if you have more than two layouts.

  Spare layouts allow to toggle between small number of layouts easily while keeping more layouts handy close by. For example you might use 3 languages: English, Ukrainian and German but first two are used often and third one just occasionally. In this case you can configure first two as main layouts (setting Main layout count: 2) and German one as spare one - when you toggle with keyboard and left mouse button the switch will happen between main layouts only but you can always choose 3rd layout with context menu.

  When spare layout is chosen it replaces the last main layout (this is done for technical reasons, usually global shortcuts work based on the 1st active layout so it's more reliable to preserve the 1st layout when allowing to activate spare layouts).

  As X.org only allows to have 4 layouts to switch spare layouts feature also allows to overcome this limitation: user can have up to 4 main layouts (managed by X.org) but 4 more spare layouts allowed (managed by layout switcher). Thus user can conveniently work with up to total of 8 layouts (although the 4 spare layouts limit can be raised in the future).

## The Advanced tab

In this tab, if you check Configure keyboard options you will then be able to set a few options regarding some special keys settings. You can expand these options by clicking on the > symbol on the left of the option then you choose your setting in the expanded list.

This is a &GUI; to help creating custom keyboard layouts for &X11; using XKB.

For more information please refer to the Links section on the XKeyboardConfig page on freedesktop.org.