Merge remote-tracking branch 'spalax/paternal/upload-svg'
[ikiwiki] / doc / plugins / osm.mdwn
1 [[!template id=plugin name=osm author="Blars Blarson, Antoine Beaupré"]]
2 [[!tag type/special-purpose todo/geotagging]]
3
4 ## OpenStreetMap/OpenLayers support for ikiwiki
5
6 This plugin provides simple OpenStreetMap/OpenLayers support for ikiwiki.
7 It can embed OpenStreetMap viewports within a page or link to a bigger map
8 that will have multiple markers, generated with a KML (or CSV, or GeoJSON)
9 datafile of markers based on the different calling pages. Multiple distinct
10 maps on a single wiki are supported.
11
12 You will need the [[!cpan XML::Writer]] perl module to write KML files,
13 which is the default mode of operation. GeoJSON files can also be generated
14 if the [[!cpan JSON]] perl module is installed.
15
16 This provides the [[ikiwiki/directive/waypoint]] and [[ikiwiki/directive/osm]] directives.
17
18 ### Examples
19
20 A [[basic set of examples|http://cbaines.net/osm-examples]] is available
21 ([[repository|http://git.cbaines.net/?p=ikiwiki/osm-examples.git;a=summary]]).
22 Note that none of these will work without patching the plugin. With the
23 following patches, most of the examples will work (while each patch is
24 seperate, the branch includes all previous patches in the list, so the
25 cbaines/osm-icon-fixes branch includes all patches).
26
27  - [[bugs/osm plugin error TypeError: mapProjection is null]]
28  - [[todo/osm plugin GeoJSON popup patch]]
29  - [[todo/osm plugin icon patch]]
30
31 Even with these patches, the CSV examples do not work, and there are cosmetic
32 issues with a few of the other examples.
33
34 ---
35
36 The plugin was originally written by
37 [[the techno-viking|http://techno-viking.com/posts/ikiwiki-maps/]] and fixed up
38 by [[anarcat]]. 
39
40 See [[the Mtl-mesh
41 wiki|http://mesh.openisp.ca/nodes/anarcat]] for a sample of what this
42 plugin can do
43
44 See also [[plugins/contrib/googlemaps]].
45
46 This plugin would be greatly improved by
47 [[todo/internal_definition_list_support]].