<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" 
"dtd/kdex.dtd" [
 <!ENTITY kappname "&kaddressbook;">
 <!ENTITY package "tdepim">
 <!ENTITY % addindex "IGNORE">
 <!ENTITY % English "INCLUDE" > <!-- change language only here -->  
]>

<book lang="&language;">
<bookinfo>
<title>The &kaddressbook; Handbook</title>
<authorgroup>
<author>
<firstname>Tobias</firstname>
<surname>Koenig</surname>
<affiliation>
<address><email>tokoe@kde.org</email></address>
</affiliation>
</author>
<author>
<firstname>Steffen</firstname>
<surname>Hansen</surname>
<affiliation>
<address><email>hansen@kde.org</email>
</address>
</affiliation>
</author>
<author>
<firstname>Don</firstname>
<surname>Sanders</surname>
<affiliation>
<address><email>dsanders@kde.org</email></address>
</affiliation>
</author>
<author>
<firstname>Michel</firstname>
<surname>Boyer de la Giroday</surname>
<affiliation>
<address><email>michel@klaralvdalens-datakonsult.se</email>
</address>
</affiliation>
</author>

<!-- TRANS:ROLES_OF_TRANSLATORS -->
</authorgroup>

<date>2004-09-24</date>
<releaseinfo>3.3</releaseinfo>

<legalnotice>
&FDLNotice;
</legalnotice>

<abstract>
<para>&kaddressbook; is the &kde; address book.</para>
</abstract>

<keywordset>
<keyword>TDE</keyword>
<keyword>kaddressbook</keyword>

</keywordset>
</bookinfo>

<chapter id="introduction">
<title>Introduction</title>

<para>
&kaddressbook; is the main address book application for &kde;; it
enables you to manage your contacts efficiently and comfortably.
Since it is based on the tdeabc library it supports resources,
which can be used to load and save your contacts to many different locations &mdash;
not just the local file system, but also to LDAP servers and SQL databases.
</para>

<para>
The user interface is similar to MS Outlook and it supports different views
for to represent the contact data differently;
it also provides an incremental search over all fields and a jump button
bar to quickly access single entries.
Since the underlying tdeabc library uses the vCard format (specified in RFC
2426) as its default storage medium, &kaddressbook; mainly reflects the supported
entry fields in its graphical user interface.
</para>
</chapter>

<chapter id="using-kaddressbook">
<title>Using &kaddressbook;</title>

<sect1 id="getting-started">
<title>Getting Started</title>

<para>
After you have started &kaddressbook; (either using the panel menu or by typing
<command>kaddressbook</command> at the command prompt) the &kaddressbook; main window
will be displayed:</para>

<screenshot>
<screeninfo>Starting &kaddressbook;</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="mainwin.png" format="PNG"/></imageobject>
<textobject><phrase>The &kaddressbook; main window.</phrase></textobject>
<caption><para>The &kaddressbook; main window.</para></caption>
</mediaobject>
</screenshot>
</sect1>

<sect1 id="configure-resources">
<title>Configure Resources</title>
<para>&kaddressbook; can use multiple resources for loading and storing
its contacts. After starting &kaddressbook; for the first time you will have
a default resource installed that saves all contacts in a vCard file
under $HOME/.trinity/share/apps/tdeabc/std.vcf; you can add more resources
by using the Resource Configuration dialog, which is available in
<application>kcontrol</application> under
<guilabel>TDE Components</guilabel>-><guilabel>TDE Resources Configuration</guilabel>:</para>

<screenshot>
<screeninfo>The Resource Configuration Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="resourcesdlg.png" format="PNG"/></imageobject>
<textobject><phrase>The Resource Configuration Dialog.</phrase></textobject>
<caption><para>The Resource Configuration Dialog.</para></caption>
</mediaobject>
</screenshot>
<para>Load the configuration module you want to add your resource(s) to. By selecting it from the combo box at the top of the <guilabel>Resources</guilabel> section. The module for &kaddressbook; being <guilabel>contact</guilabel>.</para>
<para>Launch the <guilabel>Resource Configuration</guilabel> dialog by pushing the <guibutton>Add...</guibutton> button. Choose the resource you want to add to your <guilabel>contact</guilabel> module and click <guilabel>OK</guilabel> to confirm your choice.</para>

<variablelist>
<varlistentry>
<term><guilabel>Directory</guilabel></term>
<listitem><para>each contact will be stored in its own file;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>File</guilabel></term>
<listitem><para>all contacts will be stored in one file;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>IMAP</guilabel></term>
<listitem><para>To be written</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Kolab</guilabel></term>
<listitem><para>The contacts will be saved in the contact folder of your DIMAP account.</para><para><guilabel>Kolab server specificities:</guilabel> The Kolab resource should never be configured as Read Only. In case you have added several types of resources you need to set your <guilabel>Kolab Server</guilabel> resource as your <guilabel>Standard</guilabel> resource.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>LDAP</guilabel></term>
<listitem><para>all contacts will be stored on a LDAP server;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Network</guilabel></term>
<listitem><para>all contacts will be stored in one file, which can be located
on a remote server (for example, through HTTP, WebDAV, FTP or Fish).</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>SLOX</guilabel></term>
<listitem><para>To be written</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>XML-RPC</guilabel></term>
<listitem><para>To be written</para></listitem>
</varlistentry>

</variablelist>

<para>After selecting the type of resource another dialog appears where you can configure the resource-specific settings.</para>
<para>The <guilabel>File</guilabel> and <guilabel>Directory</guilabel> resource
supports different formats for storing the contacts:</para>

<variablelist>
<varlistentry>
<term><guilabel>vCard</guilabel></term>
<listitem><para>the contacts will be stored in the vCard format, as
specified in RFC 2426;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>binary</guilabel></term>
<listitem><para>the contacts will be stored in a binary format &mdash; this
increases performance during loading and saving, but it is not portable like
the vCard format.</para></listitem>
</varlistentry>
</variablelist>

<para>&kaddressbook; needs a standard resource, where all contacts should be
saved if no other resource is specified; for this reason, after starting
&kaddressbook; the first time, there is already a resource available.
If you want to use another resource as the standard resource, use the
<guibutton>Use as Standard</guibutton> button to select it.  You must have
both read and write access to the new standard resource, otherwise you
won't be able to select it.
</para>
</sect1>

<sect1 id="managing-contacts">
<title>Managing Contacts</title>
<para>To create or edit contacts, &kaddressbook; offers a dialog where you
can input all the data that can be stored in a vCard.
</para>

<screenshot>
<screeninfo>The Contact Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="contactdlg.png" format="PNG"/></imageobject>
<textobject><phrase>The Contact Dialog.</phrase></textobject>
<caption><para>The Contact Dialog.</para></caption>
</mediaobject>
</screenshot>

<sect2 id="managing-contacts-automatic-nameparsing">
<title>Automatic Name Parsing</title>
<para>
&kaddressbook; tries to provide an easy name input by automatic name parsing;
for this to work properly it is sometimes necessary to add custom name prefixes, suffixes
or inclusions in the <link linkend="preferences-address-book-contact">configure dialog</link>.
Nevertheless, no algorithm is perfect, so the name you enter may be parsed
incorrectly; in this case, you can disable the automatic name parsing in
the name edit dialog, which is available by clicking the <guibutton>Name...</guibutton> button
in the contact dialog. If you wish to disable the name parsing for all new contacts you can
disable automatic name parsing globally in the <link linkend="preferences-address-book-general">configure dialog</link>.
</para>
</sect2>

<sect2 id="managing-contacts-formattedname">
<title>Formatted Name</title>
<para>
The formatted name of a contact is used by other programs to represent it.
&kaddressbook; offers three predefined types of formatted names:
</para>

<variablelist>
<varlistentry>
<term><guilabel>SimpleName</guilabel></term>
<listitem><para>&lt;given name&gt; &lt;family name&gt;;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>FullName</guilabel></term>
<listitem><para>&lt;prefix&gt; &lt;given name&gt; &lt;additional name&gt;
&lt;family name&gt; &lt;suffix&gt;;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>ReverseName</guilabel></term>
<listitem><para>&lt;family name&gt;, &lt;given name&gt;.</para></listitem>
</varlistentry>
</variablelist>

<para>
If none of the above types fit your needs you can select the
<guilabel>Custom</guilabel> name type, where you can add your own formatted
name &mdash; this configuration can be done in the name edit dialog.
To specify a
default formatted name type for new contacts, use the <link linkend="preferences-address-book-contact">configure dialog</link>.
</para>
</sect2>
<sect2 id="managing-contacts-im-addresses">
<title>Instant Messaging</title>
<para>
  The <guilabel>IM Address</guilabel> text box holds the preferred Instant Messaging Address for this contact.  To add, view and edit additional IM Addresses, click the <guilabel>Edit IM Addresses...</guilabel> button.  The Edit IM Addresses Dialog appears.
</para>
<screenshot>
<screeninfo>The Edit IM Addresses Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="edit_instant_messenging.png" format="PNG"/></imageobject>
<textobject><phrase>The Edit IM Addresses Dialog.</phrase></textobject>
<caption><para>The Edit IM Addresses Dialog.</para></caption>
</mediaobject>
</screenshot>

<para>
  A contact can have multiple instant messaging addresses associated with it.  Other applications, such as <application>Kopete</application> and <application>Konversation</application>, store their information here.  It is recommended that you add, edit and delete instant messaging addresses in <application>Kopete</application> or <application>Konversation</application> rather than here, since they can assist you better in adding the address, adding the user to a group, and so on.  If you are not interested in whether they are picked up in another application, and just want to store the instant messaging address with the contact, then it is fine to add and edit it here.
</para>
<para>
  For more information on adding new Instant Messaging Addresses, see
  <ulink url="help:/kopete/getting-started.html#creating-accounts"><application>Kopete</application>'s handbook</ulink>
  and <ulink url="help:/konversation/linkaddressbook.html"><application>Konversation</application>'s handbook</ulink>.
</para>
</sect2>

      <sect2 id="managing-contacts-crypto-preferences">
	<title>Crypto Settings tab</title>
	<para>
	  In this tab, you can define preferences with regards to
	  cryptography for a contact. At the time of this writing,
	  only <application>KMail</application> will make use of these
	  preferences when composing messages. This mechanism replaces
	  the barely editable per-recipient crypto preferences of
	  earlier <application>KMail</application> releases.
	</para>
	<variablelist>
	  <varlistentry id="managing-contacts-crypto-preferences-allowed-protocols">
	    <term>
	      <guilabel>Allowed Protocols</guilabel>
	    </term>
	    <listitem>
	      <para>
		Here, you can restrict the cryptographic message
		formats that can be used for this contact. See the
		section on <ulink
		url="/kmail/the-composer-window.html#cryptographic-message-formats">Cryptographic
		Message Formats</ulink> in <ulink
		url="/kmail/"><application>KMail</application>'s
		handbook</ulink> for a discussion of the different
		available formats.
	      </para>
	    </listitem>
	  </varlistentry>
	  <varlistentry id="managing-contacts-crypto-preferences-preferred-keys">
	    <term>
	      <guilabel>Preferred OpenPGP encryption key</guilabel>,
	      <guilabel>Preferred S/MIME encryption certificate</guilabel>
	    </term>
	    <listitem>
	      <para>
		Here, you can assign a preferred OpenPGP key and/or
		S/MIME certificate to be used when encrypting to this
		contact. Otherwise, the local keyring and local
		certificate box are searched for matching keys and
		certificates.
	      </para>
	    </listitem>
	  </varlistentry>
	  <varlistentry id="managing-contacts-crypto-preferences-message-preference">
	    <term>
	      <guilabel>Message Preference</guilabel>
	    </term>
	    <listitem>
	      <para>
		Here, you can select from a set of directives for user
		interaction both when signing and when encrypting.
	      </para>
	      <variablelist>
		<varlistentry id="managing-contacts-crypto-preferences-message-preference-none">
		  <term>
		    <guilabel>&lt;none&gt;</guilabel>
		  </term>
		  <listitem>
		    <para>
		      No preference, use whatever mode
		      <application>KMail</application> defaults to.
		    </para>
		  </listitem>
		</varlistentry>
		<varlistentry id="managing-contacts-crypto-preferences-message-preference-never">
		  <term>
		    <guilabel>Never Sign</guilabel>, <guilabel>Never Encrypt</guilabel>
		  </term>
		  <listitem>
		    <para>
		      Never sign (encrypt) messages to this
		      contact. Don't ask for confirmation (except in
		      the case of conflicts with preferences of other
		      contacts).
		    </para>
		  </listitem>
		</varlistentry>
		<varlistentry id="managing-contacts-crypto-preferences-message-preference-always">
		  <term>
		    <guilabel>Always Sign</guilabel>,
		    <guilabel>Always Encrypt</guilabel>
		  </term>
		  <listitem>
		    <para>
		      Always sign (encrypt) messages to the
		      contact. Don't ask for confirmation (except in
		      the case of conflicts with preferences of other
		      contacts).
		    </para>
		  </listitem>
		</varlistentry>
		<varlistentry id="managing-contacts-crypto-preferences-message-preference-if-possible">
		  <term>
		    <guilabel>Always Sign If Possible</guilabel>,
		    <guilabel>Always Encrypt If Possible</guilabel>
		  </term>
		  <listitem>
		    <para>
		      Always sign (encrypt) messages to this contact
		      when it would be possible to do so. Don't ask if
		      it isn't possible. Situations in which signing
		      might not be possible include other recipients
		      having signing preferences of
		      "Never". Situations in which encryption might
		      not be possible include missing
		      keys/certificates for this or other recievers.
		    </para>
		  </listitem>
		</varlistentry>
		<varlistentry id="managing-contacts-crypto-preferences-message-preference-ask">
		  <term>
		    <guilabel>Ask</guilabel>
		  </term>
		  <listitem>
		    <para>
		      Always ask whether to sign (encrypt).
		    </para>
		  </listitem>
		</varlistentry>
	      </variablelist>
	    </listitem>
	  </varlistentry>
	</variablelist>
      </sect2>

</sect1>

<sect1 id="using-views">
<title>Using Views</title>
<para>
In this version, &kaddressbook; offers different views, which can
represent the contacts in different ways:
</para>

<variablelist>
<varlistentry>
<term><guilabel>Table View</guilabel></term>
<listitem><para>All contacts are listed in a table; they can be sorted by
clicking at the column header of the table.
The columns of the table depend on the fields which were selected in
the view configuration dialog.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Icon View</guilabel></term>
<listitem><para>The contacts are listed as icons in a view.  If the
contact contains a photo or logo, then it is used in the view; otherwise,
an default icon is used.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Card View</guilabel></term>
<listitem><para>All contacts are presented in form of cards. The titles of
these cards are the formatted names; the body of each card depends on
what fields were selected in the view configuration dialog.</para></listitem>
</varlistentry>
</variablelist>

<screenshot>
<screeninfo>The View Configuration Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="vieweditdlg.png" format="PNG"/></imageobject>
<textobject><phrase>The View Configuration Dialog.</phrase></textobject>
<caption><para>The View Configuration Dialog.</para></caption>
</mediaobject>
</screenshot>

<para>The <guilabel>Selected Fields</guilabel> page offers you the possibility
of selecting which of the stored details of a contact should be shown in the view. In the
<guilabel>Default Filter</guilabel> page you can setup what
<link linkend="using-filters">filter</link> should be used by the view.</para>
</sect1>

<sect1 id="using-filters">
<title>Using Filters</title>
<para>
You can setup filters in &kaddressbook; which depend on the categories a
contact belongs to. For example, you can create a filter that matches all
contacts which belong to the categories 'Family' and 'Friends'; 
you can also create a filter that matches all contacts which do not
these categories. To manage filters, use the filter configuration dialog:
</para>

<screenshot>
<screeninfo>The Filter Configuration Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="filtereditdlg.png" format="PNG"/></imageobject>
<textobject><phrase>The Filter Configuration Dialog.</phrase></textobject>
<caption><para>The Filter Configuration Dialog.</para></caption>
</mediaobject>
</screenshot>

<para>
Filters can be used in views to reduce the number of contacts shown.
In the <link linkend="using-filters">view configuration dialog</link> you can
specify what filter should be used by a view by default.
</para>
</sect1>

<sect1 id="using-extensions">
<title>Using Extensions</title>
<para>
Extensions are implemented as plugins in &kaddressbook;, so 3rd-party
developers can provide more of them.
At the moment we already have three extensions:
</para>

<variablelist>
<varlistentry>
<term><guilabel>Contact Editor</guilabel></term>
<listitem><para>Similar to the the contact editing dialog, but
designed to allow contacts to be edited quickly.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Location of Contact</guilabel></term>
<listitem><para>This extension takes the postal address of a contact and
loads a map service from the internet (like www.map24.de) with these
data; the result is shown in a <acronym>HTML</acronym> view.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Distribution List Manager</guilabel></term>
<listitem><para>This extension provides easy management of the distribution
lists: just create a new list and select a contact in the view; then, after
clicking <guibutton>Add contact</guibutton>, the selected contact is part
of the distribution list.  A simpler way is to drag a contact from the
view and drop it over the distribution list manager. See <link linkend="settings-menu"> Settings Menu</link> about how to add an extension.</para>
</listitem>
</varlistentry>
</variablelist>

<screenshot>
<screeninfo>The main window with distribution list extension.</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="extension.png" format="PNG"/></imageobject>
<textobject><phrase>The main window with distribution list extension.</phrase></textobject>
<caption><para>The main window with distribution list extension.</para></caption>
</mediaobject>
</screenshot>
</sect1>

<sect1 id="import-and-export">
<title>Import and Export</title>
<para>With the new import/export framework &kaddressbook; offers
a dialog where you can select which contacts are to be exported.</para>

<screenshot>
<screeninfo>The export selection dialog.</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="exportdlg.png" format="PNG"/></imageobject>
<textobject><phrase>The export selection dialog.</phrase></textobject>
<caption><para>The export selection dialog.</para></caption>
</mediaobject>
</screenshot>

<para>The following import and export plugins are available at the
moment:</para>

<variablelist>
<varlistentry>
<term><guilabel>vCard</guilabel></term>
<listitem><para>the vCard format is standardized format (RFC 2426)
that is supported by most addressbook applications &mdash;
&kaddressbook; can import and export versions 2.1 and 3.0;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Mobile Phone</guilabel></term>
<listitem><para>this plugin can import contacts from Nokia mobile
phones via the gnokii library;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Eudora Addressbook</guilabel></term>
<listitem><para>with this plugin you can import your contacts from
the Eudora mail client;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>CSV</guilabel></term>
<listitem><para>CSV (comma separated value) is a format that is used
by many (addressbook) applications &mdash; you can import and export your
contacts with this format;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>KDE2</guilabel></term>
<listitem><para>to import your old addressbook data from KDE 2.X you
can use this item;</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>LDIF</guilabel></term>
<listitem><para>LDIF is a plain-text representation of LDAP data, used by
Netscape and Mozilla to store their addressbook
data &mdash; &kaddressbook; supports import and export of this format;
</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>PAB</guilabel></term>
<listitem><para>PAB is the MS Exchange Personal Address Book format, used
by MS Outlook and MS Outlook Express to store their contact
data &mdash; &kaddressbook; supports the import of this format;
</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Opera</guilabel></term>
<listitem><para>use this plugin to import the contact database of the Opera web browser;
</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Bookmarks</guilabel></term>
<listitem><para>this is a pseudo export plugin that makes the web URLs
of your contacts available in the bookmark menu of konqueror.</para></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="ldap-queries">
<title>LDAP queries</title>
<para>
Address information from LDAP servers can be imported into &kaddressbook;'s
local addressbook by using the LDAP search dialog.
</para>
<para>
To configure (a number of) LDAP servers, use the
<link linkend="preferences-ldap-lookup">configuration dialog.</link>
</para>
<para>
On the main toolbar in &kaddressbook; a button with a picture of
a magnifying glass over a book is available: use this button to open
the LDAP search dialog.  The dialog itself is pretty straight
forward; just type in parts of a name, email address or phone number
and press the <guibutton>Search</guibutton> button.
</para> 
<para>When the results display in the listbox it is possible to select
one or more address(es); you can then use the <guibutton>Add Selected</guibutton> to
import the selected address(es) to the local addressbook, or click the
<guibutton>Send email to Contact</guibutton> to invoke a mail program
to write an email to the selected recipients.
</para>
<para>
The <guibutton>Recursive search</guibutton> checkbox is enabled by
default; this will make the LDAP query consider all objects
below the base DN of each server. If you only want to consider objects
one level below the base uncheck this checkbox; if in doubt, leave it
checked.
</para>
</sect1>

<sect1 id="preferences">
<title>Preferences</title>

<para>You can modify many aspects of &kaddressbook;'s behavior in the
preferences dialog; the dialog can be opened via
<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
KAddressBook</guimenuitem></menuchoice> or using the toolbar icon.</para>

<screenshot>
<screeninfo>Configuring &kaddressbook;</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="conf.png" format="PNG"/></imageobject>
<textobject><phrase>The preferences dialog.</phrase></textobject>
<caption><para>The preferences dialog.</para></caption>
</mediaobject>
</screenshot>

<sect2 id="preferences-address-book">
<title>The <guilabel>Address Book</guilabel> Page</title>

<sect3 id="preferences-address-book-general">
<title>The <guilabel>General</guilabel> Tab</title>

<variablelist>
<varlistentry>
<term><guilabel>Honor TDE single click</guilabel></term>
<listitem><para>If checked, &kaddressbook; pays attention to the
TDE single-click option.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Automatic Name Parsing for new addresses</guilabel></term>
<listitem><para>If checked, the <link linkend="managing-contacts-automatic-nameparsing">automatic name parsing</link>
feature is used for new addresses.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Script-Hooks</guilabel></term>
<listitem><para>Here you can specify the commands which are to be executed 
whenever you click at a phone number or fax number link in the details page.
</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Extensions</guilabel></term>
<listitem><para>In this list view you can enable and disable extensions individually
and configure their settings.</para></listitem>
</varlistentry>
</variablelist>
</sect3>

<sect3 id="preferences-address-book-contact">
<title>The <guilabel>Contact</guilabel> Tab</title>
<para>&kaddressbook; can automatically parse a name into its parts; to make
sure this works in many cases you can add, here, additional name parts,
like prefixes, suffixes and inclusions.
</para>

<variablelist>
<varlistentry>
<term><guilabel>Prefixes</guilabel></term>
<listitem><para>Here you can manage name prefixes, like 'Prof.' or
'Dr.'.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Inclusions</guilabel></term>
<listitem><para>Here you can manage name inclusions, like 'van' or
'von', which are often part of Dutch or German names.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Suffixes</guilabel></term>
<listitem><para>Here you can manage name suffixes like 'Sr.' or
'Jr.'.</para></listitem>
</varlistentry>

<varlistentry>
<term><guilabel>Default Formatted Name</guilabel></term>
<listitem><para>Here you can select the default type of formatted names
to be used for new contacts.</para></listitem>
</varlistentry>
</variablelist>
</sect3>
</sect2>

<sect2 id="preferences-ldap-lookup">
<title>The <guilabel>LDAP Lookup</guilabel> Page</title>

<para>On this page you can configure the LDAP servers that should be used
for <link linkend="ldap-queries">ldap queries</link> in &kaddressbook;.</para>

<para>Use <guibutton>Add Host...</guibutton> to add and setup a new server.</para>
<screenshot>
<screeninfo>Configuring LDAP Lookup for Kolab</screeninfo>
<mediaobject>
<imageobject><imagedata fileref="addhost.png" format="PNG"/></imageobject>
<textobject><phrase>Example of LDAP Lookup configuration (Kolab).</phrase></textobject>
<caption><para>The Add Host dialog - Example of LDAP Lookup configuration (Kolab).</para></caption>
</mediaobject>
</screenshot>
<para>
You can include and exclude servers from the search by selecting or deselecting their check boxes. In the server list. Press <guibutton>OK</guibutton> to close the dialog.
</para>
<para>You may configure the search order by moving up or down the servers in the list. This can be done using the corresponding arrows on the right side of the dialog.</para>
</sect2>
</sect1>
</chapter>

<chapter id="command-references">
<title>Command References</title>

<sect1 id="file-menu">
<title>The <guimenu>File</guimenu> Menu</title>

<variablelist>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>New Contact</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens the contact editor for adding a new contact</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guimenuitem>Edit Contact</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens the contact editor for editing the currently-selected
contact</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>Save</guimenuitem>
</menuchoice></term>
<listitem><para><action>Saves the changed contacts</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guisubmenu>Import</guisubmenu>
</menuchoice></term>
<listitem><para><action>Lists all available import modules</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guisubmenu>Export</guisubmenu>
</menuchoice></term>
<listitem><para><action>Lists all available export modules</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>P</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>Print</guimenuitem>
</menuchoice></term>
<listitem><para><action>Prints the currently-selected contacts</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guimenuitem>Send email to Contact</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens the preferred mail program with the currently-selected
contacts as recipients</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>File</guimenu>
<guimenuitem>Send Contact</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens the preferred mail program with the currently-selected
contact details attached as vCard</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
</shortcut>
<guimenu>File</guimenu>
<guimenuitem>Quit</guimenuitem>
</menuchoice></term>
<listitem><para><action>Quits</action> &kaddressbook;.</para></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="edit-menu">
<title>The <guimenu>Edit</guimenu> Menu</title>

<variablelist>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Undo</guimenuitem>
</menuchoice></term>
<listitem><para><action>Undos the last change</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;&Shift;<keycap>Z</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Redo</guimenuitem>
</menuchoice></term>
<listitem><para><action>Redos the last change</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>X</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Cut</guimenuitem>
</menuchoice></term>
<listitem><para><action>Cuts the currently-selected contacts</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Copy</guimenuitem>
</menuchoice></term>
<listitem><para><action>Copies the currently-selected contacts to the
clipboard</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>V</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Paste</guimenuitem>
</menuchoice></term>
<listitem><para><action>Paste the clipboard contents into the address book (if
it is in a valid format)</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul"><keycap>Delete</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Delete Contact</guimenuitem>
</menuchoice></term>
<listitem><para><action>Deletes the currently-selected contacts</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>A</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Select All</guimenuitem>
</menuchoice></term>
<listitem><para><action>Selects all contacts</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Edit</guimenu>
<guimenuitem>Set Categories</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens a dialog where you can set the categories
for the currently-selected contacts; when the selected categories differ
from the categories of the contacts the dialog will ask you if you
want to merge these differences or if the categories should be overwritten
</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Edit</guimenu>
<guimenuitem>Set Who Am I</guimenuitem>
</menuchoice></term>
<listitem><para><action>Marks the currently selected contact as the 'Who Am I' contact,
which represents the user's data. You should have such a contact, because other
applications, like &kmail; and &kword;, can make use of these data: this way you don't have
to input it separately in every application
</action>.</para></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="view-menu">
<title>The <guimenu>View</guimenu> Menu</title>

<variablelist>
<varlistentry>
<term><menuchoice>
<guimenu>View</guimenu>
<guisubmenu>Select View</guisubmenu>
</menuchoice></term>
<listitem><para><action>Lists all available views</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>View</guimenu>
<guimenuitem>Add View</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens a <link linkend="using-views">dialog</link> for
creating a new view</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>View</guimenu>
<guimenuitem>Modify View...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens a <link linkend="using-views">dialog</link> where
you can modify the settings of the current view</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>View</guimenu>
<guimenuitem>Delete View</guimenuitem>
</menuchoice></term>
<listitem><para><action>Deletes the current view</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>View</guimenu>
<guimenuitem>Refresh View</guimenuitem>
</menuchoice></term>
<listitem><para><action>Refreshes the current view</action>.</para></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="tools-menu">
<title>The <guimenu>Tools</guimenu> Menu</title>
<para>This menu provides tools for acting on the contact database.</para>

<variablelist>
<varlistentry>
<term><menuchoice>
<guimenu>Tools</guimenu>
<guisubmenu>Lookup Addresses in Directory</guisubmenu>
</menuchoice></term>
<listitem><para><action>Opens the search dialog for addresses located on
LDAP servers. You can configure the server settings in the
<link linkend="preferences-address-book-contact">configure dialog</link></action>.</para></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="settings-menu">
<title>The <guimenu>Settings</guimenu> Menu</title>
<para>This menu provides options for configuring &kaddressbook;, changing its
appearance, shortcuts and standard behavior.</para>

<variablelist>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guisubmenu>Toolbars</guisubmenu>
</menuchoice></term>
<listitem><para><action>Toggles the toolbars on/off</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guisubmenu>Show Extension Bar</guisubmenu>
</menuchoice></term>
<listitem><para><action>Selects what extension should be shown in the
extension bar at the bottom of the main window</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Show Jump Bar</guimenuitem>
</menuchoice></term>
<listitem><para><action>Toggles the Jump Bar on/off</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Show Details</guimenuitem>
</menuchoice></term>
<listitem><para><action>Toggles the Details Page on/off</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Edit Filter</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens a <link linkend="using-filters">dialog</link> where
you can edit the filters</action>.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure Shortcuts...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens a dialog for changing the key bindings.</action>
Using this option you can change the standard keyboard shortcuts for &kaddressbook;'s commands
or create new ones.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure Toolbars...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Opens a dialog for configuring the toolbar.</action> You
can add and remove toolbuttons for &kaddressbook;'s commands with this option.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure KAddressBook...</guimenuitem>
</menuchoice></term>
<listitem><para>Opens the <link linkend="preferences">preferences dialog</link>.</para>
</listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="help-menu">
<title>The <guimenu>Help</guimenu> Menu</title>
&help.menu.documentation;
</sect1>
</chapter>

<chapter id="command-line">
<title>Command Line Options</title>
<para>&kaddressbook; supports some command-line arguments, which can be
used to influence its starting behavior:</para>

<variablelist>
<varlistentry>
<term><command>kaddressbook</command> <option>-a, --addr &lt;email&gt;</option></term>
<listitem><para>Shows the contact editor with the given email address.</para></listitem>
</varlistentry>
<varlistentry>
<term><command>kaddressbook</command> <option>--uid &lt;uid&gt;</option></term>
<listitem><para>Shows the contact editor with the given uid.</para></listitem>
</varlistentry>
<varlistentry>
<term><command>kaddressbook</command> <option>--editor-only</option></term>
<listitem><para>Launches in editor only mode.</para></listitem>
</varlistentry>
<varlistentry>
<term><command>kaddressbook</command> <option>--new-contact</option></term>
<listitem><para>Launches an editor for a new contact.</para></listitem>
</varlistentry>
</variablelist>

<para>&kaddressbook; also supports all other command-line options common to
&kde; and &Qt; programs; you can get a list of these options with
<userinput><option>--help</option></userinput>,
<userinput><option>--help-kde</option></userinput>, and
<userinput><option>--help-qt</option></userinput>.</para>
</chapter>

<chapter id="configure-non-gui-options">
<title>Options Without a User Interface Representation</title>
<para>
Apart from the options presented in the configuration dialog, some options
can only be set directly in the configuration file ($TDEHOME/share/config/kaddressbookrc)
or through KIOSK.
</para>

<variablelist>

<varlistentry>
<term><guilabel>ContactListAboveExtensions</guilabel></term>
<listitem>
<para>
If enabled, extensions (e.g. the distribution list editor) are shown below the contact list, 
not in an separate column. By default, this option is disabled.

To enable this option, add a line reading (under [MainWindow] section):
</para>
<programlisting>ContactListAboveExtensions=true
</programlisting>
</listitem>
</varlistentry>

</variablelist>

</chapter>

<chapter id="credits">
<title>Credits and License</title>

<para>&kaddressbook; - The &kde; Address Book</para>

<para>Copyright (c) 1997-2003, The KDE-PIM Team</para>

<para>&kaddressbook; was originally written in 1997 by Don Sanders
<email>dsanders@kde.org</email>. Currently it is
maintained by Tobias Koenig <email>tokoe@kde.org</email>.</para>

&underFDL;               <!-- FDL: do not remove -->
</chapter>
</book>

