dd vendored icons for the tour-map
All checks were successful
/ build (pull_request) Successful in 25s

This commit is contained in:
Stefan Bethke 2026-10-16 20:35:02 +02:00
commit 2c28c050a5
933 changed files with 9891 additions and 22 deletions

View file

@ -51,7 +51,7 @@ Without a data file, or without any tours in it, the shortcode renders nothing a
`{{< tour-map >}}` on an event's overview page shows a map of the tour locations, with the routes from the Congress, on OpenStreetMap. For a different event than the page's section, pass its name: `{{< tour-map 39c3 >}}`. It uses [Leaflet](https://leafletjs.com), which is kept in [assets/vendor/leaflet/](assets/vendor/leaflet/).
- Each tour gets a marker in its colour, with a symbol for its `icon`, and its route as a line; walking legs are dotted. Clicking a marker or a route shows the tour title, linked to the tour page, and the directions.
- Each tour gets a marker in its colour, with its `icon` in white, and its route as a line; walking legs are dotted. Clicking a marker or a route shows the tour title, linked to the tour page, and the directions.
- The map shows all tours at once. Scroll-wheel zoom only starts after clicking into the map, so the page still scrolls normally.
- Without JavaScript, and for screen readers, it shows a list of the tours with their directions and a link to each location on openstreetmap.org.
- If a text is missing in the page's language, the other language is used.
@ -98,7 +98,7 @@ days:
|---|---|---|
| `geo` | yes | Meeting point or venue: `lat` and `lon` in decimal degrees (WGS 84), six decimals are plenty. Write it even though the tour page has the same value in `params.geo`; the map only reads this file. |
| `color` | no | Colour of the marker and the route, as a CSS colour (`"#32cd32"` or `LimeGreen`). Pick colours that differ between tours. |
| `icon` | no | Name of a symbol for the marker. The map knows uMap's pictogram names `computer`, `ferry`, `tram-stop`, `railway-halt`, `fire-station`, `garden`, `mast-communications`, `ford` and `viewpoint` (see `ICONS` in [assets/js/tour-map.js](assets/js/tour-map.js)); others give a plain coloured circle. |
| `icon` | no | Name of an icon for the marker, see "Map icons" below. Without it, or with an unknown name, the marker is a plain coloured circle; an unknown name also logs a build warning. |
| `directions` | no | How to get there from the origin, per language (`de`, `en`) as Markdown, usually a short list of steps. |
| `route` | no | The way from `map.origin` to `geo` as a list of legs in travel order. Without it the tour only gets a marker. |
@ -114,6 +114,20 @@ Legs should join up: each leg starts where the previous one ends, and the first
`map.origin` is usually the same for all tours of an event, so it is written once. It takes `name` (per language), `geo` and an optional `icon`.
### Map icons
Marker icons come from three public-domain (CC0) icon sets for maps, kept in [assets/vendor/icons/](assets/vendor/icons/):
| Set | Icons | Browse |
|---|---|---|
| `osmic` | 154 | [OSMIC](https://github.com/gmgeo/osmic), or the files in `assets/vendor/icons/osmic/` |
| `maki` | 211 | [Maki](https://labs.mapbox.com/maki-icons/) |
| `temaki` | 557 | [Temaki](https://rapideditor.github.io/temaki/docs/) |
`icon` takes the file name without `.svg`, for example `ferry` or `railway-halt`. The name is looked up in `osmic`, then `maki`, then `temaki`; some names exist in more than one set, so to pick a specific set, put its name in front: `maki:garden`, `temaki:binoculars`. uMap's pictograms are OSMIC and Maki icons with the same names, and this lookup order picks the same icon as uMap for every one of them, so `icon` values copied from uMap work unchanged.
Only the icons a page uses end up in it, so the size of the sets doesn't matter. To update a set, replace its folder with the SVG files of a newer version; each folder has a README with the version it came from.
### The 39C3 tour map (uMap)
The 39C3 overview pages embed a map with the `map-39c3` shortcode ([layouts/_shortcodes/map-39c3.html](layouts/_shortcodes/map-39c3.html)). It is an iframe of the uMap map [39c3 Hackertours](https://umap.openstreetmap.fr/en/map/39c3-hackertours_1329184), which was created by the uMap user WinstonS in December 2025. The map has no other editors, so only that account can change it. Nothing about the map is stored in this repository apart from the embed code.