]> git.street.me.uk Git - andy/viking.git/blame_incremental - help/viking.xml
[QA] Explain some more map configuration options.
[andy/viking.git] / help / viking.xml
... / ...
CommitLineData
1<?xml version='1.0' encoding='ISO-8859-1'?>
2<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
3"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
4
5<!--
6
7Process this file with an XSLT processor: `xsltproc \
8-''-nonet /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\
9manpages/docbook.xsl manpage.dbk'. A manual page
10<package>.<section> will be generated. You may view the
11manual page with: nroff -man <package>.<section> | less'. A
12typical entry in a Makefile or Makefile.am is:
13
14DB2MAN=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\
15manpages/docbook.xsl
16XP=xsltproc -''-nonet
17
18manpage.1: manpage.dbk
19 $(XP) $(DB2MAN) $<
20
21The xsltproc binary is found in the xsltproc package. The
22XSL files are in docbook-xsl. Please remember that if you
23create the nroff version in one of the debian/rules file
24targets (such as build), you will need to include xsltproc
25and docbook-xsl in your Build-Depends control field.
26
27-->
28
29 <!-- Fill in your name for FIRSTNAME and SURNAME. -->
30 <!ENTITY dhfirstname "<firstname>Ralf</firstname>">
31 <!ENTITY dhsurname "<surname>Meyer</surname>">
32 <!-- Please adjust the date whenever revising the manpage. -->
33 <!ENTITY dhdate "<date>2013-10-13</date>">
34 <!-- Would be nice if the version could auto-update. -->
35 <!ENTITY dhsource "Viking">
36 <!ENTITY dhversion "1.5.0">
37 <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
38 allowed: see man(7), man(1). -->
39 <!ENTITY dhsection "<manvolnum>1</manvolnum>">
40 <!ENTITY dhemail "<email>ranfyy@gmail.com</email>">
41 <!ENTITY dhusername "Ralf Meyer">
42 <!ENTITY dhucpackage "<refentrytitle>VIKING</refentrytitle>">
43 <!ENTITY dhpackage "viking">
44
45 <!ENTITY debian "<productname>Debian</productname>">
46 <!ENTITY gnu "<acronym>GNU</acronym>">
47 <!ENTITY gpl "&gnu; <acronym>GPL</acronym>">
48]>
49
50<reference>
51<title>&dhsource; &dhversion;</title>
52
53<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
54 <refentryinfo>
55 <address>
56 &dhemail;
57 </address>
58 <copyright>
59 <year>2007</year>
60 <holder>&dhusername;</holder>
61 </copyright>
62 <copyright>
63 <year>2010</year>
64 <holder>Guilhem Bonnefille</holder>
65 </copyright>
66 <copyright>
67 <year>2013</year>
68 <holder>Rob Norris</holder>
69 </copyright>
70 &dhdate;
71 </refentryinfo>
72 <refmeta>
73 &dhucpackage;
74 &dhsection;
75 <refmiscinfo CLASS="source">&dhsource;</refmiscinfo>
76 <refmiscinfo CLASS="version">&dhversion;</refmiscinfo>
77 </refmeta>
78 <refnamediv>
79 <refname>&dhpackage;</refname>
80
81 <refpurpose>program to manage GPS data</refpurpose>
82 </refnamediv>
83 <refsynopsisdiv>
84 <cmdsynopsis>
85 <command>&dhpackage;</command>
86 <group choice="opt">
87 <arg choice="plain"><option>-d</option></arg>
88 <arg choice="plain"><option>--debug</option></arg>
89 </group>
90 <group choice="opt">
91 <arg choice="plain"><option>-V</option></arg>
92 <arg choice="plain"><option>--verbose</option></arg>
93 </group>
94 <arg rep="repeat"><replaceable>file</replaceable></arg>
95 </cmdsynopsis>
96 <cmdsynopsis>
97 <command>&dhpackage;</command>
98 <group choice="opt">
99 <arg choice="plain"><option>-h</option></arg>
100 <arg choice="plain"><option>--help</option></arg>
101 </group>
102 </cmdsynopsis>
103 <cmdsynopsis>
104 <command>&dhpackage;</command>
105 <group choice="opt">
106 <arg choice="plain"><option>-v</option></arg>
107 <arg choice="plain"><option>--version</option></arg>
108 </group>
109 </cmdsynopsis>
110 </refsynopsisdiv>
111 <refsect1>
112 <title>DESCRIPTION</title>
113
114 <para>
115 Viking is a program to manage GPS data.
116 </para>
117 <para>
118 You can import and plot tracks, routes and waypoints, show OpenStreetMap (OSM) maps and/or
119 Terraserver maps under it, add coordinate lines, make new tracks, routes and waypoints, hide different things, etc.
120 It is written in C with the GTK+ 2 toolkit, available for Linux, other POSIX operating systems and Windows.
121 </para>
122 <para>
123 Homepage: <ulink type="http" url="http://viking.sf.net">http://viking.sf.net</ulink>
124 </para>
125 <para>
126 Viking is licensed under the GNU GPL.
127 </para>
128
129 </refsect1>
130 <refsect1>
131 <title>OPTIONS</title>
132
133 <variablelist>
134 <varlistentry>
135 <term><option>file</option></term>
136 <listitem>
137 <para>Specify file to load at start.</para>
138 </listitem>
139 </varlistentry>
140 <varlistentry>
141 <term><option>-d</option></term>
142 <term><option>--debug</option></term>
143 <listitem>
144 <para>Enable debug output.</para>
145 </listitem>
146 </varlistentry>
147 <varlistentry>
148 <term><option>-V</option></term>
149 <term><option>--verbose</option></term>
150 <listitem>
151 <para>Enable verbose output.</para>
152 </listitem>
153 </varlistentry>
154 <varlistentry>
155 <term><option>-?</option></term>
156 <term><option>--help</option></term>
157 <listitem>
158 <para>Show help options.</para>
159 </listitem>
160 </varlistentry>
161 <varlistentry>
162 <term><option>-v</option></term>
163 <term><option>--version</option></term>
164 <listitem>
165 <para>Show version.</para>
166 </listitem>
167 </varlistentry>
168 </variablelist>
169
170 </refsect1>
171 <refsect1>
172 <title>Extending Viking</title>
173
174 <para>Currently, &dhpackage; has some extension 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>
175 <para>Here is an example:
176<literallayout><![CDATA[
177<objects>
178 <object class="ClassName">
179 <property name="property_name1">Property value</property>
180 <property name="property_name2">Property value</property>
181 </object>
182 ...
183<objects>
184]]>
185</literallayout>
186</para>
187 <para>You can find more examples in the documentation part of the distribution.</para>
188 <formalpara>
189 <title>Map Source</title>
190 <para>It is possible to add new map's sources. The file is <filename>~/.viking/maps.xml</filename>.</para>
191 <para>An example of the file in the distribution <filename>doc/examples/maps.xml</filename>.</para>
192 <para>The VikSlippyMapSource allows to declare any map's source working like OpenStreetMap. It supports the following properties:
193 <variablelist>
194 <varlistentry>
195 <term>id</term>
196 <listitem><para>this is an integer and should be unique as it used to identify the map source</para></listitem>
197 </varlistentry>
198 <varlistentry>
199 <term>name</term>
200 <listitem><para>a string (should be unique) that is used for the OSM style cache directory name when the Map Cache directory is the default (<filename>~/.viking-maps</filename>)</para></listitem>
201 </varlistentry>
202 <varlistentry>
203 <term>label</term>
204 <listitem><para>the text displayed in the map's source selection dialog</para></listitem>
205 </varlistentry>
206 <varlistentry>
207 <term>hostname</term>
208 <listitem><para>the server's hostname (eg. "tile.openstreetmap.org")</para></listitem>
209 </varlistentry>
210 <varlistentry>
211 <term>url</term>
212 <listitem><para>the parametrized address of the tile, in the spirit of C printf format, with 3 "%d" fields for Z, X and Y (in that order) (eg. "/%d/%d/%d.png")</para></listitem>
213 </varlistentry>
214 <varlistentry>
215 <term>zoom-min (optional)</term>
216 <listitem><para>The minimum zoom value supported by the tile server. The Default is 0 if not specified.</para></listitem>
217 </varlistentry>
218 <varlistentry>
219 <term>zoom-max (optional)</term>
220 <listitem>
221 <para>The maximum zoom value supported by the tile server. The Default is 18 if not specified.</para>
222 <para>See <ulink url="http://wiki.openstreetmap.org/wiki/Zoom_levels">Zoom Levels</ulink></para>
223 </listitem>
224 </varlistentry>
225 <varlistentry>
226 <term>file-extension (optional)</term>
227 <listitem>
228 <para>The file extension of the files on disk. The default is <emphasis>.png</emphasis></para>
229 <para>If the tile source URL ends in something other than .png, then this parameter will need to match it.</para>
230 <para>This can also be useful in reading a tileset from other software which may name tiles in an alternative form,
231 e.g. for Mobile Atlas creator it names them <emphasis>.png.tile</emphasis></para>
232 <note><para>The file types actually usable are those supported by GDK Pixbuf Library, which includes at least PNG and JPEG.</para></note>
233 <note><para>Remember to include the beginning <emphasis>'.'</emphasis> when specifying this parameter.</para></note>
234 </listitem>
235 </varlistentry>
236 <varlistentry>
237 <term>switch-xy (optional)</term>
238 <listitem>
239 <para>Swap the X,Y values around in the URL parametrized ordering.</para>
240 <para>The default is false.</para>
241 </listitem>
242 </varlistentry>
243 <varlistentry>
244 <term>check-file-server-time (optional)</term>
245 <listitem>
246 <para>Sends the timestamp of the tile to the server, so the server can decide whether it should send a new tile or not.</para>
247 <para>The default is false.</para>
248 </listitem>
249 </varlistentry>
250 <varlistentry>
251 <term>use-etag (optional)</term>
252 <listitem>
253 <para>Use and compare the <ulink url="http://en.wikipedia.org/wiki/HTTP_ETag">ETag</ulink> value in determining whether to download a newer tile. The default is false.</para>
254 <para>The ETag value is stored in a separate file in the same directory as the tile to enable checking the value across multiple runs of the program.</para>
255 </listitem>
256 </varlistentry>
257 </variablelist>
258 </para>
259 <para>The VikTmsMapSource allows to declare any TMS service. It supports the following properties (as per VikSlippyMapSource above):
260 <variablelist>
261 <varlistentry>
262 <term>id</term>
263 </varlistentry>
264 <varlistentry>
265 <term>label</term>
266 </varlistentry>
267 <varlistentry>
268 <term>hostname</term>
269 </varlistentry>
270 <varlistentry>
271 <term>url</term>
272 </varlistentry>
273 <varlistentry>
274 <term>check-file-server-time (optional)</term>
275 </varlistentry>
276 </variablelist>
277 </para>
278 <para>The VikWmscMapSource allows to declare any WMS or WMS-C service. It supports the following properties (as per VikSlippyMapSource above):
279 <variablelist>
280 <varlistentry>
281 <term>id</term>
282 </varlistentry>
283 <varlistentry>
284 <term>label</term>
285 </varlistentry>
286 <varlistentry>
287 <term>hostname</term>
288 </varlistentry>
289 <varlistentry>
290 <term>url</term>
291 </varlistentry>
292 <varlistentry>
293 <term>check-file-server-time (optional)</term>
294 </varlistentry>
295 </variablelist>
296 </para>
297 </formalpara>
298
299 <formalpara>
300 <title>Go-to search engines</title>
301 <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>
302 <para>An example of the file in the distribution <filename>doc/examples/goto_tools.xml</filename>.</para>
303 <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>
304 <para>The related properties are:
305 <variablelist>
306 <varlistentry>
307 <term>label</term>
308 <listitem><para>the text displayed in the <guilabel>Go-To</guilabel> dialog</para></listitem>
309 </varlistentry>
310 <varlistentry>
311 <term>url-format</term>
312 <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>
313 </varlistentry>
314 <varlistentry>
315 <term>lat-path</term>
316 <listitem><para>XML path of the latitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
317 </varlistentry>
318 <varlistentry>
319 <term>lat-attr (optional)</term>
320 <listitem><para>name of the attribute (of previous element) containing the latitude</para></listitem>
321 </varlistentry>
322 <varlistentry>
323 <term>lon-path</term>
324 <listitem><para>XML path of the longitude (eg. <literal>/root/parent/elem</literal>)</para></listitem>
325 </varlistentry>
326 <varlistentry>
327 <term>lon-attr (optional)</term>
328 <listitem><para>name of the attribute (of previous element) containing the longiude</para></listitem>
329 </varlistentry>
330 </variablelist>
331 </para>
332 <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>
333 </formalpara>
334
335 <formalpara>
336 <title>External tools</title>
337 <para>It is possible to add new external tools. The file is <filename>~/.viking/external_tools.xml</filename>.</para>
338 <para>An example of the file in the distribution <filename>doc/examples/external_tools.xml</filename>.</para>
339 <para>The VikWebtoolCenter allows to declare any Webtool using a logic based on center coordinates and zoom level value.</para>
340 <para>The related properties are:
341 <variablelist>
342 <varlistentry>
343 <term>label</term>
344 <listitem><para>the text displayed in the menu entry</para></listitem>
345 </varlistentry>
346 <varlistentry>
347 <term>url</term>
348 <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&amp;lon=%s&amp;zoom=%d")</para></listitem>
349 </varlistentry>
350 </variablelist>
351 </para>
352 <para>The VikWebtoolBounds allows to declare any Webtool using a logic based on bounds coordinates.</para>
353 <para>The related properties are:
354 <variablelist>
355 <varlistentry>
356 <term>label</term>
357 <listitem><para>the text displayed in the menu entry</para></listitem>
358 </varlistentry>
359 <varlistentry>
360 <term>url</term>
361 <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&amp;right=%s&amp;bottom=%s&amp;top=%s")</para></listitem>
362 </varlistentry>
363 </variablelist>
364 </para>
365 </formalpara>
366
367 <formalpara>
368 <title>Remote File Datasources</title>
369 <para>It is possible to add web references expected to return a file which can then be opened directly or converted via GPSBabel.</para>
370 <para>The file is <filename>~/.viking/datasources.xml</filename>.</para>
371 <para>An example of the file is in the source distribution <filename>doc/examples/datasources.xml</filename>.</para>
372 <para>The VikWebtoolDatasource allows to declare any URL using logic based on coordinates.</para>
373 <para>The related properties are:
374 <variablelist>
375 <varlistentry>
376 <term>label</term>
377 <listitem><para>the text displayed in the menu entry</para></listitem>
378 </varlistentry>
379 <varlistentry>
380 <term>url</term>
381 <listitem>
382 <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&amp;lon=%s</literal></para>
383 <para>The order and meaning of these parameters is given by the url_format_code below</para>
384 </listitem>
385 </varlistentry>
386 <varlistentry>
387 <term>url_format_code</term>
388 <listitem>
389 <para>A string describing the parametrized URL substitution parameters, each character represents how to translate each term.</para>
390 <para>B = Bottom of the current view i.e. minimum latitude</para>
391 <para>L = Left of the current view i.e. minimum longitude</para>
392 <para>T = Top of the current view i.e. maximum latitude</para>
393 <para>R = Right of the current view i.e. maximum longitude</para>
394 <para>A = center lAtitude of the current view</para>
395 <para>O = center lOngitude of the current view</para>
396 <para>Z = OSM Zoom value of the current view. See <ulink url="http://wiki.openstreetmap.org/wiki/Zoom_levels">Zoom Levels</ulink></para>
397 <para>Thus for the url example above then the format code should be <emphasis>AO</emphasis></para>
398 </listitem>
399 </varlistentry>
400 <varlistentry>
401 <term>file_type</term>
402 <listitem>
403 <para>This value is passed on for the -i parameter in interfacing with GPSBabel.</para>
404 <para>If it is not defined then the returned file is interpreted internally as a GPX file.</para>
405 <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>
406 </listitem>
407 </varlistentry>
408 </variablelist>
409 </para>
410 </formalpara>
411
412 </refsect1>
413 <refsect1>
414 <title>FILES</title>
415
416 <variablelist>
417 <varlistentry>
418 <term><filename>~/.viking/maps.xml</filename></term>
419 <listitem>
420 <para>File containing definition of map sources.</para>
421 <para>See previous section for details.</para>
422 </listitem>
423 </varlistentry>
424 <varlistentry>
425 <term><filename>~/.viking/goto_tools.xml</filename></term>
426 <listitem>
427 <para>File containing definition of "Go-to" services.</para>
428 <para>See previous section for details.</para>
429 </listitem>
430 </varlistentry>
431 <varlistentry>
432 <term><filename>~/.viking/external_tools.xml</filename></term>
433 <listitem>
434 <para>File containing definition of external tools.</para>
435 <para>See previous section for details.</para>
436 </listitem>
437 </varlistentry>
438 <varlistentry>
439 <term><filename>~/.viking/datasources.xml</filename></term>
440 <listitem>
441 <para>File containing definition of remote file datasources.</para>
442 <para>See previous section for details.</para>
443 </listitem>
444 </varlistentry>
445 <varlistentry>
446 <term><filename>~/.viking/viking.prefs</filename></term>
447 <listitem>
448 <para>Preferences for &dhpackage;.</para>
449 </listitem>
450 </varlistentry>
451 <varlistentry>
452 <term><filename>~/.viking/viking_layer_defaults.ini</filename></term>
453 <listitem>
454 <para>Layer default values for &dhpackage;.</para>
455 </listitem>
456 </varlistentry>
457 <varlistentry>
458 <term><filename>~/.viking/viking.ini</filename></term>
459 <listitem>
460 <para>Values for &dhpackage; automatically saved between sessions.</para>
461 <para>Not generally intended to be manually edited.</para>
462 <para>However some finer control of default internal values can be set.</para>
463 </listitem>
464 </varlistentry>
465 <varlistentry>
466 <term><filename>~/.viking/cookies.txt</filename></term>
467 <listitem>
468 <para>File hosting cookies used by &dhpackage;.</para>
469 </listitem>
470 </varlistentry>
471 <varlistentry>
472 <term><filename>~/.viking-maps/</filename></term>
473 <listitem>
474 <para>Map cache of tiles downloaded by &dhpackage;.</para>
475 </listitem>
476 </varlistentry>
477 </variablelist>
478
479 <para>Extension files (<filename>maps.xml</filename>,
480 <filename>goto_tools.xml</filename>,
481 <filename>datasources.xml</filename>,
482 <filename>external_tools.xml</filename>)
483 are also searched in <filename>/etc/viking</filename> and
484 <filename>/usr/share/viking</filename> directories (or related in your system).</para>
485
486 </refsect1>
487 <refsect1>
488 <title>ENVIRONMENT</title>
489
490 <variablelist>
491 <varlistentry>
492 <term><envar>XDG_DATA_HOME</envar></term>
493 <listitem>
494 <para>Optional directory to look for extension files
495 (<filename>maps.xml</filename>, <filename>goto_tools.xml</filename>,
496 <filename>external_tools.xml</filename>).</para>
497 </listitem>
498 </varlistentry>
499 <varlistentry>
500 <term><envar>XDG_DATA_DIRS</envar></term>
501 <listitem>
502 <para>Path used to change the directories scanned for extension files
503 (<filename>maps.xml</filename>, <filename>goto_tools.xml</filename>,
504 <filename>external_tools.xml</filename>).</para>
505 </listitem>
506 </varlistentry>
507 </variablelist>
508
509 </refsect1>
510 <refsect1>
511 <title>AUTHOR</title>
512
513 <para>This manual page was originally written by &dhusername; &dhemail; for
514 the &debian; system (but may be used by others). Permission is
515 granted to copy, distribute and/or modify this document under
516 the terms of the &gnu; General Public License, Version 2 any
517 later version published by the Free Software Foundation.
518 </para>
519 <para>
520 On Debian systems, the complete text of the GNU General Public
521 License can be found in /usr/share/common-licenses/GPL.
522 </para>
523
524 </refsect1>
525</refentry>
526</reference>