# /doc/
/doc/Makefile.in
/doc/Makefile
-/doc/viking.1
# /doc/dev/
/doc/dev/Makefile.in
doc/reference/sgml*
doc/reference/*stamp
+# help/
+help/viking.1
# help/C/
help/C/viking.pdf
help/C/*html
SUBDIRS = examples
-EXTRA_DIST = GPSMAPPER \
- viking.xml
+EXTRA_DIST = GPSMAPPER
CLEANFILES=
-
-# man pages processing
-# TODO conditional processing
-# (availability of docbook stylesheet and xsltproc)
-if GEN_MANPAGES
-MANPAGES=viking.1
-man_MANS = $(MANPAGES)
-CLEANFILES+=$(MANPAGES)
-endif
-DB2MAN=@DB2MAN_XSL@
-XP=@XP@ -''-nonet
-
-%.1: %.xml
- $(XP) -o $@ $(DB2MAN) $<
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1'?>
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-
-<!--
-
-Process this file with an XSLT processor: `xsltproc \
--''-nonet /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\
-manpages/docbook.xsl manpage.dbk'. A manual page
-<package>.<section> will be generated. You may view the
-manual page with: nroff -man <package>.<section> | less'. A
-typical entry in a Makefile or Makefile.am is:
-
-DB2MAN=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\
-manpages/docbook.xsl
-XP=xsltproc -''-nonet
-
-manpage.1: manpage.dbk
- $(XP) $(DB2MAN) $<
-
-The xsltproc binary is found in the xsltproc package. The
-XSL files are in docbook-xsl. Please remember that if you
-create the nroff version in one of the debian/rules file
-targets (such as build), you will need to include xsltproc
-and docbook-xsl in your Build-Depends control field.
-
--->
-
- <!-- Fill in your name for FIRSTNAME and SURNAME. -->
- <!ENTITY dhfirstname "<firstname>Ralf</firstname>">
- <!ENTITY dhsurname "<surname>Meyer</surname>">
- <!-- Please adjust the date whenever revising the manpage. -->
- <!ENTITY dhdate "<date>2013-10-13</date>">
- <!-- Would be nice if the version could auto-update. -->
- <!ENTITY dhsource "Viking">
- <!ENTITY dhversion "1.5.0">
- <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
- allowed: see man(7), man(1). -->
- <!ENTITY dhsection "<manvolnum>1</manvolnum>">
- <!ENTITY dhemail "<email>ranfyy@gmail.com</email>">
- <!ENTITY dhusername "Ralf Meyer">
- <!ENTITY dhucpackage "<refentrytitle>VIKING</refentrytitle>">
- <!ENTITY dhpackage "viking">
-
- <!ENTITY debian "<productname>Debian</productname>">
- <!ENTITY gnu "<acronym>GNU</acronym>">
- <!ENTITY gpl "&gnu; <acronym>GPL</acronym>">
-]>
-
-<reference>
-<title>&dhsource; &dhversion;</title>
-
-<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
- <refentryinfo>
- <address>
- &dhemail;
- </address>
- <copyright>
- <year>2007</year>
- <holder>&dhusername;</holder>
- </copyright>
- <copyright>
- <year>2010</year>
- <holder>Guilhem Bonnefille</holder>
- </copyright>
- <copyright>
- <year>2013</year>
- <holder>Rob Norris</holder>
- </copyright>
- &dhdate;
- </refentryinfo>
- <refmeta>
- &dhucpackage;
- &dhsection;
- <refmiscinfo CLASS="source">&dhsource;</refmiscinfo>
- <refmiscinfo CLASS="version">&dhversion;</refmiscinfo>
- </refmeta>
- <refnamediv>
- <refname>&dhpackage;</refname>
-
- <refpurpose>program to manage GPS data</refpurpose>
- </refnamediv>
- <refsynopsisdiv>
- <cmdsynopsis>
- <command>&dhpackage;</command>
- <group choice="opt">
- <arg choice="plain"><option>-d</option></arg>
- <arg choice="plain"><option>--debug</option></arg>
- </group>
- <group choice="opt">
- <arg choice="plain"><option>-V</option></arg>
- <arg choice="plain"><option>--verbose</option></arg>
- </group>
- <arg rep="repeat"><replaceable>file</replaceable></arg>
- </cmdsynopsis>
- <cmdsynopsis>
- <command>&dhpackage;</command>
- <group choice="opt">
- <arg choice="plain"><option>-h</option></arg>
- <arg choice="plain"><option>--help</option></arg>
- </group>
- </cmdsynopsis>
- <cmdsynopsis>
- <command>&dhpackage;</command>
- <group choice="opt">
- <arg choice="plain"><option>-v</option></arg>
- <arg choice="plain"><option>--version</option></arg>
- </group>
- </cmdsynopsis>
- </refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
-
- <para>
- Viking is a program to manage GPS data.
- </para>
- <para>
- You can import and plot tracks, routes and waypoints, show OpenStreetMap (OSM) maps and/or
- Terraserver maps under it, add coordinate lines, make new tracks, routes and waypoints, hide different things, etc.
- It is written in C with the GTK+ 2 toolkit, available for Linux, other POSIX operating systems and Windows.
- </para>
- <para>
- Homepage: <ulink type="http" url="http://viking.sf.net">http://viking.sf.net</ulink>
- </para>
- <para>
- Viking is licensed under the GNU GPL.
- </para>
-
- </refsect1>
- <refsect1>
- <title>OPTIONS</title>
-
- <variablelist>
- <varlistentry>
- <term><option>file</option></term>
- <listitem>
- <para>Specify file to load at start.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><option>-d</option></term>
- <term><option>--debug</option></term>
- <listitem>
- <para>Enable debug output.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><option>-V</option></term>
- <term><option>--verbose</option></term>
- <listitem>
- <para>Enable verbose output.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><option>-?</option></term>
- <term><option>--help</option></term>
- <listitem>
- <para>Show help options.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><option>-v</option></term>
- <term><option>--version</option></term>
- <listitem>
- <para>Show version.</para>
- </listitem>
- </varlistentry>
- </variablelist>
-
- </refsect1>
- <refsect1>
- <title>Extending Viking</title>
-
- <para>Currently, &dhpackage; has some extention points based on configuration files. The file format is heavily inspired by the GtkBuilder file format: you specify the class of the GObject to build and set its properties. Technically, it is a XML file containing a "objects" root element. Inside this element, you set a collection of "object".</para>
- <para>Here is an example:
-<literallayout><![CDATA[
-<objects>
- <object class="ClassName">
- <property name="property_name1">Property value</property>
- <property name="property_name2">Property value</property>
- </object>
- ...
-<objects>
-]]>
-</literallayout>
-</para>
- <para>You can find more examples in the documentation part of the distribution.</para>
- <formalpara>
- <title>Map Source</title>
- <para>It is possible to add new map's sources. The file is <filename>~/.viking/maps.xml</filename>.</para>
- <para>An example of the file in the distribution <filename>doc/examples/maps.xml</filename>.</para>
- <para>The VikSlippyMapSource allows to declare any map's source working like OpenStreetMap. It supports the following properties:
- <variablelist>
- <varlistentry>
- <term>id</term>
- <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>label</term>
- <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>hostname</term>
- <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>url</term>
- <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 3 "%d" fields for X, Y and Z (zoom level) (eg. "/%d/%d/%d.png")</para></listitem>
- </varlistentry>
- </variablelist>
- </para>
- <para>The VikTmsMapSource allows to declare any TMS service. It supports the following properties:
- <variablelist>
- <varlistentry>
- <term>id</term>
- <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>label</term>
- <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>hostname</term>
- <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>url</term>
- <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 3 "%d" fields for X, Y and Z (zoom level) (eg. "/%d/%d/%d.png")</para></listitem>
- </varlistentry>
- </variablelist>
- </para>
- <para>The VikWmscMapSource allows to declare any WMS or WMS-C service. It supports the following properties:
- <variablelist>
- <varlistentry>
- <term>id</term>
- <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>label</term>
- <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>hostname</term>
- <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>url</term>
- <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 4 "%s" fields for bounding box coordinates (eg. "/coord=%s,%s,%s,%s")</para></listitem>
- </varlistentry>
- </variablelist>
- </para>
- </formalpara>
-
- <formalpara>
- <title>Go-to search engines</title>
- <para>It is possible to add new new search engines for the "Go-To" feature. The file is <filename>~/.viking/goto_tools.xml</filename>.</para>
- <para>An example of the file in the distribution <filename>doc/examples/goto_tools.xml</filename>.</para>
- <para>Currently, there is a single object class available: VikGotoXmlTool. Such feature allows to declare any search engine using a XML format as result.</para>
- <para>The related properties are:
- <variablelist>
- <varlistentry>
- <term>label</term>
- <listitem><para>the text displayed in the <guilabel>Go-To</guilabel> dialog</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>url-format</term>
- <listitem><para>the parametrized address of the query, in the spirit of C <function>printf</function> format, with a single "%s" field (replaced by the query string)</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>lat-path</term>
- <listitem><para>XML path of the latitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>lat-attr (optional)</term>
- <listitem><para>name of the attribute (of previous element) containing the latitude</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>lon-path</term>
- <listitem><para>XML path of the longitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>lon-attr (optional)</term>
- <listitem><para>name of the attribute (of previous element) containing the longiude</para></listitem>
- </varlistentry>
- </variablelist>
- </para>
- <para>As a facility (or readability) it is possible to set both path and attribute name in a single property, like an XPath expression. To do so, simply set both info in lat-path (or lon-path) in the following format: <literal>/root/parent/elem@attribute</literal>.</para>
- </formalpara>
-
- <formalpara>
- <title>External tools</title>
- <para>It is possible to add new external tools. The file is <filename>~/.viking/external_tools.xml</filename>.</para>
- <para>An example of the file in the distribution <filename>doc/examples/external_tools.xml</filename>.</para>
- <para>The VikWebtoolCenter allows to declare any Webtool using a logic based on center coordinates and zoom level value.</para>
- <para>The related properties are:
- <variablelist>
- <varlistentry>
- <term>label</term>
- <listitem><para>the text displayed in the menu entry</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>url</term>
- <listitem><para>the parametrized URL to open, in the spirit of C printf format, with 2 "%s" and a "%d" fields for X, Y and Z (zoom level) (eg. "http://hostname/?lat=%s&lon=%s&zoom=%d")</para></listitem>
- </varlistentry>
- </variablelist>
- </para>
- <para>The VikWebtoolBounds allows to declare any Webtool using a logic based on bounds coordinates.</para>
- <para>The related properties are:
- <variablelist>
- <varlistentry>
- <term>label</term>
- <listitem><para>the text displayed in the menu entry</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>url</term>
- <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 4 "%s" fields for left, right, bottom and top (eg. "http://hostname:8111/load_and_zoom?left=%s&right=%s&bottom=%s&top=%s")</para></listitem>
- </varlistentry>
- </variablelist>
- </para>
- </formalpara>
-
- <formalpara>
- <title>Remote File Datasources</title>
- <para>It is possible to add web references expected to return a file which can then be opened directly or converted via GPSBabel.</para>
- <para>The file is <filename>~/.viking/datasources.xml</filename>.</para>
- <para>An example of the file is in the source distribution <filename>doc/examples/datasources.xml</filename>.</para>
- <para>The VikWebtoolDatasource allows to declare any URL using logic based on coordinates.</para>
- <para>The related properties are:
- <variablelist>
- <varlistentry>
- <term>label</term>
- <listitem><para>the text displayed in the menu entry</para></listitem>
- </varlistentry>
- <varlistentry>
- <term>url</term>
- <listitem>
- <para>the parametrized URL to open in the spirit of C printf format, with up to 7 "%s" values. e.g. <literal>http://hostname/getfile?lat=%s&lon=%s</literal></para>
- <para>The order and meaning of these parameters is given by the url_format_code below</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>url_format_code</term>
- <listitem>
- <para>A string describing the parametrized URL substitution parameters, each character represents how to translate each term.</para>
- <para>B = Bottom of the current view i.e. minimum latitude</para>
- <para>L = Left of the current view i.e. minimum longitude</para>
- <para>T = Top of the current view i.e. maximum latitude</para>
- <para>R = Right of the current view i.e. maximum longitude</para>
- <para>A = center lAtitude of the current view</para>
- <para>O = center lOngitude of the current view</para>
- <para>Z = OSM Zoom value of the current view. See <ulink url="http://wiki.openstreetmap.org/wiki/Zoom_levels">Zoom Levels</ulink></para>
- <para>Thus for the url example above then the format code should be <emphasis>AO</emphasis></para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>file_type</term>
- <listitem>
- <para>This value is passed on for the -i parameter in interfacing with GPSBabel.</para>
- <para>If it is not defined then the returned file is interpreted internally as a GPX file.</para>
- <para>Possible values such as 'kml', 'mapsource' etc.. can be used. See <ulink url="http://www.gpsbabel.org/capabilities.html">GPSBabel File Formats</ulink> for the full list.</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </para>
- </formalpara>
-
- </refsect1>
- <refsect1>
- <title>FILES</title>
-
- <variablelist>
- <varlistentry>
- <term><filename>~/.viking/maps.xml</filename></term>
- <listitem>
- <para>File containing definition of map sources.</para>
- <para>See previous section for details.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><filename>~/.viking/goto_tools.xml</filename></term>
- <listitem>
- <para>File containing definition of "Go-to" services.</para>
- <para>See previous section for details.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><filename>~/.viking/external_tools.xml</filename></term>
- <listitem>
- <para>File containing definition of external tools.</para>
- <para>See previous section for details.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><filename>~/.viking/datasources.xml</filename></term>
- <listitem>
- <para>File containing definition of remote file datasources.</para>
- <para>See previous section for details.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><filename>~/.viking/viking.prefs</filename></term>
- <listitem>
- <para>Preferences for &dhpackage;.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><filename>~/.viking/viking_layer_defaults.ini</filename></term>
- <listitem>
- <para>Layer default values for &dhpackage;.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><filename>~/.viking/viking.ini</filename></term>
- <listitem>
- <para>Values for &dhpackage; automatically saved between sessions.</para>
- <para>Not generally intended to be manually edited.</para>
- <para>However some finer control of default internal values can be set.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><filename>~/.viking/cookies.txt</filename></term>
- <listitem>
- <para>File hosting cookies used by &dhpackage;.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><filename>~/.viking-maps/</filename></term>
- <listitem>
- <para>Map cache of tiles downloaded by &dhpackage;.</para>
- </listitem>
- </varlistentry>
- </variablelist>
-
- <para>Extension files (<filename>maps.xml</filename>,
- <filename>goto_tools.xml</filename>,
- <filename>datasources.xml</filename>,
- <filename>external_tools.xml</filename>)
- are also searched in <filename>/etc/viking</filename> and
- <filename>/usr/share/viking</filename> directories (or related in your system).</para>
-
- </refsect1>
- <refsect1>
- <title>ENVIRONMENT</title>
-
- <variablelist>
- <varlistentry>
- <term><envar>XDG_DATA_HOME</envar></term>
- <listitem>
- <para>Optional directory to look for extension files
- (<filename>maps.xml</filename>, <filename>goto_tools.xml</filename>,
- <filename>external_tools.xml</filename>).</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><envar>XDG_DATA_DIRS</envar></term>
- <listitem>
- <para>Path used to change the directories scanned for extension files
- (<filename>maps.xml</filename>, <filename>goto_tools.xml</filename>,
- <filename>external_tools.xml</filename>).</para>
- </listitem>
- </varlistentry>
- </variablelist>
-
- </refsect1>
- <refsect1>
- <title>AUTHOR</title>
-
- <para>This manual page was originally written by &dhusername; &dhemail; for
- the &debian; system (but may be used by others). Permission is
- granted to copy, distribute and/or modify this document under
- the terms of the &gnu; General Public License, Version 2 any
- later version published by the Free Software Foundation.
- </para>
- <para>
- On Debian systems, the complete text of the GNU General Public
- License can be found in /usr/share/common-licenses/GPL.
- </para>
-
- </refsect1>
-</refentry>
-</reference>
figures/Viking-OSM-CycleMap-ManyTracks.jpg \
figures/DEM_file_info_dialog.png
DOC_LINGUAS =
+
+EXTRA_DIST = viking.xml
+
+CLEANFILES=
+# man pages processing
+# TODO conditional processing
+# (availability of docbook stylesheet and xsltproc)
+if GEN_MANPAGES
+MANPAGES=viking.1
+man_MANS = $(MANPAGES)
+CLEANFILES+=$(MANPAGES)
+endif
+DB2MAN=@DB2MAN_XSL@
+XP=@XP@ -''-nonet
+
+%.1: %.xml
+ $(XP) -o $@ $(DB2MAN) $<
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1'?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
+
+<!--
+
+Process this file with an XSLT processor: `xsltproc \
+-''-nonet /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\
+manpages/docbook.xsl manpage.dbk'. A manual page
+<package>.<section> will be generated. You may view the
+manual page with: nroff -man <package>.<section> | less'. A
+typical entry in a Makefile or Makefile.am is:
+
+DB2MAN=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\
+manpages/docbook.xsl
+XP=xsltproc -''-nonet
+
+manpage.1: manpage.dbk
+ $(XP) $(DB2MAN) $<
+
+The xsltproc binary is found in the xsltproc package. The
+XSL files are in docbook-xsl. Please remember that if you
+create the nroff version in one of the debian/rules file
+targets (such as build), you will need to include xsltproc
+and docbook-xsl in your Build-Depends control field.
+
+-->
+
+ <!-- Fill in your name for FIRSTNAME and SURNAME. -->
+ <!ENTITY dhfirstname "<firstname>Ralf</firstname>">
+ <!ENTITY dhsurname "<surname>Meyer</surname>">
+ <!-- Please adjust the date whenever revising the manpage. -->
+ <!ENTITY dhdate "<date>2013-10-13</date>">
+ <!-- Would be nice if the version could auto-update. -->
+ <!ENTITY dhsource "Viking">
+ <!ENTITY dhversion "1.5.0">
+ <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
+ allowed: see man(7), man(1). -->
+ <!ENTITY dhsection "<manvolnum>1</manvolnum>">
+ <!ENTITY dhemail "<email>ranfyy@gmail.com</email>">
+ <!ENTITY dhusername "Ralf Meyer">
+ <!ENTITY dhucpackage "<refentrytitle>VIKING</refentrytitle>">
+ <!ENTITY dhpackage "viking">
+
+ <!ENTITY debian "<productname>Debian</productname>">
+ <!ENTITY gnu "<acronym>GNU</acronym>">
+ <!ENTITY gpl "&gnu; <acronym>GPL</acronym>">
+]>
+
+<reference>
+<title>&dhsource; &dhversion;</title>
+
+<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
+ <refentryinfo>
+ <address>
+ &dhemail;
+ </address>
+ <copyright>
+ <year>2007</year>
+ <holder>&dhusername;</holder>
+ </copyright>
+ <copyright>
+ <year>2010</year>
+ <holder>Guilhem Bonnefille</holder>
+ </copyright>
+ <copyright>
+ <year>2013</year>
+ <holder>Rob Norris</holder>
+ </copyright>
+ &dhdate;
+ </refentryinfo>
+ <refmeta>
+ &dhucpackage;
+ &dhsection;
+ <refmiscinfo CLASS="source">&dhsource;</refmiscinfo>
+ <refmiscinfo CLASS="version">&dhversion;</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>&dhpackage;</refname>
+
+ <refpurpose>program to manage GPS data</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <cmdsynopsis>
+ <command>&dhpackage;</command>
+ <group choice="opt">
+ <arg choice="plain"><option>-d</option></arg>
+ <arg choice="plain"><option>--debug</option></arg>
+ </group>
+ <group choice="opt">
+ <arg choice="plain"><option>-V</option></arg>
+ <arg choice="plain"><option>--verbose</option></arg>
+ </group>
+ <arg rep="repeat"><replaceable>file</replaceable></arg>
+ </cmdsynopsis>
+ <cmdsynopsis>
+ <command>&dhpackage;</command>
+ <group choice="opt">
+ <arg choice="plain"><option>-h</option></arg>
+ <arg choice="plain"><option>--help</option></arg>
+ </group>
+ </cmdsynopsis>
+ <cmdsynopsis>
+ <command>&dhpackage;</command>
+ <group choice="opt">
+ <arg choice="plain"><option>-v</option></arg>
+ <arg choice="plain"><option>--version</option></arg>
+ </group>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+ <refsect1>
+ <title>DESCRIPTION</title>
+
+ <para>
+ Viking is a program to manage GPS data.
+ </para>
+ <para>
+ You can import and plot tracks, routes and waypoints, show OpenStreetMap (OSM) maps and/or
+ Terraserver maps under it, add coordinate lines, make new tracks, routes and waypoints, hide different things, etc.
+ It is written in C with the GTK+ 2 toolkit, available for Linux, other POSIX operating systems and Windows.
+ </para>
+ <para>
+ Homepage: <ulink type="http" url="http://viking.sf.net">http://viking.sf.net</ulink>
+ </para>
+ <para>
+ Viking is licensed under the GNU GPL.
+ </para>
+
+ </refsect1>
+ <refsect1>
+ <title>OPTIONS</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>file</option></term>
+ <listitem>
+ <para>Specify file to load at start.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-d</option></term>
+ <term><option>--debug</option></term>
+ <listitem>
+ <para>Enable debug output.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-V</option></term>
+ <term><option>--verbose</option></term>
+ <listitem>
+ <para>Enable verbose output.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-?</option></term>
+ <term><option>--help</option></term>
+ <listitem>
+ <para>Show help options.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-v</option></term>
+ <term><option>--version</option></term>
+ <listitem>
+ <para>Show version.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ </refsect1>
+ <refsect1>
+ <title>Extending Viking</title>
+
+ <para>Currently, &dhpackage; has some extention points based on configuration files. The file format is heavily inspired by the GtkBuilder file format: you specify the class of the GObject to build and set its properties. Technically, it is a XML file containing a "objects" root element. Inside this element, you set a collection of "object".</para>
+ <para>Here is an example:
+<literallayout><![CDATA[
+<objects>
+ <object class="ClassName">
+ <property name="property_name1">Property value</property>
+ <property name="property_name2">Property value</property>
+ </object>
+ ...
+<objects>
+]]>
+</literallayout>
+</para>
+ <para>You can find more examples in the documentation part of the distribution.</para>
+ <formalpara>
+ <title>Map Source</title>
+ <para>It is possible to add new map's sources. The file is <filename>~/.viking/maps.xml</filename>.</para>
+ <para>An example of the file in the distribution <filename>doc/examples/maps.xml</filename>.</para>
+ <para>The VikSlippyMapSource allows to declare any map's source working like OpenStreetMap. It supports the following properties:
+ <variablelist>
+ <varlistentry>
+ <term>id</term>
+ <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>label</term>
+ <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>hostname</term>
+ <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>url</term>
+ <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 3 "%d" fields for X, Y and Z (zoom level) (eg. "/%d/%d/%d.png")</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ <para>The VikTmsMapSource allows to declare any TMS service. It supports the following properties:
+ <variablelist>
+ <varlistentry>
+ <term>id</term>
+ <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>label</term>
+ <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>hostname</term>
+ <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>url</term>
+ <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 3 "%d" fields for X, Y and Z (zoom level) (eg. "/%d/%d/%d.png")</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ <para>The VikWmscMapSource allows to declare any WMS or WMS-C service. It supports the following properties:
+ <variablelist>
+ <varlistentry>
+ <term>id</term>
+ <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>label</term>
+ <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>hostname</term>
+ <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>url</term>
+ <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 4 "%s" fields for bounding box coordinates (eg. "/coord=%s,%s,%s,%s")</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </formalpara>
+
+ <formalpara>
+ <title>Go-to search engines</title>
+ <para>It is possible to add new new search engines for the "Go-To" feature. The file is <filename>~/.viking/goto_tools.xml</filename>.</para>
+ <para>An example of the file in the distribution <filename>doc/examples/goto_tools.xml</filename>.</para>
+ <para>Currently, there is a single object class available: VikGotoXmlTool. Such feature allows to declare any search engine using a XML format as result.</para>
+ <para>The related properties are:
+ <variablelist>
+ <varlistentry>
+ <term>label</term>
+ <listitem><para>the text displayed in the <guilabel>Go-To</guilabel> dialog</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>url-format</term>
+ <listitem><para>the parametrized address of the query, in the spirit of C <function>printf</function> format, with a single "%s" field (replaced by the query string)</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>lat-path</term>
+ <listitem><para>XML path of the latitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>lat-attr (optional)</term>
+ <listitem><para>name of the attribute (of previous element) containing the latitude</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>lon-path</term>
+ <listitem><para>XML path of the longitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>lon-attr (optional)</term>
+ <listitem><para>name of the attribute (of previous element) containing the longiude</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ <para>As a facility (or readability) it is possible to set both path and attribute name in a single property, like an XPath expression. To do so, simply set both info in lat-path (or lon-path) in the following format: <literal>/root/parent/elem@attribute</literal>.</para>
+ </formalpara>
+
+ <formalpara>
+ <title>External tools</title>
+ <para>It is possible to add new external tools. The file is <filename>~/.viking/external_tools.xml</filename>.</para>
+ <para>An example of the file in the distribution <filename>doc/examples/external_tools.xml</filename>.</para>
+ <para>The VikWebtoolCenter allows to declare any Webtool using a logic based on center coordinates and zoom level value.</para>
+ <para>The related properties are:
+ <variablelist>
+ <varlistentry>
+ <term>label</term>
+ <listitem><para>the text displayed in the menu entry</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>url</term>
+ <listitem><para>the parametrized URL to open, in the spirit of C printf format, with 2 "%s" and a "%d" fields for X, Y and Z (zoom level) (eg. "http://hostname/?lat=%s&lon=%s&zoom=%d")</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ <para>The VikWebtoolBounds allows to declare any Webtool using a logic based on bounds coordinates.</para>
+ <para>The related properties are:
+ <variablelist>
+ <varlistentry>
+ <term>label</term>
+ <listitem><para>the text displayed in the menu entry</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>url</term>
+ <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 4 "%s" fields for left, right, bottom and top (eg. "http://hostname:8111/load_and_zoom?left=%s&right=%s&bottom=%s&top=%s")</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </formalpara>
+
+ <formalpara>
+ <title>Remote File Datasources</title>
+ <para>It is possible to add web references expected to return a file which can then be opened directly or converted via GPSBabel.</para>
+ <para>The file is <filename>~/.viking/datasources.xml</filename>.</para>
+ <para>An example of the file is in the source distribution <filename>doc/examples/datasources.xml</filename>.</para>
+ <para>The VikWebtoolDatasource allows to declare any URL using logic based on coordinates.</para>
+ <para>The related properties are:
+ <variablelist>
+ <varlistentry>
+ <term>label</term>
+ <listitem><para>the text displayed in the menu entry</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>url</term>
+ <listitem>
+ <para>the parametrized URL to open in the spirit of C printf format, with up to 7 "%s" values. e.g. <literal>http://hostname/getfile?lat=%s&lon=%s</literal></para>
+ <para>The order and meaning of these parameters is given by the url_format_code below</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>url_format_code</term>
+ <listitem>
+ <para>A string describing the parametrized URL substitution parameters, each character represents how to translate each term.</para>
+ <para>B = Bottom of the current view i.e. minimum latitude</para>
+ <para>L = Left of the current view i.e. minimum longitude</para>
+ <para>T = Top of the current view i.e. maximum latitude</para>
+ <para>R = Right of the current view i.e. maximum longitude</para>
+ <para>A = center lAtitude of the current view</para>
+ <para>O = center lOngitude of the current view</para>
+ <para>Z = OSM Zoom value of the current view. See <ulink url="http://wiki.openstreetmap.org/wiki/Zoom_levels">Zoom Levels</ulink></para>
+ <para>Thus for the url example above then the format code should be <emphasis>AO</emphasis></para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>file_type</term>
+ <listitem>
+ <para>This value is passed on for the -i parameter in interfacing with GPSBabel.</para>
+ <para>If it is not defined then the returned file is interpreted internally as a GPX file.</para>
+ <para>Possible values such as 'kml', 'mapsource' etc.. can be used. See <ulink url="http://www.gpsbabel.org/capabilities.html">GPSBabel File Formats</ulink> for the full list.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </formalpara>
+
+ </refsect1>
+ <refsect1>
+ <title>FILES</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><filename>~/.viking/maps.xml</filename></term>
+ <listitem>
+ <para>File containing definition of map sources.</para>
+ <para>See previous section for details.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>~/.viking/goto_tools.xml</filename></term>
+ <listitem>
+ <para>File containing definition of "Go-to" services.</para>
+ <para>See previous section for details.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>~/.viking/external_tools.xml</filename></term>
+ <listitem>
+ <para>File containing definition of external tools.</para>
+ <para>See previous section for details.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>~/.viking/datasources.xml</filename></term>
+ <listitem>
+ <para>File containing definition of remote file datasources.</para>
+ <para>See previous section for details.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>~/.viking/viking.prefs</filename></term>
+ <listitem>
+ <para>Preferences for &dhpackage;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>~/.viking/viking_layer_defaults.ini</filename></term>
+ <listitem>
+ <para>Layer default values for &dhpackage;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>~/.viking/viking.ini</filename></term>
+ <listitem>
+ <para>Values for &dhpackage; automatically saved between sessions.</para>
+ <para>Not generally intended to be manually edited.</para>
+ <para>However some finer control of default internal values can be set.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>~/.viking/cookies.txt</filename></term>
+ <listitem>
+ <para>File hosting cookies used by &dhpackage;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>~/.viking-maps/</filename></term>
+ <listitem>
+ <para>Map cache of tiles downloaded by &dhpackage;.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Extension files (<filename>maps.xml</filename>,
+ <filename>goto_tools.xml</filename>,
+ <filename>datasources.xml</filename>,
+ <filename>external_tools.xml</filename>)
+ are also searched in <filename>/etc/viking</filename> and
+ <filename>/usr/share/viking</filename> directories (or related in your system).</para>
+
+ </refsect1>
+ <refsect1>
+ <title>ENVIRONMENT</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><envar>XDG_DATA_HOME</envar></term>
+ <listitem>
+ <para>Optional directory to look for extension files
+ (<filename>maps.xml</filename>, <filename>goto_tools.xml</filename>,
+ <filename>external_tools.xml</filename>).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><envar>XDG_DATA_DIRS</envar></term>
+ <listitem>
+ <para>Path used to change the directories scanned for extension files
+ (<filename>maps.xml</filename>, <filename>goto_tools.xml</filename>,
+ <filename>external_tools.xml</filename>).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ </refsect1>
+ <refsect1>
+ <title>AUTHOR</title>
+
+ <para>This manual page was originally written by &dhusername; &dhemail; for
+ the &debian; system (but may be used by others). Permission is
+ granted to copy, distribute and/or modify this document under
+ the terms of the &gnu; General Public License, Version 2 any
+ later version published by the Free Software Foundation.
+ </para>
+ <para>
+ On Debian systems, the complete text of the GNU General Public
+ License can be found in /usr/share/common-licenses/GPL.
+ </para>
+
+ </refsect1>
+</refentry>
+</reference>