<sect1 id="key-bindings">
<sect1info>

<authorgroup>
<author>
<firstname>Mike</firstname>
<surname>McBride</surname>
</author>
<author>
<firstname>Jost</firstname>
<surname>Schenck</surname>
</author>
</authorgroup>

<date>11/08/2000</date>
<releaseinfo>1.00.00</releaseinfo>

<keywordset>
<keyword>KDE</keyword>
<keyword>KControl</keyword>
<keyword>key bindings</keyword>
<keyword>bindings</keyword>
<keyword>shortcuts</keyword>
</keywordset>
</sect1info>
<title>Key Bindings</title>

<sect2 id="key-bindings-intro"> 
<title>Introduction</title> 

<para>While most of the funtionality offered by KDE can be accessed using a
simple "point and click" interface, many people prefer using the keyboard for
some tasks: pressing something like <keycombo action=simul>
<keycap>Ctrl</keycap><keycap>F</keycap></keycombo> is often just faster than
moving your hands off the keyboard to the mouse, opening the
<guimenu>Edit</guimenu> menu and selecting
<guimenuitem>Find</guimenuitem>.</para>

<para> As different people have different preferences about keyboard shortcuts,
KDE offers full customization of so-called "key bindings". A key binding is a
combination of an action with a key or a combination of keys.</para>

</sect2>

<sect2 id="key-bindings-use">
<title>Use</title>

<para>In the key bindings control module you'll see a list of "key schemes", a
list of key bindings in the currently selected scheme and a frame where you can
customize the currently selected key binding. Also, you'll see a tab for
<guilabel>Global shortcuts</guilabel> and one for <guilabel>Application
shortcuts</guilabel>.</para>

<sect3 id="key-bindings-use-globapp">
<title>Global Shortcuts and Application Shortcuts</title>

<para>"Global shortcuts" and "application shortcuts" work just the
same. Actually, in a certain way application shortcuts are "global" as well. The
only difference is:</para>

<itemizedlist>
<listitem><para>"Global shortcuts" are shortcuts for actions that make sense
even when no application is opened. These shortcuts usually refer to actions
like switching desktops, manipulating windows etc.  </para></listitem>
<listitem><para>"Application shortcuts" refer to actions that are often
available in applications, such as Save, Print, Copy etc.</para></listitem>
</itemizedlist>

<para>Please note, that the "application shortcuts" configured here are
<emphasis>only</emphasis> the standard actions often found in
applications. Most applications will define their own actions as well, for which
you have to customize key bindings using the application's key bindings
dialog.</para>

</sect3>

<sect3 id="key-bindings-use-confkeys">
<title>Configuring Key Bindings</title>

<para>Configuring key bindings is pretty easy. In the middle of the key bindings
control module you'll find a list of available actions. If there's a key binding
configured for that action you'll find it right next to it. Just select the
action you want to configure.</para>

<para>After you've selected an action you'll notice that most of the controls
below the action list are enabled. There you can configure a combination of keys
or maybe no key binding at all for the selected action.  </para>

<itemizedlist>
<listitem><para><guilabel>No key</guilabel>: the selected action will not
be associated with any key.</para></listitem>

<listitem><para><guilabel>Default key</guilabel>: the selected action will be
associated with KDE's default value. This is a good choice for most actions, as
KDE comes with reasonable key bindings we have thought about.
</para></listitem>

<listitem><para><guilabel>Custom key</guilabel>: if this option is enabled, you
can create a key combination for the selected action. Just select any modifiers
(<abbrev>i.e.</abbrev> <keycap>SHIFT</>, <keycap>CTRL</> or <keycap>ALT</>) and
then select a key: just click on the key symbol and after that press the key you
wan't to assign to this key combination.</para></listitem>

</itemizedlist>

<para>As with all control modules, your changes won't take in effect until
you click <guibutton>OK</guibutton> or <guibutton>Apply</guibutton>. Click
<guibutton>Cancel</guibutton> to discard all changes.</para>

</sect3>

<sect3 id="key-bindings-use-confschemes">
<title>Configuring Schemes</title>

<para>A key binding scheme is a set of key bindings that you can access using
its name. KDE comes with one pre-defined key binding scheme called "KDE
default". In addion to that scheme, you'll always see a scheme named "Current
scheme" that stands for the set of key bindings you are using right now
(<abbrev>i.e.</abbrev> not the current settings you are playing with, but what
you've been using up to now). </para>

<para>When you are playing with the key bindings for the first time you don't
have to be afraid of changing the default bindings: KDE won't let you overwrite
the defaults, so you can always switch back to the factory presets. By choosing
"<guilabel>Current scheme</guilabel>" you can return to the set of key bindings
you've been using up to now. However, be careful not to select a scheme when
you've made changes to the key bindings you don't want to lose.</para>

<para>When you are satisfied with a set of key bindings you've created, you may
want to save them to a scheme of your own, so that you can still experiment with
the bindings and always return to a certain scheme. You can always do this by
clicking on the <guibutton>Add</guibutton> button.  You will be prompted for a
name and then the new scheme will appear in the key schemes listbox. You can
remove your own schemes again by selecting a scheme and clicking the
<guibutton>Remove</guibutton> button. Click the <guibutton>Save
changes</guibutton> button to save any changes you have made to the currently
selected scheme. Note that you can not remove or save changes to "<guilabel>KDE
default</guilabel>" or to "<guilabel>Current scheme</guilabel>".</para>

<important><para>If you want to save your changes while a read-only scheme is
selected, you always have to add a new scheme first! If you select one of your
own schemes because you want to save the changes to that one, the control module
will switch to the key bindings of that scheme, discarding your
changes.</para></important> 
</sect3>

</sect2>

<sect2 id="key-bindings-author">
<title>Section Author</title>
<para>This section written by: Jost Schenck <email>jost@schenck.de</email>
</para> 
</sect2> 
</sect1>
