<chapter id="configuration">
<title>Configuration</title>


<para>
The <interface>Configuration Dialog</interface> contains all the options for
changing some of the default behaviour of &appname;.
</para>

<para>
Clicking the <guibutton>Apply</guibutton> button <action>causes the changes to
take effect immediately</action> without closing the dialog, while
<guibutton>OK</guibutton> <action>applies the changes and closes the dialog</action>. <guibutton>Cancel</guibutton> closes the dialog, but any changes already made
and applied will remain. The <guibutton>Default</guibutton> button <action>reverts
the options</action> on the current page of the dialog to their default values,
while <guibutton>Help</guibutton> <action>opens the &khelpcenter;</action> to
the relative section of the &appname; manual.
</para>

<para>
Some minor settings can only be changed by editing the configuration file itself. See <link linkend="hidden-options">Hidden Options</link>.
</para>

<sect1 id="general-options">
<title><guilabel>General Options</guilabel></title>

<screenshot>
<screeninfo>The General Options Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="general-options.png"/></imageobject>
<textobject><phrase>The General Options Dialog</phrase></textobject>
</mediaobject>
</screenshot>

<para>
The <guilabel>General Options</guilabel> control the general behavior. Images may be included
in the data files, or saved separately in the &appname; application folder. Also, when &appname;
is started, it can automatically reopen the last data file that was open. The
<guilabel>Tip of the Day</guilabel> dialog contains helpful hints on using &appname;
and appears at program startup. You may want to read through some of the hints and
then disable the dialog.
</para>

<para>
The <guilabel>Formatting Options</guilabel> control the level of automatic formatting
that &appname; does. For examples, see the <link linkend="field-formatting">Field
Formatting section</link>. Capitalization and formatting are distinct options, since
a field may be capitalized without having the order of the words changed, and
vice-versa. The auto-capitalization can be changed to ignore certain words.
The automatic formatting includes grammatical articles in titles,
along with prefixes and suffixes for personal names. The values are case-insensitive,
and should be separated by a semi-colon.
</para>

<para>
The formatting rules follow general English usage, which may not work for other languages.
Articles are appended to the end of the title, with a comma. Personal names are formatted
to have the last name first, followed by a comma, then the first name. Personal suffixes,
such as Jr., are kept with the last name. Prefixes, such as <emphasis>von</emphasis>,
are kept with the last name, but are ignored when the values are being sorted.</para>

<informalexample><para><emphasis>John Q. von Public, III</emphasis> would become
<emphasis>von Public, III, John Q.</emphasis> and <emphasis>Public</emphasis> would
be used as the sort key.</para></informalexample>

<para>
Only single word prefixes are supported. If a name includes <emphasis>van der</emphasis>,
for example, both <emphasis>van</emphasis> and <emphasis>der</emphasis> should be included
in the surname prefix list. Articles ending with an apostrophe are supported for sorting
order, as well.
</para>

<note><para>The actual values in the collection are <emphasis>not</emphasis> changed,
only the visible text used for the interface. So the formatting options can be
changed back and forth without affecting any of the data in the collection.</para></note>

</sect1>

<sect1 id="printing-options">
<title><guilabel>Printing Options</guilabel></title>

<para>
&appname; uses an &xslt; template for creating &html;
and then passes that to the &kde; printing service. Only the fields visible in the <link linkend="detailed-view">&detailed-view;</link> are printed. Furthermore, if the collection
is being filtered, only the visible entries will be printed. Initially, a warning message
is shown if filtering is active.
</para>

<screenshot>
<screeninfo>The Print Options Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="print-options.png"/></imageobject>
<textobject><phrase>The Print Options Dialog</phrase></textobject>
</mediaobject>
</screenshot>

<para>
The <guilabel>Printing Options</guilabel> allow you to change some formatting when
printing a collection. If <guilabel>Format titles and names</guilabel> is checked,
then the fields are <link linkend="field-formatting">auto-formatted</link> when they
are printed. Otherwise, they are printed exactly as they were entered.
</para>

<para>
The default printing stylesheet prints the collection with the field values in columns.
<guilabel>Print field headers</guilabel> controls whether the field title is printed
at the top of the column.
</para>

<para>
In the printout, the entries will be sorted as they are in the <link linkend="detailed-view">&detailed-view;</link>. Additionally, they may be grouped as they are in the <link linkend="group-view">&group-view;</link>.
</para>

<para>
Finally, when image fields are included in the printout, the images may be resized,
while maintaining their aspect ratio. The maximum image width and height define the
largest possible size of the image, though it will never be increased.
</para>
</sect1>

<sect1 id="template-options">
<title><guilabel>Template Options</guilabel></title>

<para>
The <link linkend="entry-view">&entry-view;</link> uses templates to show the field
values. You can specify a different template for each collection type. Some templates,
such as the <emphasis>Album</emphasis> or <emphasis>Video</emphasis> templates are
for a specific collection type, and a short error message will appear in the
&entry-view; if they are used for other types. The
<guilabel>Preview</guilabel> button pops up a window to show you a preview of what the template looks like.
Custom fonts and colors may be passed to the template, and all of the default templates
will honor those settings. However, custom template may choose to ignore them.</para>

<para>
Additional templates may be installed directly, or downloaded from
<ulink url="http://kde-files.org/index.php?amp;xcontentmode=676">kde-files.org</ulink> by clicking
the <guilabel>Download</guilabel> button. Any templates installed by the user may also be deleted.
Entry templates are saved in <filename class="directory">$<envar>KDEHOME</envar>/share/apps/tellico/entry-templates/</filename>.
</para>

<para>If you create a new template, please consider submitting it at <ulink url="http://kde-files.org/index.php?amp;xcontentmode=676">kde-files.org</ulink>!</para>

<screenshot>
<screeninfo>The Template Options Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="template-options.png"/></imageobject>
<textobject><phrase>The Template Options Dialog</phrase></textobject>
</mediaobject>
</screenshot>

</sect1>

<sect1 id="data-sources-options">
<title><guilabel>Data Sources Options</guilabel></title>

<para>
&appname; can use various sources for importing data, which can be configured
in the Data Sources Dialog. There are several available types of sources:</para>

<itemizedlist>
<listitem><para><link linkend="amazon-web-services">Amazon.com Web Services</link>,</para></listitem>
<listitem><para>the <link linkend="imdb">Internet Movie Database</link>,</para></listitem>
<listitem><para><link linkend="z3950">z39.50 servers</link>,</para></listitem>
<listitem><para><link linkend="sru">SRU servers</link>,</para></listitem>
<listitem><para><link linkend="entrez">Entrez (PubMed) databases</link>,</para></listitem>
<listitem><para><link linkend="yahoo">Yahoo! Audio Search</link>,</para></listitem>
<listitem><para><link linkend="animenfo">AnimeNfo.com</link>,</para></listitem>
<listitem><para><link linkend="ibs">Internet Bookshop Italia</link>,</para></listitem>
<listitem><para><link linkend="isbndb">ISBNdb.com</link>,</para></listitem>
<listitem><para><link linkend="allocine">Allocine.fr</link>,</para></listitem>
<listitem><para>the <link linkend="minculture">Spanish Ministry of Culture</link>,</para></listitem>
<listitem><para><link linkend="darkhorse">Dark Horse Comics</link>,</para></listitem>
<listitem><para><link linkend="externalexec">other external scripts or applications</link></para></listitem>
</itemizedlist>


<screenshot>
<screeninfo>The Data Sources Options Dialog</screeninfo>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="source-options.png"/></imageobject>
<textobject><phrase>The Data Sources Options Dialog</phrase></textobject>
</mediaobject>
</screenshot>

<para>
New sources may be added by clicking the <guibutton>New...</guibutton> button, while
existing ones may be modified or deleted, using the <guibutton>Modify...</guibutton> or
<guibutton>Remove</guibutton> buttons. The order of the sources, which shows up in the
entry updating menus, can also be changed.
</para>

<para>
Additional templates may be downloaded from the author's online repository by clicking
the <guilabel>Download</guilabel> button. Those scripts are gpg-signed by the author to
guard against dangerous scripts from unknown sources, which could cause damage to your system.
</para>

<warning>
<para>
Never install and run a script from an untrusted source. They are executed with the same permissions as the user,
and as a result, could modify or delete files or otherwise mess up your system.
</para>
</warning>

<para>
Many of the data sources offer more information than the default fields in &appname;. Those other fields are
shown on the right of the configuration box. If any of those fields are checked, they will be added
to the collection when an entry is added from that source.
</para>

<sect2 id="amazon-web-services">
<title>Amazon.com</title>

<para>
Using the Amazon Web Services, &appname; can search any of six different international sites operated by <ulink url="http://amazon.com">Amazon.com</ulink> for information: United States, United Kingdom, Germany, Japan,
France, and Canada.
</para>

<screenshot>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="amazon-options.png"/></imageobject>
</mediaobject>
</screenshot>

<para>
Configuring each Amazon.com source involves three settings: the server location, image size, and associate's ID. Some information
from <ulink url="http://amazon.com">Amazon.com</ulink> may include an image, such as a book or video cover. That image may be downloaded in three different sizes, depending on the item. The associate's ID must be used to access the Amazon.com Web Services, and is included in the links back to the item, as dictated by the license agreement for the use of the Amazon.com Web Services.
</para>

</sect2>

<sect2 id="imdb">
<title>Internet Movie Database</title>

<para>
The <ulink url="http://www.imdb.com">Internet Movie Database</ulink> provides information about movies and videos. When a search is conducted for a <emphasis>Person</emphasis>, if more than one possible result is returned, a dialog box is opened to allow you to select the correct person. The configuration options include setting the web server address and whether images are grabbed or not. Since IMDb can return a large number of cast members, you can limit
that to a certain number.
</para>

<screenshot>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="imdb-options.png"/></imageobject>
</mediaobject>
</screenshot>

</sect2>

<sect2 id="z3950">
<title>z39.50 Servers</title>

<para>
The <ulink url="http://www.cni.org/pub/NISO/docs/Z39.50-brochure/50.brochure.toc.html">z39.50 protocol</ulink> is used to access libraries and bibliographic information providers around the world. Lists of public z39.50 servers are <ulink url="http://www.indexdata.dk/targettest/">available from indexdata.dk</ulink>, among others. &appname; comes with
several preset configurations for major libraries, or you can specify the connection information manually.</para>

<para>&appname; 
is able to read data in the <acronym>MODS</acronym>, <acronym>USMARC</acronym>/<acronym>MARC21</acronym>, or <acronym>UNIMARC</acronym> format, using the <ulink url="http://www.indexdata.dk/yaz/">yaz library</ulink>.
In addition, there is limited support for the <acronym>GRS-1</acronym> format.
</para>

<screenshot>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="z3950-options.png"/></imageobject>
</mediaobject>
</screenshot>


<para>
To use one of the preset libraries, check the box and then select the library. The other configuration entries will be disabled. If you need to set the information manually, uncheck the preset box.
</para>

<para>
The default port for z39.50 access is 210, but some servers may use a different one. &appname; assumes the server uses the MARC-8 character encoding, unless configured otherwise. If an incorrect character encoding is used, an error message may appear on the program output, or possibly no entries are retrieved.
</para>

<para>
Some servers require a username and password for access. &appname; can use and save that password, but be aware that is written to the &appname; configuration file in plain text and is not secure. For most public servers, the username and password fields may be left empty.
</para>

</sect2>

<sect2 id="sru">
<title>SRU Servers</title>

<para>
SRU stands for <ulink url="http://www.loc.gov/standards/sru/">Search/Retrieve via URL</ulink> and is a standard search protocol for
Internet searches. Some libraries use it for providing access to their data catalogs. Among them, the <ulink url="http://www.loc.gov/z3950/lcserver.html#oppr">US Library of Congress</ulink> is probably
the best known.
</para>

<screenshot>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="sru-options.png"/></imageobject>
</mediaobject>
</screenshot>

</sect2>

<sect2 id="entrez">
<title>Entrez Databases</title>
<para>
<ulink url="http://www.ncbi.nlm.nih.gov/Entrez/">Entrez</ulink> is the integrated, text-based search and retrieval system used at the National Center for Biotechnology Information (NCBI). The most well-known Entrez database is <ulink url="http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=PubMed">PubMed</ulink>, the database for life science articles from many biological journals. At the moment, the only Entrez database supported by &appname; is PubMed.</para>
</sect2>

<sect2 id="yahoo">
<title>Yahoo! Audio Search</title>
<para>
The <ulink url="http://audio.search.yahoo.com">Yahoo! Audio Search</ulink> may be used to search for music album information.
</para>
</sect2>

<sect2 id="animenfo">
<title>AnimeNfo.com</title>
<para>
<ulink url="http://www.animenfo.com">AnimeNfo</ulink> is a popular site for information on anime, or Japanese animation.
</para>
</sect2>

<sect2 id="ibs">
<title>Internet Bookstore Italia</title>
<para>
<ulink url="http://ibs.it">IBS, or Internet Bookstore Italia</ulink>, is an online Italian bookstore.
</para>
</sect2>

<sect2 id="isbndb">
<title>ISBNdb.com</title>
<para>
<ulink url="http://isbndb.com">ISBNdb.com</ulink> is an online book database, with data collection libraries around the world.
</para>
</sect2>

<sect2 id="allocine">
<title>Allocine.fr</title>
<para>
<ulink url="http://www.allocine.fr">Allocine.fr</ulink> is an online French bookstore. This data source <link linkend="externalexec">runs as a script</link> and requires <ulink url="http://python.org">Python</ulink> to be installed.
</para>
</sect2>

<sect2 id="minculture">
<title>Spanish Ministry of Culture</title>
<para>
The <ulink url="http://www.mcu.es">Spanish Ministry of Culture</ulink> is an online Spanish book database. This data source <link linkend="externalexec">runs as a script</link> and requires <ulink url="http://python.org">Python</ulink> to be installed.
</para>
</sect2>

<sect2 id="darkhorse">
<title>Dark Horse Comics</title>
<para>
<ulink url="http://darkhorse.com">Dark Horse Comics</ulink> is a comic book publisher. This data source <link linkend="externalexec">runs as a script</link> and requires <ulink url="http://python.org">Python</ulink> to be installed.
</para>
</sect2>

<sect2 id="externalexec">
<title>External Scripts or Applications</title>
<para>
As an easier way for &appname; to integrate with third-party plugins, external scripts or applications may be used as an interface for searching other information sources. &appname; will execute a command, and pass the search terms as command-line options.
</para>

<screenshot>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="externalexec-options.png"/></imageobject>
</mediaobject>
</screenshot>

<para>
The collection type returned by the script must be set, along with the data format. Not only can &appname; import data from scripts that
use the <link linkend="file-format">default &appname; &xml; format</link>, but it can also import other formats as well, such as bibtex.
</para>

<para>The full path to the application should be entered in the source options. Be aware that the application is executed on the system with the same permissions as the current user, so do not use scripts from untrusted sources. Check the boxes next to the search keys supported by the application, and enter the required command line options in the edit box. The search value will be inserted where <userinput>%1</userinput> appears.
</para>

<para>
For updating entries already in the collection, the final checkbox and edit box are used to determine the command-line options. The entry fields used to find an update must be entered, in the same format as used for <emphasis><link linkend="dependent">Dependent</link></emphasis> fields.
</para>
</sect2>

</sect1>

</chapter>
