diff --git a/Docs/BuiltinIndex.md b/Docs/BuiltinIndex.md index 3dbbb7a5a..83872f143 100644 --- a/Docs/BuiltinIndex.md +++ b/Docs/BuiltinIndex.md @@ -24,6 +24,7 @@ + [smoking](#smoking) + [service:electricity](#serviceelectricity) + [dog-access](#dog-access) + + [reviews](#reviews) + [climbing.website](#climbingwebsite) + [climbing.fee](#climbingfee) + [climbing.bouldering](#climbingbouldering) @@ -33,7 +34,6 @@ + [climbing.sportclimbing](#climbingsportclimbing) + [climbing.max_bolts](#climbingmax_bolts) + [all_tags](#all_tags) - + [reviews](#reviews) + [questions](#questions) + [export_as_gpx](#export_as_gpx) + [export_as_geojson](#export_as_geojson) @@ -335,6 +335,22 @@ +### reviews + + + + + + - cafe_pub + - dogpark + - food + - hackerspace + - shops + - veterinary + + + + ### climbing.website @@ -436,20 +452,6 @@ -### reviews - - - - - - - dogpark - - food - - shops - - veterinary - - - - ### questions diff --git a/Docs/BuiltinLayers.md b/Docs/BuiltinLayers.md index b8ef3fc89..8754f882e 100644 --- a/Docs/BuiltinLayers.md +++ b/Docs/BuiltinLayers.md @@ -821,6 +821,7 @@ The following layers are included in MapComplete: - [left_right_style](./Layers/left_right_style.md) - [map](./Layers/map.md) - [matchpoint](./Layers/matchpoint.md) + - [maxspeed](./Layers/maxspeed.md) - [named_streets](./Layers/named_streets.md) - [nature_reserve](./Layers/nature_reserve.md) - [note](./Layers/note.md) diff --git a/Docs/Layers/bicycle_library.md b/Docs/Layers/bicycle_library.md index 2671d52a8..2f23f8122 100644 --- a/Docs/Layers/bicycle_library.md +++ b/Docs/Layers/bicycle_library.md @@ -195,7 +195,7 @@ This is rendered with Lending a bicycle costs {charge} -The question is Who can lend bicycles here? +The question is Who can loan bicycles here? diff --git a/Docs/Layers/cafe_pub.md b/Docs/Layers/cafe_pub.md index 52de985fd..3b98fa7d9 100644 --- a/Docs/Layers/cafe_pub.md +++ b/Docs/Layers/cafe_pub.md @@ -277,6 +277,16 @@ The question is Are dogs allowed in this business? - Dogs are not allowed corresponds with dog=no - Dogs are allowed, but they have to be leashed corresponds with dog=leashed - Dogs are allowed and can run around freely corresponds with dog=unleashed + + + + +### reviews + + + +This tagrendering has no question and is thus read-only + This document is autogenerated from [assets/layers/cafe_pub/cafe_pub.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/cafe_pub/cafe_pub.json) \ No newline at end of file diff --git a/Docs/Layers/hackerspace.md b/Docs/Layers/hackerspace.md index 1013ba163..97a5856a0 100644 --- a/Docs/Layers/hackerspace.md +++ b/Docs/Layers/hackerspace.md @@ -66,6 +66,9 @@ attribute | type | values which are supported by this layer [](https://taginfo.openstreetmap.org/keys/email#values) [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | [](https://taginfo.openstreetmap.org/keys/phone#values) [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | [](https://taginfo.openstreetmap.org/keys/opening_hours#values) [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | [24/7](https://wiki.openstreetmap.org/wiki/Tag:opening_hours%3D24/7) +[](https://taginfo.openstreetmap.org/keys/service:3dprinter#values) [service:3dprinter](https://wiki.openstreetmap.org/wiki/Key:service:3dprinter) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:3dprinter%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:service:3dprinter%3Dno) +[](https://taginfo.openstreetmap.org/keys/service:lasercutter#values) [service:lasercutter](https://wiki.openstreetmap.org/wiki/Key:service:lasercutter) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:lasercutter%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:service:lasercutter%3Dno) +[](https://taginfo.openstreetmap.org/keys/service:cnc_drilling_machine#values) [service:cnc_drilling_machine](https://wiki.openstreetmap.org/wiki/Key:service:cnc_drilling_machine) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:cnc_drilling_machine%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:service:cnc_drilling_machine%3Dno) [](https://taginfo.openstreetmap.org/keys/wheelchair#values) [wheelchair](https://wiki.openstreetmap.org/wiki/Key:wheelchair) | Multiple choice | [designated](https://wiki.openstreetmap.org/wiki/Tag:wheelchair%3Ddesignated) [yes](https://wiki.openstreetmap.org/wiki/Tag:wheelchair%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:wheelchair%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:wheelchair%3Dno) [](https://taginfo.openstreetmap.org/keys/drink:club-mate#values) [drink:club-mate](https://wiki.openstreetmap.org/wiki/Key:drink:club-mate) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:drink:club-mate%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:drink:club-mate%3Dno) [](https://taginfo.openstreetmap.org/keys/start_date#values) [start_date](https://wiki.openstreetmap.org/wiki/Key:start_date) | [date](../SpecialInputElements.md#date) | @@ -182,6 +185,64 @@ This is rendered with {opening_hours_table()} +### hackerspaces-service-3dprinter + + + +The question is Is a 3D-printer available at this hackerspace? + + + + + + - There is a 3D-printer available at this hackerspace corresponds with service:3dprinter=yes + - There is no 3D-printer available at this hackerspace corresponds with service:3dprinter=no + + + + +### hackerspaces-service-lasercutter + + + +The question is Is a laser cutter available at this hackerspace? + + + + + + - There is a laser cutter available at this hackerspace corresponds with service:lasercutter=yes + - There is no laser cutter available at this hackerspace corresponds with service:lasercutter=no + + + + +### hackerspaces-service-cnc_drilling_machine + + + +The question is Is a CNC drill available at this hackerspace? + + + + + + - There is a CNC drill available at this hackerspace corresponds with service:cnc_drilling_machine=yes + - There is no CNC drill available at this hackerspace corresponds with service:cnc_drilling_machine=no + + + + +### reviews + + + +This tagrendering has no question and is thus read-only + + + + + ### wheelchair-access diff --git a/Docs/Layers/maxspeed.md b/Docs/Layers/maxspeed.md new file mode 100644 index 000000000..60a9fdd1b --- /dev/null +++ b/Docs/Layers/maxspeed.md @@ -0,0 +1,87 @@ + + + maxspeed +========== + + + + + +Shows the allowed speed for every road + + + + + + + - This layer is shown at zoomlevel **16** and higher + + + + +#### Themes using this layer + + + + + + - [maxspeed](https://mapcomplete.osm.be/maxspeed) + - [personal](https://mapcomplete.osm.be/personal) + + + + + Basic tags for this layer +--------------------------- + + + +Elements must have the all of following tags to be shown on this layer: + + + + - highway=residential|highway=living_street|highway=motorway|highway=tertiary|highway=unclassified|highway=secondary|highway=primary|highway=trunk|highway=motorway|highway=tertiary_link|highway=secondary_link|highway=primary_link|highway=trunk_link|highway=motorway_link + - type!=multipolygon + - area!=yes + + +[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B(%20%20%20%20nwr%5B%22highway%22%3D%22residential%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22living_street%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22motorway%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22tertiary%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22unclassified%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22secondary%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22primary%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22trunk%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22motorway%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22tertiary_link%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22secondary_link%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22primary_link%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22trunk_link%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A%20%20%20%20nwr%5B%22highway%22%3D%22motorway_link%22%5D%5B%22area%22!%3D%22yes%22%5D%5B%22type%22!%3D%22multipolygon%22%5D(%7B%7Bbbox%7D%7D)%3B%0A)%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B) + + + + Supported attributes +---------------------- + + + +Warning: + +this quick overview is incomplete + + + +attribute | type | values which are supported by this layer +----------- | ------ | ------------------------------------------ +[](https://taginfo.openstreetmap.org/keys/maxspeed#values) [maxspeed](https://wiki.openstreetmap.org/wiki/Key:maxspeed) | [pnat](../SpecialInputElements.md#pnat) | + + + + +### maxspeed-maxspeed + + + +The question is What is the legal maximum speed one is allowed to drive on this road? + +This rendering asks information about the property [maxspeed](https://wiki.openstreetmap.org/wiki/Key:maxspeed) + +This is rendered with The maximum allowed speed on this road is {maxspeed} + + + + + + - This is a living street, which has a maxspeed of 20km/h corresponds with highway=living_street + + +This document is autogenerated from [assets/layers/maxspeed/maxspeed.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/maxspeed/maxspeed.json) \ No newline at end of file diff --git a/Docs/Layers/playground.md b/Docs/Layers/playground.md index c4e08b909..731170a6b 100644 --- a/Docs/Layers/playground.md +++ b/Docs/Layers/playground.md @@ -193,7 +193,7 @@ The question is Is this playground accessible to the general public? - Only accessible to students of the school corresponds with access=students - This option cannot be chosen as answer - Not accessible corresponds with access=private - - This is a schoolyard - an outdoor area where the pupils can play during their breaks; but it is not accessible to the general public corresponds with leisure=playground + - This is a schoolyard - an outdoor area where the pupils can play during their breaks; but it is not accessible to the general public corresponds with leisure=schoolyard diff --git a/Docs/Layers/school.md b/Docs/Layers/school.md index dde67fba3..8b00209b7 100644 --- a/Docs/Layers/school.md +++ b/Docs/Layers/school.md @@ -104,10 +104,10 @@ The question is What level of education is given on this school? - This is a school with a kindergarten section where young kids receive some education which prepares reading and writing. corresponds with school=kindergarten - This is a school where one learns primary skills such as basic literacy and numerical skills.
Pupils typically enroll from 6 years old till 12 years old
corresponds with school=primary - This is a secondary school which offers all grades corresponds with school=secondary - - This is a secondary school which does not have all grades, but offers first and second grade corresponds with school=lower_secondary - - This is a secondary school which does not have all grades, but offers third and fourth grade corresponds with school=middle_secondary - - This is a secondary school which does not have all grades, but offers fifth and sixth grade corresponds with school=upper_secondary - - This schools offers post-secondary education (e.g. a seventh or eight specialisation year) corresponds with school=post_secondary + - This is a secondary school which does not have all grades, but offers first and second grade corresponds with school=lower_secondary + - This is a secondary school which does not have all grades, but offers third and fourth grade corresponds with school=middle_secondary + - This is a secondary school which does not have all grades, but offers fifth and sixth grade corresponds with school=upper_secondary + - This school offers post-secondary education (e.g. a seventh or eight specialisation year) corresponds with school=post_secondary Only visible if `_country=be` is shown diff --git a/Docs/Layers/sport_pitch.md b/Docs/Layers/sport_pitch.md index ecaeb371d..300cdee32 100644 --- a/Docs/Layers/sport_pitch.md +++ b/Docs/Layers/sport_pitch.md @@ -207,7 +207,7 @@ This is rendered with Openingsuren: {opening_hours_table()} - - 24/7 toegankelijk corresponds with + - Always accessible corresponds with - This option cannot be chosen as answer - Always accessible corresponds with opening_hours=24/7 diff --git a/Docs/Presentations/collage.png b/Docs/Presentations/collage.png new file mode 100644 index 000000000..709d9144c Binary files /dev/null and b/Docs/Presentations/collage.png differ diff --git a/Docs/SpecialInputElements.md b/Docs/SpecialInputElements.md index fd3bcfe44..2fe4305b0 100644 --- a/Docs/SpecialInputElements.md +++ b/Docs/SpecialInputElements.md @@ -104,8 +104,8 @@ options | A JSON-object of type `{ removePrefixes: string[], removePostfixes: st subarg | doc -------- | ----- -removePrefixes | remove these snippets of text from the start of the passed string to search -removePostfixes | remove these snippets of text from the end of the passed string to search +removePrefixes | remove these snippets of text from the start of the passed string to search. This is either a list OR a hash of languages to a list +removePostfixes | remove these snippets of text from the end of the passed string to search. This is either a list OR a hash of languages to a list instanceOf | A list of Q-identifier which indicates that the search results _must_ be an entity of this type, e.g. [`Q5`](https://www.wikidata.org/wiki/Q5) for humans notInstanceof | A list of Q-identifiers which indicates that the search results _must not_ be an entity of this type, e.g. [`Q79007`](https://www.wikidata.org/wiki/Q79007) to filter away all streets from the search results @@ -122,13 +122,16 @@ notInstanceof | A list of Q-identifiers which indicates that the search results "helperArgs": [ "name", { - "removePostfixes": [ + "removePostfixes": {"en": [ "street", "boulevard", "path", "square", "plaza", ], + "nl": ["straat","plein","pad","weg",laan"] + }, + "#": "Remove streets and parks from the search results:" "notInstanceOf": ["Q79007","Q22698"] } diff --git a/Docs/SpecialRenderings.md b/Docs/SpecialRenderings.md index 68b334062..c4ed606d5 100644 --- a/Docs/SpecialRenderings.md +++ b/Docs/SpecialRenderings.md @@ -697,13 +697,14 @@ zoom | 18 | The startzoom of mapillary ### auto_apply - A button to run many actions for many features at once. + A button to run many actions for many features at once. To effectively use this button, you'll need some ingredients: -To effectively use this button, you'll need some ingredients: -- A target layer with features for which an action is defined in a tag rendering. The following special visualisations support an autoAction: import_way_button, tag_apply -- A host feature to place the auto-action on. This can be a big outline (such as a city). Another good option for this is the [current_view](./BuiltinLayers.md#current_view) -- Then, use a calculated tag on the host feature to determine the overlapping object ids -- At last, add this component + - A target layer with features for which an action is defined in a tag rendering. The following special visualisations support an autoAction: import_way_button, tag_apply + - A host feature to place the auto-action on. This can be a big outline (such as a city). Another good option for this is the layer + - [current_view](./BuiltinLayers.md#current_view) + - Then, use a calculated tag on the host feature to determine the overlapping object ids + - At last, add this component + name | default | description ------ | --------- | ------------- diff --git a/Docs/TagInfo/mapcomplete_hackerspaces.json b/Docs/TagInfo/mapcomplete_hackerspaces.json index f10096e89..bb931e1f4 100644 --- a/Docs/TagInfo/mapcomplete_hackerspaces.json +++ b/Docs/TagInfo/mapcomplete_hackerspaces.json @@ -62,6 +62,36 @@ "description": "Layer 'Hackerspace' shows opening_hours=24/7 with a fixed text, namely 'Opened 24/7' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Hackerspaces')", "value": "24/7" }, + { + "key": "service:3dprinter", + "description": "Layer 'Hackerspace' shows service:3dprinter=yes with a fixed text, namely 'There is a 3D-printer available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Hackerspaces')", + "value": "yes" + }, + { + "key": "service:3dprinter", + "description": "Layer 'Hackerspace' shows service:3dprinter=no with a fixed text, namely 'There is no 3D-printer available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Hackerspaces')", + "value": "no" + }, + { + "key": "service:lasercutter", + "description": "Layer 'Hackerspace' shows service:lasercutter=yes with a fixed text, namely 'There is a laser cutter available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Hackerspaces')", + "value": "yes" + }, + { + "key": "service:lasercutter", + "description": "Layer 'Hackerspace' shows service:lasercutter=no with a fixed text, namely 'There is no laser cutter available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Hackerspaces')", + "value": "no" + }, + { + "key": "service:cnc_drilling_machine", + "description": "Layer 'Hackerspace' shows service:cnc_drilling_machine=yes with a fixed text, namely 'There is a CNC drill available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Hackerspaces')", + "value": "yes" + }, + { + "key": "service:cnc_drilling_machine", + "description": "Layer 'Hackerspace' shows service:cnc_drilling_machine=no with a fixed text, namely 'There is no CNC drill available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Hackerspaces')", + "value": "no" + }, { "key": "wheelchair", "description": "Layer 'Hackerspace' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Hackerspaces')", diff --git a/Docs/TagInfo/mapcomplete_maxspeed.json b/Docs/TagInfo/mapcomplete_maxspeed.json new file mode 100644 index 000000000..aa7bb4b61 --- /dev/null +++ b/Docs/TagInfo/mapcomplete_maxspeed.json @@ -0,0 +1,93 @@ +{ + "data_format": 1, + "project": { + "name": "MapComplete Maxspeed", + "description": "This map shows the legally allowed maximum speed on every road.", + "project_url": "https://mapcomplete.osm.be/maxspeed", + "doc_url": "https://github.com/pietervdvn/MapComplete/tree/master/assets/themes/", + "icon_url": "https://mapcomplete.osm.be/assets/themes/maxspeed/maxspeed_logo.svg", + "contact_name": "Pieter Vander Vennet, ", + "contact_email": "pietervdvn@posteo.net" + }, + "tags": [ + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "residential" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "living_street" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "motorway" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "tertiary" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "unclassified" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "secondary" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "primary" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "trunk" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "motorway" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "tertiary_link" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "secondary_link" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "primary_link" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "trunk_link" + }, + { + "key": "highway", + "description": "The MapComplete theme Maxspeed has a layer Maxspeed showing features with this tag", + "value": "motorway_link" + }, + { + "key": "maxspeed", + "description": "Layer 'Maxspeed' shows and asks freeform values for key 'maxspeed' (in the MapComplete.osm.be theme 'Maxspeed')" + }, + { + "key": "highway", + "description": "Layer 'Maxspeed' shows highway=living_street with a fixed text, namely 'This is a living street, which has a maxspeed of 20km/h' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Maxspeed')", + "value": "living_street" + } + ] +} \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_personal.json b/Docs/TagInfo/mapcomplete_personal.json index 146b21685..17547df86 100644 --- a/Docs/TagInfo/mapcomplete_personal.json +++ b/Docs/TagInfo/mapcomplete_personal.json @@ -5438,6 +5438,36 @@ "description": "Layer 'Hackerspace' shows opening_hours=24/7 with a fixed text, namely 'Opened 24/7' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", "value": "24/7" }, + { + "key": "service:3dprinter", + "description": "Layer 'Hackerspace' shows service:3dprinter=yes with a fixed text, namely 'There is a 3D-printer available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", + "value": "yes" + }, + { + "key": "service:3dprinter", + "description": "Layer 'Hackerspace' shows service:3dprinter=no with a fixed text, namely 'There is no 3D-printer available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", + "value": "no" + }, + { + "key": "service:lasercutter", + "description": "Layer 'Hackerspace' shows service:lasercutter=yes with a fixed text, namely 'There is a laser cutter available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", + "value": "yes" + }, + { + "key": "service:lasercutter", + "description": "Layer 'Hackerspace' shows service:lasercutter=no with a fixed text, namely 'There is no laser cutter available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", + "value": "no" + }, + { + "key": "service:cnc_drilling_machine", + "description": "Layer 'Hackerspace' shows service:cnc_drilling_machine=yes with a fixed text, namely 'There is a CNC drill available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", + "value": "yes" + }, + { + "key": "service:cnc_drilling_machine", + "description": "Layer 'Hackerspace' shows service:cnc_drilling_machine=no with a fixed text, namely 'There is no CNC drill available at this hackerspace' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", + "value": "no" + }, { "key": "wheelchair", "description": "Layer 'Hackerspace' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", @@ -5652,6 +5682,85 @@ "description": "Layer 'Maps' shows map_source:attribution=no with a fixed text, namely 'There is no attribution at all' (in the MapComplete.osm.be theme 'Personal theme')", "value": "no" }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "residential" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "living_street" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "motorway" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "tertiary" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "unclassified" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "secondary" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "primary" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "trunk" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "motorway" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "tertiary_link" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "secondary_link" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "primary_link" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "trunk_link" + }, + { + "key": "highway", + "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", + "value": "motorway_link" + }, + { + "key": "maxspeed", + "description": "Layer 'Maxspeed' shows and asks freeform values for key 'maxspeed' (in the MapComplete.osm.be theme 'Personal theme')" + }, + { + "key": "highway", + "description": "Layer 'Maxspeed' shows highway=living_street with a fixed text, namely 'This is a living street, which has a maxspeed of 20km/h' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", + "value": "living_street" + }, { "key": "leisure", "description": "The MapComplete theme Personal theme has a layer Nature reserve showing features with this tag", @@ -6132,8 +6241,8 @@ }, { "key": "leisure", - "description": "Layer 'Playgrounds' shows leisure=playground with a fixed text, namely 'This is a schoolyard - an outdoor area where the pupils can play during their breaks; but it is not accessible to the general public' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", - "value": "playground" + "description": "Layer 'Playgrounds' shows leisure=schoolyard with a fixed text, namely 'This is a schoolyard - an outdoor area where the pupils can play during their breaks; but it is not accessible to the general public' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Personal theme')", + "value": "schoolyard" }, { "key": "website", @@ -6742,7 +6851,7 @@ }, { "key": "opening_hours", - "description": "Layer 'Sport pitches' shows with a fixed text, namely '24/7 toegankelijk' (in the MapComplete.osm.be theme 'Personal theme') Picking this answer will delete the key opening_hours.", + "description": "Layer 'Sport pitches' shows with a fixed text, namely 'Always accessible' (in the MapComplete.osm.be theme 'Personal theme') Picking this answer will delete the key opening_hours.", "value": "" }, { diff --git a/Docs/TagInfo/mapcomplete_playgrounds.json b/Docs/TagInfo/mapcomplete_playgrounds.json index 5c223597e..b13bba959 100644 --- a/Docs/TagInfo/mapcomplete_playgrounds.json +++ b/Docs/TagInfo/mapcomplete_playgrounds.json @@ -124,8 +124,8 @@ }, { "key": "leisure", - "description": "Layer 'Playgrounds' shows leisure=playground with a fixed text, namely 'This is a schoolyard - an outdoor area where the pupils can play during their breaks; but it is not accessible to the general public' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Playgrounds')", - "value": "playground" + "description": "Layer 'Playgrounds' shows leisure=schoolyard with a fixed text, namely 'This is a schoolyard - an outdoor area where the pupils can play during their breaks; but it is not accessible to the general public' and allows to pick this as a default answer (in the MapComplete.osm.be theme 'Playgrounds')", + "value": "schoolyard" }, { "key": "website", diff --git a/Docs/TagInfo/mapcomplete_sport_pitches.json b/Docs/TagInfo/mapcomplete_sport_pitches.json index bafa97b16..47a38ba4d 100644 --- a/Docs/TagInfo/mapcomplete_sport_pitches.json +++ b/Docs/TagInfo/mapcomplete_sport_pitches.json @@ -148,7 +148,7 @@ }, { "key": "opening_hours", - "description": "Layer 'Sport pitches' shows with a fixed text, namely '24/7 toegankelijk' (in the MapComplete.osm.be theme 'Sport pitches') Picking this answer will delete the key opening_hours.", + "description": "Layer 'Sport pitches' shows with a fixed text, namely 'Always accessible' (in the MapComplete.osm.be theme 'Sport pitches') Picking this answer will delete the key opening_hours.", "value": "" }, { diff --git a/Models/ThemeConfig/Conversion/Validation.ts b/Models/ThemeConfig/Conversion/Validation.ts index 916c9b781..a1e5bf889 100644 --- a/Models/ThemeConfig/Conversion/Validation.ts +++ b/Models/ThemeConfig/Conversion/Validation.ts @@ -163,10 +163,19 @@ class ValidateTheme extends DesugaringStep { errors.push(...checked.errors) } if (!json.hideFromOverview && theme.id !== "personal") { + + // The first key in the the title-field must be english, otherwise the title in the loading page will be the different language + const targetLanguage = theme.title.SupportedLanguages()[0] + if(targetLanguage !== "en"){ + warnings.push(`TargetLanguage is not 'en' for public theme ${theme.id}, it is ${targetLanguage}. Move 'en' up in the title of the theme and set it as the first key`) + } + // Official, public themes must have a full english translation const checked = new ValidateLanguageCompleteness("en") .convert(theme, theme.id) errors.push(...checked.errors) + + } } catch (e) { diff --git a/Models/ThemeConfig/TagRenderingConfig.ts b/Models/ThemeConfig/TagRenderingConfig.ts index e8b16576f..431080b1b 100644 --- a/Models/ThemeConfig/TagRenderingConfig.ts +++ b/Models/ThemeConfig/TagRenderingConfig.ts @@ -119,7 +119,7 @@ export default class TagRenderingConfig { if (placeholder === undefined) { const typeDescription = Translations.t.validation[type]?.description if(typeDescription !== undefined){ - placeholder = Translations.T(json.freeform.key+" ("+type+")").Subs({[type]: typeDescription}) + placeholder = Translations.T(json.freeform.key+" ({"+type+"})").Subs({[type]: typeDescription}) }else{ placeholder = Translations.T(json.freeform.key+" ("+type+")") } diff --git a/UI/Input/LengthInput.ts b/UI/Input/LengthInput.ts index c108e7e7f..3a09a8a35 100644 --- a/UI/Input/LengthInput.ts +++ b/UI/Input/LengthInput.ts @@ -8,7 +8,6 @@ import {GeoOperations} from "../../Logic/GeoOperations"; import Minimap, {MinimapObj} from "../Base/Minimap"; import BackgroundMapSwitch from "../BigComponents/BackgroundMapSwitch"; import BaseUIElement from "../BaseUIElement"; -import CR = Mocha.reporters.Base.cursor.CR; /** diff --git a/UI/Popup/AutoApplyButton.ts b/UI/Popup/AutoApplyButton.ts index 8c1e00f7a..2f824854d 100644 --- a/UI/Popup/AutoApplyButton.ts +++ b/UI/Popup/AutoApplyButton.ts @@ -23,6 +23,7 @@ import {UIElement} from "../UIElement"; import FilteredLayer from "../../Models/FilteredLayer"; import TagRenderingConfig from "../../Models/ThemeConfig/TagRenderingConfig"; import Lazy from "../Base/Lazy"; +import List from "../Base/List"; export interface AutoAction extends SpecialVisualization { supportsAutoAction: boolean @@ -154,7 +155,7 @@ class ApplyButton extends UIElement { } export default class AutoApplyButton implements SpecialVisualization { - public readonly docs: string; + public readonly docs: BaseUIElement; public readonly funcName: string = "auto_apply"; public readonly args: { name: string; defaultValue?: string; doc: string, required?: boolean }[] = [ { @@ -189,14 +190,17 @@ export default class AutoApplyButton implements SpecialVisualization { } private static generateDocs(supportedActions: string[]) { - return [ - "A button to run many actions for many features at once.\n", - "To effectively use this button, you'll need some ingredients:\n" + - "- A target layer with features for which an action is defined in a tag rendering. The following special visualisations support an autoAction: " + supportedActions.join(", "), - "- A host feature to place the auto-action on. This can be a big outline (such as a city). Another good option for this is the [current_view](./BuiltinLayers.md#current_view)", - "- Then, use a calculated tag on the host feature to determine the overlapping object ids", - "- At last, add this component" - ].join("\n") + return new Combine([ + "A button to run many actions for many features at once.", + "To effectively use this button, you'll need some ingredients:", + new List([ + "A target layer with features for which an action is defined in a tag rendering. The following special visualisations support an autoAction: " + supportedActions.join(", "), + "A host feature to place the auto-action on. This can be a big outline (such as a city). Another good option for this is the layer ", new Link("current_view","./BuiltinLayers.md#current_view"), + "Then, use a calculated tag on the host feature to determine the overlapping object ids", + "At last, add this component" + ]), + + ]) } constr(state: FeaturePipelineState, tagSource: UIEventSource, argument: string[], guistate: DefaultGuiState): BaseUIElement { diff --git a/UI/SpecialVisualizations.ts b/UI/SpecialVisualizations.ts index 37efa9f13..d036b9bec 100644 --- a/UI/SpecialVisualizations.ts +++ b/UI/SpecialVisualizations.ts @@ -61,7 +61,7 @@ import Slider from "./Input/Slider"; export interface SpecialVisualization { funcName: string, constr: ((state: FeaturePipelineState, tagSource: UIEventSource, argument: string[], guistate: DefaultGuiState,) => BaseUIElement), - docs: string, + docs: string | BaseUIElement, example?: string, args: { name: string, defaultValue?: string, doc: string, required?: false | boolean }[], getLayerDependencies?: (argument: string[]) => string[] diff --git a/UI/i18n/Translation.ts b/UI/i18n/Translation.ts index 8d65e202b..4000ca97e 100644 --- a/UI/i18n/Translation.ts +++ b/UI/i18n/Translation.ts @@ -7,10 +7,10 @@ export class Translation extends BaseUIElement { public static forcedLanguage = undefined; - public readonly translations: object + public readonly translations: Record context?: string; - constructor(translations: object, context?: string) { + constructor(translations: Record, context?: string) { super() if (translations === undefined) { console.error("Translation without content at "+context) @@ -264,7 +264,7 @@ export class Translation extends BaseUIElement { } export class TypedTranslation extends Translation { - constructor(translations: object, context?: string) { + constructor(translations: Record, context?: string) { super(translations, context); } diff --git a/Utils.ts b/Utils.ts index ff93b6e88..c6e5073e5 100644 --- a/Utils.ts +++ b/Utils.ts @@ -931,20 +931,38 @@ In the case that MapComplete is pointed to the testing grounds, the edit will be return track[str2.length][str1.length]; } - public static MapToObj(d: Map, onValue: ((t: T, key: string) => any) = undefined): object { + public static MapToObj(d: Map, onValue: ((t: V, key: string) => T)): Record { const o = {} const keys = Array.from(d.keys()) keys.sort(); for (const key of keys) { - let value = d.get(key) - if (onValue !== undefined) { - value = onValue(value, key) - } - o[key] = value; + o[key] = onValue(d.get(key), key); } return o } + /** + * Switches keys and values around + * + * Utils.TransposeMap({"a" : ["b", "c"], "x" : ["b", "y"]}) // => {"b" : ["a", "x"], "c" : ["a"], "y" : ["x"]} + */ + public static TransposeMap(d: Record) : Record{ + const newD : Record = {}; + + for (const k in d) { + const vs = d[k] + for (let v of vs) { + const list = newD[v] + if(list === undefined){ + newD[v] = [k] // Left: indexing; right: list with one element + }else{ + list.push(k) + } + } + } + return newD; + } + /** * Utils.colorAsHex({r: 255, g: 128, b: 0}) // => "#ff8000" * Utils.colorAsHex(undefined) // => undefined diff --git a/assets/contributors.json b/assets/contributors.json index 37951ff95..09fb4ffdf 100644 --- a/assets/contributors.json +++ b/assets/contributors.json @@ -1,7 +1,7 @@ { "contributors": [ { - "commits": 3924, + "commits": 4008, "contributor": "Pieter Vander Vennet" }, { diff --git a/assets/language_in_country.json b/assets/language_in_country.json new file mode 100644 index 000000000..847fa4da1 --- /dev/null +++ b/assets/language_in_country.json @@ -0,0 +1,721 @@ +{ + "AD": [ + "ca" + ], + "AE": [ + "ar" + ], + "AF": [ + "uz", + "tk", + "ar", + "ps" + ], + "AG": [ + "en", + "en" + ], + "AL": [ + "sq" + ], + "AM": [ + "hy" + ], + "AO": [ + "pt" + ], + "AR": [ + "es" + ], + "AT": [ + "de" + ], + "AU": [ + "en", + "en" + ], + "AZ": [ + "az" + ], + "BA": [ + "hr", + "sr", + "bs" + ], + "BB": [ + "en" + ], + "BD": [ + "bn" + ], + "BE": [ + "fr", + "de", + "nl" + ], + "BF": [ + "fr" + ], + "BG": [ + "bg" + ], + "BH": [ + "ar" + ], + "BI": [ + "fr", + "en", + "rn" + ], + "BJ": [ + "fr" + ], + "BN": [ + "en", + "ms" + ], + "BO": [ + "es", + "ay", + "qu", + "gn" + ], + "BR": [ + "pt" + ], + "BS": [ + "en", + "en" + ], + "BT": [ + "dz", + "dz" + ], + "BW": [ + "en" + ], + "BY": [ + "ru", + "be" + ], + "BZ": [ + "en" + ], + "CA": [ + "fr", + "en" + ], + "CD": [ + "fr" + ], + "CF": [ + "fr", + "sg" + ], + "CG": [ + "fr" + ], + "CH": [ + "fr", + "de", + "it", + "rm" + ], + "CI": [ + "fr" + ], + "CL": [ + "es" + ], + "CM": [ + "fr", + "en" + ], + "CN": [ + "zh" + ], + "CO": [ + "es" + ], + "CR": [ + "es" + ], + "CU": [ + "es" + ], + "CV": [ + "pt" + ], + "CY": [ + "tr", + "el" + ], + "CZ": [ + "cs" + ], + "DE": [ + "de", + "de" + ], + "DJ": [ + "fr", + "ar" + ], + "DK": [ + "da", + "da" + ], + "DM": [ + "en" + ], + "DO": [ + "es" + ], + "DZ": [ + "ar", + "ar" + ], + "EC": [ + "es" + ], + "EE": [ + "et", + "et" + ], + "EG": [ + "ar", + "ar" + ], + "ER": [ + "en", + "ar", + "ti" + ], + "ES": [ + "es" + ], + "ET": [ + "am" + ], + "FI": [ + "fi", + "sv", + "fi", + "sv" + ], + "FJ": [ + "en", + "fj" + ], + "FM": [ + "en" + ], + "FR": [ + "fr", + "fr" + ], + "GA": [ + "fr" + ], + "GB": [ + "en", + "en", + "en" + ], + "GD": [ + "en", + "en" + ], + "GE": [ + "ab", + "ka" + ], + "GH": [ + "en" + ], + "GI": [ + "en" + ], + "GM": [ + "en" + ], + "GN": [ + "fr" + ], + "GQ": [ + "fr", + "es", + "pt" + ], + "GT": [ + "es" + ], + "GW": [ + "pt" + ], + "GY": [ + "en" + ], + "HN": [ + "es" + ], + "HR": [ + "hr", + "hr" + ], + "HT": [ + "fr", + "ht" + ], + "HU": [ + "hu" + ], + "ID": [ + "id", + "jv" + ], + "IE": [ + "en", + "ga" + ], + "IL": [ + "he", + "he" + ], + "IN": [ + "hi", + "en" + ], + "IQ": [ + "ar", + "ku" + ], + "IR": [ + "fa" + ], + "IS": [ + "is" + ], + "IT": [ + "it" + ], + "JM": [ + "en", + "en" + ], + "JO": [ + "ar" + ], + "JP": [ + "ja" + ], + "KE": [ + "en", + "sw" + ], + "KG": [ + "ru", + "ky" + ], + "KH": [ + "km" + ], + "KI": [ + "en" + ], + "KM": [ + "fr", + "ar" + ], + "KN": [ + "en", + "en" + ], + "KP": [ + "ko", + "ko" + ], + "KR": [ + "ko" + ], + "KW": [ + "ar" + ], + "KZ": [ + "ru", + "kk" + ], + "LA": [ + "lo" + ], + "LB": [ + "ar", + "ar" + ], + "LC": [ + "en", + "en" + ], + "LI": [ + "de" + ], + "LK": [ + "ta", + "si" + ], + "LR": [ + "en" + ], + "LS": [ + "en", + "st" + ], + "LT": [ + "lt", + "lt" + ], + "LU": [ + "fr", + "de", + "lb" + ], + "LV": [ + "lv", + "lv" + ], + "LY": [ + "ar", + "ar" + ], + "MA": [ + "ar", + "ar" + ], + "MC": [ + "fr" + ], + "MD": [ + "ro" + ], + "MG": [ + "fr", + "mg" + ], + "MH": [ + "en", + "mh" + ], + "MK": [ + "sq", + "mk" + ], + "ML": [ + "fr" + ], + "MM": [ + "my" + ], + "MN": [ + "mn" + ], + "MR": [ + "ar" + ], + "MT": [ + "en", + "mt" + ], + "MU": [ + "fr", + "en" + ], + "MV": [ + "dv" + ], + "MW": [ + "en", + "ny" + ], + "MX": [ + "es", + "es" + ], + "MY": [ + "ms" + ], + "MZ": [ + "pt" + ], + "NA": [ + "en" + ], + "NE": [ + "fr" + ], + "NG": [ + "en", + "yo" + ], + "NI": [ + "es" + ], + "NL": [ + "nl", + "nl" + ], + "NO": [ + "no", + "nn", + "nb" + ], + "NP": [ + "ne" + ], + "NR": [ + "en", + "na" + ], + "NZ": [ + "en", + "mi", + "en", + "mi" + ], + "OM": [ + "ar" + ], + "PA": [ + "es" + ], + "PE": [ + "es", + "ay", + "qu" + ], + "PG": [ + "en", + "ho", + "en", + "ho" + ], + "PH": [ + "en" + ], + "PK": [ + "ur", + "en", + "ar" + ], + "PL": [ + "pl", + "pl" + ], + "PS": [ + "ar" + ], + "PT": [ + "pt", + "pt" + ], + "PW": [ + "en", + "ja" + ], + "PY": [ + "es", + "gn" + ], + "QA": [ + "ar" + ], + "RO": [ + "ro" + ], + "RS": [ + "sr" + ], + "RU": [ + "ru" + ], + "RW": [ + "fr", + "en", + "sw", + "rw" + ], + "SA": [ + "ar" + ], + "SB": [ + "en", + "en" + ], + "SC": [ + "fr", + "en" + ], + "SD": [ + "en", + "ar" + ], + "SE": [ + "sv", + "sv" + ], + "SG": [ + "en", + "ta", + "ms" + ], + "SI": [ + "sl", + "sl" + ], + "SK": [ + "sk" + ], + "SL": [ + "en" + ], + "SM": [ + "it" + ], + "SN": [ + "fr", + "wo" + ], + "SO": [ + "so", + "ar" + ], + "SR": [ + "nl" + ], + "SS": [ + "en", + "ar" + ], + "ST": [ + "pt" + ], + "SV": [ + "es" + ], + "SY": [ + "ar", + "ar" + ], + "SZ": [ + "en", + "ss" + ], + "TD": [ + "fr", + "ar" + ], + "TG": [ + "fr" + ], + "TH": [ + "th" + ], + "TJ": [ + "ru", + "tg" + ], + "TL": [ + "pt" + ], + "TM": [ + "tk" + ], + "TN": [ + "ar", + "ar" + ], + "TO": [ + "en", + "to" + ], + "TR": [ + "tr", + "tr" + ], + "TT": [ + "en" + ], + "TV": [ + "en", + "en" + ], + "TZ": [ + "en", + "sw" + ], + "UA": [ + "uk" + ], + "UG": [ + "en", + "sw" + ], + "UY": [ + "es" + ], + "UZ": [ + "uz" + ], + "VA": [ + "fr", + "la", + "it" + ], + "VC": [ + "en", + "en" + ], + "VE": [ + "es" + ], + "VN": [ + "vi" + ], + "VU": [ + "fr", + "en", + "bi" + ], + "WS": [ + "en", + "sm" + ], + "YE": [ + "ar" + ], + "ZA": [ + "af", + "ve", + "ss", + "tn", + "ts", + "st", + "nr", + "en", + "zu", + "xh" + ], + "ZM": [ + "en" + ], + "ZW": [ + "en", + "xh", + "ve", + "ny", + "sn", + "tn", + "ts", + "st", + "nd" + ] +} \ No newline at end of file diff --git a/assets/layers/address/address.json b/assets/layers/address/address.json index 8305961fe..a5631f033 100644 --- a/assets/layers/address/address.json +++ b/assets/layers/address/address.json @@ -135,7 +135,7 @@ "pl": "Ten adres znajduje się na ulicy {addr:street}", "zh_Hans": "这个地址位于{addr:street}街", "id": "Alamat ini ada di jalan {addr:street}", - "es": "La dirección está en la calle {addr:street}", + "es": "La dirección está en esta calle {addr:street}", "da": "Denne adresse er på gaden {addr:street}" }, "question": { diff --git a/assets/layers/ambulancestation/ambulancestation.json b/assets/layers/ambulancestation/ambulancestation.json index e48940e2c..a249629c1 100644 --- a/assets/layers/ambulancestation/ambulancestation.json +++ b/assets/layers/ambulancestation/ambulancestation.json @@ -89,7 +89,7 @@ "en": "What is the street name where the station located?", "ja": " 救急ステーションの所在地はどこですか?", "ru": " По какому адресу расположена эта станция?", - "fr": " Quel est le nom de la rue où la station se situe ?", + "fr": "Quel est le nom de la rue où la station se situe ?", "it": " Come si chiama la strada in cui si trova questa stazione?", "de": "In welcher Straße liegt die Rettungswache?", "hu": "Mi a neve annak az utcának, amelyben az állomás található?", @@ -116,7 +116,7 @@ "en": "Where is the station located? (e.g. name of neighborhood, villlage, or town)", "ja": "このステーションの住所は?(例: 地区、村、または町の名称)", "ru": "Где расположена станция? (напр., название населённого пункта)", - "fr": "Dans quelle localité la station est-elle située ?", + "fr": "Dans quelle localité la station est-elle située (p.ex. nom du quartier, village ou villa) ?", "it": "Dove si trova la stazione? (ad es. quartiere, paese o città)", "de": "Wo befindet sich die Rettungswache? (z. B. Name von Stadtviertel, Dorf oder Stadt)", "hu": "Hol található az állomás? (Pl. a falu, kisváros vagy városrész neve.)", @@ -263,7 +263,7 @@ "de": "Die Rettungswache wird von einer privaten Organisation betrieben.", "hu": "Az állomást egy magánkézben lévő szervezet működteti.", "nl": "Dit station wordt beheerd door een privé-organisatie.", - "es": "La estación es de gestión privada." + "es": "La estación se opera privadamente." } } ] diff --git a/assets/layers/artwork/artwork.json b/assets/layers/artwork/artwork.json index 128cada88..c8112879f 100644 --- a/assets/layers/artwork/artwork.json +++ b/assets/layers/artwork/artwork.json @@ -74,7 +74,7 @@ "description": { "en": "An open map of statues, busts, graffitis and other artwork all over the world", "nl": "Een vrije kaart met standbeelden, bustes, graffiti en andere kunstwerken van over de hele wereld", - "fr": "Diverses œuvres d'art", + "fr": "Une carte ouverte de statues, bustes, graffitis et autres œuvres d'art de par le monde", "de": "Eine freie Karte mit Statuen, Büsten, Graffitis und anderen Kunstwerken auf der ganzen Welt", "it": "Diverse opere d’arte", "ru": "Разнообразные произведения искусства", @@ -382,7 +382,7 @@ "pt": "Azulejo (azulejo decorativo espanhol e português)", "hu": "Azulejo (portugál vagy spanyol dekoratív csempe)", "pl": "Azulejo (hiszpańskie płytka dekoracyjna)", - "es": "Azulejo (azulejos decorativos españoles)" + "es": "Azulejo (Baldosas decorativas Españolas y Portuguesas)" } }, { diff --git a/assets/layers/barrier/barrier.json b/assets/layers/barrier/barrier.json index 8e99da33f..2620226c8 100644 --- a/assets/layers/barrier/barrier.json +++ b/assets/layers/barrier/barrier.json @@ -60,7 +60,7 @@ "de": "Barriere für Radfahrer", "fr": "Barrière cyclable", "ca": "Barrera ciclista", - "es": "Barrera ciclista" + "es": "Barrera Ciclista" } } ] @@ -106,7 +106,7 @@ "hu": "Kerékpárakadály", "fr": "une barrière cyclable", "da": "en stibom", - "es": "una barrera para bicicletas" + "es": "una barrera ciclista" }, "tags": [ "barrier=cycle_barrier" @@ -137,7 +137,7 @@ "de": "Kann ein Radfahrer das Hindernis passieren?", "hu": "Át lehet-e menni rajta kerékpárral?", "fr": "Est-ce qu'un vélo peut franchir cette barrière ?", - "es": "¿Puede un ciclista pasar esta barrera?" + "es": "¿Puede pasar una bicicleta esta barrera?" }, "mappings": [ { @@ -149,7 +149,7 @@ "fr": "Un cycliste peut franchir ceci.", "hu": "Kerékpárral át lehet hajtani.", "da": "En cyklist kan cykle forbi denne.", - "es": "Un ciclista puede pasar por aquí." + "es": "Un ciclista puede pasar esto." } }, { @@ -161,7 +161,7 @@ "fr": "Un cycliste ne peut pas franchir ceci.", "hu": "Kerékpárral nem lehet áthajtani.", "da": "En cyklist kan ikke cykle forbi denne.", - "es": "Un ciclista no puede pasar por aquí." + "es": "Un ciclista no puede pasar esto." } } ], @@ -242,7 +242,7 @@ "fr": "Bollard qui peut être couché", "hu": "Lehajtható terelőoszlop", "da": "Pullert, der kan klappes ned", - "es": "Bolardo abatible" + "es": "Bolardo que se puede doblar" } }, { @@ -292,7 +292,7 @@ "de": "Einfach, nur zwei Barrieren mit einem Zwischenraum", "hu": "Egyszeres: csak két korlát, közöttük térköz", "fr": "Simple, deux barrières côte à côte", - "es": "Simple, sólo dos barreras con un espacio entre ellas" + "es": "Simple, simplemente dos barreras con un espacio en el medio" }, "icon": { "path": "./assets/themes/cycle_infra/Cycle_barrier_single.png", @@ -322,7 +322,7 @@ "de": "Dreifach, drei Barrieren hintereinander", "hu": "Háromszoros: három, egymáshoz képest eltolt korlát egymás után", "fr": "Triple, trois barrières successives", - "es": "Triple, tres barreras una detrás de la otra" + "es": "Triple, tres barreras una detrás de otra" }, "icon": { "path": "./assets/themes/cycle_infra/Cycle_barrier_triple.png", @@ -352,7 +352,7 @@ "en": "Maximum width: {maxwidth:physical} m", "nl": "Maximumbreedte: {maxwidth:physical} m", "de": "Maximale Durchfahrtsbreite: {maxwidth:physical} m", - "fr": "Largeur maximale: {maxwidth:physical} m", + "fr": "Largeur maximale : {maxwidth:physical} m", "hu": "Legnagyobb szélesség: {maxwidth:physical} m", "es": "Anchura máxima: {maxwidth:physical} m", "da": "Maksimal bredde: {maxwidth:physical} m" diff --git a/assets/layers/bench/bench.json b/assets/layers/bench/bench.json index 58c17fc0b..ea2062d4f 100644 --- a/assets/layers/bench/bench.json +++ b/assets/layers/bench/bench.json @@ -120,7 +120,7 @@ { "render": { "en": "{seats} seats", - "de": "{seats} Sitzplätze", + "de": "Die Sitzbank hat {seats} Sitzplätze", "fr": "{seats} places", "nl": "{seats} zitplaatsen", "es": "{seats} asientos", @@ -713,7 +713,7 @@ "description": { "nl": "Deze laag toont zitbanken en enkele vragen over deze zitbanken", "en": "A bench is a wooden, metal, stone, … surface where a human can sit. This layers visualises them and asks a few questions about them.", - "fr": "Un banc est une surface en bois, métal, pierre... sur laquelle un humain peut s'asseoir. Cette couche permet de les visualiser et pose des questions à leur sujet.", + "fr": "Un banc est une surface en bois, métal, pierre… sur laquelle un humain peut s'asseoir. Cette couche permet de les visualiser et pose des questions à leur sujet.", "de": "Diese Karte stellt Sitzbänke aus Holz, Metall, Stein, … dar und stellt ein paar Fragen, um weitere Informationen zu ergänzen.", "es": "Un banco es una superficie de madera, metal, piedra, ... donde un humano se puede sentar. Estas capas los visualizan y hacen algunas preguntas sobre ellos.", "da": "En bænk er en træ-, metal-, sten-, ... overflade, hvor et menneske kan sidde. Dette lag visualiserer dem og stiller et par spørgsmål om dem." diff --git a/assets/layers/bench_at_pt/bench_at_pt.json b/assets/layers/bench_at_pt/bench_at_pt.json index 0afaa0395..b86acff66 100644 --- a/assets/layers/bench_at_pt/bench_at_pt.json +++ b/assets/layers/bench_at_pt/bench_at_pt.json @@ -91,7 +91,7 @@ "zh_Hant": "涼亭內的長椅", "pt_BR": "Banco em abrigo", "pt": "Banco em abrigo", - "es": "Banco en el refugio" + "es": "Banco en marquesina" } } ] @@ -143,7 +143,7 @@ "de": "Hier gibt es eine normale Sitzbank", "nl": "Er is hier een normale zitbank", "da": "Der er en normal siddebænk her", - "es": "Aquí hay un banco normal para sentarse" + "es": "Hay un banco normal aquí" } }, { @@ -158,7 +158,7 @@ "ru": "Встаньте на скамейке", "zh_Hant": "站立長椅", "da": "Stå-op bænk", - "es": "Banco de pie" + "es": "Banco de pié" } }, { diff --git a/assets/layers/bicycle_library/bicycle_library.json b/assets/layers/bicycle_library/bicycle_library.json index 5d117b8e5..0f3908bb5 100644 --- a/assets/layers/bicycle_library/bicycle_library.json +++ b/assets/layers/bicycle_library/bicycle_library.json @@ -63,7 +63,7 @@ "pt_BR": "Uma instalação onde as bicicletas podem ser emprestadas por períodos mais longos", "pl": "Obiekt, w którym rowery można wypożyczyć na dłuższy okres", "pt": "Uma instalação onde as bicicletas podem ser emprestadas por períodos mais longos", - "es": "Una instalación en la que se pueden prestar las bicicletas durante un periodo de tiempo más largo" + "es": "Una facilidad donde se pueden alquilar bicicletas durante largos periodos de tiempo" }, "tagRenderings": [ "images", @@ -119,7 +119,7 @@ "pt_BR": "Quanto custa um empréstimo de bicicleta?", "pt": "Quanto custa um empréstimo de bicicleta?", "da": "Hvor meget koster det at leje en cykel?", - "es": "¿Cuánto cuesta el préstamo de una bicicleta?" + "es": "¿Cuánto cuesta alquilar una bicicleta?" }, "render": { "en": "Lending a bicycle costs {charge}", @@ -163,7 +163,7 @@ "pt_BR": "Emprestar uma bicicleta é grátis", "pt": "Emprestar uma bicicleta é grátis", "da": "Det er gratis at låne en cykel", - "es": "El préstamo de bicicletas es gratuito" + "es": "Alquilar una bicicleta es gratis" } }, { @@ -183,7 +183,7 @@ "ru": "Прокат велосипеда стоит €20/год и €20 залог", "pt_BR": "Emprestar uma bicicleta custa €20/ano e €20 de garantia", "pt": "Emprestar uma bicicleta custa €20/ano e €20 de garantia", - "es": "Prestar una bicicleta cuesta 20 euros al año y 20 euros de garantía" + "es": "Alquilar una bicicleta cuesta 20€/año y 20€ de fianza" } } ], @@ -192,9 +192,9 @@ { "id": "bicycle-library-target-group", "question": { - "en": "Who can lend bicycles here?", + "en": "Who can loan bicycles here?", "nl": "Voor wie worden hier fietsen aangeboden?", - "fr": "Qui peut emprunter des vélos ici ?", + "fr": "Qui peut emprunter des vélos ici ?", "hu": "Ki kölcsönözhet itt kerékpárt?", "it": "Chi può prendere in prestito le biciclette qua?", "zh_Hans": "谁可以从这里借自行车?", @@ -204,7 +204,7 @@ "pt_BR": "Quem pode emprestar bicicletas aqui?", "pt": "Quem pode emprestar bicicletas aqui?", "da": "Hvem kan låne cykler her?", - "es": "¿Quién puede prestar bicicletas aquí?" + "es": "¿Quién puede alquilar bicicletas aquí?" }, "multiAnswer": true, "mappings": [ diff --git a/assets/layers/bicycle_rental/bicycle_rental.json b/assets/layers/bicycle_rental/bicycle_rental.json index 9bbc1f027..b6326f05c 100644 --- a/assets/layers/bicycle_rental/bicycle_rental.json +++ b/assets/layers/bicycle_rental/bicycle_rental.json @@ -29,7 +29,8 @@ "nl": "Fietsverhuur", "es": "Alquiler de bicicletas", "de": "Fahrradverleih", - "da": "Cykeludlejning" + "da": "Cykeludlejning", + "fr": "Location de vélo" }, "mappings": [ { @@ -44,15 +45,16 @@ "ca": "{name}", "de": "{name}", "es": "{name}", - "da": "{name}" + "da": "{name}", + "fr": "{name}" } } ] }, "description": { "en": "Bicycle rental stations", - "nl": "Fietsverhuustations", - "fr": "Station de location de vélo", + "nl": "Fietsverhuurstations", + "fr": "Stations de location de vélo", "de": "Fahrradverleihstationen", "es": "Estaciones de alquiler de bicicletas" }, @@ -65,7 +67,8 @@ "nl": "Wat voor fietsverhuur is dit?", "de": "Was ist das für ein Fahrradverleih?", "es": "¿Qué tipo de alquiler de bicicletas es este?", - "da": "Hvilken slags cykeludlejning er dette?" + "da": "Hvilken slags cykeludlejning er dette?", + "fr": "De quel type de location de vélo s'agit-il ?" }, "mappings": [ { @@ -80,7 +83,8 @@ "nl": "Dit is een zaak die focust op fietsverhuur", "de": "Dies ist ein Geschäft, dessen Schwerpunkt auf dem Fahrradverleih liegt", "es": "Esta es una tienda que se centra en el alquiler de bicicletas", - "da": "Dette er en butik, hvis hovedfokus er cykeludlejning" + "da": "Dette er en butik, hvis hovedfokus er cykeludlejning", + "fr": "C'est un magasin dont l'activité principale est la location de vélo" } }, { @@ -90,7 +94,8 @@ "nl": "Dit is een zaak die verschillende voorwerpen en/of voertuigen verhuurt, waaronder ook fietsen; al zijn fietsen niet de hoofdfocus", "de": "Dies ist ein Geschäft, das verschiedene Gegenstände und/oder Fahrzeuge vermietet. Es vermietet auch Fahrräder, aber das ist nicht der Hauptschwerpunkt", "es": "Este es un negocio de alquileres que alquila varios objetos y/o vehículos. También alquila bicicletas, pero este no es el enfoque principal", - "da": "Dette er en udlejningsvirksomhed, som udlejer forskellige genstande og/eller køretøjer. Den udlejer også cykler, men det er ikke det primære fokus" + "da": "Dette er en udlejningsvirksomhed, som udlejer forskellige genstande og/eller køretøjer. Den udlejer også cykler, men det er ikke det primære fokus", + "fr": "C'est une agence louant diverses choses et/ou voitures. Elle loue également des vélos, mais ce n'est pas sa principale activité" } }, { @@ -105,7 +110,8 @@ "nl": "Dit is een fietsenmaker of fietswinkel die ook fietsen verhuurt", "de": "Dies ist ein Geschäft, das Fahrräder verkauft oder repariert, aber auch Fahrräder vermietet", "es": "Esta es una tienda que vende o alquila bicicletas, pero también las alquila", - "da": "Dette er en butik, der sælger eller reparerer cykler, men som også udlejer cykler" + "da": "Dette er en butik, der sælger eller reparerer cykler, men som også udlejer cykler", + "fr": "C'est un magasin qui vend ou répare des vélos mais peut également en louer" } }, { @@ -114,7 +120,8 @@ "en": "This is an automated docking station, where a bicycle is mechanically locked into a structure", "nl": "Dit is een docking station waar de fietsen mechanisch in een grotere structuur worden vastgemaakt", "de": "Dies ist eine automatisierte Radstation, bei der Fahrräder mechanisch in einer Struktur verriegelt werden", - "es": "Esta es una estación automática, en la que una bici se asegura mecánicamente a una estructura" + "es": "Esta es una estación automática, en la que una bici se asegura mecánicamente a una estructura", + "fr": "Ceci est un point d’attache automatisé où le vélo est attaché mécaniquement à une structure" } }, { @@ -124,7 +131,8 @@ "nl": "Hier is een machine die fietssleutels verdeelt en terugneemt, eventueel na aanmelden of betaling. De fietsen staan in de buurt geparkeerd", "hu": "Ez egy leadási pont: ennek a kerékpárkölcsönzőnek a kijelölt kerékpártárolója", "de": "Dies ist ein Automat, der Schlüssel ausgibt und annimmt, eventuell nach Authentifizierung und/oder Bezahlung. Die Fahrräder sind in der Nähe geparkt", - "es": "Una máquina que dispensa y acepta llaves, eventualmente después de la autenticación y/o el pago está presente. Las bicicletas están aparcadas cerca" + "es": "Una máquina que dispensa y acepta llaves, eventualmente después de la autenticación y/o el pago está presente. Las bicicletas están aparcadas cerca", + "fr": "Il y a un distributeur qui distribue et accepte les clés, éventuellement après identification et/ou payement. Les vélos sont stationnés à proximité" } }, { @@ -133,7 +141,8 @@ "en": "This is a dropoff point, e.g. a reserved parking to place the bicycles which clearly marked as being for the rental service only", "nl": "Dit is een dropzone, bv. een fietsparkeerplaats die is voorbehouden voor fietsverhuur ", "de": "Dies ist ein Rückgabepunkt, z. B. ein reservierter Fahrradstellplatz, der deutlich als solcher gekennzeichnet ist", - "es": "Este es un punto de entrega, ej. un aparcamiento reservado para colocar las bicicletas, claramente marcado como solo para el servicio de alquiler" + "es": "Este es un punto de entrega, ej. un aparcamiento reservado para colocar las bicicletas, claramente marcado como solo para el servicio de alquiler", + "fr": "Ceci est un point de dépôt, p.ex. un emplacement de parking réservé aux vélos de location" } } ], @@ -356,7 +365,8 @@ "nl": "fietstassen", "de": "Fahrradtaschen", "da": "cykeltasker", - "es": "alforjas de bicicleta" + "es": "alforjas de bicicleta", + "fr": "sacoches pour vélo" } ], [ @@ -420,7 +430,7 @@ "fr": "Un magasin qui priorise la location de vélos", "de": "Ein Geschäft, das sich auf den Fahrradverleih konzentriert", "da": "En bemandet butik, der fokuserer på cykeludlejning", - "es": "Una tienda con personal que se dedica al alquiler de bicicletas" + "es": "Una tienda atendida que se centra en el alquiler de bicicletas" } }, { diff --git a/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json b/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json index 35e81b994..a8127be68 100644 --- a/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json +++ b/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json @@ -301,6 +301,7 @@ "en": "A layer showing vending machines for bicycle tubes (either purpose-built bicycle tube vending machines or classical vending machines with bicycle tubes and optionally additional bicycle related objects such as lights, gloves, locks, …)", "nl": "Een laag met verkoopsautomaten met binnenbanden voor fietsen (dit kan een automaat zijn met énkel fietsbanden, of een gewone automaat met fietsbanden en andere fietsaccessoires zoals lichten, handschoenen, sloten,...)", "de": "Eine Ebene mit Automaten für Fahrradschläuche (entweder spezielle Fahrradschlauch-Automaten oder klassische Automaten mit Fahrradschläuchen und optional zusätzlichen fahrradbezogenen Gegenständen wie Lampen, Handschuhe, Schlösser, …)", - "da": "Et lag med automater til cykelslanger (enten specialbyggede cykelslangeautomater eller klassiske automater med cykelslanger og eventuelt andre cykelrelaterede genstande som f.eks. lys, handsker, låse, ...)" + "da": "Et lag med automater til cykelslanger (enten specialbyggede cykelslangeautomater eller klassiske automater med cykelslanger og eventuelt andre cykelrelaterede genstande som f.eks. lys, handsker, låse, ...)", + "fr": "Une couche affichant des distributeurs automatiques de chambre à air (que ce soit des distributeurs conçus spécifiquement pour les chambres à air ou des distributeurs classiques incluant des chambres à air ainsi des objets apparentés tels que de l'éclairage pour vélo, des gants, des cadenas, ...)" } } \ No newline at end of file diff --git a/assets/layers/bike_cafe/bike_cafe.json b/assets/layers/bike_cafe/bike_cafe.json index 036ca38ca..10b1871e5 100644 --- a/assets/layers/bike_cafe/bike_cafe.json +++ b/assets/layers/bike_cafe/bike_cafe.json @@ -400,6 +400,7 @@ "en": "A bike café is a café geared towards cyclists, for example with services such as a pump, with lots of bicycle-related decoration, …", "nl": "Een fietscafé is een café dat gericht is op fietsers, bijvoorbeeld omdat het een fietspomp heeft, fietsgerelateerde decoratie heeft enzovoorts.", "de": "Ein Fahrradcafé ist ein Café, das auf Radfahrer ausgerichtet ist, zum Beispiel mit Dienstleistungen wie einer Pumpe, mit viel fahrradbezogener Dekoration, …", - "da": "En cykelcafé er en café rettet mod cyklister, for eksempel med tjenester som en pumpe, med masser af cykelrelateret dekoration, ..." + "da": "En cykelcafé er en café rettet mod cyklister, for eksempel med tjenester som en pumpe, med masser af cykelrelateret dekoration, ...", + "fr": "Un vélo café est un café à destination des cyclistes avec, par exemple, des services tels qu’une pompe, et de nombreuses décorations liées aux vélos, etc." } } \ No newline at end of file diff --git a/assets/layers/bike_cleaning/bike_cleaning.json b/assets/layers/bike_cleaning/bike_cleaning.json index 31db4adcf..97335e75d 100644 --- a/assets/layers/bike_cleaning/bike_cleaning.json +++ b/assets/layers/bike_cleaning/bike_cleaning.json @@ -80,13 +80,15 @@ "en": "How much does it cost to use the cleaning service?", "de": "Wie viel kostet die Nutzung des Reinigungsdienstes?", "nl": "Hoeveel kost het gebruik van het fietsschoonmaakpunt?", - "es": "¿Cuánto cuesta utilizar el servicio de limpieza?" + "es": "¿Cuánto cuesta utilizar el servicio de limpieza?", + "fr": "Combien coûte le service de nettoyage ?" }, "render": { "en": "Using the cleaning service costs {service:bicycle:cleaning:charge}", "de": "Nutzung des Reinigungsservice kostet {service:bicycle:cleaning:charge}", "nl": "Het gebruik van het fietsschoonmaakpunt kost {service:bicycle:cleaning:charge}", - "es": "Utilizar el servicio de limpieza cuesta {service:bicycle:cleaning:charge}" + "es": "Utilizar el servicio de limpieza cuesta {service:bicycle:cleaning:charge}", + "fr": "Le service de nettoyage coûte {service:bicycle:cleaning:charge}" }, "condition": { "and": [ @@ -108,7 +110,8 @@ "en": "The cleaning service is free to use", "de": "Der Reinigungsservice ist kostenlos", "nl": "Het fietsschoonmaakpunt is gratis", - "es": "El servicio de limpieza es gratis" + "es": "El servicio de limpieza es gratis", + "fr": "Le service de nettoyage est gratuit" } }, { @@ -118,7 +121,8 @@ "de": "Kostenlose Nutzung", "nl": "Gratis te gebruiken", "es": "Gratis", - "da": "Gratis at bruge" + "da": "Gratis at bruge", + "fr": "Utilisation gratuite" }, "hideInAnswer": true }, @@ -128,7 +132,8 @@ "en": "The cleaning service has a fee, but the amount is not known", "de": "Der Reinigungsdienst ist kostenpflichtig, aber der Betrag ist nicht bekannt", "nl": "Het fietsschoonmaakpunt is betalend, maar de prijs is onbekend", - "es": "El servicio de limpieza tiene una tasa, pero la cantidad se desconoce" + "es": "El servicio de limpieza tiene una tasa, pero la cantidad se desconoce", + "fr": "Le coût du service de nettoyage n’est pas connu" }, "hideInAnswer": true } @@ -140,13 +145,15 @@ "en": "How much does it cost to use the cleaning service?", "de": "Wie viel kostet die Nutzung des Reinigungsdienstes?", "nl": "Hoeveel kost het gebruik van het fietsschoonmaakpunt?", - "es": "¿Cuánto cuesta utilizar el servicio de limpieza?" + "es": "¿Cuánto cuesta utilizar el servicio de limpieza?", + "fr": "Combien cela coûte-t-il d'utiliser le service de nettoyage ?" }, "render": { "en": "Using the cleaning service costs {charge}", "de": "Die Nutzung des Reinigungsdienstes kostet {charge}", "nl": "Het gebruik van het fietsschoonmaakpunt kost {charge}", - "es": "Utilizar el servicio de limpieza cuesta {charge}" + "es": "Utilizar el servicio de limpieza cuesta {charge}", + "fr": "L’utilisation du service de nettoyage coûte {charge}" }, "condition": { "or": [ @@ -167,7 +174,8 @@ "en": "Free to use cleaning service", "de": "Kostenloser Reinigungsservice", "nl": "Gratis fietsschoonmaakpunt", - "es": "Un servicio de limpieza gratis" + "es": "Un servicio de limpieza gratis", + "fr": "Service de nettoyage gratuit" } }, { @@ -177,7 +185,8 @@ "de": "Kostenlose Nutzung", "nl": "Gratis te gebruiken", "es": "Gratis", - "da": "Gratis at bruge" + "da": "Gratis at bruge", + "fr": "Libre d'utilisation" }, "hideInAnswer": true }, @@ -187,7 +196,8 @@ "en": "The cleaning service has a fee", "de": "Der Reinigungsservice ist kostenpflichtig", "nl": "Je moet betalen voor het fietsschoonmaakpunt", - "es": "El servicio de limpieza tiene una tarifa" + "es": "El servicio de limpieza tiene una tarifa", + "fr": "Le service de nettoyage est payant" } } ], @@ -239,6 +249,7 @@ "nl": "Een laag die plaatsen toont waar je je fiets kunt wassen", "de": "Eine Ebene mit Einrichtungen, in denen man sein Fahrrad reinigen kann", "es": "Una capa que muestra facilidades en las que uno puede limpiar su bici", - "da": "Et lag med faciliteter, hvor man kan rengøre sin cykel" + "da": "Et lag med faciliteter, hvor man kan rengøre sin cykel", + "fr": "Une couche affichant les lieux où l'on peut nettoyer son vélo" } } \ No newline at end of file diff --git a/assets/layers/bike_parking/bike_parking.json b/assets/layers/bike_parking/bike_parking.json index cd7482a85..7e7a45107 100644 --- a/assets/layers/bike_parking/bike_parking.json +++ b/assets/layers/bike_parking/bike_parking.json @@ -561,7 +561,7 @@ "zh_Hant": "這停車場有設計 (官方) 空間給裝箱的單車。", "pt_BR": "Este estacionamento tem vagas (oficiais) projetadas para bicicletas de carga.", "pt": "Este estacionamento tem vagas (oficiais) projetadas para bicicletas de carga.", - "es": "Este aparcamiento tiene huecos (oficialmente) designados para bicicletas de carga.", + "es": "Este aparcamiento tiene huecos designados (oficialmente) para bicicletas de carga.", "da": "Denne parkeringsplads har udpegede (officielle) pladser til ladcykler." } }, @@ -576,7 +576,7 @@ "it": "Il parcheggio delle bici da trasporto è proibito", "pt_BR": "Você não tem permissão para estacionar bicicletas de carga", "pt": "Não tem permissão para estacionar bicicletas de carga", - "es": "No se permite aparcar bicicletas de carga", + "es": "No está permitido aparcar bicicletas de carga", "da": "Det er ikke tilladt at parkere ladcykler" } } @@ -605,7 +605,7 @@ "it": "Questo parcheggio può contenere {capacity:cargo_bike} bici da trasporto", "pt_BR": "Neste estacionamento cabem {capacity:cargo_bike} bicicletas de carga", "pt": "Neste estacionamento cabem {capacity:cargo_bike} bicicletas de carga", - "es": "En este aparcamiento caben {capacity:cargo_bike} bicis de carga", + "es": "En este aparcamiento caben {capacity:cargo_bike} bicicletas de carga", "da": "Der er plads til {capacity:cargo_bike} på denne cykelparkering" }, "condition": "cargo_bike~designated|yes", @@ -650,6 +650,7 @@ "nl": "Een laag die toont waar je je fiets kunt parkeren", "de": "Eine Ebene, die anzeigt, wo Sie Ihr Fahrrad abstellen können", "es": "Una capa que muestra donde puedes aparcar tu bici", - "da": "Et lag, der viser, hvor man kan parkere sin cykel" + "da": "Et lag, der viser, hvor man kan parkere sin cykel", + "fr": "Une couche montrant où stationner son vélo" } } \ No newline at end of file diff --git a/assets/layers/bike_repair_station/bike_repair_station.json b/assets/layers/bike_repair_station/bike_repair_station.json index 2d8d58117..722959ca8 100644 --- a/assets/layers/bike_repair_station/bike_repair_station.json +++ b/assets/layers/bike_repair_station/bike_repair_station.json @@ -200,7 +200,7 @@ "then": { "en": "There are only tools (screwdrivers, pliers, …) present", "nl": "Er is enkel gereedschap aanwezig (schroevendraaier, tang...)", - "fr": "Il y a seulement des outils (tournevis, pinces...)", + "fr": "Il y a seulement des outils (tournevis, pinces…)", "gl": "Só hai ferramentas (desaparafusadores, alicates...) presentes", "de": "Es ist nur Werkzeug (Schraubenzieher, Zangen, …) vorhanden", "it": "Ci sono solo degli attrezzi (cacciaviti, pinze…) presenti", @@ -323,7 +323,8 @@ "nl": "Wie kan dit herstelpunt gebruiken?", "de": "Wer darf die Reparaturstation nutzen?", "es": "¿A quién se le permite utilizar esta estación de reparación?", - "da": "Hvem må bruge denne reparationsstation?" + "da": "Hvem må bruge denne reparationsstation?", + "fr": "Qui est autorisé à utiliser ce centre de réparation ?" }, "mappings": [ { @@ -333,7 +334,8 @@ "nl": "Publiek toegankelijk", "de": "Die Reparaturstation darf öffentlich genutzt werden", "es": "Accesible públicamente", - "da": "Offentligt tilgængelig" + "da": "Offentligt tilgængelig", + "fr": "Accessible au public" } }, { @@ -343,7 +345,8 @@ "nl": "Publiek toegankelijk", "de": "Öffentlich zugänglich", "es": "Accesible públicamente", - "da": "Offentligt tilgængelig" + "da": "Offentligt tilgængelig", + "fr": "Accessible au public" }, "hideInAnswer": true }, @@ -354,7 +357,8 @@ "nl": "Enkel voor klanten van de bijhorende zaak", "de": "Die Reparaturstation darf nur von Kunden genutzt werden", "es": "Solo para clientes", - "da": "Kun for kunder" + "da": "Kun for kunder", + "fr": "Réservé aux clients" } }, { @@ -364,7 +368,8 @@ "nl": "Niet publiek toegankelijk", "de": "Die Reparaturstation darf nicht öffentlich genutzt werden", "es": "No accesible para el público general", - "da": "Ikke tilgængelig for offentligheden" + "da": "Ikke tilgængelig for offentligheden", + "fr": "Pas accessible au public" }, "icon": "./assets/svg/invalid.svg" }, @@ -375,7 +380,8 @@ "nl": "Niet publiek toegankelijk", "de": "Nicht für die Allgemeinheit zugänglich", "es": "No accesible para el público general", - "da": "Ikke tilgængelig for offentligheden" + "da": "Ikke tilgængelig for offentligheden", + "fr": "Pas accessible au public" }, "icon": "./assets/svg/invalid.svg", "hideInAnswer": true @@ -554,7 +560,9 @@ "en": "Report this bicycle pump as broken", "nl": "Rapporteer deze fietspomp als kapot", "de": "Melde diese Fahrradpumpe als kaputt", - "da": "Anmeld denne cykelpumpe som værende i stykker" + "da": "Anmeld denne cykelpumpe som værende i stykker", + "es": "Reportar esta bomba para bicicletas como rota", + "fr": "Signaler cette pompe à vélo cassée" }, "id": "Email maintainer" }, @@ -595,12 +603,13 @@ "then": { "en": "Sclaverand/Presta (narrow-width bike tires)", "nl": "Sclaverand/Presta (dunne fietsbanden)", - "fr": "Sclaverand (aussi appelé Presta)", + "fr": "Sclaverand/Presta (pneus de vélos à faible largeur)", "gl": "Sclaverand (tamén coñecido como Presta)", "de": "Sklaverand-/Presta-Ventile (für Rennräder)", "it": "Sclaverand (detta anche Presta)", "ru": "Клапан Presta (также известный как французский клапан)", - "da": "Sclaverand (også kendt som Presta og racerventil)" + "da": "Sclaverand (også kendt som Presta og racerventil)", + "es": "Sclaverand/Presata (ruedas de bicicleta estrechas)" } }, { @@ -622,11 +631,12 @@ "then": { "en": "Schrader (cars and mountainbikes)", "nl": "Schrader (auto's en mountainbikes)", - "fr": "Schrader (les valves de voitures)", + "fr": "Schrader (voitures et vélos de montagne)", "gl": "Schrader (para automóbiles)", "de": "Schrader-Ventile (für Autos und Mountainbikes)", "it": "Schrader (valvola delle auto)", - "da": "Schrader (biler)" + "da": "Schrader (biler)", + "es": "Schrader (coches y bicicletas de montaña)" } } ], @@ -842,7 +852,8 @@ "nl": "Gereedschap om je fiets te herstellen in de publieke ruimte (zonder pomp). Deze zijn op een vastgemaakt, bijvoorbeeld aan een paal.", "de": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Die Werkzeuge sind gegen Diebstahl gesichert.", "es": "Herramientas para reparar tu bici en el espacio público (sin bomba).Las herramientas están aseguradas contra el robo.", - "da": "Værktøj til at reparere din cykel i det offentlige rum (uden pumpe). Værktøjet er sikret mod tyveri." + "da": "Værktøj til at reparere din cykel i det offentlige rum (uden pumpe). Værktøjet er sikret mod tyveri.", + "fr": "Des outils pour réparer les vélos dans l’espace public (sans pompe). Les outils sont sécurisés contre le vol." } } ], @@ -937,6 +948,7 @@ "nl": "Deze laag toont fietspompen en herstelpunten voor fietsen", "de": "Eine Ebene mit Fahrradpumpen und Werkzeugständern für die Fahrradreparatur", "es": "Una capa que muestra bombas de bicicletas y puestos de herramientas de reparación de bicicletas", - "da": "Et lag med cykelpumper og cykelreværktøjsstativer" + "da": "Et lag med cykelpumper og cykelreværktøjsstativer", + "fr": "Une couche montrant les pompes à vélo et les centres de réparation" } } \ No newline at end of file diff --git a/assets/layers/bike_shop/bike_shop.json b/assets/layers/bike_shop/bike_shop.json index a32161fa7..c10981799 100644 --- a/assets/layers/bike_shop/bike_shop.json +++ b/assets/layers/bike_shop/bike_shop.json @@ -90,7 +90,9 @@ "then": { "en": "Winkel", "de": "Geschäfte", - "nl": "Shop" + "nl": "Shop", + "es": "Winkel", + "fr": "Magasin" } }, { @@ -242,7 +244,8 @@ "en": "This business focuses on rental", "de": "Dieses Geschäft konzentriert sich auf die Vermietung", "da": "Denne virksomhed fokuserer på udlejning", - "es": "Este negocio se centra en el alquiler" + "es": "Este negocio se centra en el alquiler", + "fr": "Ce commerce est spécialisé dans la location" } } ] @@ -349,7 +352,8 @@ "en": "Only accessible to {access}", "nl": "Enkel voor {access}", "de": "Nur zugänglich für {access}", - "es": "Solo accesible a {access}" + "es": "Solo accesible a {access}", + "fr": "Seulement accessible à {access}" }, "freeform": { "key": "access" diff --git a/assets/layers/bike_themed_object/bike_themed_object.json b/assets/layers/bike_themed_object/bike_themed_object.json index f2ec2f60a..ca4c705a1 100644 --- a/assets/layers/bike_themed_object/bike_themed_object.json +++ b/assets/layers/bike_themed_object/bike_themed_object.json @@ -90,6 +90,7 @@ "en": "A layer with bike-themed objects but who don't match any other layer", "nl": "Een laag met fietsgerelateerde diensten, die in geen enkele andere laag konden ondergebracht worden", "de": "Eine Ebene mit Objekten zum Thema Fahrrad, die zu keiner anderen Ebene passen", - "es": "Una capa con los objetos relacionados con bicis pero que no coinciden con ninguna otra capa" + "es": "Una capa con los objetos relacionados con bicis pero que no coinciden con ninguna otra capa", + "fr": "Une couche sur le thème des vélos mais qui ne correspondent à aucune autre couche" } } \ No newline at end of file diff --git a/assets/layers/binocular/binocular.json b/assets/layers/binocular/binocular.json index 7cd30a8dc..99e609825 100644 --- a/assets/layers/binocular/binocular.json +++ b/assets/layers/binocular/binocular.json @@ -7,7 +7,8 @@ "ru": "Бинокль", "ca": "Prismàtics", "da": "Kikkert", - "es": "Prismáticos" + "es": "Prismáticos", + "fr": "Jumelles" }, "minzoom": 0, "title": { @@ -18,7 +19,8 @@ "ru": "Бинокль", "ca": "Prismàtics", "es": "Prismáticos", - "da": "Kikkert" + "da": "Kikkert", + "fr": "Jumelles" } }, "description": { @@ -28,7 +30,8 @@ "ru": "Бинокли", "ca": "Prismàtics", "da": "Kikkerter", - "es": "Prismáticos" + "es": "Prismáticos", + "fr": "Jumelles" }, "tagRenderings": [ "images", @@ -46,7 +49,8 @@ "nl": "Gratis te gebruiken", "de": "Kostenlose Nutzung", "da": "Gratis at bruge", - "es": "De uso gratuito" + "es": "De uso gratuito", + "fr": "En libre service" } } ], @@ -61,14 +65,16 @@ "nl": "Deze verrekijker gebruiken kost {charge}", "de": "Die Benutzung dieses Fernglases kostet {charge}", "es": "Utilizar estos prismáticos cuesta {charge}", - "da": "Brug af denne kikkert koster {charge}" + "da": "Brug af denne kikkert koster {charge}", + "fr": "L’utilisation des ces jumelles coûte {charge}" }, "question": { "en": "How much does one have to pay to use these binoculars?", "nl": "Hoeveel moet men betalen om deze verrekijker te gebruiken?", "de": "Wie viel muss man für die Nutzung dieser Ferngläser bezahlen?", "es": "¿Cuánto hay que pagar para utilizar estos prismáticos?", - "da": "Hvor meget koster det at bruge denne kikkert?" + "da": "Hvor meget koster det at bruge denne kikkert?", + "fr": "Combien l’utilisation des ces jumelles coûte-t-elle ?" }, "id": "binocular-charge" }, @@ -78,14 +84,16 @@ "nl": "Welke richting kijkt men uit als men door deze verrekijker kijkt?", "de": "In welche Richtung blickt man, wenn man durch dieses Fernglas schaut?", "es": "¿Cuándo uno mira a través de estos prismáticos, en qué dirección lo hace?", - "da": "I hvilken retning kigger man, når man ser gennem denne kikkert?" + "da": "I hvilken retning kigger man, når man ser gennem denne kikkert?", + "fr": "Dans quelle direction regarde-t-on en utilisant ces jumelles ?" }, "render": { "en": "Looks towards {direction}°", "nl": "Kijkt richting {direction}°", "de": "Blick in Richtung {direction}°", "es": "Mira hacia {direction}º", - "da": "Kigger mod {direction}°" + "da": "Kigger mod {direction}°", + "fr": "Orienté à {direction}°" }, "freeform": { "key": "direction", @@ -106,13 +114,14 @@ "ru": "бинокль", "ca": "uns prismàtics", "da": "en kikkert", - "es": "unos prismáticos" + "es": "unos prismáticos", + "fr": "des jumelles" }, "description": { "en": "A telescope or pair of binoculars mounted on a pole, available to the public to look around. ", "nl": "Een telescoop of verrekijker die op een vaste plaats gemonteerd staat waar iedereen door mag kijken. ", "de": "Ein fest installiertes Teleskop oder Fernglas, für die öffentliche Nutzung. ", - "fr": "Une longue-vue ou une paire de jumelles montée sur un poteau, disponible au public pour scruter les environs.\n", + "fr": "Une longue-vue ou une paire de jumelles montée sur un poteau, disponible au public pour scruter les environs. ", "da": "Et teleskop eller en kikkert monteret på en stang, som offentligheden kan se sig omkring med. ", "es": "Un telescopio o unos prismáticos montados en un poste, disponible para que el público mire alrededor. " }, diff --git a/assets/layers/birdhide/birdhide.json b/assets/layers/birdhide/birdhide.json index 0e0de87b8..99944bafa 100644 --- a/assets/layers/birdhide/birdhide.json +++ b/assets/layers/birdhide/birdhide.json @@ -5,7 +5,8 @@ "nl": "Vogelkijkhutten", "de": "Orte zur Vogelbeobachtung", "es": "Lugares para ver pájaros", - "da": "Steder til fugleobservation" + "da": "Steder til fugleobservation", + "fr": "Lieu pour observer des oiseaux" }, "minzoom": 14, "source": { @@ -19,7 +20,8 @@ "render": { "en": "Bird watching place", "nl": "Vogelkijkplaats", - "de": "Ort zur Vogelbeobachtung" + "de": "Ort zur Vogelbeobachtung", + "fr": "Lieu d’observation d’oiseaux" }, "mappings": [ { @@ -49,7 +51,8 @@ "en": "Bird hide {name}", "nl": "Vogelkijkhut {name}", "da": "Fugleskjul {name}", - "de": "Vogelbeobachtungsplatz {name}" + "de": "Vogelbeobachtungsplatz {name}", + "fr": "Observatoire ornithologique {name}" } }, { @@ -61,7 +64,8 @@ "then": { "en": "Bird blind {name}", "nl": "Vogelkijkwand {name}", - "de": "Vogelversteck {name}" + "de": "Vogelversteck {name}", + "fr": "Camouflage d’observation ornithologique {name}" } } ] @@ -70,7 +74,8 @@ "en": "A birdhide", "nl": "Een vogelkijkhut", "da": "Et fugleskjul", - "de": "Ein Vogelbeobachtungsturm" + "de": "Ein Vogelbeobachtungsturm", + "fr": "Un observatoire ornithologique" }, "tagRenderings": [ "images", @@ -79,7 +84,8 @@ "question": { "en": "Is this a bird blind or a bird watching shelter?", "nl": "Is dit een kijkwand of kijkhut?", - "de": "Ist dies nur ein Sichtschutz oder ein überdachter Unterstand zur Vogelbeobachtung?" + "de": "Ist dies nur ein Sichtschutz oder ein überdachter Unterstand zur Vogelbeobachtung?", + "fr": "S’agit-il d’un camouflage ou d’un abris d’observation ?" }, "mappings": [ { @@ -93,7 +99,8 @@ "then": { "en": "Bird blind", "nl": "Vogelkijkwand", - "de": "Sichtschutz zur Vogelbeobachtung" + "de": "Sichtschutz zur Vogelbeobachtung", + "fr": "Camouflage d’observation ornithologique" } }, { @@ -108,7 +115,8 @@ "en": "Bird hide", "nl": "Vogelkijkhut", "da": "Fugleskjul", - "de": "Vogelbeobachtungsturm" + "de": "Vogelbeobachtungsturm", + "fr": "Observatoire ornithologique" } }, { @@ -121,7 +129,8 @@ "then": { "en": "Bird tower hide", "nl": "Vogelkijktoren", - "de": "Turm zur Vogelbeobachtung" + "de": "Turm zur Vogelbeobachtung", + "fr": "Tour d’observation ornithologique" } }, { @@ -135,7 +144,8 @@ "then": { "en": "Bird hide shelter", "nl": "Vogelkijkhut", - "de": "Unterstand zur Vogelbeobachtung" + "de": "Unterstand zur Vogelbeobachtung", + "fr": "Abris d’observation ornithologique" }, "hideInAnswer": true } @@ -147,7 +157,8 @@ "en": "Is this bird hide accessible to wheelchair users?", "nl": "Is deze vogelkijkplaats rolstoeltoegankelijk?", "da": "Er dette fugleskjul tilgængeligt for kørestolsbrugere?", - "de": "Ist der Ort rollstuhlgerecht gestaltet?" + "de": "Ist der Ort rollstuhlgerecht gestaltet?", + "fr": "Cet observatoire ornithologique est-il accessible en chaise roulante ?" }, "mappings": [ { @@ -160,7 +171,8 @@ "en": "There are special provisions for wheelchair users", "nl": "Er zijn speciale voorzieningen voor rolstoelen", "es": "Hay provisiones especiales para usuarios de sillas de ruedas", - "de": "Für Rollstuhlfahrer gibt es besondere Vorrichtungen" + "de": "Für Rollstuhlfahrer gibt es besondere Vorrichtungen", + "fr": "L’infrastructure est adaptée aux utilisateurs de chaises roulantes" } }, { @@ -173,7 +185,8 @@ "en": "A wheelchair can easily use this birdhide", "nl": "Een rolstoel raakt er vlot", "da": "En kørestolsbruger kan sagtens bruge dette fugleskjul", - "de": "Der Ort ist rollstuhlgerecht gestaltet" + "de": "Der Ort ist rollstuhlgerecht gestaltet", + "fr": "Cet observatoire ornithologique est facilement accessible en chaise roulante" } }, { @@ -186,7 +199,8 @@ "en": "This birdhide is reachable by wheelchair, but it is not easy", "nl": "Je kan er raken met een rolstoel, maar het is niet makkelijk", "da": "Dette fugleskjul kan nås med kørestol, men det er ikke nemt", - "de": "Der Ort ist nur eingeschränkt rollstuhlgerecht gestaltet" + "de": "Der Ort ist nur eingeschränkt rollstuhlgerecht gestaltet", + "fr": "Cet observatoire ornithologique est accessible en chaise roulante mais difficilement" } }, { @@ -200,7 +214,8 @@ "nl": "Niet rolstoeltoegankelijk", "de": "Nicht zugänglich für Rollstuhlfahrer", "es": "No accesible a usuarios con sillas de ruedas", - "da": "Ikke tilgængelig for kørestolsbrugere" + "da": "Ikke tilgængelig for kørestolsbrugere", + "fr": "Pas accessible en chaise roulante" } } ] @@ -211,7 +226,8 @@ "nl": "Beheer door {operator}", "de": "Betrieben von {operator}", "es": "Operado por {operator}", - "da": "Drives af {operator}" + "da": "Drives af {operator}", + "fr": "Opéré par {operator}" }, "freeform": { "key": "operator" @@ -220,7 +236,8 @@ "en": "Who operates this birdhide?", "nl": "Wie beheert deze vogelkijkplaats?", "da": "Hvem driver dette fugleskjul?", - "de": "Wer betreibt diesen Ort zur Vogelbeobachtung?" + "de": "Wer betreibt diesen Ort zur Vogelbeobachtung?", + "fr": "Qui opère cet observatoire ornithologique ?" }, "mappings": [ { @@ -230,7 +247,8 @@ "nl": "Beheer door Natuurpunt", "de": "Betrieben von Natuurpunt", "es": "Operado por Natuurpunt", - "da": "Drives af Natuurpunt" + "da": "Drives af Natuurpunt", + "fr": "Opéré par Natuurpunt" } }, { @@ -238,7 +256,8 @@ "then": { "en": "Operated by the Agency for Nature and Forests", "nl": "Beheer door het Agentschap Natuur en Bos", - "de": "Betrieben von einer Forst- bzw. Naturschutzbehörde" + "de": "Betrieben von einer Forst- bzw. Naturschutzbehörde", + "fr": "Opéré par l’Agence Nature et Forêts" } } ], @@ -271,14 +290,16 @@ "en": "a birdhide", "nl": "een vogelkijkhut", "da": "et fugleskjul", - "de": "ein Gebäude zur Vogelbeobachtung" + "de": "ein Gebäude zur Vogelbeobachtung", + "fr": "un observatoire ornithologique" }, "description": { "en": "A covered shelter where one can watch birds comfortably", "nl": "Een overdekte hut waarbinnen er warm en droog naar vogels gekeken kan worden", "de": "Ein überdachter Unterstand, in dem man bequem Vögel beobachten kann", "es": "Un refugio cubierto donde se pueden ver pájaros confortablemente", - "da": "Et overdækket ly, hvor man kan se fugle i ro og mag" + "da": "Et overdækket ly, hvor man kan se fugle i ro og mag", + "fr": "Un abris couvert pour observer les oiseaux confortablement" } }, { @@ -290,14 +311,16 @@ "title": { "en": "a bird blind", "nl": "een vogelkijkwand", - "de": "einen Sichtschutz zur Vogelbeobachtung" + "de": "einen Sichtschutz zur Vogelbeobachtung", + "fr": "un camouflage d’observation ornithologique" }, "description": { "en": "A screen or wall with openings to watch birds", "nl": "Een vogelkijkwand waarachter men kan staan om vogels te kijken", "es": "Una pantalla o pared con aperturas para ver pájaros", "da": "En skærm eller væg med åbninger til at se på fugle", - "de": "Ein Schirm oder eine Wand mit Öffnungen zum Beobachten von Vögeln" + "de": "Ein Schirm oder eine Wand mit Öffnungen zum Beobachten von Vögeln", + "fr": "Un écran ou un mur avec des ouvertures pour observer les oiseaux" } } ], @@ -333,7 +356,8 @@ "en": "Only covered birdhides", "nl": "Enkel overdekte kijkhutten", "de": "Nur überdachte Vogelbeobachtungsstellen", - "da": "Kun overdækkede fugleskjul" + "da": "Kun overdækkede fugleskjul", + "fr": "Seulement les observatoires ornithologiques couverts" }, "osmTags": { "and": [ diff --git a/assets/layers/cafe_pub/cafe_pub.json b/assets/layers/cafe_pub/cafe_pub.json index 843999ce7..5a5ff2c9f 100644 --- a/assets/layers/cafe_pub/cafe_pub.json +++ b/assets/layers/cafe_pub/cafe_pub.json @@ -34,14 +34,16 @@ "hu": "kocsma", "ca": "un bar", "da": "en pub", - "es": "un pub" + "es": "un pub", + "fr": "un pub" }, "description": { "en": "A pub, mostly for drinking beers in a warm, relaxed interior", "nl": "Dit is een bruin café of een kroeg waar voornamelijk bier wordt gedronken. De inrichting is typisch gezellig met veel houtwerk", "de": "Eine Kneipe, in der vor allem Bier in ruhiger, entspannter Atmosphäre getrunken wird", "es": "Un bar, principalmente para beber cervezas en un interior templado y relajado", - "da": "En pub, mest et sted at drikke øl i et varme, afslappede omgivelser" + "da": "En pub, mest et sted at drikke øl i et varme, afslappede omgivelser", + "fr": "Un pub, principalement pour boire un verre dans une atmosphère chaleureuse et décontractée" }, "preciseInput": { "preferredBackground": "map" @@ -59,14 +61,16 @@ "hu": "bár", "ca": "un pub", "da": "en bar", - "es": "un bar" + "es": "un bar", + "fr": "un bar" }, "description": { "en": "A more modern and commercial bar, possibly with a music and light installation", "nl": "Dit is een bar waar men ter plaatse alcoholische drank nuttigt. De inrichting is typisch modern en commercieel, soms met lichtinstallatie en feestmuziek", "de": "Eine modernere und kommerzielle Bar, möglicherweise mit einer Musik- und Lichtinstallation", "da": "En mere moderne og kommerciel bar, eventuelt med en musik- og lysinstallation", - "es": "Un bar más moderno y comercial, posiblemente con una instalación de música y luz" + "es": "Un bar más moderno y comercial, posiblemente con una instalación de música y luz", + "fr": "Un bar plus moderne et commercial, avec éventuellement musique et jeux de lumière" }, "preciseInput": { "preferredBackground": "map" @@ -84,13 +88,16 @@ "hu": "kávézó", "ca": "un cafè", "da": "en cafe", - "es": "una cafetería" + "es": "una cafetería", + "fr": "un café" }, "description": { "en": "A cafe to drink tea, coffee or an alcoholical bevarage in a quiet environment", "nl": "Dit is een cafe - een plaats waar men rustig kan zitten om een thee, koffie of alcoholische drank te nuttigen.", "de": "Ein Café, um in ruhiger Umgebung Tee, Kaffee oder ein alkoholisches Getränk zu trinken", - "da": "En café til at drikke te, kaffe eller en alkoholisk drik i rolige omgivelser" + "da": "En café til at drikke te, kaffe eller en alkoholisk drik i rolige omgivelser", + "es": "Una cafetería para beber té, café o una bebida alcohólica en un ambiente tranquilo", + "fr": "Un café pour prendre un thé, un café ou une boisson alcoolisée dans un environnement calme" }, "preciseInput": { "preferredBackground": "map" @@ -103,12 +110,16 @@ "title": { "en": "a nightclub or disco", "nl": "een nachtclub of disco", - "de": "einen Club oder eine Diskothek" + "de": "einen Club oder eine Diskothek", + "es": "un club nocturno o una discoteca", + "fr": "une boîte de nuit ou discothèque" }, "description": { "en": "A nightclub or disco with a focus on dancing, music by a DJ with accompanying light show and a bar to get (alcoholic) drinks", "nl": "Een nachtclub met dansvloer, DJ met bijhorende lichteffecten en bar waar men (alcoholische) dranken kan nuttigen", - "de": "Ein Club oder eine Diskothek mit Fokus auf Tanzen, Musik von einem DJ mit begleitender Lichtshow und einer Bar, an der man (alkoholische) Getränke bekommt" + "de": "Ein Club oder eine Diskothek mit Fokus auf Tanzen, Musik von einem DJ mit begleitender Lichtshow und einer Bar, an der man (alkoholische) Getränke bekommt", + "es": "Un club nocturno o discoteca centrada en bailar, la música de un DJ acompañado por un espectáculo de luces y un bar donde conseguir bebidas (alcohólicas)", + "fr": "Une boîte de nuit ou discothèque pour danser sur de la musique de DJ accompagnée de jeux de lumière et un bar pour prendre une une boisson (alcoolisée)" }, "preciseInput": { "preferredBackground": "map" @@ -185,7 +196,8 @@ "en": "A pub, mostly for drinking beers in a warm, relaxed interior", "nl": "Dit is een bruin café of een kroeg waar voornamelijk bier wordt gedronken. De inrichting is typisch gezellig met veel houtwerk", "de": "Eine Kneipe, in der vor allem Bier in ruhiger, entspannter Atmosphäre getrunken wird", - "es": "Un bar, principalmente para beber cervezas en un interior cálido y relajado" + "es": "Un bar, principalmente para beber cervezas en un interior cálido y relajado", + "fr": "Un pub, principalement pour boire un verre dans une atmosphère chaleureuse et décontractée" } }, { @@ -195,7 +207,8 @@ "nl": "Dit is een bar waar men ter plaatse alcoholische drank nuttigt. De inrichting is typisch modern en commercieel, soms met lichtinstallatie en feestmuziek", "de": "Eine modernere und kommerzielle Bar, möglicherweise mit einer Musik- und Lichtinstallation", "da": "En mere moderne og kommerciel bar, eventuelt med en musik- og lysinstallation", - "es": "Un bar más moderno y comercial, posiblemente con una instalación de música y luz" + "es": "Un bar más moderno y comercial, posiblemente con una instalación de música y luz", + "fr": "Un bar plus moderne et commercial, avec éventuellement musique et jeux de lumière" } }, { @@ -234,7 +247,8 @@ "then": { "en": "This is a nightclub or disco with a focus on dancing, music by a DJ with accompanying light show and a bar to get (alcoholic) drinks", "nl": "Dit is een nachtclub met dansvloer, DJ met bijhorende lichteffecten en bar waar men (alcoholische) dranken kan nuttigen", - "de": "Dies ist ein Club oder eine Disco mit Fokus auf Tanzen, Musik von einem DJ mit begleitender Lichtshow und einer Bar, an der man (alkoholische) Getränke bekommt" + "de": "Dies ist ein Club oder eine Disco mit Fokus auf Tanzen, Musik von einem DJ mit begleitender Lichtshow und einer Bar, an der man (alkoholische) Getränke bekommt", + "es": "Este es un club nocturno o discoteca centrado en bailar, música de un DJ con un espectáculo de luces que la acompaña y un bar donde conseguir bebidas (alcohólicas)" } } ], @@ -285,7 +299,8 @@ "en": "{title()} has closed down permanently", "de": "{title()} wurde dauerhaft geschlossen", "es": "{title()} ha cerrado permanentemente", - "da": "{title()} er lukket permanent" + "da": "{title()} er lukket permanent", + "fr": "{title()} est définitivement fermé" }, "changesetMessage": "shop_closed" } @@ -333,6 +348,7 @@ "nl": "Een laag die kroegen en koffiehuizen toont waar je iets kunt drinken. De laag zal je enkele vragen stellen", "de": "Eine Ebene mit Cafés und Kneipen, in denen man sich auf ein Getränk treffen kann. Die Ebene fragt nach einigen relevanten Eigenschaften", "es": "Una capa que muestra cafeterías y bares donde uno se puede reunir con una bebida. La capa hace algunas preguntas relevantes", - "da": "Et lag med caféer og pubber, hvor man kan samles omkring en drink. Laget stiller nogle relevante spørgsmål" + "da": "Et lag med caféer og pubber, hvor man kan samles omkring en drink. Laget stiller nogle relevante spørgsmål", + "fr": "Une couche montrants les cafés et pubs où l’on peut prendre un verre. Cette couche pose des questions y afférentes." } } \ No newline at end of file diff --git a/assets/layers/charging_station/charging_station.json b/assets/layers/charging_station/charging_station.json index 080e78630..1cd0200fa 100644 --- a/assets/layers/charging_station/charging_station.json +++ b/assets/layers/charging_station/charging_station.json @@ -4,7 +4,8 @@ "en": "Charging stations", "nl": "Oplaadpunten", "ca": "Estacions de càrrega", - "de": "Ladestationen" + "de": "Ladestationen", + "es": "Estaciones de carga" }, "minzoom": 10, "source": { @@ -135,7 +136,8 @@ "then": { "en": "Buses can be charged here", "nl": "Bussen kunnen hier opgeladen worden", - "de": "Hier können Busse laden" + "de": "Hier können Busse laden", + "es": "Aquí se pueden cargar buses" } } ] @@ -249,7 +251,8 @@ "then": { "en": "Schuko wall plug without ground pin (CEE7/4 type F)", "nl": "Schuko stekker zonder aardingspin (CEE7/4 type F)", - "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)" + "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)", + "es": "Enchufe de pared Schuko sin pin de tierra (CEE7/4 tipo F)" }, "icon": { "path": "./assets/layers/charging_station/CEE7_4F.svg", @@ -278,7 +281,8 @@ "then": { "en": "Schuko wall plug without ground pin (CEE7/4 type F)", "nl": "Schuko stekker zonder aardingspin (CEE7/4 type F)", - "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)" + "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)", + "es": "Enchufe de pared Schuko sin pin de tierra (CEE7/4 tipo F)" }, "hideInAnswer": true, "icon": { @@ -292,7 +296,8 @@ "then": { "en": "European wall plug with ground pin (CEE7/4 type E)", "nl": "Europese stekker met aardingspin (CEE7/4 type E)", - "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" + "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)", + "es": "Enchufe de pared Europeo con pin de tierra (CEE7/4 tipo E)" }, "icon": { "path": "./assets/layers/charging_station/TypeE.svg", @@ -309,7 +314,8 @@ "then": { "en": "European wall plug with ground pin (CEE7/4 type E)", "nl": "Europese stekker met aardingspin (CEE7/4 type E)", - "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" + "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)", + "es": "Enchufe de pared Europeo con pin de tierra (CEE7/4 tipo E)" }, "hideInAnswer": true, "icon": { @@ -324,7 +330,8 @@ "en": "Chademo", "nl": "Chademo", "ca": "Chademo", - "de": "Chademo-Anschluss" + "de": "Chademo-Anschluss", + "es": "Chademo" }, "icon": { "path": "./assets/layers/charging_station/Chademo_type4.svg", @@ -368,7 +375,8 @@ "en": "Chademo", "nl": "Chademo", "ca": "Chademo", - "de": "Chademo-Anschluss" + "de": "Chademo-Anschluss", + "es": "Chademo" }, "hideInAnswer": true, "icon": { @@ -1017,7 +1025,8 @@ "then": { "en": "Bosch Active Connect with 3 pins and cable", "nl": "Bosch Active Connect met 3 pinnen aan een kabel", - "de": "Bosch Active Connect mit 3 Pins und Kabel" + "de": "Bosch Active Connect mit 3 Pins und Kabel", + "es": "Bosch Active Connect con 3 pines y cable" }, "icon": { "path": "./assets/layers/charging_station/bosch-3pin.svg", @@ -1056,7 +1065,8 @@ "then": { "en": "Bosch Active Connect with 3 pins and cable", "nl": "Bosch Active Connect met 3 pinnen aan een kabel", - "de": " Bosch Active Connect mit 3 Pins und Kabel" + "de": " Bosch Active Connect mit 3 Pins und Kabel", + "es": "Bosch Active Connect con 3 pines y cable" }, "hideInAnswer": true, "icon": { @@ -1070,7 +1080,8 @@ "then": { "en": "Bosch Active Connect with 5 pins and cable", "nl": "Bosch Active Connect met 5 pinnen aan een kabel", - "de": "Bosch Active Connect mit 5 Pins und Kabel" + "de": "Bosch Active Connect mit 5 Pins und Kabel", + "es": "Bosch Active Connect con 5 pines y cable" }, "icon": { "path": "./assets/layers/charging_station/bosch-5pin.svg", @@ -1109,7 +1120,8 @@ "then": { "en": "Bosch Active Connect with 5 pins and cable", "nl": "Bosch Active Connect met 5 pinnen aan een kabel", - "de": " Bosch Active Connect mit 5 Pins und Kabel" + "de": " Bosch Active Connect mit 5 Pins und Kabel", + "es": "Bosch Active Connect con 5 pines y cable" }, "hideInAnswer": true, "icon": { @@ -3866,6 +3878,7 @@ "en": "Charging here is (also) possible without authentication", "nl": "Hier opladen is (ook) mogelijk zonder aan te melden", "de": "Das Laden ist hier (auch) ohne Authentifizierung möglich", + "es": "La carga aquí (también) es posible sin autenticación", "fr": "Charger ici est (aussi) possible sans authentification" } } @@ -3887,7 +3900,8 @@ "question": { "en": "What's the phone number for authentication call or SMS?", "nl": "Wat is het telefoonnummer dat men moet bellen of SMS'en om zich aan te melden?", - "de": "Wie lautet die Telefonnummer für den Authentifizierungsanruf oder die SMS?" + "de": "Wie lautet die Telefonnummer für den Authentifizierungsanruf oder die SMS?", + "es": "¿Cual es el número de teléfono para la llamada de autenticación o SMS?" }, "freeform": { "key": "authentication:phone_call:number", @@ -4347,7 +4361,8 @@ "title": { "en": "a charging station for electrical bikes with a normal european wall plug (meant to charge electrical bikes)", "nl": "een oplaadpunt voor elektrische fietsen met een gewoon Europees stopcontact (speciaal bedoeld voor fietsen)", - "de": "eine Ladestation für Elektrofahrräder mit einer normalen europäischen Steckdose (zum Laden von Elektrofahrrädern)" + "de": "eine Ladestation für Elektrofahrräder mit einer normalen europäischen Steckdose (zum Laden von Elektrofahrrädern)", + "es": "una estación de carga para bicicletas eléctricas con un enchufe de pared europeo normal (pensado para cargar bicicletas eléctricas)" }, "preciseInput": { "preferredBackground": "map" @@ -4362,7 +4377,8 @@ "title": { "en": "a charging station for cars", "nl": "een oplaadstation voor elektrische auto's", - "de": "eine ladestation für e-bikes" + "de": "eine ladestation für e-bikes", + "es": "una estación de carga para coches" }, "preciseInput": { "preferredBackground": "map" @@ -4456,7 +4472,8 @@ "question": { "en": "Has a
European wall plug with ground pin (CEE7/4 type E)
connector", "nl": "Heeft een
Europese stekker met aardingspin (CEE7/4 type E)
", - "de": "Verfügt über einen
europäischen Netzstecker mit Erdungsstift (CEE7/4 Typ E)
Anschluss" + "de": "Verfügt über einen
europäischen Netzstecker mit Erdungsstift (CEE7/4 Typ E)
Anschluss", + "es": "Tiene un conector
enchufe de pared Europeo con un pin de tierra (CEE7/4 tipo E
" }, "osmTags": "socket:typee~*" }, @@ -4464,7 +4481,8 @@ "question": { "en": "Has a
Chademo
connector", "nl": "Heeft een
Chademo
", - "de": "Verfügt über einen
Chademo
Stecker" + "de": "Verfügt über einen
Chademo
Stecker", + "es": "Tiene un conector
Chademo
" }, "osmTags": "socket:chademo~*" }, @@ -4472,7 +4490,8 @@ "question": { "en": "Has a
Type 1 with cable (J1772)
connector", "nl": "Heeft een
Type 1 met kabel (J1772)
", - "de": "Verfügt über einen
Typ 1 (J1772)
Stecker mit Kabel" + "de": "Verfügt über einen
Typ 1 (J1772)
Stecker mit Kabel", + "es": "Tiene un conector de
Tipo 1 con cable (J1772)
" }, "osmTags": "socket:type1_cable~*" }, @@ -4480,7 +4499,8 @@ "question": { "en": "Has a
Type 1 without cable (J1772)
connector", "nl": "Heeft een
Type 1 zonder kabel (J1772)
", - "de": "Verfügt über einen
Typ 1 (J1772)Stecker ohne Kabel
" + "de": "Verfügt über einen
Typ 1 (J1772)Stecker ohne Kabel
", + "es": "Tiene un conector de
Tipo 1 sin cable (J1772)
" }, "osmTags": "socket:type1~*" }, @@ -4488,7 +4508,8 @@ "question": { "en": "Has a
Type 1 CCS (aka Type 1 Combo)
connector", "nl": "Heeft een
Type 1 CCS (ook gekend als Type 1 Combo)
", - "de": "Verfügt über einen
Typ 1 CCS (Typ 1 Combo)
Stecker" + "de": "Verfügt über einen
Typ 1 CCS (Typ 1 Combo)
Stecker", + "es": "Tiene un conector
Tipo 1 CCS (Combo Tipo 1)
" }, "osmTags": "socket:type1_combo~*" }, @@ -4496,7 +4517,8 @@ "question": { "en": "Has a
Tesla Supercharger
connector", "nl": "Heeft een
Tesla Supercharger
", - "de": "Verfügt über einen
Tesla Supercharger
Stecker" + "de": "Verfügt über einen
Tesla Supercharger
Stecker", + "es": "Tiene un conector
Tesla Supercharger
" }, "osmTags": "socket:tesla_supercharger~*" }, @@ -4504,7 +4526,8 @@ "question": { "en": "Has a
Type 2 (mennekes)
connector", "nl": "Heeft een
Type 2 (mennekes)
", - "de": "Hat einen
Typ 2 (Mennekes)
Anschluss" + "de": "Hat einen
Typ 2 (Mennekes)
Anschluss", + "es": "Tiene un conector
Tipo 2 (mennekes)
" }, "osmTags": "socket:type2~*" }, @@ -4512,7 +4535,8 @@ "question": { "en": "Has a
Type 2 CCS (mennekes)
connector", "nl": "Heeft een
Type 2 CCS (mennekes)
", - "de": "Hat einen
Typ 2 CCS (Mennekes)
Anschluss" + "de": "Hat einen
Typ 2 CCS (Mennekes)
Anschluss", + "es": "Tiene un conector
Tipo 2 CCS (mennekes
" }, "osmTags": "socket:type2_combo~*" }, @@ -4520,7 +4544,8 @@ "question": { "en": "Has a
Type 2 with cable (mennekes)
connector", "nl": "Heeft een
Type 2 met kabel (J1772)
", - "de": "Hat einen
Typ 2 (Mennekes)
Anschluss mit Kabel" + "de": "Hat einen
Typ 2 (Mennekes)
Anschluss mit Kabel", + "es": "Tiene un conector
Tipo 2 con cable (mennekes)
" }, "osmTags": "socket:type2_cable~*" }, @@ -4528,7 +4553,8 @@ "question": { "en": "Has a
Tesla Supercharger CCS (a branded type2_css)
connector", "nl": "Heeft een
Tesla Supercharger CCS (een type2 CCS met Tesla-logo)
", - "de": "Hat einen
Tesla Supercharger CCS (Typ 2 CSS vonTesla)
Anschluss" + "de": "Hat einen
Tesla Supercharger CCS (Typ 2 CSS vonTesla)
Anschluss", + "es": "Tiene un conector
Tesla Supercharger CCS (un tipo2_css de marca)
" }, "osmTags": "socket:tesla_supercharger_ccs~*" }, @@ -4536,7 +4562,8 @@ "question": { "en": "Has a
Tesla Supercharger (destination)
connector", "nl": "Heeft een
Tesla Supercharger (destination)
", - "de": "Hat einen
Tesla Supercharger (Destination)
Anschluss" + "de": "Hat einen
Tesla Supercharger (Destination)
Anschluss", + "es": "Tiene un conector
Tesla Supercharger (destination)
" }, "osmTags": "socket:tesla_destination~*" }, @@ -4544,7 +4571,8 @@ "question": { "en": "Has a
Tesla Supercharger (Destination) (A Type 2 with cable branded as tesla)
connector", "nl": "Heeft een
Tesla supercharger (destination) (Een Type 2 met kabel en Tesla-logo)
", - "de": "Hat einen
Tesla Supercharger (Destination) (Typ 2 von Tesla)
Anschluss mit Kabel" + "de": "Hat einen
Tesla Supercharger (Destination) (Typ 2 von Tesla)
Anschluss mit Kabel", + "es": "Tiene un conector
Tesla Supercharger (Destination) (Tipo2 A con un cable de marca tesla)
" }, "osmTags": "socket:tesla_destination~*" }, @@ -4552,7 +4580,8 @@ "question": { "en": "Has a
USB to charge phones and small electronics
connector", "nl": "Heeft een
USB om GSMs en kleine electronica op te laden
", - "de": "Hat einen
USB-Anschluss zum Aufladen von Telefonen und kleinen Elektrogeräten
" + "de": "Hat einen
USB-Anschluss zum Aufladen von Telefonen und kleinen Elektrogeräten
", + "es": "Tiene un conector
USB para cargar teléfonos y dispositivos electrónicos pequeños
" }, "osmTags": "socket:USB-A~*" }, @@ -4560,7 +4589,8 @@ "question": { "en": "Has a
Bosch Active Connect with 3 pins and cable
connector", "nl": "Heeft een
Bosch Active Connect met 3 pinnen aan een kabel
", - "de": "Hat einen
Bosch Active Connect Anschluss mit 3 Pins
und Kabel" + "de": "Hat einen
Bosch Active Connect Anschluss mit 3 Pins
und Kabel", + "es": "Tiene un conector
Bosch Active Connect con 3 pines y cable
" }, "osmTags": "socket:bosch_3pin~*" }, @@ -4568,7 +4598,8 @@ "question": { "en": "Has a
Bosch Active Connect with 5 pins and cable
connector", "nl": "Heeft een
Bosch Active Connect met 5 pinnen aan een kabel
", - "de": "Hat einen
Bosch Active Connect Anschluss mit 5 Pins
und Kabel" + "de": "Hat einen
Bosch Active Connect Anschluss mit 5 Pins
und Kabel", + "es": "Tiene un conector
Bosch Active Connect con 5 pines y cable
" }, "osmTags": "socket:bosch_5pin~*" } diff --git a/assets/layers/climbing/climbing.json b/assets/layers/climbing/climbing.json index 10eec82ca..cf3ceacf8 100644 --- a/assets/layers/climbing/climbing.json +++ b/assets/layers/climbing/climbing.json @@ -383,7 +383,7 @@ "then": { "en": "Paying a fee is required to climb here", "es": "Hay que pagar una tasa para escalar aquí", - "de": "Zum Klettern ist eine Gebühr zu entrichten", + "de": "Zum Klettern ist eine Gebühr zu zahlen", "nl": "Men moet betalen om hier te klimmen" }, "hideInAnswer": "charge~*" diff --git a/assets/layers/climbing_area/climbing_area.json b/assets/layers/climbing_area/climbing_area.json index 301e7b16b..ab75354ba 100644 --- a/assets/layers/climbing_area/climbing_area.json +++ b/assets/layers/climbing_area/climbing_area.json @@ -2,7 +2,7 @@ "id": "climbing_area", "name": { "nl": "Klimgelegenheden", - "de": "Klettermöglichkeiten", + "de": "Klettereinrichtungen", "en": "Climbing opportunities", "ja": "登坂教室", "fr": "Opportunité d’escalade", @@ -29,7 +29,7 @@ "render": { "en": "Climbing opportunity", "nl": "Klimgelegenheid", - "de": "Klettermöglichkeit", + "de": "Klettereinrichtung", "ja": "登坂教室", "nb_NO": "Klatremulighet", "fr": "Opportunité d’escalade", @@ -87,7 +87,7 @@ "nl": "Klimgelegenheid {name}", "en": "Climbing opportunity {name}", "fr": "Opportunité d’escalade {name}", - "de": "Klettermöglichkeit {name}", + "de": "Klettereinrichtung {name}", "it": "Opportunità di arrampicata {name}" } } @@ -161,7 +161,7 @@ "question": { "en": "What is the name of this climbing opportunity?", "nl": "Wat is de naam van dit Klimgelegenheid?", - "de": "Wie heißt diese Klettergelegenheit?", + "de": "Wie heißt die Klettereinrichtung?", "ja": "この登坂教室の名前は何ですか?", "fr": "Quel est le nom de ce site ?", "it": "Qual è il nome di questa opportunità di arrampicata?" @@ -180,7 +180,7 @@ "then": { "en": "This climbing opportunity doesn't have a name", "nl": "Dit Klimgelegenheid heeft geen naam", - "de": "Diese Klettergelegenheit hat keinen Namen", + "de": "Die Klettereinrichtung hat keinen Namen", "ja": "この登坂教室には名前がついていない", "fr": "Ce site n’a pas de nom", "it": "Questa opportunità di arrampicata non ha un nome" @@ -272,7 +272,7 @@ "title": { "en": "a climbing opportunity", "nl": "een klimgelegenheid", - "de": "eine klettermöglichkeit", + "de": "eine Klettereinrichtung", "ja": "登坂教室", "nb_NO": "en klatremulighet", "fr": "une opportunité d’escalade", @@ -280,7 +280,7 @@ }, "description": { "nl": "Een klimgelegenheid", - "de": "Eine Klettergelegenheit", + "de": "Eine Klettereinrichtung", "en": "A climbing opportunity", "ja": "登坂教室", "nb_NO": "En klatremulighet", diff --git a/assets/layers/climbing_club/climbing_club.json b/assets/layers/climbing_club/climbing_club.json index 6720a1753..4e2bffcdf 100644 --- a/assets/layers/climbing_club/climbing_club.json +++ b/assets/layers/climbing_club/climbing_club.json @@ -111,7 +111,7 @@ "sport=climbing" ], "title": { - "de": "eine kletterverein", + "de": "einen Kletterverein", "en": "a climbing club", "nl": "een klimclub", "ja": "クライミングクラブ", diff --git a/assets/layers/climbing_route/climbing_route.json b/assets/layers/climbing_route/climbing_route.json index 0ad91518e..0e1ddaa45 100644 --- a/assets/layers/climbing_route/climbing_route.json +++ b/assets/layers/climbing_route/climbing_route.json @@ -154,7 +154,7 @@ }, "render": { "en": "This route has {climbing:bolts} bolts
This is without relays and indicates how much quickdraws a climber needs
", - "fr": "Cette voie a {climbing:bolts} prises", + "fr": "Cette voie a {climbing:bolts} prises
C'est sans relai et indique de combien de dégaine un grimpeur a besoin
", "de": "Diese Route hat {climbing:bolts} Haken
Dies ist ohne Relais und gibt an, wie viel Schnellspanner ein Kletterer braucht
", "it": "Questo percorso ha {climbing:bolts} bulloni" }, @@ -201,7 +201,7 @@ "en": "a climbing route", "nl": "een klimroute", "fr": "une voie d’escalade", - "de": "eine kletterroute", + "de": "eine Kletterroute", "it": "una via di arrampicata" }, "tags": [ diff --git a/assets/layers/crossings/crossings.json b/assets/layers/crossings/crossings.json index 1fddaf88e..4377af142 100644 --- a/assets/layers/crossings/crossings.json +++ b/assets/layers/crossings/crossings.json @@ -165,7 +165,8 @@ "then": { "en": "Crossing without crossing markings", "nl": "Oversteekplaats zonder kruispuntmarkeringen", - "de": "Kreuzung ohne Kreuzungsmarkierungen" + "de": "Kreuzung ohne Kreuzungsmarkierungen", + "es": "Cruce sin marcas de cruce" } } ] diff --git a/assets/layers/cycleways_and_roads/cycleways_and_roads.json b/assets/layers/cycleways_and_roads/cycleways_and_roads.json index 8b767a15d..c5dd1ea1d 100644 --- a/assets/layers/cycleways_and_roads/cycleways_and_roads.json +++ b/assets/layers/cycleways_and_roads/cycleways_and_roads.json @@ -417,7 +417,8 @@ "then": { "en": "This cycleway is made of smooth paving stones", "nl": "Dit fietspad is gemaakt van straatstenen", - "de": "Dieser Fahrradweg besteht aus ebenen Pflastersteinen" + "de": "Dieser Fahrradweg besteht aus ebenen Pflastersteinen", + "es": "Este carril bici está hecho de piedras de pavimento suaves" } }, { @@ -494,7 +495,8 @@ "then": { "en": "This cycleway is made from raw ground", "nl": "Dit fietspad is gemaakt van aarde", - "de": "Dieser Radweg besteht aus Rohboden" + "de": "Dieser Radweg besteht aus Rohboden", + "es": "Este carril bici está hecho de tierra natural" } } ], diff --git a/assets/layers/defibrillator/defibrillator.json b/assets/layers/defibrillator/defibrillator.json index 4356dbb24..79bacd7b5 100644 --- a/assets/layers/defibrillator/defibrillator.json +++ b/assets/layers/defibrillator/defibrillator.json @@ -193,7 +193,7 @@ "en": "Not accessible to the general public (e.g. only accesible to staff, the owners, …)", "ca": "No accessible al públic en general (ex. només accesible a treballadors, propietaris, ...)", "es": "No accesible al público en general (ex. sólo accesible a trabajadores, propietarios, ...)", - "fr": "Non accessible au public (par exemple réservé au personnel, au propriétaire, ...)", + "fr": "Non accessible au public (par exemple réservé au personnel, au propriétaire…)", "nl": "Niet toegankelijk voor het publiek (bv. enkel voor personeel, de eigenaar, ...)", "de": "Der Defibrillator ist nicht öffentlich zugänglich (z.B. nur für Personal, Eigentümer, …)", "it": "Non accessibile al pubblico (ad esempio riservato al personale, ai proprietari, etc.)", @@ -670,6 +670,7 @@ "en": "A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device", "nl": "Een laag die defibrillatoren toont die je kan gebruiken bij noodgevallen. Dit omvat zowel publiek beschikbare toestellen als defibrillatoren waarvoor het toestel enkel door personeel aangeboden kan worden", "sl": "Sloj prikazuje defibrilatorje, ki jih je možno uporabiti v primeru sile. Sloj poleg javno dostopnih defibrilatorjev vsebuje tudi tiste, ki za dostop morda potrebujejo pomoč osebja", - "de": "Eine Ebene mit Defibrillatoren, die in Notfällen eingesetzt werden können. Diese Ebene enthält öffentliche Defibrillatoren, aber auch Defibrillatoren, bei denen möglicherweise Personal benötigt wird, um das Gerät zu holen" + "de": "Eine Ebene mit Defibrillatoren, die in Notfällen eingesetzt werden können. Diese Ebene enthält öffentliche Defibrillatoren, aber auch Defibrillatoren, bei denen möglicherweise Personal benötigt wird, um das Gerät zu holen", + "es": "Una capa que muestra desfibriladores que se pueden utilizar en caso de emergencia. Contiene desfibriladores públicos, pero también desfibriladores para los que se puede necesitar que el personal vaya a buscar el dispositivo" } } \ No newline at end of file diff --git a/assets/layers/drinking_water/drinking_water.json b/assets/layers/drinking_water/drinking_water.json index 80cb8b45b..b494885ac 100644 --- a/assets/layers/drinking_water/drinking_water.json +++ b/assets/layers/drinking_water/drinking_water.json @@ -170,7 +170,7 @@ "nl": "Er bevindt zich een ander drinkwaterpunt op {_closest_other_drinking_water_distance} meter", "it": "C’è un’altra fontanella a {_closest_other_drinking_water_distance} metri", "de": "Eine weitere Trinkwasserstelle befindet sich in {_closest_other_drinking_water_distance} Meter", - "fr": "Une autre source d’eau potable est à {_closest_other_drinking_water_distance} mètres a>", + "fr": "Une autre source d’eau potable est à {_closest_other_drinking_water_distance} mètres", "hu": "Van egy másik ivóvízkút {_closest_other_drinking_water_distance} méter távolságra", "es": "Hay otra fuente de agua potable a {_closest_other_drinking_water_distance} metros" }, @@ -249,6 +249,7 @@ "nl": "Deze laag toont drinkwaterpunten", "hu": "Ivóvizet adó kutakat megjelenítő réteg", "de": "Eine Ebene mit Trinkwasserbrunnen", - "es": "Una capa que muestra fuentes de agua potable" + "es": "Una capa que muestra fuentes de agua potable", + "fr": "Une couche montrant les fontaines d'eau potable" } } \ No newline at end of file diff --git a/assets/layers/etymology/etymology.json b/assets/layers/etymology/etymology.json index ecbbed6b9..f6bdda14b 100644 --- a/assets/layers/etymology/etymology.json +++ b/assets/layers/etymology/etymology.json @@ -30,7 +30,7 @@ "nl": "Alle lagen met een gelinkt etymology", "de": "Alle Objekte, die eine bekannte Namensherkunft haben", "hu": "Minden olyan objektum, amelynél ismert a nevének az eredete", - "fr": "Tous les objets dont le nom ont une étymologie connue" + "fr": "Tous les objets dont l’étymologie est connue" }, "calculatedTags": [ "_same_name_ids=feat.closestn('*', 250, undefined, 2500)?.filter(f => f.feat.properties.name === feat.properties.name)?.map(f => f.feat.properties.id)??[]" @@ -61,6 +61,7 @@ "Q22698" ], "removePrefixes": { + "#": "no-translations", "fr": [ "allée de", "allée du", @@ -158,6 +159,7 @@ ] }, "removePostfixes": { + "#": "no-translations", "nl": [ "baan", "boulevard", diff --git a/assets/layers/extinguisher/extinguisher.json b/assets/layers/extinguisher/extinguisher.json index 9037f0104..f132cfaab 100644 --- a/assets/layers/extinguisher/extinguisher.json +++ b/assets/layers/extinguisher/extinguisher.json @@ -5,7 +5,7 @@ "ja": "消火器の地図です。", "nb_NO": "Kart over brannhydranter", "ru": "Карта огнетушителей.", - "fr": "Couche des extincteurs.", + "fr": "Couche des extincteurs", "de": "Feuerlöscher", "it": "Cartina degli estintori.", "nl": "Kaart van brandblussers", diff --git a/assets/layers/fire_station/fire_station.json b/assets/layers/fire_station/fire_station.json index ef87a61d0..3f90c3456 100644 --- a/assets/layers/fire_station/fire_station.json +++ b/assets/layers/fire_station/fire_station.json @@ -100,7 +100,7 @@ "en": "Where is the station located? (e.g. name of neighborhood, villlage, or town)", "ja": "このステーションの住所は?(例: 地区、村、または町の名称)", "ru": "Где расположена часть? (напр., название населённого пункта)", - "fr": "Dans quelle localité la station est-elle située ?", + "fr": "Dans quelle localité la station est-elle située (p.ex. nom du quartier, village ou ville) ?", "it": "In che località si trova la stazione? (ad es. quartiere, paese o città)", "nl": "Waar is dit station gelegen? (v.b. naam van de buurt, dorp of stad)", "de": "Wo befindet sich die Station? (z. B. Name des Viertels, des Dorfes oder der Stadt)" diff --git a/assets/layers/food/food.json b/assets/layers/food/food.json index 85190394c..fea342596 100644 --- a/assets/layers/food/food.json +++ b/assets/layers/food/food.json @@ -1,8 +1,8 @@ { "id": "food", "name": { - "nl": "Eetgelegenheden", "en": "Restaurants and fast food", + "nl": "Eetgelegenheden", "de": "Restaurants und Imbisse", "da": "Restauranter og fastfood", "es": "Restaurantes y comida rápida" @@ -629,7 +629,7 @@ "question": { "en": "Does this fries shop use vegetable or animal oil for cooking?", "nl": "Bakt deze frituur met dierlijk vet of met plantaardige olie?", - "fr": "Cette friteuse fonctionne-t-elle avec de la graisse animale ou végétale ?", + "fr": "Cette friteuse fonctionne-t-elle avec de la graisse animale pour la cuisson ?", "de": "Wird in dieser Pommesbude pflanzliches oder tierisches Fett zum Frittieren verwendet?" }, "mappings": [ @@ -638,7 +638,7 @@ "then": { "en": "The frying is done with vegetable oil", "nl": "Bakt in plantaardige olie", - "fr": "Huile végétale", + "fr": "La friture est faite avec de l'huile végétale", "de": "Es wird pflanzliches Fett zum Frittieren verwendet", "es": "Aceite vegetal" } @@ -648,7 +648,7 @@ "then": { "en": "The frying is done with animal oil", "nl": "Dierlijk vet", - "fr": "Graisse animale", + "fr": "La friture est faite avec de la graisse animale", "de": "Es wird tierisches Fett zum Frittieren verwendet", "es": "Aceite animal" } @@ -696,7 +696,7 @@ "nl": "Je moet je eigen containers meenemen om je bestelling in mee te nemen.", "en": "You must bring your own container to order here.", "ja": "自身の容器が注文に必要。", - "fr": "Il est obligatoire d’apporter ses propres contenants", + "fr": "Il est obligatoire d’apporter ses propres contenants.", "de": "Sie müssen Ihren eigenen Behälter mitbringen, um hier zu bestellen.", "es": "Debes de traer tu propio recipiente para pedir aquí." } diff --git a/assets/layers/hackerspace/hackerspace.json b/assets/layers/hackerspace/hackerspace.json index 76ee445ef..5ff688966 100644 --- a/assets/layers/hackerspace/hackerspace.json +++ b/assets/layers/hackerspace/hackerspace.json @@ -161,33 +161,39 @@ "3dprinter", { "en": "a 3D-printer", - "nl": "een 3D-printer" + "nl": "een 3D-printer", + "de": "einen 3D-Drucker" }, { "en": "3D-printer", - "nl": "3D-printer" + "nl": "3D-printer", + "de": "3D-Drucker" } ], [ "lasercutter", { "en": "a laser cutter", - "nl": "een lasercutter" + "nl": "een lasercutter", + "de": "einen Laserschneider" }, { "en": "laser cutter", - "nl": "lasercutter" + "nl": "lasercutter", + "de": "Laserschneider" } ], [ "cnc_drilling_machine", { "en": "a CNC drill", - "nl": "een CNC-boormachine" + "nl": "een CNC-boormachine", + "de": "eine CNC-Fräse" }, { "en": "CNC drill", - "nl": "CNC-boormachine" + "nl": "CNC-boormachine", + "de": "CNC-Fräse" } ] ] @@ -196,21 +202,24 @@ { "question": { "en": "Is {device-name} available at this hackerspace?", - "nl": "Is er {device-name} beschikbaar in deze hackerspace?" + "nl": "Is er {device-name} beschikbaar in deze hackerspace?", + "de": "Gibt es {device-name} in diesem Hackerspace?" }, "mappings": [ { "if": "service:device-key=yes", "then": { "en": "There is {device-name} available at this hackerspace", - "nl": "Er is {device-name} beschikbaar in deze hackerspace" + "nl": "Er is {device-name} beschikbaar in deze hackerspace", + "de": "In diesem Hackerspace gibt es {device-name}" } }, { "if": "service:device-key=no", "then": { "en": "There is no {negative-name} available at this hackerspace", - "nl": "Er is geen {negative-name} beschikbaar in deze hackerspace" + "nl": "Er is geen {negative-name} beschikbaar in deze hackerspace", + "de": "In diesem Hackerspace gibt es kein {negative-name}" } } ], diff --git a/assets/layers/hydrant/hydrant.json b/assets/layers/hydrant/hydrant.json index 2e1133c08..0615067b2 100644 --- a/assets/layers/hydrant/hydrant.json +++ b/assets/layers/hydrant/hydrant.json @@ -264,7 +264,7 @@ "question": { "en": "Is this hydrant still working?", "ja": "消火栓のライフサイクルステータスを更新します。", - "fr": "Mettre à jour l’état de la borne.", + "fr": "Cette borne incendie est-elle toujours en bon état de fonctionnement ?", "de": "Ist dieser Hydrant noch in Betrieb?", "it": "Aggiorna lo stato di funzionamento dell’idrante.", "nl": "Werkt deze brandkraan nog?", @@ -281,7 +281,7 @@ "en": "The hydrant is (fully or partially) working", "ja": "消火栓は(完全にまたは部分的に)機能しています。", "ru": "Гидрант (полностью или частично) в рабочем состоянии", - "fr": "La borne est en état, ou partiellement en état, de fonctionner.", + "fr": "La borne est en état (ou partiellement en état) de fonctionner", "de": "Der Hydrant ist (ganz oder teilweise) in Betrieb", "it": "L’idrante è (parzialmente o completamente) funzionante.", "nl": "De brandkraan werkt (minstens gedeeltelijk)", @@ -298,7 +298,7 @@ "then": { "en": "The hydrant is unavailable", "ja": "消火栓は使用できません。", - "fr": "La borne est hors-service.", + "fr": "La borne est hors-service", "de": "Der Hydrant ist nicht mehr in Betrieb", "it": "L’idrante è fuori servizio.", "nl": "De brandkraan is niet beschikbaar", @@ -316,7 +316,7 @@ "en": "The hydrant has been removed", "ja": "消火栓が撤去されました。", "ru": "Гидрант демонтирован", - "fr": "La borne a été retirée.", + "fr": "La borne a été retirée", "de": "Der Hydrant wurde entfernt", "it": "L’idrante è stato rimosso.", "nl": "Deze brandkraan is verwijderd", diff --git a/assets/layers/kindergarten_childcare/kindergarten_childcare.json b/assets/layers/kindergarten_childcare/kindergarten_childcare.json index 77f2e0363..7f276d4f8 100644 --- a/assets/layers/kindergarten_childcare/kindergarten_childcare.json +++ b/assets/layers/kindergarten_childcare/kindergarten_childcare.json @@ -2,7 +2,8 @@ "id": "kindergarten_childcare", "name": { "en": "Kindergartens and childcare", - "nl": "Kleuterscholen en kinderopvang" + "nl": "Kleuterscholen en kinderopvang", + "de": "Kindergärten und Kinderkrippen" }, "description": "Shows kindergartens and preschools. Both are grouped in one layer, as they are regularly confused with each other", "minzoom": 12, @@ -21,14 +22,16 @@ "if": "amenity=kindergarten", "then": { "en": "Kindergarten {name}", - "nl": "Kleuterschool {name}" + "nl": "Kleuterschool {name}", + "de": "Kindergarten {name}" } }, { "if": "amenity=childcare", "then": { "en": "Childcare {name}", - "nl": "Kinderopvang {name}" + "nl": "Kinderopvang {name}", + "de": "Kinderkrippe {name}" } } ] @@ -38,14 +41,16 @@ "id": "childcare-type", "question": { "en": "What type of facility is this?", - "nl": "Wat voor faciliteit is dit?" + "nl": "Wat voor faciliteit is dit?", + "de": "Um welche Art von Einrichtung handelt es sich?" }, "mappings": [ { "if": "amenity=kindergarten", "then": { "en": "This is a kindergarten (also known as preschool) where small kids receive early education.", - "nl": "Dit is een kleuterschool waar kindjes (voorbereidend) onderwijs krijgen." + "nl": "Dit is een kleuterschool waar kindjes (voorbereidend) onderwijs krijgen.", + "de": "Dies ist ein Kindergarten (auch bekannt als Vorschule), in dem kleine Kinder eine Früherziehung erhalten." }, "addExtraTags": [ "isced:level=0", @@ -56,7 +61,8 @@ "if": "amenity=childcare", "then": { "en": "This is a childcare facility, such as a nursery or daycare where small kids are looked after. They do not offer an education and are ofter run as private businesses", - "nl": "Dit is een kinderopvang (ook een creche of onthaalmoeder genoemd) waar er voor kleine kinderen gezorgd wordt. Onderwijs is niet de hoofdfocus." + "nl": "Dit is een kinderopvang (ook een creche of onthaalmoeder genoemd) waar er voor kleine kinderen gezorgd wordt. Onderwijs is niet de hoofdfocus.", + "de": "Dies ist eine Kinderbetreuungseinrichtung, z. B. ein Kinderkrippe oder eine Tagesmutter, in der Kleinkinder betreut werden. Sie bieten keine Ausbildung an und werden oft als Privatunternehmen geführt" }, "addExtraTags": [ "isced:level=", @@ -67,8 +73,12 @@ }, { "id": "name", - "question": "What is the name of this facility?", - "render": "This facility is named {name}", + "question": { + "en": "What is the name of this facility?" + }, + "render": { + "en": "This facility is named {name}" + }, "freeform": { "key": "name" } @@ -81,7 +91,8 @@ "override": { "question": { "en": "When is this childcare opened?", - "nl": "Wanneer is deze kinderopvang geopend?" + "nl": "Wanneer is deze kinderopvang geopend?", + "de": "Wann ist diese Kinderbetreuung geöffnet?" }, "condition": "amenity=childcare" } @@ -90,11 +101,13 @@ "id": "capacity", "question": { "en": "How much kids (at most) can be enrolled here?", - "nl": "Hoeveel kinderen kunnen hier terecht?" + "nl": "Hoeveel kinderen kunnen hier terecht?", + "de": "Wie viele Kinder können hier maximal angemeldet werden?" }, "render": { "en": "This facility has room for {capacity} kids", - "nl": "Hier kunnen {capacity} kinderen terecht" + "nl": "Hier kunnen {capacity} kinderen terecht", + "de": "Diese Einrichtung bietet Platz für {capacity} Kinder" }, "freeform": { "key": "capacity", @@ -106,7 +119,8 @@ { "title": { "en": "a kindergarten", - "nl": "een kleuterschool" + "nl": "een kleuterschool", + "de": "einen Kindergarten" }, "description": "A kindergarten (also known as preschool) is a school where small kids receive early education.", "tags": [ @@ -118,7 +132,8 @@ { "title": { "en": "a childcare", - "nl": "een kinderopvang" + "nl": "een kinderopvang", + "de": "eine Kinderkrippe" }, "description": "A childcare (also known as a nursery or daycare) is a facility which looks after small kids, but does not offer them an education program.", "tags": [ diff --git a/assets/layers/maxspeed/maxspeed.json b/assets/layers/maxspeed/maxspeed.json index de44ecf6a..fe5caaec6 100644 --- a/assets/layers/maxspeed/maxspeed.json +++ b/assets/layers/maxspeed/maxspeed.json @@ -1,9 +1,10 @@ { "id": "maxspeed", "name": { + "en": "Maxspeed", "es": "Velocidad", "ca": "Velocitat", - "en": "Maxspeed" + "de": "Höchstgeschwindigkeit" }, "source": { "osmTags": { @@ -40,23 +41,27 @@ { "if": "name=", "then": { - "en": "Road without a name" + "en": "Road without a name", + "de": "Straße ohne Namen" } } ] }, "description": { - "en": "Shows the allowed speed for every road" + "en": "Shows the allowed speed for every road", + "de": "Zeigt die zulässige Geschwindigkeit für jede Straße an" }, "tagRenderings": [ { "render": { - "en": "The maximum allowed speed on this road is {maxspeed}" + "en": "The maximum allowed speed on this road is {maxspeed}", + "de": "Die zulässige Höchstgeschwindigkeit auf dieser Straße ist {maxspeed}" }, "question": { "es": "Qué velocidad tiene", "ca": "Quina velocitat té", - "en": "What is the legal maximum speed one is allowed to drive on this road?" + "en": "What is the legal maximum speed one is allowed to drive on this road?", + "de": "Wie hoch ist die zulässige Höchstgeschwindigkeit, die man auf dieser Straße fahren darf?" }, "freeform": { "key": "maxspeed", @@ -67,11 +72,12 @@ "if": "highway=living_street", "then": { "en": "This is a living street, which has a maxspeed of 20km/h", - "nl": "Dit is een woonerf en heeft dus een maximale snelheid van 20km/h" + "nl": "Dit is een woonerf en heeft dus een maximale snelheid van 20km/h", + "de": "Dies ist eine Wohnstraße, auf der eine Höchstgeschwindigkeit von 20 km/h gilt" }, "icon": { "path": "./assets/layers/maxspeed/living_street_be.svg", - "size": "large" + "class": "large" }, "hideInAnswer": "_country!=be" } @@ -131,13 +137,15 @@ "en": "kilometers/hour", "ca": "quilòmetres/hora", "es": "kilómetros/hora", - "nl": "kilometers/uur" + "nl": "kilometers/uur", + "de": "Kilometer/Stunde" }, "humanShort": { "en": "km/h", "ca": "km/h", "es": "km/h", - "nl": "km/u" + "nl": "km/u", + "de": "km/h" } }, { @@ -151,13 +159,15 @@ "en": "miles/hour", "ca": "milles/hora", "es": "millas/hora", - "nl": "miles/uur" + "nl": "miles/uur", + "de": "Meilen/Stunde" }, "humanShort": { "en": "mph", "ca": "mph", "es": "mph", - "nl": "mph" + "nl": "mph", + "de": "mph" } } ], diff --git a/assets/layers/playground/playground.json b/assets/layers/playground/playground.json index d4e6c77e7..f25f8a401 100644 --- a/assets/layers/playground/playground.json +++ b/assets/layers/playground/playground.json @@ -1,8 +1,8 @@ { "id": "playground", "name": { - "nl": "Speeltuinen", "en": "Playgrounds", + "nl": "Speeltuinen", "ru": "Детские площадки", "de": "Spielplätze", "it": "Campi da gioco", @@ -365,7 +365,7 @@ } }, { - "if": "leisure=playground", + "if": "leisure=schoolyard", "then": { "en": "This is a schoolyard - an outdoor area where the pupils can play during their breaks; but it is not accessible to the general public", "nl": "Dit is een schoolplein - een zone waar de leerlingen kunnen spelen tijdens de pauze. Dit schoolplein is niet toegankelijk voor het publiek", diff --git a/assets/layers/school/school.json b/assets/layers/school/school.json index 7180057a0..6fafa0f8a 100644 --- a/assets/layers/school/school.json +++ b/assets/layers/school/school.json @@ -2,14 +2,17 @@ "id": "school", "name": { "en": "Primary and secondary schools", - "nl": "Lagere en middelbare scholen" + "nl": "Lagere en middelbare scholen", + "de": "Grund- und weiterführende Schulen", + "fr": "Écoles primaires et secondaires" }, "description": "Schools giving primary and secondary education and post-secondary, non-tertiary education. Note that this level of education does not imply an age of the pupiles", "minzoom": 12, "title": { "render": { "en": "School {name}", - "nl": "School {name}" + "nl": "School {name}", + "de": "Schule {name}" } }, "calculatedTags": [ @@ -34,11 +37,13 @@ { "render": { "en": "This school is named {name}", - "nl": "Deze school heet {name}" + "nl": "Deze school heet {name}", + "de": "Diese Schule heißt {name}" }, "question": { "en": "What is the name of this school?", - "nl": "Wat is de naam van deze school?" + "nl": "Wat is de naam van deze school?", + "de": "Wie lautet der Name dieser Schule?" }, "freeform": { "key": "name" @@ -48,11 +53,16 @@ { "id": "capacity", "question": { - "en": "How much students can at most enroll in this school?" + "en": "How much students can at most enroll in this school?", + "de": "Wie viele Schüler können sich maximal an dieser Schule anmelden?", + "nl": "Ten hoogste hoeveel studenten kunnen er les volgen in deze school?", + "fr": "Combien d'élèves peuvent s'inscrire au maximum dans cette école ?" }, "render": { "en": "This school can enroll at most {capacity} students", - "nl": "Deze school kan maximaal {capacity} studenten lesgeven" + "nl": "Deze school kan maximaal {capacity} studenten lesgeven", + "de": "Diese Schule kann höchstens {capacity} Schüler aufnehmen", + "fr": "Cette école peut accueillir au maximum {capacity} étudiants" }, "freeform": { "key": "capacity", @@ -64,56 +74,72 @@ "condition": "_country=be", "question": { "en": "What level of education is given on this school?", - "nl": "Wat is het onderwijsniveau van deze school?" + "nl": "Wat is het onderwijsniveau van deze school?", + "de": "Welches Bildungsniveau wird an dieser Schule vermittelt?", + "fr": "Quel est le niveau d'enseignement dispensé dans cette école ?" }, "mappings": [ { "if": "school=kindergarten", "then": { "en": "This is a school with a kindergarten section where young kids receive some education which prepares reading and writing.", - "nl": "Dit is een school die ook een kleuterschool bevat" + "nl": "Dit is een school die ook een kleuterschool bevat", + "de": "Es handelt sich um eine Schule mit einer Kindergartenabteilung, in der kleine Kinder eine Ausbildung erhalten, die auf das Lesen und Schreiben vorbereitet.", + "fr": "Il s'agit d'une école avec une section maternelle où les jeunes enfants reçoivent un enseignement qui prépare à la lecture et à l'écriture." } }, { "if": "school=primary", "then": { "en": "This is a school where one learns primary skills such as basic literacy and numerical skills.
Pupils typically enroll from 6 years old till 12 years old
", - "nl": "Dit is een lagere school" + "nl": "Dit is een lagere school", + "de": "In dieser Schule lernt man grundlegende Fähigkeiten wie Lesen, Schreiben und Rechnen.
Schüler besuchen die Schule in der Regel im Alter von 6 bis 12 Jahren
", + "fr": "Il s'agit d'une école où l'on apprend les compétences primaires telles que l'alphabétisation de base et les compétences numériques..
Les élèves s'inscrivent généralement de 6 à 12 ans.
" } }, { "if": "school=secondary", "then": { "en": "This is a secondary school which offers all grades", - "nl": "Dit is een middelbare school die alle schooljaren aanbiedt (dus van het eerste tot en met het zesde middelbaar)" + "nl": "Dit is een middelbare school die alle schooljaren aanbiedt (dus van het eerste tot en met het zesde middelbaar)", + "de": "Dies ist eine weiterführende Schule, die alle Jahrgangsstufen anbietet", + "fr": "Il s'agit d'une école secondaire qui offre toutes les classes" } }, { "if": "school=lower_secondary", "then": { - "en": "This is a secondary school which does not have all grades, but offers first and second grade", - "nl": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het eerste en tweede middelbaar" + "en": "This is a secondary school which does not have all grades, but offers first and second grade", + "nl": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het eerste en tweede middelbaar", + "de": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber erste und zweite Klasse anbietet", + "fr": "Il s'agit d'une école secondaire qui n'a pas toutes les classes, mais qui offre la première et la deuxième années" } }, { "if": "school=middle_secondary", "then": { - "en": "This is a secondary school which does not have all grades, but offers third and fourth grade", - "nl": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het derde en vierde middelbaar" + "en": "This is a secondary school which does not have all grades, but offers third and fourth grade", + "nl": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het derde en vierde middelbaar", + "de": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber dritte und vierte Klasse anbietet", + "fr": "Il s'agit d'une école secondaire qui n'a pas toutes les classes, mais qui offre la troisième et la quatrième années" } }, { "if": "school=upper_secondary", "then": { - "en": "This is a secondary school which does not have all grades, but offers fifth and sixth grade", - "nl": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het vijfde en zesde middelbaar" + "en": "This is a secondary school which does not have all grades, but offers fifth and sixth grade", + "nl": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het vijfde en zesde middelbaar", + "de": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber fünfte und sechste Klasse anbietet", + "fr": "Il s'agit d'une école secondaire qui n'a pas toutes les classes, mais qui offre la cinquième et la sixième années" } }, { "if": "school=post_secondary", "then": { - "en": "This schools offers post-secondary education (e.g. a seventh or eight specialisation year)", - "nl": "Deze school biedt post-secundair onderwijs (bijvoorbeeld specialisatiejaren)" + "en": "This school offers post-secondary education (e.g. a seventh or eight specialisation year)", + "nl": "Deze school biedt post-secundair onderwijs (bijvoorbeeld specialisatiejaren)", + "de": "Diese Schule bietet eine postsekundäre Ausbildung (z. B. ein siebtes oder achtes Spezialisierungsjahr)", + "fr": "Cette école propose un enseignement post-secondaire (par exemple une septième ou huitième année de spécialisation)" } } ], @@ -123,35 +149,45 @@ "id": "gender", "question": { "en": "Which genders can enroll at this school?", - "nl": "Mogen jongens en meisjes les volgen op deze school?" + "nl": "Mogen jongens en meisjes les volgen op deze school?", + "de": "Welche Geschlechter können sich an dieser Schule anmelden?", + "fr": "Quels genres de personnes peuvent s'inscrire dans cette école ?" }, "mappings": [ { "if": "school:gender=mixed", "then": { "en": "Both boys and girls can enroll here and have classes together", - "nl": "Zowel jongens als meisjes kunnen hier les volgen. In de lessen zitten jongens en meisjes samen." + "nl": "Zowel jongens als meisjes kunnen hier les volgen. In de lessen zitten jongens en meisjes samen.", + "de": "Sowohl Jungen als auch Mädchen können sich hier anmelden und gemeinsam unterrichtet werden", + "fr": "Les garçons et les filles peuvent s'inscrire ici et suivre des cours ensemble" } }, { "if": "school:gender=separated", "then": { "en": "Both boys and girls can enroll here but they are separated (e.g. they have lessons in different classrooms or at different times)", - "nl": "Jongens en meisjes kunnen hier lesvolgen, maar de lessen zijn gescheiden (bv. de lessen zijn in andere lokalen of op andere momenten)" + "nl": "Jongens en meisjes kunnen hier lesvolgen, maar de lessen zijn gescheiden (bv. de lessen zijn in andere lokalen of op andere momenten)", + "de": "Hier können sich sowohl Jungen als auch Mädchen anmelden, aber sie werden getrennt unterrichtet (z. B. in verschiedenen Klassenräumen oder zu verschiedenen Zeiten)", + "fr": "Les garçons et les filles peuvent s'inscrire ici, mais ils sont séparés (par exemple, ils ont des cours dans des classes différentes ou à des heures différentes)" } }, { "if": "school:gender=male", "then": { "en": "This is a boys only-school", - "nl": "Deze school is enkel voor jongens" + "nl": "Deze school is enkel voor jongens", + "de": "Dies ist eine reine Jungenschule", + "fr": "C'est une école réservée aux garçons" } }, { "if": "school:gender=female", "then": { "en": "This is a girls-only school", - "nl": "Deze school is enkel voor meisjes" + "nl": "Deze school is enkel voor meisjes", + "de": "Dies ist eine reine Mädchenschule", + "fr": "C'est une école réservée aux filles" } } ] @@ -161,12 +197,14 @@ "condition": "school:for~*", "question": { "en": "Does this school target students with a special need? Which structural facilities does this school have?
Ad-hoc ", - "nl": "Richt deze school zich op leerlingen met een speciale zorgbehoefte? Welke structurele faciliteiten heeft deze school voor leerlingen met een extra zorgbehoefte?
Ad-hoc maatregelen zijn niet voldoende
" + "nl": "Richt deze school zich op leerlingen met een speciale zorgbehoefte? Welke structurele faciliteiten heeft deze school voor leerlingen met een extra zorgbehoefte?
Ad-hoc maatregelen zijn niet voldoende
", + "de": "Richtet sich diese Schule an Schüler mit besonderem Förderbedarf? Über welche strukturellen Einrichtungen verfügt diese Schule?
Ad-hoc " }, "multiAnswer": true, "render": { "en": "This school has facilities for students with {school:for}", - "nl": "Deze school richt zich op studenten met {school:for}" + "nl": "Deze school richt zich op studenten met {school:for}", + "de": "Diese Schule verfügt über Einrichtungen für Schüler mit {school:for}" }, "freeform": { "key": "school:for", @@ -177,7 +215,8 @@ "if": "school:for=", "then": { "en": "This is a school where students study skills at their age-adequate level.
There are little or no special facilities to cater for students with special needs or facilities are ad-hoc
", - "nl": "Deze school richt zich op studenten zonder extra zorgbehoefte.
Dit omvat leerlingen waarbij kleine, ad-hoc maatregelen volstaan om de lessen te volgen.
", + "de": "Es handelt sich um eine Schule, in der die Schüler Fähigkeiten auf ihrem altersgemäßen Niveau erlernen.
Es gibt wenig oder keine speziellen Einrichtungen für Schüler mit besonderen Bedürfnissen oder die Einrichtungen sind ad-hoc
" }, "hideInAnswer": true }, @@ -185,56 +224,64 @@ "if": "school:for=mainstream", "then": { "en": "This is a school for students without special needs
This includes students who can follow the courses with small, ad hoc measurements
", - "nl": "Deze school richt zich op studenten zonder extra zorgbehoefte
Dit omvat leerlingen waarbij kleine, ad-hoc maatregelen volstaan om de lessen te volgen.
", + "de": "Dies ist eine Schule für Schüler ohne besondere Bedürfnisse
Dazu gehören auch Schüler, die den Kursen mit kleinen Ad-hoc-Maßnahmen folgen können
" } }, { "if": "school:for=adults", "then": { "en": "This is a school where adults are taught skills on the level as specified.", - "nl": "Deze school richt zich op volwassenen" + "nl": "Deze school richt zich op volwassenen", + "de": "Dies ist eine Schule, in der Erwachsene auf dem angegebenen Niveau unterrichtet werden." } }, { "if": "school:for=autism", "then": { "en": "This is a school for students with autism", - "nl": "Deze school richt zich op studenten in het autisme-spectrum" + "nl": "Deze school richt zich op studenten in het autisme-spectrum", + "de": "Dies ist eine Schule für Schüler mit Autismus" } }, { "if": "school:for=learning_disabilities", "then": { "en": "This is a school for students with learning disabilities", - "nl": "Deze school richt zich op leerlingen met een leerprobleem" + "nl": "Deze school richt zich op leerlingen met een leerprobleem", + "de": "Dies ist eine Schule für Schüler mit Lernschwierigkeiten" } }, { "if": "school:for=blind", "then": { "en": "This is a school for blind students or students with sight impairments", - "nl": "Deze school richt zich op blinde en slechtziende studenten" + "nl": "Deze school richt zich op blinde en slechtziende studenten", + "de": "Dies ist eine Schule für blinde oder sehbehinderte Schüler" } }, { "if": "school:for=deaf", "then": { "en": "This is a school for deaf students or students with hearing impairments", - "nl": "Deze school richt zich op dove en hardhorende studenten" + "nl": "Deze school richt zich op dove en hardhorende studenten", + "de": "Dies ist eine Schule für gehörlose oder hörgeschädigte Schüler" } }, { "if": "school:for=disabilities", "then": { "en": "This is a school for students with disabilities", - "nl": "Deze school richt zich op studenten met een beperking" + "nl": "Deze school richt zich op studenten met een beperking", + "de": "Dies ist eine Schule für Schüler mit Behinderungen" } }, { "if": "school:for=special_needs", "then": { "en": "This is a school for students with special needs", - "nl": "Deze school richt zich op studenten met extra zorgbehoeften" + "nl": "Deze school richt zich op studenten met extra zorgbehoeften", + "de": "Dies ist eine Schule für Schüler mit besonderen Bedürfnissen" } } ] @@ -246,11 +293,14 @@ "id": "language", "question": { "en": "What is the main language of this school?
What language is spoken with the students in non-language related courses and with the administration?
", - "nl": "Wat is de voertaal van deze school?
Welke taal wordt met de studenten gesproken in niet-taal-gerelateerde vakken en met de administratie?
" + "nl": "Wat is de voertaal van deze school?
Welke taal wordt met de studenten gesproken in niet-taal-gerelateerde vakken en met de administratie?
", + "de": "Was ist die Hauptsprache dieser Schule?
Welche Sprache wird mit den Schülern in den nicht sprachbezogenen Kursen und mit der Verwaltung gesprochen?
", + "fr": "Quelle est la langue principale de cette école ?
Quelle langue est parlée avec les élèves des cours non linguistiques et avec l'administration ?
" }, "render": { "en": "{school:language} is the main language of {name}", - "nl": "{school:language} is de voertaal van {name}" + "nl": "{school:language} is de voertaal van {name}", + "de": "{school:language} ist die Hauptsprache von {name}" }, "freeform": { "key": "school:language", @@ -295,7 +345,9 @@ "if": "school:language=", "then": { "en": "The main language of this school is unknown", - "nl": "De voertaal van deze school is niet gekend" + "nl": "De voertaal van deze school is niet gekend", + "de": "Die Hauptsprache dieser Schule ist unbekannt", + "fr": "La langue principale de cette école est inconnue" }, "hideInAnswer": true } @@ -310,7 +362,9 @@ ], "title": { "en": "a primary or secondary school", - "nl": "een lagere of middelbare school" + "nl": "een lagere of middelbare school", + "de": "eine Grundschule oder weiterführende Schule", + "fr": "une école primaire ou secondaire" } } ], diff --git a/assets/layers/shops/shops.json b/assets/layers/shops/shops.json index ea582510f..2207f5ba1 100644 --- a/assets/layers/shops/shops.json +++ b/assets/layers/shops/shops.json @@ -86,7 +86,7 @@ { "question": { "en": "What is the name of this shop?", - "fr": "Qu'est-ce que le nom de ce magasin?", + "fr": "Qu'est-ce que le nom de ce magasin ?", "ru": "Как называется этот магазин?", "ja": "このお店の名前は何ですか?", "nl": "Wat is de naam van deze winkel?", diff --git a/assets/layers/sport_pitch/sport_pitch.json b/assets/layers/sport_pitch/sport_pitch.json index b7c732079..dcd6f0876 100644 --- a/assets/layers/sport_pitch/sport_pitch.json +++ b/assets/layers/sport_pitch/sport_pitch.json @@ -430,7 +430,10 @@ "mappings": [ { "if": "opening_hours=", - "then": "24/7 toegankelijk", + "then": { + "en": "Always accessible", + "nl": "24/7 toegankelijk" + }, "hideInAnswer": true }, { diff --git a/assets/layers/surveillance_camera/surveillance_camera.json b/assets/layers/surveillance_camera/surveillance_camera.json index 26052a0f2..eb6b52136 100644 --- a/assets/layers/surveillance_camera/surveillance_camera.json +++ b/assets/layers/surveillance_camera/surveillance_camera.json @@ -170,7 +170,7 @@ "question": { "en": "What kind of surveillance is this camera?", "nl": "Wat soort bewaking wordt hier uitgevoerd?", - "fr": "Quel genre de surveillance est cette caméra?", + "fr": "De quel genre de surveillance cette caméra est-elle ?", "it": "Che cosa sorveglia questa videocamera?", "de": "Was überwacht diese Kamera?" }, @@ -184,7 +184,7 @@ "then": { "en": "A public area is surveilled, such as a street, a bridge, a square, a park, a train station, a public corridor or tunnel, …", "nl": "Bewaking van de publieke ruilmte, dus een straat, een brug, een park, een plein, een stationsgebouw, een publiek toegankelijke gang of tunnel…", - "fr": "Une zone publique est surveillée, telle qu'une rue, un pont, une place, un parc, une gare, un couloir ou un tunnel public…", + "fr": "Une zone publique est surveillée, telle qu'une rue, un pont, une place, un parc, une gare, un couloir, un tunnel public…", "it": "Sorveglia un'area pubblica, come una strada, un ponte, una piazza, un parco, una stazione, un passaggio o un sottopasso pubblico, ...", "de": "Die Kamera überwacht einen öffentlichen Bereich, z. B. Straßen, Brücken, Plätze, Parks, Bahnhöfe, öffentliche Gänge oder Tunnel, …" } @@ -198,9 +198,9 @@ "then": { "en": "An outdoor, yet private area is surveilled (e.g. a parking lot, a fuel station, courtyard, entrance, private driveway, …)", "nl": "Een buitenruimte met privaat karakter (zoals een privé-oprit, een parking, tankstation, …)", - "fr": "Une zone extérieure, mais privée, est surveillée (par exemple, un parking, une station-service, une cour, une entrée, une allée privée, etc.)", + "fr": "Une zone extérieure, mais privée, est surveillée (par exemple, un parking, une station-service, une cour, une entrée, une allée privée…)", "it": "Sorveglia un'area esterna di proprietà privata (un parcheggio, una stazione di servizio, un cortile, un ingresso, un vialetto privato, ...)", - "de": "Die Kamera überwacht einen privaten Außenbereich, z.B. Parkplätze, Tankstellen, Innenhöfe, Eingänge, private Einfahrten, …" + "de": "Die Kamera überwacht einen privaten Außenbereich (z.B. Parkplätze, Tankstellen, Innenhöfe, Eingänge, private Einfahrten, …)" } }, { diff --git a/assets/layers/tertiary_education/tertiary_education.json b/assets/layers/tertiary_education/tertiary_education.json index 3062100e6..e898ac274 100644 --- a/assets/layers/tertiary_education/tertiary_education.json +++ b/assets/layers/tertiary_education/tertiary_education.json @@ -2,7 +2,9 @@ "id": "tertiary_education", "name": { "en": "Colleges and universities", - "nl": "Universiteiten en hogescholen" + "nl": "Universiteiten en hogescholen", + "de": "Hochschulen und Universitäten", + "fr": "Collèges et universités" }, "description": "Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)", "source": { @@ -36,21 +38,27 @@ "if": "amenity=college", "then": { "en": "College", - "nl": "Hogeschool" + "nl": "Hogeschool", + "de": "(Fach)hochschule", + "fr": "Établissement d'enseignement supérieur non universitaire" } }, { "if": "amenity=university", "then": { "en": "University", - "nl": "Universiteit" + "nl": "Universiteit", + "de": "Universität", + "fr": "Universitée" } }, { "if": "amenity=school", "then": { "en": "School providing tertiary education", - "nl": "Onderwijsinstelling die tertiair onderwijs geeft" + "nl": "Onderwijsinstelling die tertiair onderwijs geeft", + "de": "Schule mit tertiärem Bildungsangebot", + "fr": "École dispensant un enseignement supérieur" } } ] @@ -60,21 +68,27 @@ "id": "institution-kind", "question": { "en": "What kind of institution is this?", - "nl": "Wat voor onderwijsinstelling is dit?" + "nl": "Wat voor onderwijsinstelling is dit?", + "de": "Was für eine Art von Institution ist das?", + "fr": "De quel type d'établissement s'agit-il ?" }, "mappings": [ { "if": "amenity=college", "then": { "en": "This is an institution of post-secondary, non-tertiary education. One has to have completed secondary education to enroll here, but no bachelor (or higher) degrees are awarded here", - "nl": "Dit is een onderwijsinstelling waar post-secundair, niet-tertiair onderwijs wordt gegeven. Om dit onderwijs te volgen, moet je je secundair onderwijs afgewerkt hebben maar de opleiding behaalt niet het niveau van van een bachelor." + "nl": "Dit is een onderwijsinstelling waar post-secundair, niet-tertiair onderwijs wordt gegeven. Om dit onderwijs te volgen, moet je je secundair onderwijs afgewerkt hebben maar de opleiding behaalt niet het niveau van van een bachelor.", + "de": "Es handelt sich um eine postsekundäre, nicht-tertiäre Bildungseinrichtung. Man muss die Sekundarstufe abgeschlossen haben, um sich hier einzuschreiben, aber es werden keine Bachelor-Abschlüsse (oder höhere Abschlüsse) verliehen", + "fr": "Il s'agit d'un établissement d'enseignement post-secondaire, non tertiaire. Il faut avoir terminé l'enseignement secondaire pour s'inscrire ici, mais aucun baccalauréat (ou diplôme supérieur) n'est délivré ici" } }, { "if": "amenity=university", "then": { "en": "This is a university, an institution of tertiary education where bachelor degrees or higher are awarded.", - "nl": "Dit is een universiteit (of hogeschool), een onderwijsinstelling van tertaire educatie. De gegeven opleidingen halen het niveau van een bachelor-opleiding of hoger." + "nl": "Dit is een universiteit (of hogeschool), een onderwijsinstelling van tertaire educatie. De gegeven opleidingen halen het niveau van een bachelor-opleiding of hoger.", + "de": "Dies ist eine Universität, eine Einrichtung des tertiären Bildungsbereichs, an der Bachelor-Abschlüsse oder höhere Abschlüsse verliehen werden.", + "fr": "Il s'agit d'une université, d'un établissement d'enseignement supérieur où sont délivrés des diplômes de bachelor ou plus." } } ] @@ -83,7 +97,9 @@ "id": "isced", "question": { "en": "What level of education is given here?", - "nl": "Wat is het niveau van onderwijs?" + "nl": "Wat is het niveau van onderwijs?", + "de": "Welches Bildungsniveau wird hier gelehrt?", + "fr": "Quel niveau d'éducation est donné ici ?" }, "multiAnswer": true, "mappings": [ @@ -91,21 +107,27 @@ "if": "isced:2011:level=bachelor", "then": { "en": "Bachelor degrees are awarded here", - "nl": "Bacheloropleidingen (of equivalent) worden hier gegeven" + "nl": "Bacheloropleidingen (of equivalent) worden hier gegeven", + "de": "Bachelor-Abschlüsse werden hier verliehen", + "fr": "Les diplômes de bachelor y sont décernés" } }, { "if": "isced:2011:level=master", "then": { "en": "Master degrees are awarded here", - "nl": "Masteropleidingen (of equivalent) worden hier gegeven" + "nl": "Masteropleidingen (of equivalent) worden hier gegeven", + "de": "Hier werden Master-Abschlüsse verliehen", + "fr": "Des masters y sont décernés" } }, { "if": "isced:2011:level=doctorate", "then": { "en": "Doctorate degrees are awarded here", - "nl": "Doctoraatsopleidingen (of equivalent) worden hier gegeven" + "nl": "Doctoraatsopleidingen (of equivalent) worden hier gegeven", + "de": "Hier werden die Doktortitel verliehen", + "fr": "Des doctorats y sont décernés" } } ], @@ -152,11 +174,15 @@ { "title": { "en": "a university", - "nl": "een universiteit" + "nl": "een universiteit", + "de": "eine Universität", + "fr": "une université" }, "description": { "en": "An institute where tertiary education is given (at the level equivalent of a bachelors degree or higher). A single point per campus is enough - buildings and faculties should not be mapped with different university points.", - "nl": "Een onderwijsinstelling waar tertiair onderwijs wordt gegeven - dit is onderwijs waarvan het niveau overeenkomt met een bachelor of hoger is. Eén enkel punt per campus is genoeg - gebouwen en faculteiten worden hier niet op aangeduid." + "nl": "Een onderwijsinstelling waar tertiair onderwijs wordt gegeven - dit is onderwijs waarvan het niveau overeenkomt met een bachelor of hoger is. Eén enkel punt per campus is genoeg - gebouwen en faculteiten worden hier niet op aangeduid.", + "de": "Eine Einrichtung, an der tertiäre Bildung vermittelt wird (auf dem Niveau eines Bachelor-Abschlusses oder höher). Ein einziger Punkt pro Campus ist ausreichend - Gebäude und Fakultäten sollten nicht mit Universitätspunkten gekennzeichnet werden.", + "fr": "Un institut où l'on dispense un enseignement supérieur (au niveau équivalent à un bachelor ou plus). Un simple point par campus est suffisant - les bâtiments et les facultés ne doivent pas être cartographiés avec différents points d'université." }, "tags": [ "amenity=university", diff --git a/assets/layers/toilet/toilet.json b/assets/layers/toilet/toilet.json index 67ceb6c17..daaa6ecb4 100644 --- a/assets/layers/toilet/toilet.json +++ b/assets/layers/toilet/toilet.json @@ -439,7 +439,8 @@ "en": "Do these toilets have a sink to wash your hands?", "nl": "Hebben deze toiletten een lavabo om de handen te wassen?", "de": "Gibt es hier ein Handwaschbecken?", - "es": "¿Esto baños tienen una pileta para lavarte los baños?" + "es": "¿Esto baños tienen una pileta para lavarte los baños?", + "fr": "Ces toilettes ont-ils un lavabo pour se laver les mains ?" }, "mappings": [ { @@ -448,7 +449,8 @@ "en": "This toilets have a sink to wash your hands", "nl": "Deze toiletten hebben een lavabo waar men de handen kan wassen", "de": "Die Toilette hat ein Handwaschbecken", - "es": "Estos baños tienen una pileta para lavarse las manos" + "es": "Estos baños tienen una pileta para lavarse las manos", + "fr": "Ces toilettes ont un lavabo pour se laver les mains" } }, { @@ -457,7 +459,8 @@ "en": "This toilets don't have a sink to wash your hands", "nl": "Deze toiletten hebben geen lavabo waar men de handen kan wassen", "de": "Die Toilette hat kein Handwaschbecken", - "es": "Estos baños no tienen una pileta para lavarse las manos" + "es": "Estos baños no tienen una pileta para lavarse las manos", + "fr": "Ces toilettes n'ont pas de lavabo pour se laver les mains" } } ] @@ -468,7 +471,8 @@ "en": "Does one have to bring their own toilet paper to this toilet?", "nl": "Moet je je eigen toiletpapier meenemen naar deze toilet?", "de": "Ist Toilettenpapier vorhanden?", - "es": "¿Hay que traer tu propio papel higiénico a este baño?" + "es": "¿Hay que traer tu propio papel higiénico a este baño?", + "fr": "Est-ce qu'il faut apporter son propre papier toilette ?" }, "mappings": [ { @@ -477,7 +481,8 @@ "en": "This toilet is equipped with toilet paper", "nl": "Deze toilet is voorzien van toiletpapier", "de": "Die Toilette ist in der Regel mit Toilettenpapier ausgestattet", - "es": "Este baño esta equipado con papel higiénico" + "es": "Este baño esta equipado con papel higiénico", + "fr": "Ces toilettes sont équipés de papier toilette" } }, { @@ -486,7 +491,8 @@ "en": "You have to bring your own toilet paper to this toilet", "nl": "Je moet je eigen toiletpapier meebrengen naar deze toilet", "de": "Die Toilette ist nicht mit Toilettenpapier ausgestattet, man muss es selbst mitbringen", - "es": "Tienes que traer tu propio papel higiénico a este baño" + "es": "Tienes que traer tu propio papel higiénico a este baño", + "fr": "Vous devez apporter votre propre papier toilette ici" } } ], diff --git a/assets/layers/trail/trail.json b/assets/layers/trail/trail.json index f274c6fa7..03fac58ee 100644 --- a/assets/layers/trail/trail.json +++ b/assets/layers/trail/trail.json @@ -46,7 +46,8 @@ "render": { "en": "The trail is {_length:km} kilometers long", "nl": "Deze wandeling is {_length:km} kilometer lang", - "de": "Der Wanderweg ist {_length:km} Kilometer lang" + "de": "Der Wanderweg ist {_length:km} Kilometer lang", + "fr": "Le sentier fait {_length:km} kilomètres de long" } }, { @@ -121,7 +122,8 @@ "then": { "nl": "Blauwe wandeling", "en": "Blue trail", - "de": "Blauer Weg" + "de": "Blauer Weg", + "fr": "Sentier bleu" } }, { @@ -129,7 +131,8 @@ "then": { "nl": "Rode wandeling", "en": "Red trail", - "de": "Roter Weg" + "de": "Roter Weg", + "fr": "Sentier rouge" } }, { @@ -137,7 +140,8 @@ "then": { "nl": "Groene wandeling", "en": "Green trail", - "de": "Grüner Weg" + "de": "Grüner Weg", + "fr": "Sentier vert" } }, { @@ -145,7 +149,8 @@ "then": { "nl": "Gele wandeling", "en": "Yellow trail", - "de": "Gelber Weg" + "de": "Gelber Weg", + "fr": "Sentier jaune" } } ], diff --git a/assets/layers/tree_node/tree_node.json b/assets/layers/tree_node/tree_node.json index c134b808e..3d020aac5 100644 --- a/assets/layers/tree_node/tree_node.json +++ b/assets/layers/tree_node/tree_node.json @@ -216,7 +216,7 @@ "nl": "De boom is een natuurlijk monument, bijvoorbeeld doordat hij bijzonder oud of van een waardevolle soort is.", "en": "The tree is a natural monument, e.g. because it is especially old, or of a valuable species.", "it": "L’albero è un monumento naturale, ad esempio perché specialmente antico o appartenente a specie importanti.", - "fr": "Cet arbre est un monument naturel (ex : âge, espèce, etc…)", + "fr": "Cet arbre est un monument naturel (p.ex. : âge, espèce, etc).", "de": "Der Baum ist ein Naturdenkmal, z. B. weil er besonders alt ist oder zu einer wertvollen Art gehört.", "es": "El árbol es un monumento natural, por ejemplo, porque es especialmente antiguo, o de una especie valiosa." } @@ -231,7 +231,7 @@ "nl": "De boom wordt voor landbouwdoeleinden gebruikt, bijvoorbeeld in een boomgaard.", "en": "The tree is used for agricultural purposes, e.g. in an orchard.", "it": "L’albero è usato per scopi agricoli, ad esempio in un frutteto.", - "fr": "Cet arbre est utilisé à but d’agriculture (ex : dans un verger)", + "fr": "Cet arbre est utilisé à but agricole (p.ex. : dans un verger).", "de": "Der Baum wird für landwirtschaftliche Zwecke genutzt, z. B. in einer Obstplantage.", "es": "El árbol se utiliza con fines agrícolas, por ejemplo, en un huerto." } @@ -261,7 +261,7 @@ "nl": "De boom staat in de tuin bij een woning/flatgebouw.", "en": "The tree is in a residential garden.", "it": "L’albero è un giardino residenziale.", - "fr": "Cet arbre est dans une cour résidentielle.", + "fr": "Cet arbre est dans une jardin de résidence.", "es": "El árbol está en un jardín privado o residencial.", "de": "Der Baum steht in einem Wohngarten." } @@ -291,7 +291,7 @@ "nl": "De boom staat in een woonkern.", "en": "The tree is in an urban area.", "it": "L’albero si trova in un’area urbana.", - "fr": "L'arbre est une zone urbaine.", + "fr": "L'arbre est dans une zone urbaine.", "es": "El árbol está en un zona urbana.", "de": "Der Baum steht in einem städtischen Gebiet." } @@ -372,7 +372,8 @@ "de": "Um welche Baumart handelt es sich?", "id": "Spesies pohon apa ini?", "es": "¿De qué especie es este árbol?", - "nl": "Wat is de boomsoort?" + "nl": "Wat is de boomsoort?", + "fr": "Quelle est l'espèce de cet arbre ?" }, "render": { "*": "{wikipedia(species:wikidata):max-height: 25rem}" @@ -757,6 +758,7 @@ "en": "A layer showing trees", "nl": "Een laag die bomen toont", "es": "Una capa que muestra árboles", - "de": "Eine Ebene, die Bäume zeigt" + "de": "Eine Ebene, die Bäume zeigt", + "fr": "Une couche montrant les arbres" } } \ No newline at end of file diff --git a/assets/layers/veterinary/veterinary.json b/assets/layers/veterinary/veterinary.json index de025adc1..7dcc18d52 100644 --- a/assets/layers/veterinary/veterinary.json +++ b/assets/layers/veterinary/veterinary.json @@ -36,7 +36,8 @@ "da": "dyrlæge", "de": "Tierärzte", "es": "veterinario", - "nl": "Dierenarts" + "nl": "Dierenarts", + "fr": "vétérinaire" }, "title": { "render": { diff --git a/assets/layers/windturbine/windturbine.json b/assets/layers/windturbine/windturbine.json index 8f624642d..2d0dde80c 100644 --- a/assets/layers/windturbine/windturbine.json +++ b/assets/layers/windturbine/windturbine.json @@ -62,7 +62,7 @@ }, "question": { "en": "What is the power output of this wind turbine? (e.g. 2.3 MW)", - "fr": "Quel est la puissance générée par cette éolienne ?", + "fr": "Quel est la puissance générée par cette éolienne (p.ex. 2,3 MW) ?", "it": "Quant’è la potenza generata da questa pala eolica? (ad es. 2.3 MW)", "zh_Hant": "這個風機的電力輸出是多少?(例如 2.3 MW)", "id": "Berapa output daya dari turbin angin ini? (misalnya 2,3 MW)", diff --git a/assets/tagRenderings/questions.json b/assets/tagRenderings/questions.json index eb3b1a2f7..aeafac6f4 100644 --- a/assets/tagRenderings/questions.json +++ b/assets/tagRenderings/questions.json @@ -1036,7 +1036,10 @@ "question": { "en": "Is smoking allowed at {title()}?", "de": "Ist das Rauchen in {title()} erlaubt?", - "es": "¿Está permitido fumar en {title()}?" + "es": "¿Está permitido fumar en {title()}?", + "fr": "Est-ce autorisé de fumer à {title()} ?", + "pt": "É permitido fumar em {title()}?", + "nb_NO": "Tillates røyking på {title()}?" }, "#condition": "Based on https://en.wikipedia.org/wiki/List_of_smoking_bans", "condition": "_country!~al|be", @@ -1050,7 +1053,10 @@ "then": { "en": "Smoking is allowed", "de": "Rauchen ist erlaubt", - "es": "Está permitido fumar" + "es": "Está permitido fumar", + "fr": "Il est autorisé de fumer", + "pt": "É permitido fumar", + "nb_NO": "Røyking er tillatt" } }, { @@ -1062,7 +1068,10 @@ "then": { "en": "Smoking is not allowed", "de": "Rauchen ist nicht erlaubt", - "es": "No está permitido fumar" + "es": "No está permitido fumar", + "fr": "Il est interdit de fumer", + "pt": "Não é permitido fumar", + "nb_NO": "Røyking forbudt" } }, { @@ -1070,7 +1079,10 @@ "then": { "en": "Smoking is allowed outside.", "de": "Rauchen ist draußen erlaubt.", - "es": "Está permitido fumar en el exterior." + "es": "Está permitido fumar en el exterior.", + "fr": "Il est autorisé de fumer à l'extérieur.", + "pt": "É permitido fumar no exterior.", + "nb_NO": "Røyking tillates på utsiden." } } ] diff --git a/assets/themes/artwork/artwork.json b/assets/themes/artwork/artwork.json index d04f998a1..62a5ceb4c 100644 --- a/assets/themes/artwork/artwork.json +++ b/assets/themes/artwork/artwork.json @@ -22,7 +22,7 @@ "description": { "en": "An open map of statues, busts, graffitis and other artwork all over the world", "nl": "Een vrije kaart met standbeelden, bustes, graffiti en andere kunstwerken van over de hele wereld", - "fr": "Bienvenue sur la carte ouverte des œuvres d'art, une carte des statues, fresques, ... du monde entier", + "fr": "Une carte ouverte de statues, bustes, graffitis et autres œuvres d'art de par le monde", "de": "Eine freie Karte mit Statuen, Büsten, Graffitis und anderen Kunstwerken auf der ganzen Welt", "id": "Selamat datang di Open Artwork Map, peta untuk patung, grafiti, dan karya seni lain di seluruh dunia", "it": "Benvenuto/a sulla mappa libera dell’arte, una mappa delle statue, i busti, i graffiti e le altre realizzazioni artistiche di tutto il mondo", diff --git a/assets/themes/benches/benches.json b/assets/themes/benches/benches.json index 908199ab0..d5c77fcd6 100644 --- a/assets/themes/benches/benches.json +++ b/assets/themes/benches/benches.json @@ -39,7 +39,7 @@ "description": { "en": "This map shows all benches that are recorded in OpenStreetMap: Individual benches, and benches belonging to public transport stops or shelters. With an OpenStreetMap account, you can map new benches or edit details of existing benches.", "de": "Diese Karte zeigt alle Sitzbänke, die in OpenStreetMap eingetragen sind: Alleinstehende Bänke und Bänke, die zu Haltestellen oder Unterständen gehören. Mit einem OpenStreetMap-Konto können Sie neue Bänke eintragen oder Details existierender Bänke bearbeiten.", - "fr": "Cette carte affiche les bancs mappés dans OpenStreetMap, entre autres : bancs des transports en commun, bancs publics, etc. À l'aide de votre compte OpenStretMap, vous pourrez ajouter de nouveaux bancs ou modifier les bancs existants.", + "fr": "Cette carte affiche les bancs cartographiés dans OpenStreetMap, entre autres : bancs des transports en commun, bancs publics, etc. À l'aide de votre compte OpenStreetMap, vous pourrez ajouter de nouveaux bancs ou modifier les bancs existants.", "nl": "Deze kaart toont alle zitbanken die zijn opgenomen in OpenStreetMap: individuele banken en banken bij bushaltes. Met een OpenStreetMap-account kan je informatie verbeteren en nieuwe zitbanken toevoegen.", "it": "Questa mappa mostra tutte le panchine che sono state aggiunte su OpenStreetMap: panchine individuali e quelle alle fermate del trasporto pubblico o nei ripari. Se disponi di un account OpenStreetMap puoi mappare delle nuove panchine o modificare i dettagli di quelle esistenti.", "ru": "На этой карте показаны все скамейки, записанные в OpenStreetMap: отдельные скамейки, а также скамейки, относящиеся к остановкам общественного транспорта или навесам. Имея учётную запись OpenStreetMap, вы можете наносить на карту новые скамейки или редактировать информацию о существующих скамейках.", @@ -47,7 +47,8 @@ "zh_Hant": "這份地圖顯示開放街圖上所有記錄的長椅:單獨的長椅,屬於大眾運輸站點或涼亭的長椅。只要有開放街圖帳號,你可以新增長椅或是編輯既有長椅的詳細內容。", "hu": "Ez a térkép megjeleníti az OpenStreetMap-en rögzített összes padot: egyes padokat, valamint tömegközlekedési megállókban vagy menedékhelyeken található padokat. OpenStreetMap-fiókkal Ön is felrajzolhat új padokat, vagy szerkesztheti a meglévő padok részleteit.", "ca": "Aquest mapa mostra tots els bancs que hi ha a OpenStreetMap: bancs individuals i els bancs que hi ha a parades o refugis de transport públic. Amb un compte d'OpenStreetMap pots afegir nous bancs o editar detalls dels existents.", - "es": "Este mapa muestra todos los bancos que están grabados en OpenStreetMap: Bancos individuales, bancos que pertenecen a paradas o marquesinas del transporte público. Con una cuenta de OpenStreetMap, puedes mapear nuevos bancos o editar detalles de bancos existentes." + "es": "Este mapa muestra todos los bancos que están grabados en OpenStreetMap: Bancos individuales, bancos que pertenecen a paradas o marquesinas del transporte público. Con una cuenta de OpenStreetMap, puedes mapear nuevos bancos o editar detalles de bancos existentes.", + "nb_NO": "Viser alle benker som er registrert i OpenStreetMap: Individuelle benker, og benker som tilhører offentlig transport eller -skur. Med en OpenStreetMap-konto kan du kartlegge nye benker eller redigere eksisterende." }, "maintainer": "Florian Edelmann", "icon": "./assets/themes/benches/bench_poi.svg", diff --git a/assets/themes/bicycle_rental/bicycle_rental.json b/assets/themes/bicycle_rental/bicycle_rental.json index 096691d29..f24ff9306 100644 --- a/assets/themes/bicycle_rental/bicycle_rental.json +++ b/assets/themes/bicycle_rental/bicycle_rental.json @@ -17,7 +17,8 @@ "de": "Eine Karte mit Fahrradverleihstationen und Fahrradverleihgeschäften", "id": "Peta dengan stasiun persewaan sepeda dan toko penyewaan sepeda", "fr": "Une carte avec des stations et magasins de location de vélos", - "es": "Un mapa con estaciones de alquiler de bicicletas y tiendas de alquiler de bicicletas" + "es": "Un mapa con estaciones de alquiler de bicicletas y tiendas de alquiler de bicicletas", + "nb_NO": "Sykkelutleiestasjoner og sykkelutleiebutikker" }, "description": { "en": "On this map, you'll find the many bicycle rental stations as they are known by OpenStreetMap", @@ -25,7 +26,8 @@ "de": "Auf dieser Karte finden Sie die vielen Fahrradverleihstationen, wie sie auf OpenStreetMap eingetragen wurden", "fr": "Vous trouverez sur cette carte toutes les stations de location de vélo telles qu'elles sont référencées dans OpenStreetMap", "es": "En este mapa, encontrarás numerosas estaciones de alquiler de bicicletas que son conocidas por OpenStreetMap", - "da": "På dette kort finder du de mange cykeludlejningsstationer, som OpenStreetMap kender dem" + "da": "På dette kort finder du de mange cykeludlejningsstationer, som OpenStreetMap kender dem", + "nb_NO": "Her finner du mange sykkelutleiestasjoner slik de er kjent for OpenStreetMap" }, "maintainer": "", "icon": "./assets/themes/bicycle_rental/logo.svg", diff --git a/assets/themes/bicyclelib/bicyclelib.json b/assets/themes/bicyclelib/bicyclelib.json index 72dc74a66..4e1db4886 100644 --- a/assets/themes/bicyclelib/bicyclelib.json +++ b/assets/themes/bicyclelib/bicyclelib.json @@ -26,7 +26,8 @@ "fr": "Une vélothèque est un endroit où on peut emprunter des vélos, souvent moyennant une petite somme annuelle. Un cas d'utilisation notable est celui des vélothèques pour les enfants, qui leur permettent de passer à un vélo plus grand quand ils sont trop grands pour leur vélo actuel", "zh_Hant": "單車圖書館是指每年支付小額費用,然後可以租用單車的地方。最有名的單車圖書館案例是給小孩的,能夠讓長大的小孩用目前的單車換成比較大的單車", "de": "Fahrradbibliotheken sind Orte, um Fahrräder auszuleihen, oft gegen eine geringe Gebühr. Ein wichtiger Anwendungsfall sind Fahrradbibliotheken für Kinder, die es ihnen ermöglichen, auf ein größeres Fahrrad umzusteigen, wenn sie aus ihrem aktuellen Fahrrad herausgewachsen sind", - "hu": "A kerékpárkönyvtárak olyan helyek, ahol kerékpárokat lehet kölcsönözni, gyakran egy kis éves díj ellenében. Figyelemre méltó felhasználásuk a gyerekeknek szánt kerékpárkönyvtárak, amelyek segítségével nagyobb kerékpárra válthatnak, amikor jelenlegi kerékpárjukat kinőtték" + "hu": "A kerékpárkönyvtárak olyan helyek, ahol kerékpárokat lehet kölcsönözni, gyakran egy kis éves díj ellenében. Figyelemre méltó felhasználásuk a gyerekeknek szánt kerékpárkönyvtárak, amelyek segítségével nagyobb kerékpárra válthatnak, amikor jelenlegi kerékpárjukat kinőtték", + "nb_NO": "Et sykkelbibliotek er et sted der man kan låne sykler, ofte for en liten årlig sum. I særdeleshet finnes de for unger som lar dem bytte til en større sykkel når de har vokst fra den de har." }, "icon": "./assets/themes/bicyclelib/logo.svg", "startLat": 0, diff --git a/assets/themes/binoculars/binoculars.json b/assets/themes/binoculars/binoculars.json index 7da8e14bf..95e17aab7 100644 --- a/assets/themes/binoculars/binoculars.json +++ b/assets/themes/binoculars/binoculars.json @@ -31,7 +31,8 @@ "zh_Hant": "固定一地的望遠鏡地圖,特別是能夠在旅遊景點、觀景點、城鎮環景點,或是自然保護區找到。", "hu": "Rúdra rögzített távcsövek térképe. Jellemzően turisztikailag érdekes, panorámás helyeken, kilátótornyok tetején vagy természetvédelmi területen találhatók.", "fr": "Une carte des longue-vues fixes. Se trouve typiquement sur les sites touristiques, les points de vue, les tours panoramiques ou dans les réserves naturelles.", - "es": "Un mapa con prismáticos fijos en un poste. Suele encontrarse en lugares turísticos, miradores, en lo alto de torres panorámicas u ocasionalmente en una reserva natural." + "es": "Un mapa con prismáticos fijos en un poste. Suele encontrarse en lugares turísticos, miradores, en lo alto de torres panorámicas u ocasionalmente en una reserva natural.", + "nb_NO": "Stedsbundne kikkerter på påle. Vanligvis på turiststeder, utkikkspunkter, på toppen av utsiktstårn, og noen ganger i naturreservat." }, "maintainer": "", "icon": "./assets/layers/binocular/telescope.svg", diff --git a/assets/themes/cafes_and_pubs/cafes_and_pubs.json b/assets/themes/cafes_and_pubs/cafes_and_pubs.json index 2d44d2237..de0c4300f 100644 --- a/assets/themes/cafes_and_pubs/cafes_and_pubs.json +++ b/assets/themes/cafes_and_pubs/cafes_and_pubs.json @@ -1,8 +1,8 @@ { "id": "cafes_and_pubs", "title": { - "nl": "Cafés", "en": "Cafés and pubs", + "nl": "Cafés", "de": "Cafés und Kneipen", "it": "Caffè e pub", "nb_NO": "Kafeer og kneiper", @@ -22,7 +22,8 @@ "ca": "Bars i pubs", "es": "Pubs y bares", "fr": "Bars et pubs", - "da": "Pubber og barer" + "da": "Pubber og barer", + "nb_NO": "Kneiper og barer" }, "maintainer": "", "icon": "./assets/layers/cafe_pub/pub.svg", diff --git a/assets/themes/campersite/campersite.json b/assets/themes/campersite/campersite.json index 6e44a51a2..dbd7934d1 100644 --- a/assets/themes/campersite/campersite.json +++ b/assets/themes/campersite/campersite.json @@ -174,7 +174,8 @@ "nl": "Moet men betalen om deze camperplaats te gebruiken?", "pt_BR": "Este lugar cobra alguma taxa?", "de": "Wird hier eine Gebühr erhoben?", - "es": "¿Este lugar cobra una tarifa?" + "es": "¿Este lugar cobra una tarifa?", + "nb_NO": "Tar dette stedet en avgift?" }, "mappings": [ { @@ -371,7 +372,8 @@ "de": "Ist an diesem Ort ein Internetzugang vorhanden?", "nl": "Biedt deze plaats internettoegang?", "es": "¿Este lugar tiene acceso a internet?", - "da": "Er der internetadgang på dette sted?" + "da": "Er der internetadgang på dette sted?", + "nb_NO": "Tilbyr stedet tilgang til Internett?" }, "mappings": [ { @@ -393,7 +395,8 @@ "nl": "Er is internettoegang", "ca": "Hi ha accés a internet", "es": "Hay acceso a internet", - "da": "Der er internetadgang" + "da": "Der er internetadgang", + "nb_NO": "Det finnes tilgang til Internett" } }, { @@ -415,7 +418,8 @@ "de": "Internetzugang ist vorhanden", "nl": "Er is internettoegang", "es": "Hay acceso a internet", - "da": "Der er internetadgang" + "da": "Der er internetadgang", + "nb_NO": "Det finnes tilgang til Internett" }, "hideInAnswer": true }, @@ -437,7 +441,8 @@ "de": "Kein Internetzugang vorhanden", "nl": "Er is geen internettoegang", "es": "No hay acceso a internet", - "da": "Der er ingen internetadgang" + "da": "Der er ingen internetadgang", + "nb_NO": "Det finnes ingen tilgang til Internett" } } ] @@ -455,7 +460,8 @@ "de": "Ist der Internetzugang gebührenpflichtig?", "nl": "Moet je betalen voor internettoegang?", "es": "¿Tienes que pagar por el acceso a internet?", - "da": "Skal man betale for internetadgang?" + "da": "Skal man betale for internetadgang?", + "nb_NO": "Må man betale for tilgang til Internett?" }, "mappings": [ { @@ -475,7 +481,8 @@ "de": "Der Internetzugang ist gebührenpflichtig", "nl": "Je moet extra betalen voor internettoegang", "es": "Tienes que pagar a mayores por el acceso a internet", - "da": "Man skal betale ekstra for internetadgang" + "da": "Man skal betale ekstra for internetadgang", + "nb_NO": "Tilgang til Internett koster ekstra" } }, { @@ -495,7 +502,8 @@ "de": "Der Internetzugang ist kostenlos", "nl": "Je hoeft niet extra te betalen voor internettoegang", "es": "No tienes que pagar a mayores por el acceso a internet", - "da": "Man behøver ikke at betale ekstra for internetadgang" + "da": "Man behøver ikke at betale ekstra for internetadgang", + "nb_NO": "Man må ikke betale ekstra for tilgang til Internett" } } ], @@ -619,7 +627,8 @@ "de": "Gibt es a diesem Ort Plätze für Dauercamper?", "es": "¿Este lugar ofrece huecos para alquilar a largo plazo?", "da": "Tilbyder dette sted pladser til langtidsleje?", - "nl": "Kan men hier plekken huren voor langere termijn?" + "nl": "Kan men hier plekken huren voor langere termijn?", + "nb_NO": "Tilbyr dette stedet plasser for langtidsleie?" }, "mappings": [ { @@ -634,11 +643,12 @@ "ja": "はい、長期レンタルのスポットもあり、日常的に滞在することもできます", "zh_Hant": "有,這個地方有提供長期租用,但你也可以用天計算費用", "it": "Sì, ci sono spazi per il noleggio a lungo termine, ma puoi anche pagare per singola giornata", - "fr": "Oui, mais il est possible d’y passer seulement une nuit", + "fr": "Il est possible d’y passer seulement une nuit", "pt_BR": "Sim, há alguns pontos para aluguel a longo prazo, mas você também pode ficar em uma base diária", "de": "Es gibt einige Plätze für Langzeitmieten, aber auch eine tageweise Anmietung ist möglich", "es": "Sí, hay algunas plazas de alquiler a largo plazo, pero también puedes alojarte por días", - "nl": "Er zijn enkele plaatsen om op lange termijn te huren, maar je kan ook enkele dagen blijven" + "nl": "Er zijn enkele plaatsen om op lange termijn te huren, maar je kan ook enkele dagen blijven", + "nb_NO": "Det finnes noen plasser for langtidsleie, men man kan også bruke dem på dagsbasis" } }, { @@ -653,12 +663,13 @@ "ja": "いいえ、ここには長期滞在者はいません", "zh_Hant": "沒有,這裡沒有永久的客戶", "it": "No, non ci sono ospiti a lungo termine qui", - "fr": "Non, il n’y a pas de résidents permanents", + "fr": "Il n’y a pas de résidents permanents", "pt_BR": "Não, não há hóspedes permanentes aqui", "de": "Hier gibt es keine Dauergäste", "es": "No, no hay huéspedes permanentes aquí", "da": "Nej, der er ingen faste gæster her", - "nl": "Hier wonen geen permanente gasten" + "nl": "Hier wonen geen permanente gasten", + "nb_NO": "Det er ingen permanente gjester her" } }, { @@ -958,7 +969,8 @@ "pt_BR": "Este lugar tem um ponto de água?", "de": "Hat dieser Ort eine Wasserzapfstelle?", "zh_Hant": "這個地方有取水點嗎?", - "nl": "Heeft deze loosplaats een waterkraan om je camper bij te vullen?" + "nl": "Heeft deze loosplaats een waterkraan om je camper bij te vullen?", + "nb_NO": "Har dette stedet et vannkranssted?" }, "mappings": [ { @@ -1126,7 +1138,8 @@ "fr": "Un code est nécessaire", "de": "Sie benötigen einen Schlüssel/Code zur Benutzung", "zh_Hant": "你需要網路鑰匙/密碼來使用這個設施", - "nl": "Netwerksleutel of -code nodig om dit te gebruiken" + "nl": "Netwerksleutel of -code nodig om dit te gebruiken", + "nb_NO": "Du trenger en nettverksnøkkel/kode for å bruke dette" } }, { diff --git a/assets/themes/charging_stations/charging_stations.json b/assets/themes/charging_stations/charging_stations.json index 943bfaa9f..256622779 100644 --- a/assets/themes/charging_stations/charging_stations.json +++ b/assets/themes/charging_stations/charging_stations.json @@ -38,7 +38,8 @@ "hu": "Ezen a térképen a elektromos töltőpontokról szóló információkat lehet megtalálni és megadni", "fr": "Sur cette carte l’on trouve et ajoute des informations sur les points de recharge", "nl": "Met deze kaart kan je informatie over oplaadpunten vinden en toevoegen", - "es": "En este mapa, uno puede encontrar y marcar información sobre estaciones de carga" + "es": "En este mapa, uno puede encontrar y marcar información sobre estaciones de carga", + "nb_NO": "Finn og merk info om ladestasjoner" }, "maintainer": "", "icon": "./assets/themes/charging_stations/logo.svg", diff --git a/assets/themes/climbing/climbing.json b/assets/themes/climbing/climbing.json index a60a2a80b..28bff9a71 100644 --- a/assets/themes/climbing/climbing.json +++ b/assets/themes/climbing/climbing.json @@ -1,9 +1,9 @@ { "id": "climbing", "title": { + "en": "Open Climbing Map", "nl": "Open klimkaart", "de": "Offene Kletterkarte", - "en": "Open Climbing Map", "ru": "Открытая карта скалолазания", "ja": "登山地図を開く", "zh_Hant": "開放攀爬地圖", @@ -22,7 +22,8 @@ "zh_Hant": "在這份地圖上你會發現能夠攀爬機會,像是攀岩體育館、抱石大廳以及大自然當中的巨石。", "fr": "Cette carte indique les sites d’escalades comme les salles d’escalade ou les sites naturels.", "it": "In questa cartina puoi trovare vari luoghi per arrampicata come ad esempio palestre di arrampicata, sale di pratica e rocce naturali.", - "hu": "Ezen a térképen különböző mászási lehetőségeket talál, például falmászótermeket, bouldertermeket és sziklákat a természetben." + "hu": "Ezen a térképen különböző mászási lehetőségeket talál, például falmászótermeket, bouldertermeket és sziklákat a természetben.", + "nb_NO": "Forskjellige klatremuligheter, som f.eks. buldrehaller og steiner i naturen." }, "descriptionTail": { "nl": "De klimkaart is oorspronkelijk gemaakt door Christian Neumann op kletterspots.de.", diff --git a/assets/themes/cycle_highways/cycle_highways.json b/assets/themes/cycle_highways/cycle_highways.json index fb45334ce..a3567a98d 100644 --- a/assets/themes/cycle_highways/cycle_highways.json +++ b/assets/themes/cycle_highways/cycle_highways.json @@ -7,7 +7,8 @@ "ca": "Vies ciclistes", "fr": "Aménagements cyclables", "nl": "Fietssnelwegen", - "es": "Carriles bici" + "es": "Carriles bici", + "nb_NO": "Sykkelmotorveier" }, "hideFromOverview": true, "maintainer": "L'imaginaire", @@ -20,7 +21,8 @@ "it": "Questa cartina mostra le strade per velocipedi", "fr": "Cette carte affiche les aménagements cyclables", "nl": "Deze kaart toont fietssnelwegen", - "es": "Este mapa muestra carriles bici" + "es": "Este mapa muestra carriles bici", + "nb_NO": "Kart som viser sykkelmotorveier" }, "version": "2021-08-23", "startLat": 51.1599, @@ -110,7 +112,8 @@ "ca": "vies ciclistes", "fr": "Aménagements cyclables", "nl": "fietssnelwegen", - "es": "carriles bici" + "es": "carriles bici", + "nb_NO": "sykkelmotorveier" }, "source": { "osmTags": "cycle_network=BE-VLG:cycle_highway" @@ -123,7 +126,8 @@ "ca": "via ciclista", "fr": "Aménagement cyclable", "nl": "fietssnelweg", - "es": "carril bici" + "es": "carril bici", + "nb_NO": "sykkelmotorvei" } }, "filter": [ diff --git a/assets/themes/cycle_infra/cycle_infra.json b/assets/themes/cycle_infra/cycle_infra.json index 291c30156..2e1d5c71a 100644 --- a/assets/themes/cycle_infra/cycle_infra.json +++ b/assets/themes/cycle_infra/cycle_infra.json @@ -10,7 +10,8 @@ "zh_Hant": "單車設施", "hu": "Kerékpáros infrastruktúra", "ca": "Infraestructura per a bicicletes", - "es": "Infraestructura ciclista" + "es": "Infraestructura ciclista", + "fr": "Infrastructure cyclable" }, "shortDescription": { "en": "A map where you can view and edit things related to the bicycle infrastructure.", @@ -20,7 +21,8 @@ "nb_NO": "Alt relatert til sykkelinfrastruktur.", "zh_Hant": "檢視與編輯單車相關設施的地圖。", "hu": "Olyan térkép, ahol a kerékpáros infrastruktúrával kapcsolatos dolgokat tekinthet meg és szerkeszthet.", - "es": "Un mapa en el que puedes ver y editar cosas relacionadas con la infraestructura ciclista." + "es": "Un mapa en el que puedes ver y editar cosas relacionadas con la infraestructura ciclista.", + "fr": "Une carte où vous pouvez visualiser et modifier les éléments relatifs à l'infrastructure cyclable." }, "description": { "en": "A map where you can view and edit things related to the bicycle infrastructure. Made during #osoc21.", diff --git a/assets/themes/cyclenodes/cyclenodes.json b/assets/themes/cyclenodes/cyclenodes.json index 7364649a6..2be45c90d 100644 --- a/assets/themes/cyclenodes/cyclenodes.json +++ b/assets/themes/cyclenodes/cyclenodes.json @@ -5,13 +5,15 @@ "de": "Fahrrad-Knotenpunktnetzwerke", "es": "Redes de Nodos Ciclistas", "nb_NO": "Sykkelnodenettverk", - "nl": "Fietsknooppuntennetwerken" + "nl": "Fietsknooppuntennetwerken", + "fr": "Réseau de Nœuds Cyclistes" }, "description": { "en": "This map shows cycle node networks and allows you to add new nodes easily", "de": "Diese Karte zeigt Knotenpunktnetzwerke für Radfahrer und erlaubt auch neue Knoten zu mappen", "es": "Este mapa muestra redes de nodos ciclistas y te permita añadir nodos nuevos de manera sencilla", - "nl": "Deze kaart toont fietsknooppunten en laat je toe om eenvoudigweg nieuwe knooppunten toe te voegen" + "nl": "Deze kaart toont fietsknooppunten en laat je toe om eenvoudigweg nieuwe knooppunten toe te voegen", + "fr": "Cette carte montre les réseaux de nœuds cyclistes et vous permet d'ajouter facilement de nouveaux nœuds" }, "maintainer": "Sebastian Kürten", "icon": "./assets/themes/cyclenodes/logo.svg", @@ -32,7 +34,8 @@ "en": "node to node links", "de": "Knotenpunktverbindungen", "es": "enlaces nodo a nodo", - "nl": "verbindingen van node naar node" + "nl": "verbindingen van node naar node", + "fr": "liens noeud à noeud" }, "source": { "osmTags": { @@ -49,7 +52,8 @@ "en": "node to node link", "de": "Knotenpunktverbindung", "es": "enlace nodo a nodo", - "nl": "node-naar-node verbinding" + "nl": "node-naar-node verbinding", + "fr": "lien noeud à noeud" }, "mappings": [ { @@ -58,7 +62,8 @@ "en": "node to node link {ref}", "de": "Knotenpunktverbindung {ref}", "es": "enlace nodo a nodo {ref}", - "nl": "node-naar-node verbinding {ref}" + "nl": "node-naar-node verbinding {ref}", + "fr": "lien noeud à noeud {ref}" } } ] @@ -79,13 +84,15 @@ "en": "When was this node to node link last surveyed?", "de": "Wann wurde diese Knotenpunktverbindung zuletzt überprüft?", "es": "¿Cuándo se sondeó este enlace nodo a nodo por última vez?", - "nl": "Wanneer werd deze node-naar-node verbinding het laast gesurveyed?" + "nl": "Wanneer werd deze node-naar-node verbinding het laast gesurveyed?", + "fr": "Quand cette liaison de nœud à nœud a-t-elle été contrôlée sur le terrain pour la dernière fois ?" }, "render": { "en": "This node to node link was last surveyed on {survey:date}", "de": "Diese Knotenpunktverbindung wurde zuletzt am {survey:date} überprüft", "es": "Este enlace nodo a nodo se sondeó por última vez el {survey:date}", - "nl": "Deze node-naar-node verbinding werd het laast gesurveyed op {survey:date}" + "nl": "Deze node-naar-node verbinding werd het laast gesurveyed op {survey:date}", + "fr": "Cette lien de nœud à nœud a été vérifié sur le terrain le {survey:date}" }, "freeform": { "key": "survey:date", @@ -110,7 +117,8 @@ "ca": "nodes", "es": "nodos", "nb_NO": "noder", - "nl": "knooppunten" + "nl": "knooppunten", + "fr": "noeuds" }, "source": { "osmTags": { @@ -146,7 +154,8 @@ "de": "Knotenpunkt {rcn_ref}", "es": "nodo ciclista {rcn_ref}", "nb_NO": "sykkelnode {rcn_ref}", - "nl": "fietsknooppunt {rcn_ref}" + "nl": "fietsknooppunt {rcn_ref}", + "fr": "nœud cycliste {rcn_ref}" } }, "tagRenderings": [ @@ -155,13 +164,15 @@ "en": "When was this cycle node last surveyed?", "de": "Wann wurde dieser Fahrradknotenpunkt zuletzt überprüft?", "es": "¿Cuándo fue sondeado este nodo ciclista por última vez?", - "nl": "Wanneer is dit fietsknooppunt voor het laatst gecontroleerd?" + "nl": "Wanneer is dit fietsknooppunt voor het laatst gecontroleerd?", + "fr": "Quand ce nœud cyclable a-t-il été vérifié sur le terrain pour la dernière fois ?" }, "render": { "en": "This cycle node was last surveyed on {survey:date}", "de": "Dieser Fahrradknoten wurde zuletzt überprüft am {survey:date}", "es": "Este nodo ciclista se sondeó por última vez el {survey:date}", - "nl": "Dit fietsknooppunt is voor het laatst gecontroleerd op {survey:date}" + "nl": "Dit fietsknooppunt is voor het laatst gecontroleerd op {survey:date}", + "fr": "Ce nœud cycliste a été verifié pour la dernière fois le {survey:date}" }, "freeform": { "key": "survey:date", @@ -180,13 +191,15 @@ "en": "How many other cycle nodes does this node link to?", "de": "Mit wie vielen anderen Knoten des Fahrradknotenpunktnetzwerkes ist dieser Knoten verbunden?", "es": "¿A cuántos otros nodos ciclistas enlaza este nodo?", - "nl": "Met hoeveel andere fietsknooppunten heeft dit knooppunt een verbinding?" + "nl": "Met hoeveel andere fietsknooppunten heeft dit knooppunt een verbinding?", + "fr": "A combien dautres nœuds vélo ce nœud est-il lié ?" }, "render": { "en": "This node links to {expected_rcn_route_relations} other cycle nodes.", "de": "Dieser Knoten ist mit {expected_rcn_route_relations} anderen Knoten des Fahrradknotenpunktnetzwerkes verbunden.", "nl": "Dit knooppunt verbindt met {expected_rcn_route_relations} andere fietsknooppunten.", - "es": "Este nodo enlaza a {expected_rcn_route_relations} otros nodos ciclistas." + "es": "Este nodo enlaza a {expected_rcn_route_relations} otros nodos ciclistas.", + "fr": "Ce noeud est lié à {expected_rcn_route_relations} d'autres noeuds cyclistes." }, "freeform": { "key": "expected_rcn_route_relations", diff --git a/assets/themes/cyclestreets/cyclestreets.json b/assets/themes/cyclestreets/cyclestreets.json index 955cf20a0..92bdc2cea 100644 --- a/assets/themes/cyclestreets/cyclestreets.json +++ b/assets/themes/cyclestreets/cyclestreets.json @@ -2,8 +2,8 @@ "id": "cyclestreets", "version": "2020-08-30", "title": { - "nl": "Fietsstraten", "en": "Cyclestreets", + "nl": "Fietsstraten", "ja": "Cyclestreets", "zh_Hant": "單車街道", "de": "Fahrradstraßen", @@ -11,7 +11,8 @@ "nb_NO": "Sykkelgater", "hu": "Kerékpárosutcák", "ca": "Carrers ciclistes", - "es": "Ciclocalles" + "es": "Ciclocalles", + "fr": "Rue cyclables" }, "shortDescription": { "nl": "Een kaart met alle gekende fietsstraten", @@ -23,7 +24,8 @@ "it": "Una cartina per le strade ciclabili", "hu": "Kerékpárosutcák térképe", "ca": "Un mapa de carrers ciclistes", - "es": "Un mapa de ciclocalles" + "es": "Un mapa de ciclocalles", + "fr": "Une carte des rues cyclables" }, "description": { "nl": "Een fietsstraat is een straat waar
  • automobilisten geen fietsers mogen inhalen
  • Er een maximumsnelheid van 30km/u geldt
  • Fietsers gemotoriseerde voertuigen links mogen inhalen
  • Fietsers nog steeds voorrang aan rechts moeten verlenen - ook aan auto's en voetgangers op het zebrapad


Op deze open kaart kan je alle gekende fietsstraten zien en kan je ontbrekende fietsstraten aanduiden. Om de kaart aan te passen, moet je je aanmelden met OpenStreetMap en helemaal inzoomen tot straatniveau. ", @@ -33,7 +35,8 @@ "de": "Eine Fahrradstraße ist eine Straße, auf der motorisierter Verkehr Radfahrer nicht überholen darf. Sie sind durch ein spezielles Verkehrsschild gekennzeichnet. Fahrradstraßen gibt es in den Niederlanden und Belgien, aber auch in Deutschland und Frankreich. ", "it": "Una strada ciclabile è una strada dove il traffico motorizzato non può superare i velocipedi. La sua presenza è segnalata da un cartello stradale specifico. Le strade ciclabili sono diffuse in Olanda e Belgio, ma si possono trovare anche in Germania e in Francia. ", "hu": "A kerékpárosutca (cyclestreet, Fahrradstraße) olyan utca, ahol gépjármű nem előzhet meg kerékpárost. Az ilyen utcákat külön közlekedési tábla jelzi. Kerékpárosutcák találhatók Hollandiában és Belgiumban, valamint Németországban és Franciaországban is. ", - "es": "Una ciclocalle es una calle donde el tráfico motorizado no puede adelantar a ciclistas. Están señalizadas por una señal de tráfico especial. Las ciclocalles se pueden encontrar en los Países Bajos y Bélgica, pero también en Alemania y Francia. " + "es": "Una ciclocalle es una calle donde el tráfico motorizado no puede adelantar a ciclistas. Están señalizadas por una señal de tráfico especial. Las ciclocalles se pueden encontrar en los Países Bajos y Bélgica, pero también en Alemania y Francia. ", + "fr": "Une rue cyclable est une rue où les véhicules motorisés ne sont pas autorisés à dépasser les cyclistes. Elles sont signalées par un signal routier particulier. On trouve des rues cyclables en Belgique et aux Pays-Bas, mais aussi en Allemagne et en France. " }, "icon": "./assets/themes/cyclestreets/logo.svg", "startLat": 51.2095, @@ -59,7 +62,8 @@ "ru": "Cyclestreets", "hu": "Kerékpárosutcák", "ca": "Carrers ciclistes", - "es": "Ciclocalles" + "es": "Ciclocalles", + "fr": "Rue cyclables" }, "minzoom": 7, "source": { @@ -85,7 +89,8 @@ "it": "Una strada ciclabile è una strada in cui i veicoli a motore non possono sorpassare le persone in bicicletta", "de": "Eine Fahrradstraße ist eine Straße, auf der motorisierter Verkehr einen Radfahrer nicht überholen darf", "hu": "A kerékpárosutca olyan utca, ahol gépjármű nem előzhet meg a kerékpárost", - "es": "Una ciclocalle es una calle en la que el tráfico motorizado no puede sobrepasar a un ciclista" + "es": "Una ciclocalle es una calle en la que el tráfico motorizado no puede sobrepasar a un ciclista", + "fr": "Une rue cyclable est une rue où les véhicules motorisés ne sont pas autorisés à dépasser les cyclistes" }, "title": "{name}", "tagRenderings": [ @@ -116,7 +121,8 @@ "de": "Zukünftige Fahrradstraßen", "hu": "Jövőbeli kerékpárosutca", "ca": "Futur carrer ciclista", - "es": "Futura ciclocalle" + "es": "Futura ciclocalle", + "fr": "Future rue cyclable" }, "description": { "nl": "Deze straat wordt binnenkort een fietsstraat", @@ -126,7 +132,8 @@ "de": "Diese Straße wird bald eine Fahrradstraße sein", "nb_NO": "Denne gaten vil bli sykkelgate snart", "hu": "Ez az utca hamarosan kerékpárosutcává válik", - "es": "Esta calle se convertirá en una ciclocalle próximamente" + "es": "Esta calle se convertirá en una ciclocalle próximamente", + "fr": "Cette rue va bientôt devenir une rue cyclable" }, "minzoom": 9, "source": { @@ -142,7 +149,8 @@ "de": "Zukünftige Fahrradstraße", "hu": "Jövőbeli kerékpárosutca", "ca": "Futur carrer ciclista", - "es": "Futura ciclocalle" + "es": "Futura ciclocalle", + "fr": "Future rue cyclable" }, "mappings": [ { @@ -154,7 +162,8 @@ "de": "{name} wird bald eine Fahrradstraße werden", "nb_NO": "{name} vil bli sykkelgate snart", "hu": "{name} nemsokára kerékpárosutca lesz", - "es": "{name} se convertirá en una ciclocalle próximamente" + "es": "{name} se convertirá en una ciclocalle próximamente", + "fr": "{name} va bientôt devenir une rue cyclable" }, "if": "name~*" } @@ -189,7 +198,8 @@ "eo": "Ĉiuj stratoj", "hu": "Minden utca", "ca": "Tots els carrers", - "es": "Todas las calles" + "es": "Todas las calles", + "fr": "Toutes les rues" }, "description": { "nl": "Laag waar je een straat als fietsstraat kan markeren", @@ -199,7 +209,8 @@ "it": "Livello per contrassegnare tutte le strade come strade ciclabili", "de": "Ebene zur Kennzeichnung einer Straße als Fahrradstraße", "hu": "Réteg bármely utca kerékpárosutcaként való megjelöléséhez", - "es": "Capa para marcar cualquier calle como ciclocalle" + "es": "Capa para marcar cualquier calle como ciclocalle", + "fr": "Calque pour marquer une rue comme cyclable" }, "source": { "osmTags": { @@ -223,7 +234,8 @@ "nb_NO": "Gate", "hu": "Utca", "ca": "Carrer", - "es": "Calle" + "es": "Calle", + "fr": "Rue" }, "mappings": [ { @@ -272,7 +284,9 @@ "de": "Ist die Straße {name} eine Fahrradstraße?", "it": "È {name} una strada ciclabile?", "hu": "Kerékpárosutca-e {name}?", - "es": "¿La calle {name} es una ciclocalle?" + "es": "¿La calle {name} es una ciclocalle?", + "fr": "La rue {name} est-elle une rue cyclable ?", + "nb_NO": "Er {name}-gaten en sykkelgate?" }, "mappings": [ { @@ -292,7 +306,8 @@ "de": "Diese Straße ist eine Fahrradstraße (mit einer Geschwindigkeitsbegrenzung von 30 km/h)", "it": "Questa è una strada ciclabile (e ha un limite di velocità massima di 30 km/h)", "hu": "Ez az utca kerékpárosutca (és 30 km/h a sebességkorlátozás)", - "es": "Esta calle es una ciclocalle (y tiene un límite de velocidad de 30km/h)" + "es": "Esta calle es una ciclocalle (y tiene un límite de velocidad de 30km/h)", + "fr": "Cette rue est une rue cyclable (et est limitée à 30 km/h)" }, "hideInAnswer": "_country!=be" }, @@ -311,7 +326,8 @@ "de": "Diese Straße ist eine Fahrradstraße", "it": "Questa è una strada ciclabile", "hu": "Ez az utca kerékpárosutca", - "es": "Esta calle es una ciclocalle" + "es": "Esta calle es una ciclocalle", + "fr": "Cette rue est une rue cyclable" }, "hideInAnswer": "_country=be" }, @@ -330,7 +346,8 @@ "de": "Diese Straße wird bald eine Fahrradstraße sein", "it": "Diverrà tra poco una strada ciclabile", "hu": "Ez az utca hamarosan kerékpárosutcává válik", - "es": "Esta calle se convertirá en una ciclocalle próximamente" + "es": "Esta calle se convertirá en una ciclocalle próximamente", + "fr": "Cette rue sera bientôt une rue cyclable" } }, { @@ -349,7 +366,8 @@ "it": "Questa strada non è una strada ciclabile", "de": "Diese Straße ist keine Fahrradstraße", "hu": "Ez az utca nem kerékpárosutca", - "es": "Esta calle no es una ciclocalle" + "es": "Esta calle no es una ciclocalle", + "fr": "Cette rue n’est pas une rue cyclable" } } ] @@ -363,7 +381,9 @@ "it": "Questa strada diventerà una strada ciclabile quando?", "de": "Wann wird diese Straße eine Fahrradstraße?", "hu": "Mikor lesz ez az utca kerékpárosutca?", - "es": "¿Cuándo se convertirá esta calle en una ciclocalle?" + "es": "¿Cuándo se convertirá esta calle en una ciclocalle?", + "fr": "Quand cette rue deviendra-t-elle cyclable ?", + "nb_NO": "Når vil denne gaten bli en sykkelgate?" }, "render": { "nl": "Deze straat wordt fietsstraat op {cyclestreet:start_date}", @@ -372,7 +392,9 @@ "it": "Questa strada diventerà una strada ciclabile dal {cyclestreet:start_date}", "de": "Diese Straße wird am {cyclestreet:start_date} zu einer Fahrradstraße", "hu": "Ez az utca ekkor lesz kerékpárosutca: {cyclestreet:start_date}", - "es": "Esta calle se convetirá en una ciclocalle el {cyclestreet:start_date}" + "es": "Esta calle se convetirá en una ciclocalle el {cyclestreet:start_date}", + "fr": "Cette rue deviendra une rue cyclable le {cyclestreet:start_date}", + "nb_NO": "Denne gaten vil bli en sykkelgate {cyclestreet:start_date}" }, "condition": "proposed:cyclestreet=yes", "freeform": { diff --git a/assets/themes/drinking_water/drinking_water.json b/assets/themes/drinking_water/drinking_water.json index 3ba8a2f22..9f8650911 100644 --- a/assets/themes/drinking_water/drinking_water.json +++ b/assets/themes/drinking_water/drinking_water.json @@ -17,13 +17,13 @@ "description": { "en": "On this map, publicly accessible drinking water spots are shown and can be easily added", "nl": "Op deze kaart staan publiek toegankelijke drinkwaterpunten en kan je makkelijk een nieuw drinkwaterpunt toevoegen", - "fr": "Cette carte affiche les points d'accès public à de l'eau potable, et permet d'en ajouter facilement", + "fr": "Cette carte affiche les points d'accès public à de l'eau potable et permet d'en ajouter facilement", "ja": "この地図には、一般にアクセス可能な飲料水スポットが示されており、簡単に追加することができる", "zh_Hant": "在這份地圖上,公共可及的飲水點可以顯示出來,也能輕易的增加", "it": "Questa mappa mostra tutti i luoghi in cui è disponibile acqua potabile ed è possibile aggiungerne di nuovi", "ru": "На этой карте показываются и могут быть легко добавлены общедоступные точки питьевой воды", "de": "Eine Karte zum Anzeigen und Bearbeiten öffentlicher Trinkwasserstellen", - "nb_NO": "Offentlig tilgjengelig drikkevannssteder", + "nb_NO": "Offentlig tilgjengelige drikkevannssteder", "hu": "Ezen a térképen a nyilvánosan hozzáférhető ivóvíznyerő helyek láthatók, szerkeszthetők és rajzolhatók fel könnyedén", "es": "En este mapa, se muestran los puntos de agua potable accesibles públicamente y pueden añadirse fácilmente" }, diff --git a/assets/themes/education/education.json b/assets/themes/education/education.json index af4f211e4..eb0aa8434 100644 --- a/assets/themes/education/education.json +++ b/assets/themes/education/education.json @@ -2,11 +2,16 @@ "id": "education", "description": { "en": "On this map, you'll find information about all types of schools and eduction and can easily add more information", - "nl": "Deze kaart toont info over verschillende onderwijsinstellingen zoals kleuterscholen, middelbare scholen en tertiair onderwijs." + "nl": "Deze kaart toont info over verschillende onderwijsinstellingen zoals kleuterscholen, middelbare scholen en tertiair onderwijs.", + "de": "Auf dieser Karte können Sie Informationen über Bildungseinrichtungen finden und hinzufügen", + "fr": "Sur cette carte, vous trouverez des informations concernant tous les types d'écoles et d'enseignement. Vous pouvez facilement ajouter plus d'informations" }, "title": { "en": "Education", - "nl": "Onderwijs" + "nl": "Onderwijs", + "de": "Bildung", + "fr": "Enseignement", + "nb_NO": "Utdanning" }, "defaultBackgroundId": "CartoDB.Voyager", "maintainer": "MapComplete", diff --git a/assets/themes/entrances/entrances.json b/assets/themes/entrances/entrances.json index 452c4e526..678b40dfc 100644 --- a/assets/themes/entrances/entrances.json +++ b/assets/themes/entrances/entrances.json @@ -8,7 +8,8 @@ "nl": "Toegangsdeuren", "ca": "Entrades", "es": "Entradas", - "nb_NO": "Innganger" + "nb_NO": "Innganger", + "fr": "Entrées" }, "icon": "./assets/layers/entrance/door.svg", "description": { @@ -17,7 +18,9 @@ "hu": "Épületek bejáratai mutató térkép, amely a kerekesszékkel közlekedőknek fontos szempontokat jeleníti meg", "de": "Eine Karte mit allen Eingängen, die wichtige Aspekte für Rollstuhlfahrer erfasst", "es": "Un mapa que muestra todas las entradas, que sondea aspectos importantes para usuarios de sillas de ruedas", - "nl": "Een kaart die alle toegangen toont," + "nl": "Een kaart die alle toegangen toont,", + "fr": "Une carte renseignant toutes les entrées (importante pour les utilisateurs de sièges roulants", + "nb_NO": "Alle innganger, som er en viktig undersøkelse å gjøre for rullestolsbrukere" }, "shortDescription": { "en": "Survey entrances to help wheelchair routing", @@ -25,7 +28,9 @@ "hu": "Akadálymentes útvonaltervezést segítő bejáratok feltérképezése", "de": "Eingänge prüfen, um die Rollstuhlnavigation zu verbessern", "es": "Sondea entradas para ayudar el enrutado de sillas de ruedas", - "nl": "Breng ingangen in kaart om rolstoelnavigatie mogelijk te maken" + "nl": "Breng ingangen in kaart om rolstoelnavigatie mogelijk te maken", + "fr": "Vérifez les entrées pour faciliter le routage des utilisateurs de sièges roulants", + "nb_NO": "Lag oversikt over innganger for å hjelpe rullestolsruteplanlegging" }, "version": "2021-12-04", "maintainer": "MapComplete", diff --git a/assets/themes/etymology/etymology.json b/assets/themes/etymology/etymology.json index 54b7119b3..80593b27c 100644 --- a/assets/themes/etymology/etymology.json +++ b/assets/themes/etymology/etymology.json @@ -28,7 +28,8 @@ "de": "Auf dieser Karte können Sie sehen, wonach ein Objekt benannt ist. Die Straßen, Gebäude, ... stammen von OpenStreetMap, und wurden mit Wikidata verknüpft. Im Popup sehen Sie den Wikipedia-Artikel (falls vorhanden) oder ein Wikidata-Feld, nach dem das Objekt benannt ist. Wenn das Objekt selbst eine Wikipedia-Seite hat, wird auch diese angezeigt.

Sie können auch einen Beitrag leisten! Wenn Sie weit genug hinein zoomen werden alle Straßen angezeigt. Wenn Sie auf eine Straße klicken, öffnet sich ein Wikidata-Suchfeld. Mit ein paar Klicks können Sie einen Etymologie-Link hinzufügen. Beachten Sie, dass Sie dazu ein kostenloses OpenStreetMap-Konto benötigen.", "it": "Su questa cartina sono visibili i nomi a cui sono riferiti gli oggetti. Le strade, gli edifici, etc. provengono da OpenStreetMap che è a sua volta collegata a Wikidata. Nel popup, se esiste, verrà mostrato l’articolo Wikipedia o l'elemento Wikidata a cui si riferisce il nome di quell’oggetto. Se l’oggetto stesso ha una pagina Wikpedia, anch’essa verrà mostrata.

Anche tu puoi contribuire!Ingrandisci abbastanza e tutte le strade appariranno. Puoi cliccare su una e apparirà un popup con la ricerca Wikidata. Con pochi clic puoi aggiungere un collegamento etimologico. Tieni presente che per farlo, hai bisogno di un account gratuito su OpenStreetMap.", "zh_Hant": "在這份地圖,你可以看到物件是以何命名,道路、 建築等的命名由來連到 Wikidata。在跳出選單,你可以看到物件命名由來的維基條目 (如果有的話),或是 Wikidata 框。如果物件本身有維基頁面,也會顯示。

你也可以貢獻!放大到夠大的層級,然後所有道路都會顯示。你可以點選一個之後 Wikidata 搜尋框會跳出來。只要點幾下,你可以新增詞源連結。注意你要有開放街圖帳號才能這麼做。", - "hu": "Ezen a térképen az látható, hogy egy objektum milyen névre hallgat. Az utcák, épületek stb. az OpenStreetMapről származnak, amely össze van kapcsolva a Wikidata adatbázissal. A felugró ablakban megjelenik a megfelelő Wikipedia-szócikk (ha van) vagy egy Wikidata-doboz arról, amiről az objektumot elnevezték. Ha magának az objektumnak van Wikipédia-oldala, az is megjelenik.

A térképet Ön is szerkesztheti!nagyítson rá, és az összes utca megjelenik. Ha valamelyikre rákattint, megjelenik Wikidata-kereső doboz. Néhány kattintással hozzáadhat egy etimológiai linket. Ne feledje, hogy ehhez szüksége van egy ingyenes OpenStreetMap-fiókra." + "hu": "Ezen a térképen az látható, hogy egy objektum milyen névre hallgat. Az utcák, épületek stb. az OpenStreetMapről származnak, amely össze van kapcsolva a Wikidata adatbázissal. A felugró ablakban megjelenik a megfelelő Wikipedia-szócikk (ha van) vagy egy Wikidata-doboz arról, amiről az objektumot elnevezték. Ha magának az objektumnak van Wikipédia-oldala, az is megjelenik.

A térképet Ön is szerkesztheti!nagyítson rá, és az összes utca megjelenik. Ha valamelyikre rákattint, megjelenik Wikidata-kereső doboz. Néhány kattintással hozzáadhat egy etimológiai linket. Ne feledje, hogy ehhez szüksége van egy ingyenes OpenStreetMap-fiókra.", + "fr": "Retrouvez sur cette carte l’origine du nom d’un élément. Les rues, bâtiments, etc proviennent d’OpenStreetMap et sont liés aux données venant de Wikidata. La fenêtre pop-up affiche l’article Wikipedia (s’il existe) ou l’infobox Wikidata de l’objet dont provient le nom. Si l’objet a sa propre page Wikedia, elle sera aussi affichée.

Vous pouvez contribuer aussi !Zoomez suffisamment et toutes les rues seront affichées. Cliquez-en une et une boîte de recherche Wikidata apparaîtra. En quelques clics, vous pouvez ajouter un lien étymologique. Vous devez disposer d’un compte OpenStreetMap gratuit." }, "maintainer": "", "icon": "./assets/layers/etymology/logo.svg", diff --git a/assets/themes/facadegardens/facadegardens.json b/assets/themes/facadegardens/facadegardens.json index d1d8780e4..77856a9cc 100644 --- a/assets/themes/facadegardens/facadegardens.json +++ b/assets/themes/facadegardens/facadegardens.json @@ -1,12 +1,12 @@ { "id": "facadegardens", "title": { - "nl": "Straatgeveltuintjes", "en": "Facade gardens", + "nl": "Straatgeveltuintjes", "ja": "ファサード庭園", "zh_Hant": "立面花園", "it": "Giardini verticali", - "fr": "Facade gardens", + "fr": "Jardins de façade", "de": "Fassadengärten", "hu": "Homlokzati kertek", "ca": "Jardins verticals", @@ -135,7 +135,8 @@ "fr": "Le jardin est en plein soleil", "de": "Der Garten liegt in voller Sonne", "hu": "A kert teljesen a napon van", - "es": "El jardín está completamente al sol" + "es": "El jardín está completamente al sol", + "nb_NO": "Hagen er ikke i skyggen" } }, { @@ -170,7 +171,8 @@ "fr": "Le jardin est à l’ombre", "de": "Der Garten liegt im Schatten", "hu": "A kert árnyékban van", - "es": "El jardín está a la sombra" + "es": "El jardín está a la sombra", + "nb_NO": "Hagen er i skyggen" } } ], @@ -183,7 +185,8 @@ "fr": "Quel est l’ensoleillement du jardin ?", "de": "Ist der Garten schattig oder sonnig?", "hu": "Árnyékban vagy napon van a kert?", - "es": "¿El jardín está al sol o a la sombra?" + "es": "¿El jardín está al sol o a la sombra?", + "nb_NO": "Er hagen i skygge eller ei?" } }, { @@ -196,7 +199,8 @@ "de": "Gibt es ein Wasserfass für den Garten?", "it": "È stata installata una riserva d’acqua per il giardino?", "zh_Hant": "花園當中有設置雨筒嗎?", - "hu": "Van-e a kertben vizeshordó?" + "hu": "Van-e a kertben vizeshordó?", + "nb_NO": "Er det en vanntønne installert i denne hagen?" }, "mappings": [ { @@ -214,7 +218,8 @@ "fr": "Il y a des réserves", "de": "Es gibt eine Regentonne", "zh_Hant": "這裡有個雨筒", - "hu": "Van benne esővízgyűjtő hordó" + "hu": "Van benne esővízgyűjtő hordó", + "nb_NO": "Har regntønne" } }, { @@ -232,7 +237,8 @@ "fr": "Il n’y a pas de réserves", "de": "Es gibt keine Regentonne", "zh_Hant": "這裡沒有雨筒", - "hu": "Nincs benne esővízgyűjtő hordó" + "hu": "Nincs benne esővízgyűjtő hordó", + "nb_NO": "Har ikke regntønne" } } ] @@ -247,7 +253,8 @@ "fr": "Date de construction du jardin : {start_date}", "de": "Errichtungsdatum des Gartens: {start_date}", "hu": "A kert építésének időpontja: {start_date}", - "es": "Fecha de construcción del jardín: {start_date}" + "es": "Fecha de construcción del jardín: {start_date}", + "nb_NO": "Konstruksjonsdato for hagen: {start_date}" }, "question": { "nl": "Wanneer werd de tuin aangelegd? (vul gewoon een jaartal in)", @@ -257,7 +264,8 @@ "fr": "Quand le jardin a-t’il été construit ? (L’année suffit)", "de": "Wann wurde der Garten angelegt? (Jahr ist ausreichend)", "hu": "Mikor épült a kert? (Év megadása is elegendő)", - "es": "¿Cuándo se construyó el jardín? (el año es suficiente)" + "es": "¿Cuándo se construyó el jardín? (el año es suficiente)", + "nb_NO": "Når ble hagen opprettet? (Årstall holder.)" }, "freeform": { "key": "start_date", @@ -282,7 +290,8 @@ "fr": "Il y a des plantes comestibles", "de": "Es gibt essbare Pflanzen", "hu": "Van benne ehető növény", - "es": "Hay plantas comestibles" + "es": "Hay plantas comestibles", + "nb_NO": "Det finnes spisbare planter" } }, { @@ -299,7 +308,8 @@ "fr": "Il n’y a pas de plantes comestibles", "de": "Es gibt keine essbaren Pflanzen", "hu": "Nincs benne ehető növény", - "es": "No hay plantas comestibles" + "es": "No hay plantas comestibles", + "nb_NO": "Det finnes ingen spisbare planter" } } ], @@ -311,7 +321,8 @@ "fr": "Y-a-t’il des plantes comestibles ?", "de": "Gibt es essbare Pflanzen?", "hu": "Van-e benne ehető növény?", - "es": "¿Hay alguna planta comestible?" + "es": "¿Hay alguna planta comestible?", + "nb_NO": "Finnes det noen spisbare planter?" } }, { @@ -404,7 +415,8 @@ "fr": "Détails supplémentaires sur le jardin (si nécessaire et non décrit précédemment)", "de": "Zusätzliche Informationen über den Garten (falls erforderlich und oben noch nicht beschrieben)", "hu": "További leíró jellegű információ a kertről (ha szükséges, és följebb nincs leírva)", - "es": "Información descriptiva complementaria sobre el jardín (si es necesaria pero no se describe arriba)" + "es": "Información descriptiva complementaria sobre el jardín (si es necesaria pero no se describe arriba)", + "nb_NO": "Ekstra beskrivende info om hagen (hvis det trengs og ikke er gjengitt ovenfor)" }, "freeform": { "key": "description", @@ -428,7 +440,8 @@ "de": "eine fassadengarten", "hu": "homlokzatkert", "ca": "un jardí vertical", - "es": "un jardín de fachada" + "es": "un jardín de fachada", + "nb_NO": "en fronthage" }, "description": { "nl": "Voeg geveltuintje toe", @@ -439,7 +452,8 @@ "de": "Einen Fassadengarten hinzufügen", "hu": "Homlokzatkert hozzáadása", "ca": "Afegeix un jardí vertical", - "es": "Añadir un jardín de fachada" + "es": "Añadir un jardín de fachada", + "nb_NO": "Legg til en fronthage" } } ], diff --git a/assets/themes/food/food.json b/assets/themes/food/food.json index b49c9b71d..c1e87e91d 100644 --- a/assets/themes/food/food.json +++ b/assets/themes/food/food.json @@ -1,22 +1,24 @@ { "id": "food", "title": { - "nl": "Eetgelegenheden", "en": "Restaurants and fast food", + "nl": "Eetgelegenheden", "de": "Restaurants und Schnellimbisse", "it": "Ristoranti e fast food", "nb_NO": "Restauranter og søppelmat", "zh_Hant": "餐廳與快餐店", "hu": "Éttermek és büfék", "ca": "Restaurants i menjar ràpid", - "es": "Restaurantes y comida rápida" + "es": "Restaurantes y comida rápida", + "fr": "Restaurants et restaurants rapides" }, "description": { "nl": "Restaurants en fast food", "en": "Restaurants and fast food", "de": "Restaurants und Schnellimbisse", "es": "Restaurantes y comida rápida", - "nb_NO": "Restauranter og søppelmat" + "nb_NO": "Restauranter og søppelmat", + "fr": "Restaurants et restaurants rapides" }, "maintainer": "", "icon": "./assets/layers/food/restaurant.svg", diff --git a/assets/themes/fritures/fritures.json b/assets/themes/fritures/fritures.json index d6b46e210..b65b98e36 100644 --- a/assets/themes/fritures/fritures.json +++ b/assets/themes/fritures/fritures.json @@ -1,8 +1,8 @@ { "id": "fritures", "title": { - "nl": "Friturenkaart", "en": "Fries shops", + "nl": "Friturenkaart", "fr": "Carte des friteries", "de": "Pommes-frites-Läden", "ca": "Botigues de patates" @@ -10,7 +10,8 @@ "description": { "en": "On this map, you'll find your favourite fries shop!", "nl": "Op deze kaart vind je je favoriete frituur!", - "de": "Auf dieser Karte findest du deine Lieblings-Pommesbude!" + "de": "Auf dieser Karte findest du deine Lieblings-Pommesbude!", + "fr": "Retrouves vos friteries préférées sur cette carte !" }, "maintainer": "", "icon": "./assets/themes/fritures/logo.svg", diff --git a/assets/themes/grb_import/grb.json b/assets/themes/grb_import/grb.json index d5875d0d4..c545fe6f9 100644 --- a/assets/themes/grb_import/grb.json +++ b/assets/themes/grb_import/grb.json @@ -10,7 +10,8 @@ "nl": "Dit thema helpt het GRB importeren.", "en": "This theme is an attempt to help automating the GRB import.", "hu": "Ez a sablon a flandriai GRB épületimportálás automatizlását kívánja megkönnyíteni.", - "de": "Dieses Thema ist ein Versuch, die Automatisierung des GRB-Imports zu unterstützen." + "de": "Dieses Thema ist ein Versuch, die Automatisierung des GRB-Imports zu unterstützen.", + "fr": "Ce thème tente d’aider l’import automatique GRB." }, "maintainer": "Pieter Vander Vennet", "icon": "./assets/themes/grb_import/logo.svg", @@ -114,7 +115,8 @@ "en": "What kind of building is this?", "de": "Was ist das für ein Gebäude?", "es": "¿Qué tipo de edificio es este?", - "nl": "Wat voor soort gebouw is dit?" + "nl": "Wat voor soort gebouw is dit?", + "fr": "De quel type de bâtiment s’agit-il ?" }, "mappings": [ { @@ -513,7 +515,8 @@ "then": { "en": "This building has holes and is modeled as a relation. As such, it cannot be conflated. Conflate it manually via the building export site {open_in_josm()}", "de": "Dieses Gebäude hat Löcher und ist als Relation modelliert. Als solches kann es nicht zusammengeführt werden. Es kann manuell zusammengeführt werden über die Gebäudeexportseite {open_in_josm()}", - "es": "Este edificio tiene agujeros y está modelado como una relación. Por lo tanto, no se puede combinar. Combínalo manualmente a través el sitio de exportación de edificios {open_in_josm()}" + "es": "Este edificio tiene agujeros y está modelado como una relación. Por lo tanto, no se puede combinar. Combínalo manualmente a través el sitio de exportación de edificios {open_in_josm()}", + "fr": "Ce bâtiment a des ouvertures et est modélisé comme une relation. Il ne peut être fusionné. Fusionnez-le manuellement via le site d’export de bâtiment {open_in_josm()}" } }, { diff --git a/assets/themes/grb_import/grb_fixme.json b/assets/themes/grb_import/grb_fixme.json index 7a4c84e59..53bb7f57d 100644 --- a/assets/themes/grb_import/grb_fixme.json +++ b/assets/themes/grb_import/grb_fixme.json @@ -112,7 +112,9 @@ "en": "What kind of building is this?", "de": "Was ist das für ein Gebäude?", "es": "¿Qué tipo de este edificio es este?", - "nl": "Wat voor soort gebouw is dit?" + "nl": "Wat voor soort gebouw is dit?", + "fr": "De quel type de bâtiment s’agit-il ?", + "nb_NO": "Hva slags bygning er dette?" }, "mappings": [ { diff --git a/assets/themes/hackerspaces/hackerspaces.json b/assets/themes/hackerspaces/hackerspaces.json index 323001913..f6a9c59ec 100644 --- a/assets/themes/hackerspaces/hackerspaces.json +++ b/assets/themes/hackerspaces/hackerspaces.json @@ -7,7 +7,8 @@ "ru": "Хакерспейсы", "zh_Hant": "駭客空間", "hu": "Hackerspace-ek", - "nl": "Hackerspaces" + "nl": "Hackerspaces", + "fr": "Ateliers numériques ouvertS" }, "shortDescription": { "en": "A map of hackerspaces", @@ -15,7 +16,8 @@ "it": "Una cartina degli hackerspace", "zh_Hant": "駭客空間的地圖", "hu": "Hackerspace-ek térképe", - "nl": "Een kaart van hackerspaces" + "nl": "Een kaart van hackerspaces", + "fr": "Une carte des ateliers numériques ouverts" }, "description": { "en": "On this map you can see hackerspaces, add a new hackerspace or update data directly", @@ -23,7 +25,8 @@ "it": "Su questa cartina è possibile vedere gli hackerspace, aggiungerne di nuovi o aggiornare le informazioni tutto in maniera pratica", "zh_Hant": "在這份地圖上你可以看到駭客空間,新增或直接更新資料", "hu": "Ezen a térképen hackerspace-ek láthatók, új hackerspace-eket lehet fölrajzolni vagy meglévők adatait frissíteni", - "nl": "Op deze kaart kan je hackerspaces zien, toevoegen en updaten" + "nl": "Op deze kaart kan je hackerspaces zien, toevoegen en updaten", + "fr": "Retrouvez, renseignez ou modifiez des ateliers numériques ouverts" }, "maintainer": "", "icon": "./assets/themes/hackerspaces/glider.svg", diff --git a/assets/themes/hailhydrant/hailhydrant.json b/assets/themes/hailhydrant/hailhydrant.json index b952f35e3..8c4290e2c 100644 --- a/assets/themes/hailhydrant/hailhydrant.json +++ b/assets/themes/hailhydrant/hailhydrant.json @@ -5,7 +5,7 @@ "ja": "消火栓、消火器、消防署、救急ステーションです。", "zh_Hant": "消防栓、滅火器、消防隊、以及急救站。", "ru": "Пожарные гидранты, огнетушители, пожарные станции и станции скорой помощи.", - "fr": "Bornes incendies, extincteurs, casernes de pompiers et ambulanciers.", + "fr": "Bornes incendies, extincteurs, casernes de pompiers et ambulanciers", "it": "Idranti, estintori, caserme dei vigili del fuoco e stazioni delle ambulanze.", "nb_NO": "Hydranter, brannslukkere, brannstasjoner, og ambulansestasjoner.", "de": "Hydranten, Feuerlöscher, Feuerwachen und Rettungswachen", @@ -31,7 +31,7 @@ "en": "On this map you can find and update hydrants, fire stations, ambulance stations, and extinguishers in your favorite neighborhoods.\n\nYou can track your precise location (mobile only) and select layers that are relevant for you in the bottom left corner. You can also use this tool to add or edit pins (points of interest) to the map and provide additional details by answering available questions.\n\nAll changes you make will automatically be saved in the global database of OpenStreetMap and can be freely re-used by others.", "ja": "このマップでは、お気に入りの近隣にある消火栓、消防署、救急ステーション、消火器を検索して更新できます。\n\n正確な位置を追跡し(モバイルのみ)、左下コーナーで関連するレイヤを選択できます。このツールを使用して、マップにピン(注視点)を追加または編集したり、利用可能な質問に答えることによって追加の詳細を提供することもできます。\n\nすべての変更は自動的にOpenStreetMapのグローバルデータベースに保存され、他のユーザが自由に再利用できます。", "zh_Hant": "在這份地圖上面你可以在你喜愛的社區尋找與更新消防栓、消防隊、急救站與滅火器。\n\n你可以追蹤確切位置 (只有行動版) 以及在左下角選擇與你相關的圖層。你也可以使用這工具新增或編輯地圖上的釘子 (興趣點),以及透過回答一些問題提供額外的資訊。\n\n所有你做出的變動都會自動存到開放街圖這個全球資料庫,而且能自由讓其他人取用。", - "fr": "Sur cette carte on trouve et met à jour les bornes incendies, extincteurs, casernes de pompiers et ambulanciers dans son quartier.
Les options en haut à gauche permettent de localiser sa position (sur téléphone) et de filtrer les éléments. Il est possible d’utiliser cet outil pour ajouter et éditer les points d’intérêt de la carte et d’y ajouter des détails en répondant aux questions.
Toutes les modifications sont automatiquement enregistrées dans la base de données OpenStreetMap et peuvent êtres librement réutilisées par d’autres.", + "fr": "Sur cette carte on trouve et met à jour les bornes incendies, extincteurs, casernes de pompiers et ambulanciers dans son quartier.\n\nLes options en haut à gauche permettent de localiser sa position (sur téléphone) et de filtrer les éléments. Il est possible d’utiliser cet outil pour ajouter et éditer les points d’intérêt de la carte et d’y ajouter des détails en répondant aux questions.\n\nToutes les modifications sont automatiquement enregistrées dans la base de données OpenStreetMap et peuvent êtres librement réutilisées par d’autres.", "de": "Auf dieser Karte können Sie Hydranten, Feuerwachen, Krankenwagen und Feuerlöscher in Ihren bevorzugten Stadtvierteln finden und aktualisieren.\n\nSie können Ihren genauen Standort verfolgen (nur mobil) und in der unteren linken Ecke die für Sie relevanten Ebenen auswählen. Sie können mit diesem Tool auch Pins (Points of Interest) zur Karte hinzufügen oder bearbeiten und durch die Beantwortung verfügbarer Fragen zusätzliche Angaben machen.\n\nAlle von Ihnen vorgenommenen Änderungen werden automatisch in der globalen Datenbank von OpenStreetMap gespeichert und können von anderen frei weiterverwendet werden.", "it": "In questa cartina puoi vedere e aggiornare idranti, stazioni dei pompieri, stazioni delle ambulanze ed estintori del tuo quartiere preferito.\n\nPuoi seguire la tua posizione precisa (solo su cellulare) e selezionare i livelli che ti interessano nell’angolo in basso a sinistra. Puoi anche usare questo strumento per aggiungere o modificare i PDI sulla mappa e fornire ulteriori dettagli rispondendo alle domande.\n\nTutte le modifiche che farai verranno automaticamente salvate nel database globale di OpenStreetMap e potranno essere riutilizzate liberamente da tutti.", "hu": "Ezen a térképen tűzcsapokat, tűzoltóállomásokat, mentőállomásokat és tűzoltóállomásokat találhat és szerkeszthet kedvenc városrészeiben (vagy másutt).\n\nA bal alsó sarokban nyomon követheti pontos tartózkodási helyét (csak mobilon), és kiválaszthatja az Ön számára releváns rétegeket. Ezzel az eszközzel gombostűket (érdekes pontokat, POI-kat) is szerkeszthet vagy felrajzolhat a térképre, a rendelkezésre álló kérdések megválaszolásával pedig további részleteket adhat meg.\n\nAz Ön által elvégzett módosítások automatikusan elmentődnek az OpenStreetMap globális adatbázisában, és mások szabadon újra felhasználhatják azokat.", diff --git a/assets/themes/mapcomplete-changes/mapcomplete-changes.json b/assets/themes/mapcomplete-changes/mapcomplete-changes.json index c909ddf2e..996bd4deb 100644 --- a/assets/themes/mapcomplete-changes/mapcomplete-changes.json +++ b/assets/themes/mapcomplete-changes/mapcomplete-changes.json @@ -1,24 +1,13 @@ { "id": "mapcomplete-changes", "title": { - "en": "Changes made with MapComplete", - "de": "Änderungen mit MapComplete", - "es": "Cambios hechos con MapComplete", - "nb_NO": "Endringer utført med MapComplete", - "nl": "Wijzigingen gemaakt met MapComplete" + "en": "Changes made with MapComplete" }, "shortDescription": { - "en": "Shows changes made by MapComplete", - "de": "Zeigt Änderungen von MapComplete", - "es": "Muestra los cambios hechos por MapComplete", - "nb_NO": "Vis endringer utført med MapComplete", - "nl": "Toont wijzigingen gemaakt met MapComplete" + "en": "Shows changes made by MapComplete" }, "description": { - "en": "This maps shows all the changes made with MapComplete", - "de": "Diese Karte zeigt alle Änderungen die mit MapComplete gemacht wurden", - "es": "Este mapa muestra todos los cambios hechos con MapComplete", - "nl": "Deze kaart toont alle wijzigingen die met MapComplete werden gemaakt" + "en": "This maps shows all the changes made with MapComplete" }, "maintainer": "", "icon": "./assets/svg/logo.svg", @@ -33,10 +22,7 @@ { "id": "mapcomplete-changes", "name": { - "en": "Changeset centers", - "de": "Schwerpunkte von Änderungssätzen", - "es": "Centros de conjuntos de cambios", - "nb_NO": "Endringssettsenter" + "en": "Changeset centers" }, "minzoom": 0, "source": { @@ -50,55 +36,35 @@ ], "title": { "render": { - "en": "Changeset for {theme}", - "de": "Änderungen für {theme}", - "es": "Conjunto de cambios para {theme}", - "nb_NO": "Endringssett for {theme}", - "nl": "Wijzigingset voor {theme}" + "en": "Changeset for {theme}" } }, "description": { - "en": "Shows all MapComplete changes", - "de": "Zeigt alle MapComplete Änderungen", - "es": "Muestra todos los cambios de MapComplete", - "nl": "Toont alle wijzigingen met MapComplete" + "en": "Shows all MapComplete changes" }, "tagRenderings": [ { "id": "render_id", "render": { - "en": "Changeset {id}", - "de": "Änderung {id}", - "es": "Conjunto de cambios {id}", - "nb_NO": "Endringssett {id}", - "nl": "Wijzigingset {id}" + "en": "Changeset {id}" } }, { "id": "contributor", "render": { - "en": "Change made by {_last_edit:contributor}", - "de": "Änderung wurde von {_last_edit:contributor} gemacht", - "es": "Cambio hecho por {_last_edit:contributor}", - "nl": "Wijziging gemaakt door {_last_edit:contributor}" + "en": "Change made by {_last_edit:contributor}" } }, { "id": "theme", "render": { - "en": "Change with theme {theme}", - "de": "Änderung mit Thema {theme}", - "es": "Cambio con tema {theme}", - "nl": "Wijziging met thema {theme}" + "en": "Change with theme {theme}" }, "mappings": [ { "if": "theme~http.*", "then": { - "en": "Change with unofficial theme {theme}", - "de": "Änderung mit inoffiziellem Thema {theme}", - "es": "Cambio con tema no oficial {theme}", - "nl": "Wijziging met officieus thema {theme}" + "en": "Change with unofficial theme {theme}" } } ] @@ -374,11 +340,7 @@ } ], "question": { - "en": "Themename contains {search}", - "de": "Themenname enthält {search}", - "es": "Nombre del tema contiene {search}", - "nb_NO": "Temanavn inneholder {search}", - "nl": "Themanaam bevat {search}" + "en": "Themename contains {search}" } } ] @@ -394,10 +356,7 @@ } ], "question": { - "en": "Made by contributor {search}", - "de": "Erstellt von {search}", - "es": "Hecho por contributor/a {search}", - "nl": "Gemaakt door bijdrager {search}" + "en": "Made by contributor {search}" } } ] @@ -413,10 +372,7 @@ } ], "question": { - "en": "Not made by contributor {search}", - "de": "Nicht erstellt von {search}", - "es": "No hecho por contributor/a {search}", - "nl": "Niet gemaakt door bijdrager {search}" + "en": "Not made by contributor {search}" } } ] @@ -431,10 +387,7 @@ { "id": "link_to_more", "render": { - "en": "More statistics can be found here", - "de": "Weitere Statistiken finden Sie hier", - "es": "Se pueden encontrar más estadísticas aquí", - "nl": "Meer statistieken kunnen hier gevonden worden" + "en": "More statistics can be found here" } }, { diff --git a/assets/themes/maxspeed/maxspeed.json b/assets/themes/maxspeed/maxspeed.json index 9b7edbf3a..6b032eedb 100644 --- a/assets/themes/maxspeed/maxspeed.json +++ b/assets/themes/maxspeed/maxspeed.json @@ -1,15 +1,21 @@ { "id": "maxspeed", "title": { + "en": "Maxspeed", "es": "Velocidad", "ca": "Velocitat", - "en": "Maxspeed" + "de": "Höchstgeschwindigkeit", + "fr": "Vitesse maximale" }, "shortDescription": { - "en": "This map shows the legally allowed maximum speed on every road." + "en": "This map shows the legally allowed maximum speed on every road.", + "de": "Diese Karte zeigt die zulässige Höchstgeschwindigkeit auf jeder Straße.", + "fr": "Cette carte montre la vitesse maximale autorisée sur les routes." }, "description": { - "en": "This map shows the legally allowed maximum speed on every road. If a maxspeed is missing or wrong, you can correct it here." + "en": "This map shows the legally allowed maximum speed on every road. If a maxspeed is missing or wrong, you can correct it here.", + "de": "Diese Karte zeigt die zulässige Höchstgeschwindigkeit auf jeder Straße. Wenn eine Höchstgeschwindigkeit fehlt oder falsch ist, können Sie dies hier korrigieren.", + "fr": "Cette carte montre la vitesse maximale autorisée sur les routes. Si la vitesse maximale est manquante ou erronée, vous pouvez la corriger ici." }, "maintainer": "", "icon": "./assets/themes/maxspeed/maxspeed_logo.svg", diff --git a/assets/themes/nature/nature.json b/assets/themes/nature/nature.json index 86b6da9dc..9f74159bd 100644 --- a/assets/themes/nature/nature.json +++ b/assets/themes/nature/nature.json @@ -4,19 +4,22 @@ "en": "Into nature", "nl": "De natuur in", "de": "In die Natur", - "ca": "A la natura" + "ca": "A la natura", + "fr": "Dans la nature" }, "shortDescription": { "en": "A map for nature lovers, with interesting POI's", "nl": "Deze kaart bevat informatie voor natuurliefhebbers", "de": "Eine Karte mit interessanten Orten für Naturliebhaber", - "es": "Un mapa para amantes de la naturaleza, con PDIs interesantes" + "es": "Un mapa para amantes de la naturaleza, con PDIs interesantes", + "fr": "Une carte pour les amoureux de la nature" }, "description": { "en": "On this map, one can find interesting infromation for tourists and nature lovers, such as ", "nl": "Op deze kaart vind je informatie voor natuurliefhebbers, zoals info over het natuurgebied waar je inzit, vogelkijkhutten, informatieborden, ...", "de": "Auf dieser Karte findet man interessante Informationen für Touristen und Naturliebhaber. ", - "es": "En este mapa, uno puede encontrar información interesante para turistas y amantes de la naturaleza, como " + "es": "En este mapa, uno puede encontrar información interesante para turistas y amantes de la naturaleza, como ", + "fr": "Retrouvez sur cette carte des informations pour les touristes et les amoureux de la nature, telles que " }, "maintainer": "", "icon": "./assets/themes/nature/logo.svg", diff --git a/assets/themes/notes/notes.json b/assets/themes/notes/notes.json index 85b2759d0..e1817b50e 100644 --- a/assets/themes/notes/notes.json +++ b/assets/themes/notes/notes.json @@ -11,7 +11,8 @@ "de": "Notizen von OpenStreetMap", "ca": "Notes a OpenStreetMap", "es": "Notas en OpenStreetMap", - "nb_NO": "Notater på OpenStreetMap" + "nb_NO": "Notater på OpenStreetMap", + "fr": "Notes sur OpenStreetMap" }, "version": "0.1", "description": { @@ -19,7 +20,8 @@ "hu": "A jegyzet egy gombostű a térképen egy szöveggel, amely azt jelzi, hogy valami nem stimmel.

Felhasználók vagy szövegek kereséséhez nézd meg a szűrő nézetet.", "nl": "Een kaartnota bevat tekst op een specifieke locatie om aan te duiden dat er iets mis is of ontbreekt.

Bekijk ook het filtermenu om de notas te filteren op tekst, gebruiker, datum, ...", "de": "Eine Notiz enthält eine Fehlerbeschreibung und ist als Stecknadel auf der Karte sichtbar.

In der Ebenenauswahl kann nach Ersteller, Bearbeiter und Text gesucht werden.", - "es": "Una nota es un pin en el mapa con algún texto para indicar algo erróneo.

Asegúrate de comprobar la vista de filtros para buscar usuarios y texto." + "es": "Una nota es un pin en el mapa con algún texto para indicar algo erróneo.

Asegúrate de comprobar la vista de filtros para buscar usuarios y texto.", + "fr": "Une note est une épingle sur la carte avec du text pour indiquer une erreur.

Assurez-vous d’utiliser le filtre pour chercher des utilisateurs and du texte." }, "icon": "./assets/themes/notes/logo.svg", "clustering": false, diff --git a/assets/themes/observation_towers/observation_towers.json b/assets/themes/observation_towers/observation_towers.json index 5ee8ef041..912845339 100644 --- a/assets/themes/observation_towers/observation_towers.json +++ b/assets/themes/observation_towers/observation_towers.json @@ -9,7 +9,9 @@ "zh_Hant": "觀景塔", "hu": "Kilátótornyok", "ca": "Torres d'observació", - "es": "Torres de observación" + "es": "Torres de observación", + "fr": "Tours d’observation", + "nb_NO": "Observasjonstårn" }, "shortDescription": { "en": "Publicly accessible towers to enjoy the view", @@ -18,7 +20,9 @@ "it": "Torri pubblicamente accessibili per godere della vista", "zh_Hant": "開發可及能觀景的高塔", "hu": "Nyilvános tornyok, hogy gyönyörködhessünk a kilátásban", - "es": "Torres accesibles públicamente para disfrutar de la vista" + "es": "Torres accesibles públicamente para disfrutar de la vista", + "fr": "Tours libres d’accès pour admirer la vue", + "nb_NO": "Offentlig tilgjengelige tårn for å nyte utsikten" }, "description": { "nl": "Publieke uitkijktorens om van het panorama te genieten", @@ -27,7 +31,9 @@ "it": "Torri pubblicamente accessibili per godere della vista", "zh_Hant": "開放可及能觀景的高塔", "hu": "Nyilvános tornyok, hogy gyönyörködhessünk a kilátásban", - "es": "Torres accesibles públicamente para disfrutar de la vista" + "es": "Torres accesibles públicamente para disfrutar de la vista", + "fr": "Tours libres d’accès pour admirer la vue", + "nb_NO": "Offentlig tilgjengelige tårn for å nyte utsikten" }, "maintainer": "", "icon": "./assets/layers/observation_tower/Tower_observation.svg", diff --git a/assets/themes/parkings/parkings.json b/assets/themes/parkings/parkings.json index 1a09bd0bb..4a03f647b 100644 --- a/assets/themes/parkings/parkings.json +++ b/assets/themes/parkings/parkings.json @@ -1,8 +1,8 @@ { "id": "parkings", "title": { - "nl": "Parking", "en": "Parking", + "nl": "Parking", "de": "Parkplatzkarte", "it": "Parcheggio", "nb_NO": "Parkering", @@ -22,7 +22,8 @@ "zh_Hant": "這地圖顯示不同的停車空間", "id": "Peta ini menunjukkan tempat parkir yang berbeda", "hu": "Ez a térkép különböző parkolókat jelenít meg", - "es": "Este mapa muestra diferentes puntos de aparcamiento" + "es": "Este mapa muestra diferentes puntos de aparcamiento", + "fr": "Cette montre les emplacements de parking" }, "description": { "nl": "Deze kaart toont verschillende parkeerplekken", @@ -33,7 +34,8 @@ "id": "Peta ini menunjukkan tempat parkir yang berbeda", "hu": "Ez a térkép különböző parkolókat jelenít meg", "fr": "Cette carte affiche différents lieux de stationnement", - "es": "Este mapa muestra diferentes puntos de aparcamiento" + "es": "Este mapa muestra diferentes puntos de aparcamiento", + "nb_NO": "Forskjellige parkeringsplasser" }, "maintainer": "", "icon": "./assets/themes/parkings/parkings.svg", diff --git a/assets/themes/personal/personal.json b/assets/themes/personal/personal.json index 738729787..d467f9448 100644 --- a/assets/themes/personal/personal.json +++ b/assets/themes/personal/personal.json @@ -20,7 +20,7 @@ "es": "Crea una interficie basada en todas las capas disponibles de todas las interficies", "ca": "Crea una interfície basada en totes les capes disponibles de totes les interfícies", "gl": "Crea un tema baseado en todas as capas dispoñíbeis de todos os temas", - "fr": "Crée un thème personnalisé basé sur toutes les couches disponibles de tous les thèmes", + "fr": "Créez un thème personnalisé basé sur toutes les couches disponibles de tous les thèmes. Pour afficher des données, ouvrez la sélection de couches", "de": "Stellen Sie Ihr persönliches Thema zusammen, das auf bereits verfügbaren Ebenen aller Themen basiert. Um diese anzuzeigen, öffnen Sie die Ebenenauswahl", "ja": "すべてのテーマの使用可能なすべてのレイヤーに基づいて個人用テーマを作成する", "zh_Hant": "從所有可用的主題圖層創建個人化主題", diff --git a/assets/themes/pets/pets.json b/assets/themes/pets/pets.json index 1cac3dbd5..6f4e1da85 100644 --- a/assets/themes/pets/pets.json +++ b/assets/themes/pets/pets.json @@ -6,13 +6,15 @@ "en": "Veterinarians, dog parks and other pet-amenities", "da": "hundesteder", "de": "Tierärzte, Hundeparks und andere Einrichtungen für Haustiere", - "nl": "Dierenartsen, hondenloopzones en andere huisdiervriendelijke plaatsen" + "nl": "Dierenartsen, hondenloopzones en andere huisdiervriendelijke plaatsen", + "fr": "Vétérinaires, parcs à chiens et autres endroits pour chiens" }, "description": { "en": "On this map, you'll find various interesting places for you pets: veterinarians, dog parks, pet shops, dog-friendly restaurants, ...", "da": "Hundsteder", "de": "Diese Karte zeigt interessante Orte für Haustierbesitzer: Tierärzte, Hundeparks, Tiergeschäfte, hundefreundliche Restaurants, ...", - "nl": "Deze kaart helpt je op weg met je huisdier: dierenartsen, hondenloopzones, dierenwinkels, hondenvriendelijke restaurants, ..." + "nl": "Deze kaart helpt je op weg met je huisdier: dierenartsen, hondenloopzones, dierenwinkels, hondenvriendelijke restaurants, ...", + "fr": "Retrouvez sur cette carte des points d’intérêts pour votre animal : vétérinaires, parcs à chien, animaleries, restaurants acceptant les chiens, etc." }, "icon": "./assets/layers/dogpark/dog-park.svg", "startZoom": 10, @@ -29,7 +31,8 @@ "da": "Hundevenlige madsteder", "de": "Hundefreundliche Restaurants", "nb_NO": "Hundevennlige spisesteder", - "nl": "Hondvriendelijke eetgelegenheden" + "nl": "Hondvriendelijke eetgelegenheden", + "fr": "Restaurants acceptant les chiens" }, "mapRendering": [ { @@ -73,7 +76,8 @@ "da": "hundevenlig butik", "de": "Hundefreundliche Geschäfte", "nb_NO": "Hundevennlige butikker", - "nl": "Hondvriendelijke winkels" + "nl": "Hondvriendelijke winkels", + "fr": "Magasins acceptant les chiens" }, "title": { "render": { @@ -81,7 +85,8 @@ "da": "hundevenlig butik", "de": "Hundefreundliche Geschäfte", "nb_NO": "Hundevennlige butikker", - "nl": "Hondvriendelijke winkels" + "nl": "Hondvriendelijke winkels", + "fr": "Magasins acceptant les chiens" }, "mappings": [ { @@ -172,7 +177,8 @@ "da": "EN hundevenlig butik", "de": "hundefreundliches Geschäft", "nb_NO": "hundevennlig butikk", - "nl": "Hondvriendelijke winkels" + "nl": "Hondvriendelijke winkels", + "fr": "magasin acceptant les chiens" }, "tags": [ "dog=yes", @@ -182,7 +188,8 @@ "en": "A shop where you can bring a dog almost everywhere", "da": "En butik hvor man kan tage en hund med næsten overalt", "de": "Ein Geschäft, in das man Hunde fast überall mitnehmen kann", - "nl": "Een winkel waar je je hond in bijna heel de winkel mag meenemen" + "nl": "Een winkel waar je je hond in bijna heel de winkel mag meenemen", + "fr": "Un magasin où vous pouvez amener votre chien presque partout" } } ], diff --git a/assets/themes/playgrounds/playgrounds.json b/assets/themes/playgrounds/playgrounds.json index 7c0ca27df..064027389 100644 --- a/assets/themes/playgrounds/playgrounds.json +++ b/assets/themes/playgrounds/playgrounds.json @@ -1,8 +1,8 @@ { "id": "playgrounds", "title": { - "nl": "Speelplekken", "en": "Playgrounds", + "nl": "Speelplekken", "fr": "Aires de jeux", "ja": "遊び場", "zh_Hant": "遊樂場", diff --git a/assets/themes/postal_codes/postal_codes.json b/assets/themes/postal_codes/postal_codes.json index 56333dc0c..dfbbd1722 100644 --- a/assets/themes/postal_codes/postal_codes.json +++ b/assets/themes/postal_codes/postal_codes.json @@ -8,7 +8,8 @@ "ca": "Codis postals", "es": "Códigos postales", "nb_NO": "Postkoder", - "nl": "Postcodes" + "nl": "Postcodes", + "fr": "Codes postaux" }, "shortDescription": { "en": "Postal codes", @@ -18,7 +19,8 @@ "ca": "Codis postals", "es": "Códigos postales", "nb_NO": "Postkoder", - "nl": "Postcodes" + "nl": "Postcodes", + "fr": "Codes postaux" }, "description": { "en": "Postal codes", @@ -27,7 +29,8 @@ "de": "Postleitzahlen", "ca": "Codis postals", "es": "Códigos postales", - "nl": "Postcodes" + "nl": "Postcodes", + "fr": "Codes postaux" }, "maintainer": "", "icon": "./assets/themes/postal_codes/townhall.svg", @@ -50,7 +53,8 @@ "ca": "codis postals", "es": "códigos postales", "nb_NO": "postkoder", - "nl": "postcodes" + "nl": "postcodes", + "fr": "codes postaux" }, "minzoom": 8, "title": { @@ -61,7 +65,8 @@ "de": "Postleitzahl {postal_code}", "es": "Código postal {postal_code}", "nb_NO": "Postkode {postal_code}", - "nl": "Postcode {postal_code}" + "nl": "Postcode {postal_code}", + "fr": "Code postal {postal_code}" } }, "description": {}, @@ -74,7 +79,9 @@ "hu": "Irányítószám: {postal_code}", "de": "Die Postleitzahl lautet {postal_code}", "es": "El código postal es {postal_code}", - "nl": "Deze postcode is {postal_code}" + "nl": "Deze postcode is {postal_code}", + "fr": "Le code postal est {postal_code}", + "nb_NO": "Postnummeret er {postal_code}" } } ], @@ -146,7 +153,9 @@ "hu": "polgármesteri hivatalok", "de": "Rathäuser", "ca": "ajuntaments", - "nl": "stadhuizen" + "nl": "stadhuizen", + "fr": "mairies", + "nb_NO": "rådhus" }, "minzoom": 12, "title": { @@ -155,7 +164,8 @@ "id": "Balai kota {name}", "hu": "{name} városháza", "de": "Rathaus {name}", - "nl": "Stadhuis {name}" + "nl": "Stadhuis {name}", + "fr": "Mairie {name}" } }, "calculatedTags": [ diff --git a/assets/themes/postboxes/postboxes.json b/assets/themes/postboxes/postboxes.json index a26d3936b..95045bbed 100644 --- a/assets/themes/postboxes/postboxes.json +++ b/assets/themes/postboxes/postboxes.json @@ -7,7 +7,8 @@ "it": "Buche delle lettere e uffici postali", "zh_Hant": "郵筒與郵局地圖", "hu": "Posta- és postaládatérkép", - "nl": "Brievenbussen en postkantoren" + "nl": "Brievenbussen en postkantoren", + "fr": "Carte des Bureaux de Poste et Boîtes à Lettres" }, "shortDescription": { "en": "A map showing postboxes and post offices", @@ -16,7 +17,9 @@ "zh_Hant": "顯示郵筒與郵局的地圖", "hu": "Posták és postaládák térképe", "es": "Un mapa que muestra buzones y oficinas de correo", - "nl": "Een kaart die brievenbussen en postkantoren toont" + "nl": "Een kaart die brievenbussen en postkantoren toont", + "fr": "Une carte des bureaux de poste et des boîtes à lettres", + "nb_NO": "Postbokser og postkontor" }, "description": { "en": "On this map you can find and add data of post offices and post boxes. You can use this map to find where you can mail your next postcard! :)
Spotted an error or is a post box missing? You can edit this map with a free OpenStreetMap account. ", @@ -25,7 +28,8 @@ "hu": "Ezen a térképen postahivatalok és postaládák adatait találod és egészítheted ki. Utánanézhetsz, hogy hol adhatod fel a következő képeslapodat! :)
Hibát találtál, vagy hiányzik egy postaláda? Ezt a térképet mindössze egy ingyenes OpenStreetMap-fiókkal szerkesztheted. ", "de": "Auf dieser Karte können Sie Daten von Poststellen und Briefkästen finden und ergänzen. Sie können diese Karte nutzen, um herauszufinden, wo Sie Ihre nächste Postkarte versenden können :)
Haben Sie einen Fehler entdeckt oder fehlt ein Briefkasten? Sie können die Kartenddaten mit einem kostenlosen OpenStreetMap-Konto bearbeiten. ", "es": "En este mapa puedes encontrar y añadir datos de oficinas de correo y buzones de correo. ¡Puedes utilizar este mapa para encontrar donde puedes enviar tu próxima postal! :)
¿Has encontrado un error o algo que falta? Puedes editar este mapa con una cuenta de OpenStreetMap gratuíta. ", - "nl": "Op deze kaart kan je informatie over brievenbussen en postkantoren vinden en toevoegen. Je kan deze kaart gebruiken om te achterhalen waar je je volgende postkaart naar kan sturen! :)
Zie je een fout of ontbreekt een brievenbus? Dan kan je deze kaart aanpassen met een gratis OpenStreetMap account. " + "nl": "Op deze kaart kan je informatie over brievenbussen en postkantoren vinden en toevoegen. Je kan deze kaart gebruiken om te achterhalen waar je je volgende postkaart naar kan sturen! :)
Zie je een fout of ontbreekt een brievenbus? Dan kan je deze kaart aanpassen met een gratis OpenStreetMap account. ", + "fr": "Trouvez et ajoutez des bureaux de poste et boîtes à lettres sur cette carte. Utilisez cette carte où vous pouvez envoyer vos cartes postales ! :)
Vous avez trouvez une erreur ou une boîte à lettres est manquante ? Vous pouvez modifier cette carte avec un compte OpenStreetMap gratuit. " }, "maintainer": "nicolelaine", "icon": "./assets/themes/postboxes/postbox.svg", @@ -52,7 +56,8 @@ "nl": "Brievenbussen", "ca": "Bústies", "es": "Buzones de correo", - "nb_NO": "Postbokser" + "nb_NO": "Postbokser", + "fr": "Boîtes à lettres" }, "minzoom": 12, "source": { @@ -69,7 +74,8 @@ "nl": "Brievenbus", "ca": "Bústia", "es": "Buzón de correo", - "nb_NO": "Postboks" + "nb_NO": "Postboks", + "fr": "Boîte à lettres" } }, "description": { @@ -79,7 +85,8 @@ "id": "Layer yang memperlihatkan kotak pos.", "hu": "A postaládákat megjelenítő réteg.", "nl": "Deze laag toont brievenbussen.", - "es": "La capa que muestra buzones de correo." + "es": "La capa que muestra buzones de correo.", + "fr": "Le calque montrant les boîtes à lettres." }, "tagRenderings": [ "images", @@ -102,7 +109,8 @@ "hu": "postaláda", "nl": "een brievenbus", "ca": "una bústia", - "es": "un buzón de correo" + "es": "un buzón de correo", + "fr": "une boîte à lettres" } } ], @@ -148,7 +156,9 @@ "hu": "Posták", "nl": "Postkantoren", "ca": "Oficines de correus", - "es": "Oficinas de correo" + "es": "Oficinas de correo", + "fr": "Bureaux de poste", + "nb_NO": "Postkontor" }, "minzoom": 12, "source": { @@ -164,7 +174,9 @@ "hu": "Posta", "nl": "Postkantoor", "ca": "Oficina de correus", - "es": "Oficina de Correo" + "es": "Oficina de Correo", + "fr": "Bureau de poste", + "nb_NO": "Postkontor" } }, "description": { @@ -174,7 +186,9 @@ "id": "Layer yang menunjukkan kantor pos.", "hu": "Postákat megjelenítő réteg.", "nl": "Een laag die postkantoren toont.", - "es": "Una capa que muestra oficinas de correo." + "es": "Una capa que muestra oficinas de correo.", + "fr": "Un claque montrant les bureaux de poste.", + "nb_NO": "Et lag som viser postkontor." }, "tagRenderings": [ "images", @@ -192,7 +206,8 @@ "de": "Öffnungszeiten: {opening_hours_table()}", "es": "Horas de Apertura: {opening_hours_table()}", "nb_NO": "Åpningstider: {opening_hours_table()}", - "nl": "Openingsuren: {opening_hours_table()}" + "nl": "Openingsuren: {opening_hours_table()}", + "fr": "Heures d’ouverture : {opening_hours_table()}" }, "freeform": { "key": "opening_hours", @@ -205,7 +220,8 @@ "hu": "Mikor van nyitva ez a posta?", "de": "Wie sind die Öffnungszeiten dieser Poststelle?", "es": "¿Cuáles son las horas de apertura para esta oficina de correos?", - "nl": "Wat zijn de openingsuren voor dit postkantoor?" + "nl": "Wat zijn de openingsuren voor dit postkantoor?", + "fr": "Quelles sont les heures d’ouverture de ce bureau de poste ?" }, "mappings": [ { @@ -217,7 +233,9 @@ "id": "Buka 24 jam (termasuk hari libur)", "hu": "Éjjel-nappal nyitva (munkaszüneti napokon is)", "es": "Abierta 24/7 (incluyendo festivos)", - "nl": "24/7 open (ook tijdens feestdagen)" + "nl": "24/7 open (ook tijdens feestdagen)", + "fr": "Ouvert 24h/24 (jours fériés compris)", + "nb_NO": "Døgnåpent (inkludert helligdager)" } } ], @@ -239,7 +257,8 @@ "nl": "een postkantoor", "ca": "una oficina de correus", "es": "una oficina de correo", - "nb_NO": "et postkontor" + "nb_NO": "et postkontor", + "fr": "un bureau de poste" } } ], @@ -256,7 +275,8 @@ "hu": "Most nyitva", "nl": "Momenteel geopend", "ca": "Actualment obert", - "es": "Actualmente abierta" + "es": "Actualmente abierta", + "fr": "Ouvert actuellement" }, "osmTags": "_isOpen=yes" } diff --git a/assets/themes/shops/shops.json b/assets/themes/shops/shops.json index cf1a237bd..7c30d980c 100644 --- a/assets/themes/shops/shops.json +++ b/assets/themes/shops/shops.json @@ -25,7 +25,7 @@ }, "description": { "en": "On this map, one can mark basic information about shops, add opening hours and phone numbers", - "fr": "Sur cette carte, vous pouvez ajouter des informations sur les magasins, horaires d'ouverture et numéro de téléphone", + "fr": "Sur cette carte, vous pouvez ajouter des informations sur les magasins, leurs horaires d'ouverture et leurs numéros de téléphone", "ja": "この地図には店の基本情報を記入したり営業時間や電話番号を追加することができます", "zh_Hant": "這份地圖上,你可以標記商家基本資訊,新增營業時間以及聯絡電話", "de": "Auf dieser Karte kann man grundlegende Informationen über Geschäfte markieren, Öffnungszeiten und Telefonnummern hinzufügen", diff --git a/assets/themes/sidewalks/sidewalks.json b/assets/themes/sidewalks/sidewalks.json index 918d09bf5..262fff716 100644 --- a/assets/themes/sidewalks/sidewalks.json +++ b/assets/themes/sidewalks/sidewalks.json @@ -6,14 +6,17 @@ "nl": "Voetpaden", "de": "Gehwege", "ca": "Voreres", - "es": "Aceras" + "es": "Aceras", + "fr": "Trottoirs", + "nb_NO": "Fortau" }, "shortDescription": { "en": "Sidewalk mapping", "ca": "Mapejat de voreres", "de": "Kartierung von Bürgersteigen", "es": "Mapeo de aceras", - "nl": "Voetpaden in kaart brengen" + "nl": "Voetpaden in kaart brengen", + "fr": "Cartographier des trottoirs" }, "description": { "en": "Experimental theme", @@ -21,7 +24,9 @@ "ca": "Petició experimental", "de": "Experimentelles Thema", "es": "Tema experimental", - "nl": "Experimenteel thema" + "nl": "Experimenteel thema", + "fr": "Thème expérimental", + "nb_NO": "Eksperimentelt tema" }, "maintainer": "", "icon": "./assets/svg/bug.svg", @@ -41,7 +46,8 @@ "ca": "Voreres", "es": "Aceras", "nb_NO": "Fortau", - "nl": "Voetpaden" + "nl": "Voetpaden", + "fr": "Trottoirs" }, "minzoom": 12, "source": { @@ -61,7 +67,8 @@ "de": "{name}", "ca": "{name}", "es": "{name}", - "nl": "{name}" + "nl": "{name}", + "fr": "{name}" }, "mappings": [ { @@ -74,7 +81,8 @@ "en": "Layer showing sidewalks of highways", "de": "Ebene mit Bürgersteigen", "es": "Una capa que muestra aceras de autovías", - "nl": "Laag die voetpaden naast wegen toont" + "nl": "Laag die voetpaden naast wegen toont", + "fr": "Calque montrant les trottoirs" }, "tagRenderings": [ { @@ -83,7 +91,9 @@ "en": "This street is named {name}", "de": "Diese Straße heißt {name}", "es": "Esta calle se llama {name}", - "nl": "Deze straat heet {name}" + "nl": "Deze straat heet {name}", + "fr": "Cette rue s’appelle {name}", + "nb_NO": "Denne gaten heter {name}" } }, { diff --git a/assets/themes/sport_pitches/sport_pitches.json b/assets/themes/sport_pitches/sport_pitches.json index 023f28af7..d2b7b4809 100644 --- a/assets/themes/sport_pitches/sport_pitches.json +++ b/assets/themes/sport_pitches/sport_pitches.json @@ -1,9 +1,9 @@ { "id": "sport_pitches", "title": { + "en": "Sport pitches", "nl": "Sportvelden", "fr": "Terrains de sport", - "en": "Sport pitches", "ja": "スポーツ競技場", "zh_Hant": "運動場地", "ru": "Спортивные площадки", diff --git a/assets/themes/street_lighting/street_lighting.json b/assets/themes/street_lighting/street_lighting.json index 77f877ca5..00d4f79b9 100644 --- a/assets/themes/street_lighting/street_lighting.json +++ b/assets/themes/street_lighting/street_lighting.json @@ -9,7 +9,9 @@ "zh_Hant": "道路照明", "hu": "Közvilágítás", "de": "Straßenbeleuchtung", - "ca": "Il·luminació als carrers" + "ca": "Il·luminació als carrers", + "fr": "Éclairage de Rue", + "nb_NO": "Gatebelysning" }, "description": { "en": "On this map you can find everything about street lighting", @@ -17,7 +19,8 @@ "zh_Hant": "在這份地圖你可以找到任何有關路燈的事情", "hu": "Ezen a térképen minden megtalálható, ami a közvilágítással kapcsolatos", "de": "Eine Karte für alles zum Thema Straßenbeleuchtung", - "es": "En este mapa puedes encontrar todo sobre la iluminación callejera" + "es": "En este mapa puedes encontrar todo sobre la iluminación callejera", + "fr": "Retrouvez tout ce qui touche à l’éclairage de rue sur cette carte" }, "icon": "./assets/layers/street_lamps/street_lamp.svg", "startZoom": 19, @@ -34,7 +37,9 @@ "hu": "Kivilágított utcák", "de": "Beleuchtete Straßen", "ca": "Il·luminació de carrers", - "es": "Calles iluminadas" + "es": "Calles iluminadas", + "fr": "Rues éclairées", + "nb_NO": "Belyste gater" }, "source": { "osmTags": { @@ -55,7 +60,9 @@ "hu": "Kivilágított utca", "de": "Beleuchtete Straße", "ca": "Il·luminació del carrer", - "es": "Calle iluminada" + "es": "Calle iluminada", + "fr": "Rue éclairée", + "nb_NO": "Belyst gate" }, "mappings": [ { @@ -80,7 +87,8 @@ "hu": "Ki van-e világítva ez az utca?", "de": "Ist diese Straße beleuchtet?", "es": "¿Está iluminada esta calle?", - "nb_NO": "Er denne gaten belyst?" + "nb_NO": "Er denne gaten belyst?", + "fr": "Cette est-elle éclairée ?" }, "mappings": [ { @@ -92,7 +100,8 @@ "hu": "Ezen az utcán van közvilágítás", "de": "Diese Straße ist beleuchtet", "es": "Esta calle está iluminada", - "nb_NO": "Denne gaten er belyst" + "nb_NO": "Denne gaten er belyst", + "fr": "Cette rue est éclairée" } }, { @@ -103,7 +112,8 @@ "zh_Hant": "這個道路沒有照明", "hu": "Ezen az utcán nincs közvilágítás", "de": "Diese Straße ist nicht beleuchtet", - "es": "Esta calle no está iluminada" + "es": "Esta calle no está iluminada", + "fr": "Cette rue n’est pas éclairée" } }, { @@ -115,7 +125,8 @@ "hu": "Ez az utca éjszaka ki van világítva", "de": "Diese Straße ist nachts beleuchtet", "es": "Esta calle está iluminada por la noche", - "nb_NO": "Denne gaten er belyst nattestid" + "nb_NO": "Denne gaten er belyst nattestid", + "fr": "Cette rue est éclairée la nuit" }, "hideInAnswer": true }, @@ -128,7 +139,8 @@ "hu": "Ez az utca éjjel-nappal ki van világítva", "de": "Diese Straße ist durchgehend beleuchtet", "es": "Esta calle está iluminada todo el día", - "nb_NO": "Denne gaten er belyst døgnet rundt" + "nb_NO": "Denne gaten er belyst døgnet rundt", + "fr": "Cette rue est éclairée en permanence" } } ] @@ -146,7 +158,9 @@ "hu": "Minden utca", "de": "Alle Straßen", "ca": "Tots els carrers", - "es": "Todas las calles" + "es": "Todas las calles", + "fr": "Toutes les rues", + "nb_NO": "Alle gater" }, "source": { "osmTags": { @@ -167,7 +181,8 @@ "hu": "Utca", "de": "Straße", "ca": "Carrer", - "nb_NO": "Gate" + "nb_NO": "Gate", + "fr": "Rue" }, "mappings": [ { @@ -199,7 +214,8 @@ "zh_Hant": "這道路有照明嗎?", "hu": "Ki van-e világítva ez az utca?", "de": "Ist diese Straße beleuchtet?", - "nb_NO": "Er denne gaten belyst?" + "nb_NO": "Er denne gaten belyst?", + "fr": "Cette rue est-elle éclairée ?" }, "mappings": [ { @@ -211,7 +227,8 @@ "hu": "Ez az utca ki van világítva", "de": "Diese Straße ist beleuchtet", "es": "Esta calle está iluminada", - "nb_NO": "Denne gaten er belyst" + "nb_NO": "Denne gaten er belyst", + "fr": "Cette rue est éclairée" } }, { @@ -223,7 +240,8 @@ "hu": "Ez az utca nincs kivilágítva", "de": "Diese Straße ist nicht beleuchtet", "es": "Esta calle no está iluminada", - "nb_NO": "Denne gaten er ikke belyst" + "nb_NO": "Denne gaten er ikke belyst", + "fr": "Cette rue n’est pas éclairée" } }, { @@ -234,7 +252,8 @@ "zh_Hant": "這道路晚上有照明", "hu": "Ez az utca éjjel ki van világítva", "de": "Diese Straße ist nachts beleuchtet", - "nb_NO": "Denne gaten er belyst nattestid" + "nb_NO": "Denne gaten er belyst nattestid", + "fr": "Cette rue est éclairée la nuit" }, "hideInAnswer": true }, @@ -246,7 +265,8 @@ "zh_Hant": "這道路 24/7 有照明", "hu": "Ez az utca éjjel-nappal ki van világítva", "de": "Diese Straße ist durchgehend beleuchtet", - "nb_NO": "Denne gaten er belyst døgnet rundt" + "nb_NO": "Denne gaten er belyst døgnet rundt", + "fr": "Cette rue est éclairée en permanence" } } ] diff --git a/assets/themes/surveillance/surveillance.json b/assets/themes/surveillance/surveillance.json index b723e4e0f..9795bd541 100644 --- a/assets/themes/surveillance/surveillance.json +++ b/assets/themes/surveillance/surveillance.json @@ -9,7 +9,8 @@ "de": "Überwachung unter Überwachung", "it": "Sorveglianza sotto controllo", "hu": "Megfigyelt térfigyelés", - "ca": "Vigilància sota vigilància" + "ca": "Vigilància sota vigilància", + "nb_NO": "Overvåkning under overvåkning" }, "shortDescription": { "en": "Surveillance cameras and other means of surveillance", diff --git a/assets/themes/trees/trees.json b/assets/themes/trees/trees.json index 393e0cadb..0ba47ea1f 100644 --- a/assets/themes/trees/trees.json +++ b/assets/themes/trees/trees.json @@ -1,8 +1,8 @@ { "id": "trees", "title": { - "nl": "Bomen", "en": "Trees", + "nl": "Bomen", "fr": "Arbres", "it": "Alberi", "ru": "Деревья", diff --git a/assets/themes/waste/waste.json b/assets/themes/waste/waste.json index c859e52c6..07787c566 100644 --- a/assets/themes/waste/waste.json +++ b/assets/themes/waste/waste.json @@ -7,12 +7,14 @@ "nl": "Afval", "de": "Abfall", "ca": "Brossa", - "nb_NO": "Avfall" + "nb_NO": "Avfall", + "fr": "Déchets" }, "description": { "en": "Map showing waste baskets and recycling facilities.", "nl": "Kaart met afvalbakken en recyclingfaciliteiten.", - "de": "Eine Karte mit Abfalleimern und Recyclingeinrichtungen." + "de": "Eine Karte mit Abfalleimern und Recyclingeinrichtungen.", + "fr": "Carte des poubelles et infrastructures de recyclage." }, "icon": "./assets/layers/recycling/recycling-14.svg", "startZoom": 19, diff --git a/assets/themes/waste_basket/waste_basket.json b/assets/themes/waste_basket/waste_basket.json index 2c5d9f3f0..425c522bc 100644 --- a/assets/themes/waste_basket/waste_basket.json +++ b/assets/themes/waste_basket/waste_basket.json @@ -8,7 +8,9 @@ "zh_Hant": "垃圾筒", "hu": "Kukatérkép", "id": "Keranjang Sampah", - "ca": "Papepera" + "ca": "Papepera", + "fr": "Poubelles", + "nb_NO": "Søppelkurv" }, "shortDescription": { "en": "A map with waste baskets", @@ -16,7 +18,9 @@ "de": "Eine Karte mit Abfalleimern", "it": "Una cartina dei cestini dei rifiuti", "zh_Hant": "垃圾筒的地圖", - "hu": "Szemeteskosarakat ábrázoló térkép" + "hu": "Szemeteskosarakat ábrázoló térkép", + "fr": "Une carte des poubelles", + "nb_NO": "Oversikt over søppelkurver" }, "description": { "en": "On this map, you'll find waste baskets near you. If a waste basket is missing on this map, you can add it yourself", @@ -24,7 +28,8 @@ "de": "Auf dieser Karte findest Du Abfalleimer in Deiner Nähe. Wenn ein Abfalleimer auf dieser Karte fehlt, kannst du ihn selbst hinzufügen", "it": "In questa cartina troverai i cestini dei rifiuti nei tuoi paraggi. Se manca un cestino, puoi inserirlo tu stesso", "zh_Hant": "在這份地圖當中,你可以找到你附近的垃圾筒。如果地圖有遺漏垃圾筒,你可以自己加上去", - "hu": "Ezen a térképen megtalálhatod a közeledben lévő szemeteskosarakat. Ha hiányzik egy kuka a térképről, te is felrajzolhatod" + "hu": "Ezen a térképen megtalálhatod a közeledben lévő szemeteskosarakat. Ha hiányzik egy kuka a térképről, te is felrajzolhatod", + "fr": "Retrouvez les poubelles près de vous. Si une poubelle est manquante, vous pouvez l’ajouter vous même" }, "maintainer": "", "icon": "./assets/themes/waste_basket/waste_basket.svg", diff --git a/assets/translators.json b/assets/translators.json index 922d04ec2..0f524b230 100644 --- a/assets/translators.json +++ b/assets/translators.json @@ -1,11 +1,11 @@ { "contributors": [ { - "commits": 165, + "commits": 173, "contributor": "Pieter Vander Vennet" }, { - "commits": 123, + "commits": 133, "contributor": "kjon" }, { @@ -13,9 +13,13 @@ "contributor": "danieldegroot2" }, { - "commits": 51, + "commits": 59, "contributor": "Allan Nordhøy" }, + { + "commits": 30, + "contributor": "Iago" + }, { "commits": 29, "contributor": "Babos Gábor" @@ -24,10 +28,6 @@ "commits": 29, "contributor": "Artem" }, - { - "commits": 27, - "contributor": "Iago" - }, { "commits": 23, "contributor": "Supaplex" @@ -41,12 +41,12 @@ "contributor": "Anonymous" }, { - "commits": 18, - "contributor": "Reza Almanda" + "commits": 19, + "contributor": "SC" }, { - "commits": 17, - "contributor": "SC" + "commits": 18, + "contributor": "Reza Almanda" }, { "commits": 17, @@ -64,6 +64,10 @@ "commits": 14, "contributor": "J. Lavoie" }, + { + "commits": 13, + "contributor": "Romain de Bossoreille" + }, { "commits": 13, "contributor": "Joost" @@ -94,11 +98,11 @@ }, { "commits": 6, - "contributor": "Joost Schouppe" + "contributor": "Olivier" }, { "commits": 6, - "contributor": "Romain de Bossoreille" + "contributor": "Joost Schouppe" }, { "commits": 6, @@ -128,6 +132,10 @@ "commits": 6, "contributor": "lvgx" }, + { + "commits": 5, + "contributor": "Dingcycle" + }, { "commits": 5, "contributor": "phlostically" @@ -150,7 +158,7 @@ }, { "commits": 4, - "contributor": "Olivier" + "contributor": "BMN" }, { "commits": 4, @@ -216,6 +224,10 @@ "commits": 3, "contributor": "SiegbjornSitumeang" }, + { + "commits": 2, + "contributor": "Marc Marc" + }, { "commits": 2, "contributor": "Midgard" diff --git a/langs/de.json b/langs/de.json index 8e07c60f8..97f3ce14a 100644 --- a/langs/de.json +++ b/langs/de.json @@ -10,29 +10,29 @@ "cannotBeDeleted": "Dieses Element kann nicht gelöscht werden", "delete": "Löschen", "explanations": { - "hardDelete": "Dieser Punkt wird in OpenStreetMap gelöscht. Er kann von einem erfahrenen Mitwirkenden wiederhergestellt werden", + "hardDelete": "Dieses Objekt wird in OpenStreetMap gelöscht. Es kann von einem erfahrenen Mitwirkenden wiederhergestellt werden", "retagNoOtherThemes": "Dieses Objekt wird neu klassifiziert und aus dieser Anwendung ausgeblendet", "retagOtherThemes": "Dieses Objekt wird neu gekennzeichnet und in {otherThemes} sichtbar sein", "selectReason": "Bitte auswählen, warum dieses Element gelöscht werden soll", "softDelete": "Dieses Element wird aktualisiert und in dieser Anwendung ausgeblendet. {reason}" }, "isDeleted": "Dieses Element wurde gelöscht", - "isntAPoint": "Es können nur Punkte gelöscht werden. Das ausgewählte Element ist ein Weg, eine Fläche oder eine Relation.", + "isntAPoint": "Es können nur Punkte gelöscht werden. Das ausgewählte Objekt ist ein Weg, eine Fläche oder eine Relation.", "loading": "Eigenschaften untersuchen, um festzustellen, ob das Element gelöscht werden kann.", - "loginToDelete": "Sie müssen angemeldet sein, um einen Punkt zu löschen", - "notEnoughExperience": "Dieser Punkt wurde von jemand anderem erstellt.", - "onlyEditedByLoggedInUser": "Dieser Punkt wurde nur von Ihnen selbst bearbeitet. Sie können ihn gefahrlos löschen.", + "loginToDelete": "Sie müssen angemeldet sein, um ein Objekt zu löschen", + "notEnoughExperience": "Dieses Objekt wurde von jemand anderem erstellt.", + "onlyEditedByLoggedInUser": "Dieses Objekt wurde nur von Ihnen bearbeitet. Sie können es gefahrlos löschen.", "partOfOthers": "Dieser Punkt ist Teil eines Weges oder einer Relation und kann nicht direkt gelöscht werden.", - "readMessages": "Ungelesene Nachrichten vorhanden. Bitte vor dem Löschen des Punkts beachten - vielleicht liegt eine Rückmeldung vor", + "readMessages": "Sie haben ungelesene Nachrichten. Bitte vor dem Löschen des Objekts lesen - vielleicht liegt eine Rückmeldung vor", "reasons": { "disused": "Dieses Element wird nicht mehr verwendet oder wurde entfernt", - "duplicate": "Dieser Punkt ist ein Duplikat eines anderen Elements", + "duplicate": "Dieses Objekt ist ein Duplikat eines anderen Objekts", "notFound": "Dieses Element konnte nicht gefunden werden", - "test": "Dies war ein Testpunkt - das Element war nie wirklich vorhanden" + "test": "Dies war ein Testobjekt - das Objekt war nie wirklich vorhanden" }, - "safeDelete": "Dieser Punkt kann gefahrlos gelöscht werden.", + "safeDelete": "Dieses Objekt kann gefahrlos gelöscht werden.", "useSomethingElse": "Zum Löschen kann stattdessen ein anderer OpenStreetMap-Editor verwendet werden", - "whyDelete": "Warum soll der Punkt gelöscht werden?" + "whyDelete": "Warum soll dieses Objekt gelöscht werden?" }, "favourite": { "loginNeeded": "

Anmelden

Ein persönliches Layout ist nur für OpenStreetMap-Benutzer verfügbar", @@ -41,34 +41,35 @@ }, "general": { "about": "OpenStreetMap für ein bestimmtes Thema einfach bearbeiten und hinzufügen", - "aboutMapcomplete": "

Über MapComplete

Mit MapComplete fügen Sie OpenStreetMap Informationen zu einem bestimmten Thema hinzu. Beantworten Sie Fragen, und in wenigen Minuten sind Ihre Beiträge überall verfügbar. Der Theme-Maintainer definiert dafür Elemente, Fragen und Sprachen.

Mehr erfahren

MapComplete bietet immer den nächsten Schritt, um mehr über OpenStreetMap zu erfahren.

  • In einer Website eingebettet, verlinkt der iframe zu einer Vollbildversion von MapComplete
  • Die Vollbildversion bietet Informationen über OpenStreetMap
  • Das Betrachten funktioniert ohne Anmeldung, das Bearbeiten erfordert ein OSM-Konto.
  • Wenn Sie nicht angemeldet sind, werden Sie dazu aufgefordert
  • Sobald Sie eine Frage beantwortet haben, können Sie der Karte neue Punkte hinzufügen
  • Nach einer Weile werden aktuelle OSM-Tags angezeigt, die später mit dem Wiki verlinkt werden


Haben Sie ein Problem bemerkt? Haben Sie einen Funktionswunsch? Möchten Sie bei der Übersetzung helfen? Hier geht es zum Quellcode und Issue Tracker

Möchten Sie Ihren Fortschritt sehen? Verfolgen Sie Ihre Änderungen auf OsmCha.

", + "aboutMapcomplete": "

Über MapComplete

Mit MapComplete fügen Sie OpenStreetMap Informationen zu einem bestimmten Thema hinzu. Beantworten Sie Fragen, und in wenigen Minuten sind Ihre Beiträge überall verfügbar. Bei den meisten Themen können Sie Bilder hinzufügen oder eine Bewertung hinterlassen. Der Theme-Maintainer definiert dafür Elemente, Fragen und Sprachen.

Mehr erfahren

MapComplete bietet immer den nächsten Schritt, um mehr über OpenStreetMap zu erfahren.

  • In einer Website eingebettet, verlinkt der iframe zu einer Vollbildversion von MapComplete
  • Die Vollbildversion bietet Informationen über OpenStreetMap
  • Das Betrachten funktioniert ohne Anmeldung, das Bearbeiten erfordert ein OSM-Konto.
  • Wenn Sie nicht angemeldet sind, werden Sie dazu aufgefordert
  • Sobald Sie eine Frage beantwortet haben, können Sie der Karte neue Objekte hinzufügen
  • Nach einer Weile werden aktuelle OSM-Tags angezeigt, die später mit dem Wiki verlinkt werden


Haben Sie ein Problem bemerkt? Haben Sie einen Funktionswunsch? Möchten Sie bei der Übersetzung helfen? Hier geht es zum Quellcode und Issue Tracker

Möchten Sie Ihren Fortschritt sehen? Verfolgen Sie Ihre Änderungen auf OsmCha.

", "add": { "addNew": "{category} hinzufügen", "addNewMapLabel": "Hier klicken, um ein neues Element hinzuzufügen", "confirmButton": "Eine {category} hinzufügen.
Ihre Ergänzung ist für alle sichtbar
", - "confirmIntro": "

Einen {title} hinzufügen?

Diese Eintragung wird für alle sichtbar sein. Bitte nur Dinge hinzufügen, die wirklich existieren. Viele Anwendungen verwenden diese Daten.", + "confirmIntro": "

Einen {title} hinzufügen?

Das Objekt, das Sie erstellen wird für alle sichtbar sein. Bitte nur Dinge hinzufügen, die wirklich existieren. Viele Anwendungen verwenden diese Daten.", "disableFilters": "Alle Filter deaktivieren", "disableFiltersExplanation": "Einige Elemente können durch einen Filter ausgeblendet sein", - "hasBeenImported": "Dieser Punkt wurde bereits importiert", + "hasBeenImported": "Dieses Objekt wurde bereits importiert", "import": { "hasBeenImported": "Das Objekt wurde importiert", "howToTest": "Zum Testen, test=true oder backend=osm-test an die URL anhängen. Die Änderungen werden in der Konsole ausgegeben. Bitte einen Pull Request erstellen, um das Thema offiziell zu veröffentlichen und den Import Button freizuschalten.", "importTags": "Das Element wird {tags} bekommen", "officialThemesOnly": "Die Import-Schaltfläche ist für inoffizielle Themen deaktiviert, um Störfälle zu vermeiden", - "wrongType": "Dieses Element ist kein Punkt oder Weg und kann deshalb nicht importiert werden", + "wrongType": "Dieses Objekt ist kein Punkt oder Weg und kann deshalb nicht importiert werden", + "wrongTypeToConflate": "Dieses Objekt ist weder ein Punkt noch ein Weg und kann nicht zusammengeführt werden", "zoomInMore": "Ansicht vergrößern, um das Objekt zu importieren" }, "importTags": "Das Element erhält {tags}", "intro": "An dieser Stelle sind noch keine Daten vorhanden.
", - "layerNotEnabled": "Die Ebene {layer} ist nicht eingeschaltet. Die Ebene ist einzuschalten, um einen Punkt hinzuzufügen", + "layerNotEnabled": "Die Ebene {layer} ist nicht eingeschaltet. Schalten Sie die Ebene ein, um ein Objekt hinzuzufügen", "openLayerControl": "Das Ebenen-Fenster öffnen", - "pleaseLogin": "Bitte anmelden, um einen neuen Punkt hinzuzufügen", + "pleaseLogin": "Bitte anmelden, um ein neues Objekt hinzuzufügen", "presetInfo": "Der neue POI hat {tags}", - "stillLoading": "Die Daten werden noch geladen. Vor dem Hinzufügen neuer Punkte bitte warten.", - "title": "Punkt hinzufügen?", + "stillLoading": "Die Daten werden noch geladen. Bitte warten Sie, bevor Sie ein neues Objekt hinzufügen.", + "title": "Neues Objekt hinzufügen?", "warnVisibleForEveryone": "Ihre Ergänzung wird für alle sichtbar sein", - "wrongType": "Dieses Element ist weder ein Punkt noch ein Weg und kann nicht importiert werden", - "zoomInFurther": "Ausschnitt vergrößern, um einen Punkt hinzuzufügen.", + "wrongType": "Dieses Objekt ist weder ein Punkt noch ein Weg und kann nicht importiert werden", + "zoomInFurther": "Ausschnitt vergrößern, um ein Objekt hinzuzufügen.", "zoomInMore": "Ansicht vergrößern, um dieses Element zu importieren" }, "apply_button": { @@ -92,7 +93,7 @@ "josmOpened": "JOSM ist geöffnet", "mapContributionsBy": "Die angezeigten Daten wurden bearbeitet durch {contributors}", "mapContributionsByAndHidden": "Die angezeigten Daten wurden bearbeitet von {contributors} und {hiddenCount} weiteren Beitragenden", - "mapillaryHelp": "Mapillary ist ein Online-Dienst, der Straßenbilder sammelt und sie unter einer freien Lizenz anbietet. Die Mitwirkenden dürfen diese Bilder verwenden, um OpenStreetMap zu verbessern", + "mapillaryHelp": "Mapillary ist ein Online-Dienst, der Straßenbilder sammelt und sie unter einer freien Lizenz anbietet. Mitwirkende dürfen diese Bilder verwenden, um OpenStreetMap zu verbessern", "openIssueTracker": "Fehler melden", "openMapillary": "Mapillary öffnen", "openOsmcha": "Letzte Bearbeitungen für das Thema {theme} ansehen", @@ -128,7 +129,7 @@ "error": "Etwas ist schief gelaufen", "example": "Beispiel", "examples": "Beispiele", - "fewChangesBefore": "Bitte beantworten Sie ein paar Fragen zu bestehenden Punkten, bevor Sie einen neuen Punkt hinzufügen.", + "fewChangesBefore": "Bitte beantworten Sie einige Fragen zu bestehenden Objekten, bevor Sie ein neues Objekt hinzufügen.", "getStartedLogin": "Bei OpenStreetMap anmelden, um loszulegen", "getStartedNewAccount": " oder ein neues Konto anlegen", "goToInbox": "Posteingang öffnen", @@ -198,7 +199,7 @@ "websiteIs": "Webseite: {website}", "websiteOf": "Wie lautet die Webseite der {category}?" }, - "readYourMessages": "Vor dem Hinzufügen neuer Punkte, bitte OpenStreetMap Benachrichtigungen lesen.", + "readYourMessages": "Bitte lesen Sie alle Ihre OpenStreetMap-Nachrichten, bevor Sie ein neues Objekt hinzufügen.", "removeLocationHistory": "Standortverlauf löschen", "returnToTheMap": "Zurück zur Karte", "save": "Speichern", @@ -252,6 +253,9 @@ "wednesday": "Mittwoch" }, "welcomeBack": "Sie sind angemeldet, willkommen zurück!", + "welcomeExplanation": { + "addNew": "Tippen oden klicken Sie auf die Karte, um einen neuen POI hinzuzufügen." + }, "wikipedia": { "createNewWikidata": "Einen neues Wikidata Element erstellen", "doSearch": "Suche oben, um Ergebnisse zu sehen", @@ -281,7 +285,7 @@ "isDeleted": "Gelöscht", "nearbyPictures": { "allFiltered": "Keine Bilder passen zu Ihrem Filter", - "browseNearby": "Bilder in der Nähe durchsuchen…", + "browseNearby": "Bilder in der Nähe suchen…", "confirm": "Das ausgewählte Bild zeigt {title()}", "hasMatchingPicture": "Passt ein Bild zum Objekt? Wählen Sie es unten aus", "loadMore": "Weitere Bilder laden", @@ -452,16 +456,50 @@ "commandNotFound": "Ihre Anfrage wurde nicht verstanden. Meinten Sie vielleicht {0}, {1}, {2} oder {2}?

Geben Sie help ein, um eine Übersicht über alle Befehle zu sehen

", "commands": { "dm": { + "argbody": "Der eigentliche Befehlstext des Befehls", + "argto": "Die ID, an welche die Ausgabe gesendet werden soll", + "commandNotFound": "Befehl {key} nicht gefunden - siehe help für alle Befehle", + "docs": "Führt einen Befehl aus und sendet die Ausgabe an eine andere Person", + "executing": "Führt {_} aus und sendet das Ergebnis an {to}…", "failed": "Ich konnte {cmd} aufgrund von {message} nicht ausführen", + "noDm": "Ich konnte keinen Raum mit {to} erstellen", + "receipt": "Ich habe die Nachricht an {to} übermittelt", + "selectValidCommand": "Geben Sie einen gültigen Befehl an", + "selectValidUser": "Geben Sie einen gültigen Zielbenutzer an", "sendReason": "Ich habe Ihnen diese Nachricht geschickt, weil {sender} mich gebeten hat, diese mit {cmd} zu senden" }, "documentation": { "argid": "Die ID einer {list} oder {list_end}, für welche die Dokumente benötigt werden. Alternativ können Sie auch eine von {coded_list} schreiben, um die verfügbaren IDs zu sehen.", - "didYouMean": " Vielleicht meinten Sie einen von: ", + "didYouMean": "Meinten Sie", "docs": "Ruft die Dokumentation zu einer MapComplete-Ebene, einem Thema oder einem URL-Parameter ab", + "file": { + "plural": "Dateien", + "singular": "Datei" + }, + "inputElement": { + "plural": "Eingabeelemente", + "singular": "Eingabeelement" + }, + "layer": { + "plural": "Ebenen", + "singular": "Ebene" + }, "noIdIntro": "Geben Sie eine ID an, um weitere Informationen über ein MapComplete-Programmierelement zu erhalten. Bekannte Typen sind {list}", - "notFound": "Kein {singular} mit Namen {id} gefunden.", - "urlParam": "URL-Parameter {id}" + "notFound": "Kein {singular} mit Namen {id} gefunden", + "overview": "Die folgenden {plural} existieren:", + "theme": { + "plural": "Themen", + "singular": "Thema" + }, + "urlParam": "URL-Parameter {id}", + "url_parameter": { + "plural": "URL-Parameter", + "singular": "URL-Parameter" + }, + "visualisation": { + "plural": "Visualisierungen", + "singular": "Visualisierung" + } }, "dream": { "docs": "Sendet einen computergenerierten Text", @@ -479,9 +517,11 @@ "supported": "Meine unterstützten Befehle sind:" }, "info": { + "argsearch": "Die ID des OSM-Objekts oder eine Suchanfrage", "closed": "Geschlossen", "closedTodayAndTomorrow": "Heute und morgen geschlossen", "couldNotDownload": "{id} konnte nicht heruntergeladen werden", + "docs": "Ermittelt Informationen über ein OSM-Objekt. Geben Sie entweder eine ID ODER einen Suchstring an; die Objekte werden interpretiert und bekannte Werte werden angezeigt.", "editWith": "Dieses Element mit {title} bearbeiten", "fetchingInfoAbout": "Daten über {id} abrufen…", "foundResults": "{total} Ergebnisse gefunden für {search}, rufe Details ab…", @@ -512,28 +552,62 @@ "noRightsNeeded": "Der Befehl {role} kann von jedem ausgeführt werden, Sie müssen keine Rechte dafür festlegen", "noRolesYet": "{user} hat derzeit keine Rollen.", "noSuchRole": "Die Rolle {role} kann nicht an {user} vergeben werden. Eine Rolle ist dasselbe wie ein Befehlsname, geben Sie help ein, um alle Befehle zu sehen.", - "userHasRoles": "{user} hat derzeit die folgenden Rollen:" + "userHasRoles": "{user} hat derzeit die folgenden Rollen:", + "verbadd": "Fügt eine Rolle für den angegebenen Benutzer hinzu", + "verbdefault": "Liste der Rollen des Benutzers", + "verblist": "Alle Benutzerrollen des angegebenen Benutzers auflisten", + "verbremove": "Entfernt eine Rolle von dem angegebenen Benutzer", + "verbrevoke": "Entzieht alle Rechte eines Benutzers" + }, + "scheme": { + "argkey": "Der Name des Schlüssels", + "docs": "Enthält Informationen über einen Schlüssel in einer theme-config-Datei", + "noMatchingLayer": "Keine passenden Schlüssel gefunden, vielleicht meinten Sie einen von:", + "notype": "kein Typ angegeben", + "title": "{key} (verwendet bei {path}, {type})" }, "search": { + "announceLimited": "

Ich zeige nur die {cutoff} Elemente, die dem gesuchten Ort am nächsten liegen.

", + "arglayerid": "Der Name einer Ebene ODER ein einzelner Suchbegriff", + "argsearch": "Der Suchbegriff", + "argverb": "Entweder in einem geografischen Gebiet (z. B. einer Stadt) oder in der Nähe eines POI suchen", + "noMatchingLayer": "Ich habe keine passende Ebene gefunden", + "noNearOrIn": "Entschuldigung, ich habe Ihren Befehl nicht verstanden, da ich kein in der Nähe oder in in Ihrer Suchanfrage gefunden habe.\n Versuchen Sie etwas wie Suche Trinkwasser in London, Suche Friture in Brüssel\n Alternativ versuchen Sie info {cmd}, um Informationen über ein einzelnes Objekt zu erhalten.", + "nothingFound": "Entschuldigung, ich konnte nichts für {search} finden, also kann ich nicht nach {layerTitle} suchen", + "overview": "Ich habe {length} passende Artikel gefunden.", "searching": "Suche {layerTitle} {mode} {search}…" }, "shutdown": { "argmode": "Gibt an, ob der Dienst neu gestartet werden soll, muss einer der folgenden Werte sein: {verbs}", "docs": "Schaltet den Bot ab", "goodbye": "Ich schließe… Bis später!", - "notYetShuttingDown": "Ich starte noch nicht neu, da ich erst vor {uptime} Sekunden gebootet habe. Ich werde mindestens {min_uptime} warten, bevor ich neu starte." + "notYetShuttingDown": "Ich starte noch nicht neu, da ich erst vor {uptime} Sekunden gebootet habe. Ich werde mindestens {min_uptime} warten, bevor ich neu starte.", + "verbshutdown": "Beendet den Bot", + "verbupdate": "Versucht, die eingebettete MapComplete-Codebasis zu aktualisieren, wird danach beendet" }, "tags": { - "announceSearch": "{id} scheint keine gültige OSM-id zu sein - suche stattdessen weltweit nach {search}…" + "announceSearch": "{id} scheint keine gültige OSM-id zu sein - suche stattdessen weltweit nach {search}…", + "argsearch": "Die ID des OSM-Objekts oder eine Suchanfrage", + "docs": "Zeigt die Tags eines OSM-Objekts an. Geben Sie entweder eine ID ODER einen Suchstring ein; die Objekte werden interpretiert und bekannte Werte werden angezeigt.", + "noSearchGiven": "Bitte geben Sie einen Suchbegriff der ID an, um diesen Befehl zu verwenden", + "nothingFound": "Nichts gefunden für {_}" }, "welcome": { + "docs": "Gibt eine freundliche Begrüßungsnachricht", "p0": "Hallo! Ich bin MapComplete-bot. Ich bin ein Computerprogramm, das OpenStreetMap durchsucht und einige Informationen über MapComplete geben kann, eine Webseite und App, die thematische Karten zeigt. Wenn Informationen fehlen, können Sie sie dort leicht hinzufügen.", "p1": "Senden Sie mir info [searchterm] und ich werde OpenStreetMap für Sie durchsuchen. Ich zeige Ihnen dann die Informationen über das, was ich gefunden habe.", "p2": "Alternativ können auch search [ojecttype] near [placename] oder search [objecttype] in [placename] verwendet werden, um nach weiteren Orten zu suchen. Unterstützte Objekttypen sind diejenigen, die in MapComplete gefunden werden können. Weitere Kategorien werden in Zukunft hinzugefügt - und wenn Sie der Herausforderung gewachsen sind, können Sie Ihre thematische Karte und damit auch eine Kategorie erstellen", "p3": "Es gibt noch einige weitere Befehle, senden Sie help, um sie alle zu sehen." }, "wiki": { - "docs": "Gibt (einen Teil) der angegebenen Seite von {backend} aus. In öffentlichen Räumen wird der erste Absatz angezeigt; in einer Direktnachricht wird die gesamte Seite gesendet." + "argsearch": "Der Titel der Seite oder der Suchbegriff", + "docs": "Gibt (einen Teil) der angegebenen Seite von {backend} aus. In öffentlichen Räumen wird der erste Absatz angezeigt; in einer Direktnachricht wird die gesamte Seite gesendet.", + "foundMatching": "Eine passende Wikiseite gefunden, nämlich {title}", + "gotResults": "Habe {count} Ergebnisse für Suchanfrage {search} erhalten:", + "loadingFailed": "Entschuldigung, die Seite {pagename} konnte nicht geladen werden", + "noWiki": "Bitte geben Sie eine Wikiseite an, nach der Sie suchen möchten", + "nothingFound": "Ich konnte auf {backend} für {search} nichts finden", + "searching": "Suche auf {backend}…" } }, "decryptionFailed": "Es tut mir leid, ich konnte die Nachricht nicht entschlüsseln. Sie können versuchen, diesen Kanal zu verlassen und sich erneut zu verbinden", @@ -717,7 +791,7 @@ "reviews": { "affiliated_reviewer_warning": "(Partner-Rezension)", "attribution": "Rezensionen werden bereitgestellt von Mangrove Reviews und sind unter CC-BY 4.0 verfügbar.", - "i_am_affiliated": "Ich bin mit diesem Objekt vertraut
Überprüfe, ob du Eigentümer, Ersteller, Angestellter etc. bist", + "i_am_affiliated": "Ich bin mit diem Objekt vertraut
Auswählen, wenn Sie Eigentümer, Ersteller, Angestellter … sind", "name_required": "Der Name des Objekts ist erforderlich, um Bewertungen zu erstellen und anzuzeigen", "no_rating": "Keine Bewertung vorhanden", "no_reviews_yet": "Es gibt noch keine Bewertungen. Hilf mit der ersten Bewertung dem Geschäft und der Open Data Bewegung!", @@ -727,7 +801,7 @@ "saving_review": "Speichern…", "title": "{count} Rezensionen", "title_singular": "Eine Rezension", - "tos": "Mit deiner Bewertung stimmst du den AGB und den Datenschutzrichtlinien von Mangrove.reviews zu", + "tos": "Mit der Bewertung stimmen Sie den AGB und den Datenschutzrichtlinien von Mangrove.reviews zu", "write_a_comment": "Bewertung schreiben…" }, "split": { @@ -758,6 +832,9 @@ "direction": { "description": "Eine Himmelsrichtung" }, + "distance": { + "description": "Entfernung in Meter" + }, "email": { "description": "E-Mail Adresse", "feedback": "Dies ist keine gültige E-Mail Adresse", diff --git a/langs/en.json b/langs/en.json index 49774cf7e..e0109cc12 100644 --- a/langs/en.json +++ b/langs/en.json @@ -10,29 +10,29 @@ "cannotBeDeleted": "This feature can not be deleted", "delete": "Delete", "explanations": { - "hardDelete": "This point will be deleted in OpenStreetMap. It can be recovered by an experienced contributor", + "hardDelete": "This feature will be deleted in OpenStreetMap. It can be recovered by an experienced contributor", "retagNoOtherThemes": "This feature will be reclassified and hidden from this application", "retagOtherThemes": "This feature will be retagged and visible in {otherThemes}", "selectReason": "Please, select why this feature should be deleted", "softDelete": "This feature will be updated and hidden from this application. {reason}" }, "isDeleted": "This feature is deleted", - "isntAPoint": "Only points can be deleted, the selected feature is a way, area or relation.", + "isntAPoint": "Only nodes can be deleted, the selected feature is a way, area or relation.", "loading": "Inspecting properties to check if this feature can be deleted.", - "loginToDelete": "You must be logged in to delete a point", - "notEnoughExperience": "This point was made by someone else.", - "onlyEditedByLoggedInUser": "This point has only been edited by yourself, you can safely delete it.", - "partOfOthers": "This point is part of some way or relation and can not be deleted directly.", - "readMessages": "You have unread messages. Read these before deleting a point - someone might have feedback", + "loginToDelete": "You must be logged in to delete a feature", + "notEnoughExperience": "This feature was made by someone else.", + "onlyEditedByLoggedInUser": "This feature has only been edited by yourself, you can safely delete it.", + "partOfOthers": "This node is part of some way or relation and can not be deleted directly.", + "readMessages": "You have unread messages. Read these before deleting a feature - someone might have feedback", "reasons": { "disused": "This feature is disused or removed", - "duplicate": "This point is a duplicate of another feature", + "duplicate": "This feature is a duplicate of another feature", "notFound": "This feature couldn't be found", - "test": "This was a testing point - the feature was never actually there" + "test": "This was a testing feature - the feature was never actually there" }, - "safeDelete": "This point can be safely deleted.", + "safeDelete": "This feature can be safely deleted.", "useSomethingElse": "Use another OpenStreetMap-editor to delete it instead", - "whyDelete": "Why should this point be deleted?" + "whyDelete": "Why should this feature be deleted?" }, "favourite": { "loginNeeded": "

Log in

A personal layout is only available for OpenStreetMap users", @@ -41,35 +41,35 @@ }, "general": { "about": "Easily edit and add OpenStreetMap for a certain theme", - "aboutMapcomplete": "

About MapComplete

Use it to add OpenStreetMap info on a single theme. Answer questions, and within minutes your contributions are available everywhere. In most themes you can add pictures or even leave a review. The theme maintainer defines elements, questions and languages for it.

Find out more

MapComplete always offers the next step to learn more about OpenStreetMap.

  • When embedded in a website, the iframe links to a full-screen MapComplete
  • The fullscreen version offers info about OpenStreetMap
  • Viewing works without login, but editing requires an OSM account.
  • If you are not logged in, you are asked to do so
  • Once you answered a single question, you can add new points to the map
  • After a while, actual OSM-tags are shown, later linking to the wiki


Did you notice an issue? Do you have a feature request? Want to help translate? Head over to the source code or issue tracker.

Want to see your progress? Follow the edit count on OsmCha.

", + "aboutMapcomplete": "

About

Use MapComplete to add OpenStreetMap info on a single theme. Answer questions, and within minutes your contributions are available everywhere. In most themes you can add pictures or even leave a review. The theme maintainer defines elements, questions and languages for it.

Find out more

MapComplete always offers the next step to learn more about OpenStreetMap.

  • When embedded in a website, the iframe links to a full-screen MapComplete.
  • The fullscreen version offers info about OpenStreetMap.
  • Viewing works without login, but editing requires an OSM account.
  • If you are not logged in, you are asked to do so
  • Once you answered a single question, you can add new features to the map
  • After a while, actual OSM-tags are shown, later linking to the wiki


Did you notice an issue? Do you have a feature request? Want to help translate? Head over to the source code or issue tracker.

Want to see your progress? Follow the edit count on OsmCha.

", "add": { "addNew": "Add {category}", "addNewMapLabel": "Click here to add a new item", "confirmButton": "Add a {category}
Your addition is visible for everyone
", - "confirmIntro": "

Add a {title}?

The point you create here will be visible for everyone. Please, only add things on to the map if they truly exist. A lot of applications use this data.", + "confirmIntro": "

Add a {title}?

The feature you create here will be visible for everyone. Please, only add things on to the map if they truly exist. A lot of applications use this data.", "disableFilters": "Disable all filters", "disableFiltersExplanation": "Some features might be hidden by a filter", - "hasBeenImported": "This point has already been imported", + "hasBeenImported": "This feature has already been imported", "import": { "hasBeenImported": "This object has been imported", "howToTest": "To test, add test=true or backend=osm-test to the URL. The changeset will be printed in the console. Please open a PR to officialize this theme to actually enable the import button.", "importTags": "The element will receive {tags}", "officialThemesOnly": "The import button is disabled for unofficial themes to prevent accidents", - "wrongType": "This element is not a point or a way and can not be imported", - "wrongTypeToConflate": "This element is not a point or a way and can not be conflated", + "wrongType": "This feature is not a node or a way and can not be imported", + "wrongTypeToConflate": "This feature is not a node or a way and can not be conflated", "zoomInMore": "Zoom in more to import this feature" }, "importTags": "The element will receive {tags}", "intro": "You clicked somewhere where no data is known yet.
", - "layerNotEnabled": "The layer {layer} is not enabled. Enable this layer to add a point", + "layerNotEnabled": "The layer {layer} is not enabled. Enable this layer to add a feature", "openLayerControl": "Open the layer control box", - "pleaseLogin": "Please log in to add a new point", + "pleaseLogin": "Please log in to add a new feature", "presetInfo": "The new POI will have {tags}", - "stillLoading": "The data is still loading. Please wait a bit before you add a new point.", - "title": "Add a new point?", + "stillLoading": "The data is still loading. Please wait a bit before you add a new feature.", + "title": "Add a new feature?", "warnVisibleForEveryone": "Your addition will be visible for everyone", - "wrongType": "This element is not a point or a way and can not be imported", - "zoomInFurther": "Zoom in further to add a point.", + "wrongType": "This feature is not a node or a way and can not be imported", + "zoomInFurther": "Zoom in further to add a feature.", "zoomInMore": "Zoom in more to import this feature" }, "apply_button": { @@ -85,7 +85,7 @@ "editJosm": "Edit here with JOSM", "followBridge": "The Mastodon- and Twitter-accounts are bridged", "followOnMastodon": "Follow MapComplete on Mastodon", - "followOnTwitter": "Follow MapComplete on twitter", + "followOnTwitter": "Follow MapComplete on Twitter", "iconAttribution": { "title": "Used icons" }, @@ -129,7 +129,7 @@ "error": "Something went wrong", "example": "Example", "examples": "Examples", - "fewChangesBefore": "Please, answer a few questions of existing points before adding a new point.", + "fewChangesBefore": "Please, answer a few questions of existing features before adding a new feature.", "getStartedLogin": "Log in with OpenStreetMap to get started", "getStartedNewAccount": " or create a new account", "goToInbox": "Open inbox", @@ -199,7 +199,7 @@ "websiteIs": "Website: {website}", "websiteOf": "What is the website of {category}?" }, - "readYourMessages": "Please, read all your OpenStreetMap-messages before adding a new point.", + "readYourMessages": "Please, read all your OpenStreetMap-messages before adding a new feature.", "removeLocationHistory": "Delete the location history", "returnToTheMap": "Return to the map", "save": "Save", diff --git a/langs/fr.json b/langs/fr.json index 8c86971f3..4cec16a0e 100644 --- a/langs/fr.json +++ b/langs/fr.json @@ -11,6 +11,8 @@ "delete": "Supprimer", "explanations": { "hardDelete": "Ce point sera supprimé d’OpenStreetmap. Il pourra être restauré par des méthodes avancées", + "retagNoOtherThemes": "Cet objet sera re-classifié et caché dans cette application", + "retagOtherThemes": "Cet objet sera re-classifié et visible dans {otherThemes}", "selectReason": "Sélectionner pourquoi cet élément devrait être supprimé", "softDelete": "Cet objet sera mis à jour et caché de l'application. {reason}" }, @@ -20,7 +22,7 @@ "loginToDelete": "Vous devez être connecté pour supprimer un objet", "notEnoughExperience": "Ce point a été créé par une autre personne.", "onlyEditedByLoggedInUser": "Ce point a été édité seulement par vous et peut donc être supprimé.", - "partOfOthers": "Ce point faire partie d'un autre objet et ne peut être supprimé directement.", + "partOfOthers": "Ce point fait partie d'un autre objet et ne peut être supprimé directement.", "readMessages": "Messages non-lus à lire avant de supprimer un point, certains pourraient comporter des informations importantes", "reasons": { "disused": "Cet élément n’est plus utilisé ou a été enlevé", @@ -51,8 +53,13 @@ "import": { "hasBeenImported": "Cet objet a été importé", "howToTest": "Pour essayer, ajouter test=true ou backend=osm-test à l'adresse de la page. Le groupe de modifications sera affiché dans la console. Merci d'ouvrir un PR pour officialiser ce thème et ainsi activer le bouton d'import.", - "importTags": "L'objet recevra {tags}" + "importTags": "L'objet recevra {tags}", + "officialThemesOnly": "Le bouton d'import est désactivé pour les thèmes non-officiels pour prévenir les accidents", + "wrongType": "Cet élément n'est pas un nœud ou un chemin et ne peut pas être importé", + "wrongTypeToConflate": "Cet élément n'est pas un nœud ou un chemin et ne peut pas être confondu", + "zoomInMore": "Zoomez davantage pour importer cet objet" }, + "importTags": "L'élément recevra {tags}", "intro": "Vous avez cliqué sur un endroit où il n'y a pas encore de données.
", "layerNotEnabled": "La couche {layer} est désactivée. Activez-la pour ajouter un point", "openLayerControl": "Ouvrir la panneau de contrôle", @@ -61,6 +68,7 @@ "stillLoading": "Chargement des données en cours. Patientez un instant avant d'ajouter un nouveau point.", "title": "Ajouter un nouveau point ?", "warnVisibleForEveryone": "Votre ajout sera visible", + "wrongType": "Cet élément n'est pas un nœud ou un chemin et ne peut pas être importé", "zoomInFurther": "Rapprochez vous pour ajouter un point.", "zoomInMore": "Zoomez pour importer cet élément" }, @@ -68,6 +76,9 @@ "attributionContent": "

Toutes les données sont fournies par OpenStreetMap, librement réutilisables sous Open DataBase License.

", "attributionTitle": "Crédits", "codeContributionsBy": "MapComplete a été construit par {contributors} et {hiddenCount} autres contributeurs", + "donate": "Soutenez MapComplete financièrement", + "followOnMastodon": "Suivez MapComplete sur Mastodon", + "followOnTwitter": "Suivez MapComplete sur Twitter", "iconAttribution": { "title": "Icônes utilisées" }, @@ -77,10 +88,13 @@ }, "backgroundMap": "Carte de fonds", "cancel": "Annuler", + "confirm": "Confirmer", "customThemeIntro": "

Thèmes personnalisés

Vous avez déjà visité ces thèmes personnalisés.", "download": { "downloadAsPdf": "Télécharger un PDF de la vue actuelle", "downloadAsPdfHelper": "Idéal pour imprimer une carte", + "downloadAsSvg": "Télécharger la carte actuelle au format SVG", + "downloadAsSvgHelper": "Compatible avec Inkscape ou Adobe Illustrator ; nécessite un traitement supplémentaire ", "downloadCSV": "Télécharger les données visibles au format CSV", "downloadCSVHelper": "Compatible avec LibreOffice Calc, Excel,…", "downloadGeoJsonHelper": "Compatible avec QGIS, ArcGIS, ESRI,…", @@ -91,6 +105,9 @@ "noDataLoaded": "Pas de données chargées. Le téléchargement sera bientôt disponible", "title": "Télécharger les données visibles" }, + "error": "Quelque chose ne s'est pas passé correctement", + "example": "Exemple", + "examples": "Exemples", "fewChangesBefore": "Merci de répondre à quelques questions à propos de points déjà existants avant d'ajouter de nouveaux points.", "getStartedLogin": "Connectez-vous avec OpenStreetMap pour commencer", "getStartedNewAccount": " ou créez un compte", @@ -115,6 +132,7 @@ "streetcomplete": "Une autre application similaire est StreetComplete." }, "nameInlineQuestion": "Le nom de cet/cette {category} est $$$", + "next": "Suivant", "noNameCategory": "{category} sans nom", "noTagsSelected": "Aucune balise sélectionnée", "number": "nombre", @@ -144,6 +162,7 @@ "versionInfo": "v{version} - générée le {date}" }, "pickLanguage": "Choisir la langue : ", + "poweredByOsm": "Propulsé par OpenStreetMap", "questions": { "emailIs": "L'adresse électronique de {category} est {email}", "emailOf": "Quelle est l'adresse électronique de {category} ?", @@ -230,6 +249,19 @@ "uploadingPicture": "Mise en ligne de votre photo…", "willBePublished": "Votre photo va être publiée : " }, + "importHelper": { + "askMetadata": { + "shouldBeUrl": "URL invalide" + }, + "login": { + "loginRequired": "Connectez-vous pour continuer", + "title": "Se connecter" + }, + "selectFile": { + "errDuplicate": "Certaines colonnes portent le même nom", + "errNoName": "Certains colonnes n'ont pas de nom" + } + }, "index": { "#": "Ces textes sont affichés au dessus des boutons de thème quand aucun thème n'est chargé", "featuredThemeTitle": "Thème de la semaine", diff --git a/langs/layers/de.json b/langs/layers/de.json index 7becae9b7..e8c9bfef9 100644 --- a/langs/layers/de.json +++ b/langs/layers/de.json @@ -327,7 +327,7 @@ }, "bench-seats": { "question": "Wie viele Sitzplätze hat diese Bank?", - "render": "{seats} Sitzplätze" + "render": "Die Sitzbank hat {seats} Sitzplätze" }, "bench-survey:date": { "question": "Wann wurde diese Bank zuletzt überprüft?", @@ -2348,7 +2348,7 @@ "then": "Das Klettern ist hier kostenlos" }, "1": { - "then": "Zum Klettern ist eine Gebühr zu entrichten" + "then": "Zum Klettern ist eine Gebühr zu zahlen" } }, "question": "Ist das Klettern hier gebührenpflichtig?", @@ -2415,11 +2415,11 @@ }, "climbing_area": { "description": "Ein Gebiet, in dem Klettern möglich ist, z. B. ein Felsen, ein Klettergarten, eine Boulderhalle, … Enthält eine Sammlung von Routen", - "name": "Klettermöglichkeiten", + "name": "Klettereinrichtungen", "presets": { "0": { - "description": "Eine Klettergelegenheit", - "title": "eine klettermöglichkeit" + "description": "Eine Klettereinrichtung", + "title": "eine Klettereinrichtung" } }, "tagRenderings": { @@ -2454,10 +2454,10 @@ "name": { "mappings": { "0": { - "then": "Diese Klettergelegenheit hat keinen Namen" + "then": "Die Klettereinrichtung hat keinen Namen" } }, - "question": "Wie heißt diese Klettergelegenheit?", + "question": "Wie heißt die Klettereinrichtung?", "render": "{name}" } }, @@ -2473,10 +2473,10 @@ "then": "Klettergebiet" }, "3": { - "then": "Klettermöglichkeit {name}" + "then": "Klettereinrichtung {name}" } }, - "render": "Klettermöglichkeit" + "render": "Klettereinrichtung" } }, "climbing_club": { @@ -2485,7 +2485,7 @@ "presets": { "0": { "description": "Ein Kletterverein", - "title": "eine kletterverein" + "title": "einen Kletterverein" }, "1": { "description": "Eine Organisation, die sich mit dem Klettern beschäftigt", @@ -2569,7 +2569,7 @@ "name": "Kletterrouten", "presets": { "0": { - "title": "eine kletterroute" + "title": "eine Kletterroute" } }, "tagRenderings": { @@ -3895,6 +3895,37 @@ } }, "tagRenderings": { + "6": { + "renderings": { + "0": { + "mappings": { + "0": { + "then": "In diesem Hackerspace gibt es {device-name}" + }, + "1": { + "then": "In diesem Hackerspace gibt es kein {negative-name}" + } + }, + "question": "Gibt es {device-name} in diesem Hackerspace?" + } + }, + "rewrite": { + "into": { + "0": { + "1": "einen 3D-Drucker", + "2": "3D-Drucker" + }, + "1": { + "1": "einen Laserschneider", + "2": "Laserschneider" + }, + "2": { + "1": "eine CNC-Fräse", + "2": "CNC-Fräse" + } + } + } + }, "hackerspaces-name": { "question": "Wie lautet der Name dieses Hackerspace?", "render": "Dieser Hackerspace heißt {name}" @@ -4021,6 +4052,49 @@ "render": "Informationstafel" } }, + "kindergarten_childcare": { + "name": "Kindergärten und Kinderkrippen", + "presets": { + "0": { + "title": "einen Kindergarten" + }, + "1": { + "title": "eine Kinderkrippe" + } + }, + "tagRenderings": { + "5": { + "override": { + "question": "Wann ist diese Kinderbetreuung geöffnet?" + } + }, + "capacity": { + "question": "Wie viele Kinder können hier maximal angemeldet werden?", + "render": "Diese Einrichtung bietet Platz für {capacity} Kinder" + }, + "childcare-type": { + "mappings": { + "0": { + "then": "Dies ist ein Kindergarten (auch bekannt als Vorschule), in dem kleine Kinder eine Früherziehung erhalten." + }, + "1": { + "then": "Dies ist eine Kinderbetreuungseinrichtung, z. B. ein Kinderkrippe oder eine Tagesmutter, in der Kleinkinder betreut werden. Sie bieten keine Ausbildung an und werden oft als Privatunternehmen geführt" + } + }, + "question": "Um welche Art von Einrichtung handelt es sich?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Kindergarten {name}" + }, + "1": { + "then": "Kinderkrippe {name}" + } + } + } + }, "map": { "description": "Eine Karte, die für Touristen gedacht ist und dauerhaft im öffentlichen Raum aufgestellt ist", "name": "Karten", @@ -4065,6 +4139,42 @@ "render": "Karte" } }, + "maxspeed": { + "description": "Zeigt die zulässige Geschwindigkeit für jede Straße an", + "name": "Höchstgeschwindigkeit", + "tagRenderings": { + "maxspeed-maxspeed": { + "mappings": { + "0": { + "then": "Dies ist eine Wohnstraße, auf der eine Höchstgeschwindigkeit von 20 km/h gilt" + } + }, + "question": "Wie hoch ist die zulässige Höchstgeschwindigkeit, die man auf dieser Straße fahren darf?", + "render": "Die zulässige Höchstgeschwindigkeit auf dieser Straße ist {maxspeed}" + } + }, + "title": { + "mappings": { + "0": { + "then": "Straße ohne Namen" + } + } + }, + "units": { + "0": { + "applicableUnits": { + "0": { + "human": "Kilometer/Stunde", + "humanShort": "km/h" + }, + "1": { + "human": "Meilen/Stunde", + "humanShort": "mph" + } + } + } + } + }, "nature_reserve": { "description": "Ein Naturschutzgebiet ist ein Gebiet, das der Natur überlassen wurde", "filter": { @@ -4872,6 +4982,112 @@ "render": "Recyclinganlage" } }, + "school": { + "name": "Grund- und weiterführende Schulen", + "presets": { + "0": { + "title": "eine Grundschule oder weiterführende Schule" + } + }, + "tagRenderings": { + "capacity": { + "question": "Wie viele Schüler können sich maximal an dieser Schule anmelden?", + "render": "Diese Schule kann höchstens {capacity} Schüler aufnehmen" + }, + "education-level-belgium": { + "mappings": { + "0": { + "then": "Es handelt sich um eine Schule mit einer Kindergartenabteilung, in der kleine Kinder eine Ausbildung erhalten, die auf das Lesen und Schreiben vorbereitet." + }, + "1": { + "then": "In dieser Schule lernt man grundlegende Fähigkeiten wie Lesen, Schreiben und Rechnen.
Schüler besuchen die Schule in der Regel im Alter von 6 bis 12 Jahren
" + }, + "2": { + "then": "Dies ist eine weiterführende Schule, die alle Jahrgangsstufen anbietet" + }, + "3": { + "then": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber erste und zweite Klasse anbietet" + }, + "4": { + "then": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber dritte und vierte Klasse anbietet" + }, + "5": { + "then": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber fünfte und sechste Klasse anbietet" + }, + "6": { + "then": "Diese Schule bietet eine postsekundäre Ausbildung (z. B. ein siebtes oder achtes Spezialisierungsjahr)" + } + }, + "question": "Welches Bildungsniveau wird an dieser Schule vermittelt?" + }, + "gender": { + "mappings": { + "0": { + "then": "Sowohl Jungen als auch Mädchen können sich hier anmelden und gemeinsam unterrichtet werden" + }, + "1": { + "then": "Hier können sich sowohl Jungen als auch Mädchen anmelden, aber sie werden getrennt unterrichtet (z. B. in verschiedenen Klassenräumen oder zu verschiedenen Zeiten)" + }, + "2": { + "then": "Dies ist eine reine Jungenschule" + }, + "3": { + "then": "Dies ist eine reine Mädchenschule" + } + }, + "question": "Welche Geschlechter können sich an dieser Schule anmelden?" + }, + "language": { + "mappings": { + "0": { + "then": "Die Hauptsprache dieser Schule ist unbekannt" + } + }, + "question": "Was ist die Hauptsprache dieser Schule?
Welche Sprache wird mit den Schülern in den nicht sprachbezogenen Kursen und mit der Verwaltung gesprochen?
", + "render": "{school:language} ist die Hauptsprache von {title()}" + }, + "school-name": { + "question": "Wie lautet der Name dieser Schule?", + "render": "Diese Schule heißt {name}" + }, + "target-audience": { + "mappings": { + "0": { + "then": "Es handelt sich um eine Schule, in der die Schüler Fähigkeiten auf ihrem altersgemäßen Niveau erlernen.
Es gibt wenig oder keine speziellen Einrichtungen für Schüler mit besonderen Bedürfnissen oder die Einrichtungen sind ad-hoc
" + }, + "1": { + "then": "Dies ist eine Schule für Schüler ohne besondere Bedürfnisse
Dazu gehören auch Schüler, die den Kursen mit kleinen Ad-hoc-Maßnahmen folgen können
" + }, + "2": { + "then": "Dies ist eine Schule, in der Erwachsene auf dem angegebenen Niveau unterrichtet werden." + }, + "3": { + "then": "Dies ist eine Schule für Schüler mit Autismus" + }, + "4": { + "then": "Dies ist eine Schule für Schüler mit Lernschwierigkeiten" + }, + "5": { + "then": "Dies ist eine Schule für blinde oder sehbehinderte Schüler" + }, + "6": { + "then": "Dies ist eine Schule für gehörlose oder hörgeschädigte Schüler" + }, + "7": { + "then": "Dies ist eine Schule für Schüler mit Behinderungen" + }, + "8": { + "then": "Dies ist eine Schule für Schüler mit besonderen Bedürfnissen" + } + }, + "question": "Richtet sich diese Schule an Schüler mit besonderem Förderbedarf? Über welche strukturellen Einrichtungen verfügt diese Schule?
Ad-hoc ", + "render": "Diese Schule verfügt über Einrichtungen für Schüler mit {school:for}" + } + }, + "title": { + "render": "Schule {name}" + } + }, "shops": { "deletion": { "extraDeleteReasons": { @@ -5311,7 +5527,7 @@ "then": "Die Kamera überwacht einen öffentlichen Bereich, z. B. Straßen, Brücken, Plätze, Parks, Bahnhöfe, öffentliche Gänge oder Tunnel, …" }, "1": { - "then": "Die Kamera überwacht einen privaten Außenbereich, z.B. Parkplätze, Tankstellen, Innenhöfe, Eingänge, private Einfahrten, …" + "then": "Die Kamera überwacht einen privaten Außenbereich (z.B. Parkplätze, Tankstellen, Innenhöfe, Eingänge, private Einfahrten, …)" }, "2": { "then": "Die Kamera überwacht einen privaten Innenbereich, z. B. Geschäfte, private Tiefgaragen, …" @@ -5392,6 +5608,55 @@ "render": "Überwachungskamera" } }, + "tertiary_education": { + "name": "Hochschulen und Universitäten", + "presets": { + "0": { + "description": "Eine Einrichtung, an der tertiäre Bildung vermittelt wird (auf dem Niveau eines Bachelor-Abschlusses oder höher). Ein einziger Punkt pro Campus ist ausreichend - Gebäude und Fakultäten sollten nicht mit Universitätspunkten gekennzeichnet werden.", + "title": "eine Universität" + } + }, + "tagRenderings": { + "institution-kind": { + "mappings": { + "0": { + "then": "Es handelt sich um eine postsekundäre, nicht-tertiäre Bildungseinrichtung. Man muss die Sekundarstufe abgeschlossen haben, um sich hier einzuschreiben, aber es werden keine Bachelor-Abschlüsse (oder höhere Abschlüsse) verliehen" + }, + "1": { + "then": "Dies ist eine Universität, eine Einrichtung des tertiären Bildungsbereichs, an der Bachelor-Abschlüsse oder höhere Abschlüsse verliehen werden." + } + }, + "question": "Was für eine Art von Institution ist das?" + }, + "isced": { + "mappings": { + "0": { + "then": "Bachelor-Abschlüsse werden hier verliehen" + }, + "1": { + "then": "Hier werden Master-Abschlüsse verliehen" + }, + "2": { + "then": "Hier werden die Doktortitel verliehen" + } + }, + "question": "Welches Bildungsniveau wird hier gelehrt?" + } + }, + "title": { + "mappings": { + "1": { + "then": "(Fach)hochschule" + }, + "2": { + "then": "Universität" + }, + "3": { + "then": "Schule mit tertiärem Bildungsangebot" + } + } + } + }, "toilet": { "description": "Eine Ebene mit (öffentlichen) Toiletten", "filter": { diff --git a/langs/layers/en.json b/langs/layers/en.json index bc89b97ef..5ae55f26f 100644 --- a/langs/layers/en.json +++ b/langs/layers/en.json @@ -394,7 +394,7 @@ "then": "Bikes for disabled persons available" } }, - "question": "Who can lend bicycles here?" + "question": "Who can loan bicycles here?" }, "bicycle_library-charge": { "mappings": { @@ -4082,6 +4082,10 @@ } }, "question": "What type of facility is this?" + }, + "name": { + "question": "What is the name of this facility?", + "render": "This facility is named {name}" } }, "title": { @@ -5006,16 +5010,16 @@ "then": "This is a secondary school which offers all grades" }, "3": { - "then": "This is a secondary school which does not have all grades, but offers first and second grade" + "then": "This is a secondary school which does not have all grades, but offers first and second grade" }, "4": { - "then": "This is a secondary school which does not have all grades, but offers third and fourth grade" + "then": "This is a secondary school which does not have all grades, but offers third and fourth grade" }, "5": { - "then": "This is a secondary school which does not have all grades, but offers fifth and sixth grade" + "then": "This is a secondary school which does not have all grades, but offers fifth and sixth grade" }, "6": { - "then": "This schools offers post-secondary education (e.g. a seventh or eight specialisation year)" + "then": "This school offers post-secondary education (e.g. a seventh or eight specialisation year)" } }, "question": "What level of education is given on this school?" @@ -5279,6 +5283,9 @@ }, "sport_pitch-opening_hours": { "mappings": { + "0": { + "then": "Always accessible" + }, "1": { "then": "Always accessible" } diff --git a/langs/layers/es.json b/langs/layers/es.json index f474d7ae9..fad9c7495 100644 --- a/langs/layers/es.json +++ b/langs/layers/es.json @@ -17,7 +17,7 @@ }, "street": { "question": "¿En qué calle se encuentra esta dirección?", - "render": "La dirección está en la calle {addr:street}" + "render": "La dirección está en esta calle {addr:street}" } }, "title": { @@ -54,7 +54,7 @@ "then": "La estación la opera un grupo formal de voluntarios." }, "3": { - "then": "La estación es de gestión privada." + "then": "La estación se opera privadamente." } }, "question": "¿Como está clasificada la operadora de la estación?", @@ -119,7 +119,7 @@ "then": "Relieve" }, "10": { - "then": "Azulejo (azulejos decorativos españoles)" + "then": "Azulejo (Baldosas decorativas Españolas y Portuguesas)" }, "11": { "then": "Cerámica" @@ -156,7 +156,7 @@ }, "1": { "description": "Una barrera ciclista, que ralentiza a los ciclistas", - "title": "una barrera para bicicletas" + "title": "una barrera ciclista" } }, "tagRenderings": { @@ -169,7 +169,7 @@ "then": "Bolardo fijo" }, "2": { - "then": "Bolardo abatible" + "then": "Bolardo que se puede doblar" }, "3": { "then": "Bolardo flexible, normalmente plástico" @@ -183,13 +183,13 @@ "Cycle barrier type": { "mappings": { "0": { - "then": "Simple, sólo dos barreras con un espacio entre ellas" + "then": "Simple, simplemente dos barreras con un espacio en el medio" }, "1": { "then": "Doble, dos barreras una detrás de otra" }, "2": { - "then": "Triple, tres barreras una detrás de la otra" + "then": "Triple, tres barreras una detrás de otra" }, "3": { "then": "Barrera de seguridad, el espacio es menor en la parte superior que en la inferior" @@ -226,13 +226,13 @@ "bicycle=yes/no": { "mappings": { "0": { - "then": "Un ciclista puede pasar por aquí." + "then": "Un ciclista puede pasar esto." }, "1": { - "then": "Un ciclista no puede pasar por aquí." + "then": "Un ciclista no puede pasar esto." } }, - "question": "¿Puede un ciclista pasar esta barrera?" + "question": "¿Puede pasar una bicicleta esta barrera?" } }, "title": { @@ -241,7 +241,7 @@ "then": "Bolardo" }, "1": { - "then": "Barrera ciclista" + "then": "Barrera Ciclista" } }, "render": "Barrera" @@ -345,10 +345,10 @@ "bench_at_pt-bench_type": { "mappings": { "0": { - "then": "Aquí hay un banco normal para sentarse" + "then": "Hay un banco normal aquí" }, "1": { - "then": "Banco de pie" + "then": "Banco de pié" }, "2": { "then": "No hay ningún banco aquí" @@ -366,14 +366,14 @@ "then": "Banco en una parada de transporte público" }, "1": { - "then": "Banco en el refugio" + "then": "Banco en marquesina" } }, "render": "Banco" } }, "bicycle_library": { - "description": "Una instalación en la que se pueden prestar las bicicletas durante un periodo de tiempo más largo", + "description": "Una facilidad donde se pueden alquilar bicicletas durante largos periodos de tiempo", "name": "Biblioteca de bicicletas", "presets": { "0": { @@ -394,18 +394,18 @@ "then": "Bicicletas para discapacitados disponibles" } }, - "question": "¿Quién puede prestar bicicletas aquí?" + "question": "¿Quién puede alquilar bicicletas aquí?" }, "bicycle_library-charge": { "mappings": { "0": { - "then": "El préstamo de bicicletas es gratuito" + "then": "Alquilar una bicicleta es gratis" }, "1": { - "then": "Prestar una bicicleta cuesta 20 euros al año y 20 euros de garantía" + "then": "Alquilar una bicicleta cuesta 20€/año y 20€ de fianza" } }, - "question": "¿Cuánto cuesta el préstamo de una bicicleta?", + "question": "¿Cuánto cuesta alquilar una bicicleta?", "render": "Alquilar una bicicleta cuesta {charge}" }, "bicycle_library-name": { @@ -434,7 +434,7 @@ "name": "Alquiler de bicicletas", "presets": { "0": { - "description": "Una tienda con personal que se dedica al alquiler de bicicletas", + "description": "Una tienda atendida que se centra en el alquiler de bicicletas", "title": "una tienda de alquiler de bicicletas" }, "1": { @@ -661,7 +661,7 @@ }, "Cargo bike capacity?": { "question": "¿Cuántas bicicletas de carga caben en este aparcamiento de bicicletas?", - "render": "En este aparcamiento caben {capacity:cargo_bike} bicis de carga" + "render": "En este aparcamiento caben {capacity:cargo_bike} bicicletas de carga" }, "Cargo bike spaces?": { "mappings": { @@ -669,10 +669,10 @@ "then": "Este aparcamiento tiene espacio para bicicletas de carga" }, "1": { - "then": "Este aparcamiento tiene huecos (oficialmente) designados para bicicletas de carga." + "then": "Este aparcamiento tiene huecos designados (oficialmente) para bicicletas de carga." }, "2": { - "then": "No se permite aparcar bicicletas de carga" + "then": "No está permitido aparcar bicicletas de carga" } }, "question": "¿Este aparcamiento de bicicletas tiene huevos para bicicletas de carga?" @@ -728,6 +728,9 @@ } }, "tagRenderings": { + "Email maintainer": { + "render": "Reportar esta bomba para bicicletas como rota" + }, "Operational status": { "mappings": { "0": { @@ -840,8 +843,14 @@ }, "bike_repair_station-valves": { "mappings": { + "0": { + "then": "Sclaverand/Presata (ruedas de bicicleta estrechas)" + }, "1": { "then": "Dunlop" + }, + "2": { + "then": "Schrader (coches y bicicletas de montaña)" } }, "question": "¿Que válvulas se soportan?", @@ -1003,6 +1012,9 @@ "0": { "then": "Tienda de artículos deportivos {name}" }, + "1": { + "then": "Winkel" + }, "2": { "then": "Alquiler de bicicletas {name}" }, @@ -1128,7 +1140,12 @@ "title": "un bar" }, "2": { + "description": "Una cafetería para beber té, café o una bebida alcohólica en un ambiente tranquilo", "title": "una cafetería" + }, + "3": { + "description": "Un club nocturno o discoteca centrada en bailar, la música de un DJ acompañado por un espectáculo de luces y un bar donde conseguir bebidas (alcohólicas)", + "title": "un club nocturno o una discoteca" } }, "tagRenderings": { @@ -1148,6 +1165,9 @@ }, "4": { "then": "Un espacio abierto donde se sirve cerveza, típico de Alemania" + }, + "5": { + "then": "Este es un club nocturno o discoteca centrado en bailar, música de un DJ con un espectáculo de luces que la acompaña y un bar donde conseguir bebidas (alcohólicas)" } }, "question": "Qué tipo de cafetería es esta" @@ -1193,11 +1213,68 @@ "options": { "0": { "question": "Todos los conectores" + }, + "2": { + "question": "Tiene un conector
enchufe de pared Europeo con un pin de tierra (CEE7/4 tipo E
" + }, + "3": { + "question": "Tiene un conector
Chademo
" + }, + "4": { + "question": "Tiene un conector de
Tipo 1 con cable (J1772)
" + }, + "5": { + "question": "Tiene un conector de
Tipo 1 sin cable (J1772)
" + }, + "6": { + "question": "Tiene un conector
Tipo 1 CCS (Combo Tipo 1)
" + }, + "7": { + "question": "Tiene un conector
Tesla Supercharger
" + }, + "8": { + "question": "Tiene un conector
Tipo 2 (mennekes)
" + }, + "9": { + "question": "Tiene un conector
Tipo 2 CCS (mennekes
" + }, + "10": { + "question": "Tiene un conector
Tipo 2 con cable (mennekes)
" + }, + "11": { + "question": "Tiene un conector
Tesla Supercharger CCS (un tipo2_css de marca)
" + }, + "12": { + "question": "Tiene un conector
Tesla Supercharger (destination)
" + }, + "13": { + "question": "Tiene un conector
Tesla Supercharger (Destination) (Tipo2 A con un cable de marca tesla)
" + }, + "14": { + "question": "Tiene un conector
USB para cargar teléfonos y dispositivos electrónicos pequeños
" + }, + "15": { + "question": "Tiene un conector
Bosch Active Connect con 3 pines y cable
" + }, + "16": { + "question": "Tiene un conector
Bosch Active Connect con 5 pines y cable
" } } } }, + "name": "Estaciones de carga", + "presets": { + "0": { + "title": "una estación de carga para bicicletas eléctricas con un enchufe de pared europeo normal (pensado para cargar bicicletas eléctricas)" + }, + "1": { + "title": "una estación de carga para coches" + } + }, "tagRenderings": { + "Auth phone": { + "question": "¿Cual es el número de teléfono para la llamada de autenticación o SMS?" + }, "Authentication": { "mappings": { "0": { @@ -1220,12 +1297,33 @@ }, "6": { "then": "Autenticación mediante tarjeta de débito disponible" + }, + "7": { + "then": "La carga aquí (también) es posible sin autenticación" } }, "question": "¿Qué tipo de autenticación está disponible en esta estación de carga?" }, "Available_charging_stations (generated)": { "mappings": { + "0": { + "then": "Enchufe de pared Schuko sin pin de tierra (CEE7/4 tipo F)" + }, + "1": { + "then": "Enchufe de pared Schuko sin pin de tierra (CEE7/4 tipo F)" + }, + "2": { + "then": "Enchufe de pared Europeo con pin de tierra (CEE7/4 tipo E)" + }, + "3": { + "then": "Enchufe de pared Europeo con pin de tierra (CEE7/4 tipo E)" + }, + "4": { + "then": "Chademo" + }, + "5": { + "then": "Chademo" + }, "6": { "then": "Tipo 1 con cable (J1772)" }, @@ -1291,6 +1389,18 @@ }, "27": { "then": "USB para cargar teléfonos y dispositivos pequeños" + }, + "28": { + "then": "Bosch Active Connect con 3 pines y cable" + }, + "29": { + "then": "Bosch Active Connect con 3 pines y cable" + }, + "30": { + "then": "Bosch Active Connect con 5 pines y cable" + }, + "31": { + "then": "Bosch Active Connect con 5 pines y cable" } }, "question": "¿Qué tipo de conexiones de carga están disponibles aquí?" @@ -1365,6 +1475,9 @@ }, "2": { "then": "Aquí se pueden cargar scooters" + }, + "4": { + "then": "Aquí se pueden cargar buses" } }, "question": "¿A qué vehículos se permite la carga aquí?" @@ -1627,6 +1740,9 @@ }, "2": { "then": "Paso de cebra" + }, + "3": { + "then": "Cruce sin marcas de cruce" } }, "question": "¿Qué tipo de cruce es este?" @@ -1690,6 +1806,9 @@ "2": { "then": "Este carril bici está hecho de asfalto" }, + "3": { + "then": "Este carril bici está hecho de piedras de pavimento suaves" + }, "4": { "then": "Este carril bici está hecho de hormigón" }, @@ -1701,6 +1820,9 @@ }, "10": { "then": "Este carril bici está hecho de gravilla" + }, + "12": { + "then": "Este carril bici está hecho de tierra natural" } }, "question": "¿De qué superficie está hecho este carril bici?", @@ -1850,6 +1972,7 @@ } }, "defibrillator": { + "description": "Una capa que muestra desfibriladores que se pueden utilizar en caso de emergencia. Contiene desfibriladores públicos, pero también desfibriladores para los que se puede necesitar que el personal vaya a buscar el dispositivo", "name": "Desfibriladores", "presets": { "0": { diff --git a/langs/layers/fr.json b/langs/layers/fr.json index 6d1dfdfbc..fe042b5c0 100644 --- a/langs/layers/fr.json +++ b/langs/layers/fr.json @@ -61,11 +61,11 @@ "render": "L’exploitant est de type {operator:type}." }, "ambulance-place": { - "question": "Dans quelle localité la station est-elle située ?", + "question": "Dans quelle localité la station est-elle située (p.ex. nom du quartier, village ou villa) ?", "render": "La station fait partie de {addr:place}." }, "ambulance-street": { - "question": " Quel est le nom de la rue où la station se situe ?", + "question": "Quel est le nom de la rue où la station se situe ?", "render": "La station fait partie de {addr:street}." } }, @@ -74,7 +74,7 @@ } }, "artwork": { - "description": "Diverses œuvres d'art", + "description": "Une carte ouverte de statues, bustes, graffitis et autres œuvres d'art de par le monde", "name": "Œuvres d'art", "presets": { "0": { @@ -199,7 +199,7 @@ }, "MaxWidth": { "question": "Quelle est la largeur du passage ?", - "render": "Largeur maximale: {maxwidth:physical} m" + "render": "Largeur maximale : {maxwidth:physical} m" }, "Overlap (cyclebarrier)": { "question": "Quel est le chevauchement des barrières ?", @@ -248,7 +248,7 @@ } }, "bench": { - "description": "Un banc est une surface en bois, métal, pierre... sur laquelle un humain peut s'asseoir. Cette couche permet de les visualiser et pose des questions à leur sujet.", + "description": "Un banc est une surface en bois, métal, pierre… sur laquelle un humain peut s'asseoir. Cette couche permet de les visualiser et pose des questions à leur sujet.", "name": "Bancs", "presets": { "0": { @@ -394,7 +394,7 @@ "then": "Vélos pour personnes handicapées disponibles" } }, - "question": "Qui peut emprunter des vélos ici ?" + "question": "Qui peut emprunter des vélos ici ?" }, "bicycle_library-charge": { "mappings": { @@ -430,7 +430,7 @@ } } }, - "description": "Station de location de vélo", + "description": "Stations de location de vélo", "name": "Location de vélo", "presets": { "0": { @@ -466,6 +466,9 @@ "4": { "1": "vélos de montagne" }, + "5": { + "1": "sacoches pour vélo" + }, "6": { "1": "tandem" } @@ -501,10 +504,42 @@ }, "question": "Quels types de vélos et d’accessoires peuvent être loués ici ?", "render": "{rental} est louable ici" + }, + "bicycle_rental_type": { + "mappings": { + "0": { + "then": "C'est un magasin dont l'activité principale est la location de vélo" + }, + "1": { + "then": "C'est une agence louant diverses choses et/ou voitures. Elle loue également des vélos, mais ce n'est pas sa principale activité" + }, + "2": { + "then": "C'est un magasin qui vend ou répare des vélos mais peut également en louer" + }, + "3": { + "then": "Ceci est un point d’attache automatisé où le vélo est attaché mécaniquement à une structure" + }, + "4": { + "then": "Il y a un distributeur qui distribue et accepte les clés, éventuellement après identification et/ou payement. Les vélos sont stationnés à proximité" + }, + "5": { + "then": "Ceci est un point de dépôt, p.ex. un emplacement de parking réservé aux vélos de location" + } + }, + "question": "De quel type de location de vélo s'agit-il ?" } + }, + "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, + "render": "Location de vélo" } }, "bicycle_tube_vending_machine": { + "description": "Une couche affichant des distributeurs automatiques de chambre à air (que ce soit des distributeurs conçus spécifiquement pour les chambres à air ou des distributeurs classiques incluant des chambres à air ainsi des objets apparentés tels que de l'éclairage pour vélo, des gants, des cadenas, ...)", "name": "Distributeur automatique de chambre à air de vélo", "presets": { "0": { @@ -533,6 +568,7 @@ } }, "bike_cafe": { + "description": "Un vélo café est un café à destination des cyclistes avec, par exemple, des services tels qu’une pompe, et de nombreuses décorations liées aux vélos, etc.", "name": "Café vélo", "presets": { "0": { @@ -600,12 +636,45 @@ } }, "bike_cleaning": { + "description": "Une couche affichant les lieux où l'on peut nettoyer son vélo", "name": "Service de nettoyage de vélo", "presets": { "0": { "title": "une service de nettoyage de vélo" } }, + "tagRenderings": { + "bike_cleaning-charge": { + "mappings": { + "0": { + "then": "Service de nettoyage gratuit" + }, + "1": { + "then": "Libre d'utilisation" + }, + "2": { + "then": "Le service de nettoyage est payant" + } + }, + "question": "Combien cela coûte-t-il d'utiliser le service de nettoyage ?", + "render": "L’utilisation du service de nettoyage coûte {charge}" + }, + "bike_cleaning-service:bicycle:cleaning:charge": { + "mappings": { + "0": { + "then": "Le service de nettoyage est gratuit" + }, + "1": { + "then": "Utilisation gratuite" + }, + "2": { + "then": "Le coût du service de nettoyage n’est pas connu" + } + }, + "question": "Combien coûte le service de nettoyage ?", + "render": "Le service de nettoyage coûte {service:bicycle:cleaning:charge}" + } + }, "title": { "mappings": { "0": { @@ -616,6 +685,7 @@ } }, "bike_parking": { + "description": "Une couche montrant où stationner son vélo", "name": "Parking à vélo", "presets": { "0": { @@ -724,6 +794,7 @@ } }, "bike_repair_station": { + "description": "Une couche montrant les pompes à vélo et les centres de réparation", "name": "Station velo (réparation, pompe à vélo)", "presets": { "0": { @@ -735,10 +806,14 @@ "title": "une point de réparation vélo avec pompe" }, "2": { + "description": "Des outils pour réparer les vélos dans l’espace public (sans pompe). Les outils sont sécurisés contre le vol.", "title": "une point de réparation vélo sans pompe" } }, "tagRenderings": { + "Email maintainer": { + "render": "Signaler cette pompe à vélo cassée" + }, "Operational status": { "mappings": { "0": { @@ -750,13 +825,33 @@ }, "question": "La pompe à vélo fonctionne-t-elle toujours ?" }, + "access": { + "mappings": { + "0": { + "then": "Accessible au public" + }, + "1": { + "then": "Accessible au public" + }, + "2": { + "then": "Réservé aux clients" + }, + "3": { + "then": "Pas accessible au public" + }, + "4": { + "then": "Pas accessible au public" + } + }, + "question": "Qui est autorisé à utiliser ce centre de réparation ?" + }, "bike_repair_station-available-services": { "mappings": { "0": { "then": "Il y a seulement une pompe" }, "1": { - "then": "Il y a seulement des outils (tournevis, pinces...)" + "then": "Il y a seulement des outils (tournevis, pinces…)" }, "2": { "then": "Il y a des outils et une pompe" @@ -832,13 +927,13 @@ "bike_repair_station-valves": { "mappings": { "0": { - "then": "Sclaverand (aussi appelé Presta)" + "then": "Sclaverand/Presta (pneus de vélos à faible largeur)" }, "1": { "then": "Dunlop" }, "2": { - "then": "Schrader (les valves de voitures)" + "then": "Schrader (voitures et vélos de montagne)" } }, "question": "Quelles valves sont compatibles ?", @@ -970,10 +1065,18 @@ }, "question": "Est-ce qu'il y a des outils pour réparer son vélo dans ce magasin ?" }, + "bike_shop-access": { + "render": "Seulement accessible à {access}" + }, "bike_shop-email": { "question": "Quelle est l'adresse électronique de {name} ?" }, "bike_shop-is-bicycle_shop": { + "mappings": { + "0": { + "then": "Ce commerce est spécialisé dans la location" + } + }, "render": "Ce magasin est spécialisé dans la vente de {shop} et a des activités liées au vélo" }, "bike_shop-name": { @@ -992,6 +1095,9 @@ "0": { "then": "Magasin de sport {name}" }, + "1": { + "then": "Magasin" + }, "2": { "then": "Location de vélo {name}" }, @@ -1009,6 +1115,7 @@ } }, "bike_themed_object": { + "description": "Une couche sur le thème des vélos mais qui ne correspondent à aucune autre couche", "name": "Objet cycliste", "title": { "mappings": { @@ -1020,13 +1127,35 @@ } }, "binocular": { + "description": "Jumelles", + "name": "Jumelles", "presets": { "0": { - "description": "Une longue-vue ou une paire de jumelles montée sur un poteau, disponible au public pour scruter les environs.\n" + "description": "Une longue-vue ou une paire de jumelles montée sur un poteau, disponible au public pour scruter les environs. ", + "title": "des jumelles" } + }, + "tagRenderings": { + "binocular-charge": { + "mappings": { + "0": { + "then": "En libre service" + } + }, + "question": "Combien l’utilisation des ces jumelles coûte-t-elle ?", + "render": "L’utilisation des ces jumelles coûte {charge}" + }, + "binocular-direction": { + "question": "Dans quelle direction regarde-t-on en utilisant ces jumelles ?", + "render": "Orienté à {direction}°" + } + }, + "title": { + "render": "Jumelles" } }, "birdhide": { + "description": "Un observatoire ornithologique", "filter": { "0": { "options": { @@ -1034,10 +1163,95 @@ "question": "Accessible aux fauteuils roulants" } } + }, + "1": { + "options": { + "0": { + "question": "Seulement les observatoires ornithologiques couverts" + } + } } + }, + "name": "Lieu pour observer des oiseaux", + "presets": { + "0": { + "description": "Un abris couvert pour observer les oiseaux confortablement", + "title": "un observatoire ornithologique" + }, + "1": { + "description": "Un écran ou un mur avec des ouvertures pour observer les oiseaux", + "title": "un camouflage d’observation ornithologique" + } + }, + "tagRenderings": { + "bird-hide-shelter-or-wall": { + "mappings": { + "0": { + "then": "Camouflage d’observation ornithologique" + }, + "1": { + "then": "Observatoire ornithologique" + }, + "2": { + "then": "Tour d’observation ornithologique" + }, + "3": { + "then": "Abris d’observation ornithologique" + } + }, + "question": "S’agit-il d’un camouflage ou d’un abris d’observation ?" + }, + "bird-hide-wheelchair": { + "mappings": { + "0": { + "then": "L’infrastructure est adaptée aux utilisateurs de chaises roulantes" + }, + "1": { + "then": "Cet observatoire ornithologique est facilement accessible en chaise roulante" + }, + "2": { + "then": "Cet observatoire ornithologique est accessible en chaise roulante mais difficilement" + }, + "3": { + "then": "Pas accessible en chaise roulante" + } + }, + "question": "Cet observatoire ornithologique est-il accessible en chaise roulante ?" + }, + "birdhide-operator": { + "mappings": { + "0": { + "then": "Opéré par Natuurpunt" + }, + "1": { + "then": "Opéré par l’Agence Nature et Forêts" + } + }, + "question": "Qui opère cet observatoire ornithologique ?", + "render": "Opéré par {operator}" + } + }, + "title": { + "mappings": { + "1": { + "then": "Observatoire ornithologique {name}" + }, + "2": { + "then": "Camouflage d’observation ornithologique {name}" + } + }, + "render": "Lieu d’observation d’oiseaux" } }, "cafe_pub": { + "deletion": { + "extraDeleteReasons": { + "0": { + "explanation": "{title()} est définitivement fermé" + } + } + }, + "description": "Une couche montrants les cafés et pubs où l’on peut prendre un verre. Cette couche pose des questions y afférentes.", "filter": { "0": { "options": { @@ -1048,7 +1262,35 @@ } }, "name": "Cafés et pubs", + "presets": { + "0": { + "description": "Un pub, principalement pour boire un verre dans une atmosphère chaleureuse et décontractée", + "title": "un pub" + }, + "1": { + "description": "Un bar plus moderne et commercial, avec éventuellement musique et jeux de lumière", + "title": "un bar" + }, + "2": { + "description": "Un café pour prendre un thé, un café ou une boisson alcoolisée dans un environnement calme", + "title": "un café" + }, + "3": { + "description": "Une boîte de nuit ou discothèque pour danser sur de la musique de DJ accompagnée de jeux de lumière et un bar pour prendre une une boisson (alcoolisée)", + "title": "une boîte de nuit ou discothèque" + } + }, "tagRenderings": { + "Classification": { + "mappings": { + "0": { + "then": "Un pub, principalement pour boire un verre dans une atmosphère chaleureuse et décontractée" + }, + "1": { + "then": "Un bar plus moderne et commercial, avec éventuellement musique et jeux de lumière" + } + } + }, "Name": { "question": "Quel est le nom de ce pub ?", "render": "Ce pub se nomme {name}" @@ -1330,7 +1572,7 @@ } }, "question": "Combien de prises cette voie possède avant d’atteindre la moulinette ?", - "render": "Cette voie a {climbing:bolts} prises" + "render": "Cette voie a {climbing:bolts} prises
C'est sans relai et indique de combien de dégaine un grimpeur a besoin
" } }, "title": { @@ -1410,7 +1652,7 @@ "then": "Réservé aux clients du lieu" }, "3": { - "then": "Non accessible au public (par exemple réservé au personnel, au propriétaire, ...)" + "then": "Non accessible au public (par exemple réservé au personnel, au propriétaire…)" }, "4": { "then": "Pas accessible, peut-être uniquement à usage professionnel" @@ -1516,6 +1758,7 @@ "name": "Visualisation de la direction" }, "drinking_water": { + "description": "Une couche montrant les fontaines d'eau potable", "name": "Eau potable", "presets": { "0": { @@ -1550,7 +1793,7 @@ "render": "L'état opérationnel est {operational_status}" }, "render-closest-drinking-water": { - "render": "Une autre source d’eau potable est à {_closest_other_drinking_water_distance} mètres a>" + "render": "Une autre source d’eau potable est à {_closest_other_drinking_water_distance} mètres" } }, "title": { @@ -1558,7 +1801,7 @@ } }, "etymology": { - "description": "Tous les objets dont le nom ont une étymologie connue", + "description": "Tous les objets dont l’étymologie est connue", "name": "A une étymologie", "tagRenderings": { "etymology_multi_apply": { @@ -1590,7 +1833,7 @@ }, "extinguisher": { "description": "Couche des lances à incendie.", - "name": "Couche des extincteurs.", + "name": "Couche des extincteurs", "presets": { "0": { "description": "Un extincteur est un appareil portatif servant à éteindre un feu", @@ -1657,7 +1900,7 @@ "render": "L’exploitant est de type {operator:type}." }, "station-place": { - "question": "Dans quelle localité la station est-elle située ?", + "question": "Dans quelle localité la station est-elle située (p.ex. nom du quartier, village ou ville) ?", "render": "La station fait partie de {addr:place}." }, "station-street": { @@ -1674,13 +1917,13 @@ "friture-oil": { "mappings": { "0": { - "then": "Huile végétale" + "then": "La friture est faite avec de l'huile végétale" }, "1": { - "then": "Graisse animale" + "then": "La friture est faite avec de la graisse animale" } }, - "question": "Cette friteuse fonctionne-t-elle avec de la graisse animale ou végétale ?" + "question": "Cette friteuse fonctionne-t-elle avec de la graisse animale pour la cuisson ?" }, "friture-take-your-container": { "mappings": { @@ -1691,7 +1934,7 @@ "then": "Apporter ses propres contenants n’est pas permis" }, "2": { - "then": "Il est obligatoire d’apporter ses propres contenants" + "then": "Il est obligatoire d’apporter ses propres contenants." } }, "question": "Est-il proposé d’utiliser ses propres contenants pour sa commande ?
" @@ -1796,16 +2039,16 @@ "hydrant-state": { "mappings": { "0": { - "then": "La borne est en état, ou partiellement en état, de fonctionner." + "then": "La borne est en état (ou partiellement en état) de fonctionner" }, "1": { - "then": "La borne est hors-service." + "then": "La borne est hors-service" }, "2": { - "then": "La borne a été retirée." + "then": "La borne a été retirée" } }, - "question": "Mettre à jour l’état de la borne." + "question": "Cette borne incendie est-elle toujours en bon état de fonctionnement ?" }, "hydrant-type": { "mappings": { @@ -2169,6 +2412,71 @@ "render": "Microbibliothèque" } }, + "school": { + "name": "Écoles primaires et secondaires", + "presets": { + "0": { + "title": "une école primaire ou secondaire" + } + }, + "tagRenderings": { + "capacity": { + "question": "Combien d'élèves peuvent s'inscrire au maximum dans cette école ?", + "render": "Cette école peut accueillir au maximum {capacity} étudiants" + }, + "education-level-belgium": { + "mappings": { + "0": { + "then": "Il s'agit d'une école avec une section maternelle où les jeunes enfants reçoivent un enseignement qui prépare à la lecture et à l'écriture." + }, + "1": { + "then": "Il s'agit d'une école où l'on apprend les compétences primaires telles que l'alphabétisation de base et les compétences numériques..
Les élèves s'inscrivent généralement de 6 à 12 ans.
" + }, + "2": { + "then": "Il s'agit d'une école secondaire qui offre toutes les classes" + }, + "3": { + "then": "Il s'agit d'une école secondaire qui n'a pas toutes les classes, mais qui offre la première et la deuxième années" + }, + "4": { + "then": "Il s'agit d'une école secondaire qui n'a pas toutes les classes, mais qui offre la troisième et la quatrième années" + }, + "5": { + "then": "Il s'agit d'une école secondaire qui n'a pas toutes les classes, mais qui offre la cinquième et la sixième années" + }, + "6": { + "then": "Cette école propose un enseignement post-secondaire (par exemple une septième ou huitième année de spécialisation)" + } + }, + "question": "Quel est le niveau d'enseignement dispensé dans cette école ?" + }, + "gender": { + "mappings": { + "0": { + "then": "Les garçons et les filles peuvent s'inscrire ici et suivre des cours ensemble" + }, + "1": { + "then": "Les garçons et les filles peuvent s'inscrire ici, mais ils sont séparés (par exemple, ils ont des cours dans des classes différentes ou à des heures différentes)" + }, + "2": { + "then": "C'est une école réservée aux garçons" + }, + "3": { + "then": "C'est une école réservée aux filles" + } + }, + "question": "Quels genres de personnes peuvent s'inscrire dans cette école ?" + }, + "language": { + "mappings": { + "0": { + "then": "La langue principale de cette école est inconnue" + } + }, + "question": "Quelle est la langue principale de cette école ?
Quelle langue est parlée avec les élèves des cours non linguistiques et avec l'administration ?
" + } + } + }, "shops": { "description": "Un magasin", "name": "Magasin", @@ -2184,7 +2492,7 @@ "render": "{email}" }, "shops-name": { - "question": "Qu'est-ce que le nom de ce magasin?" + "question": "Qu'est-ce que le nom de ce magasin ?" }, "shops-opening_hours": { "question": "Quels sont les horaires d'ouverture de ce magasin ?", @@ -2409,16 +2717,16 @@ "Surveillance type: public, outdoor, indoor": { "mappings": { "0": { - "then": "Une zone publique est surveillée, telle qu'une rue, un pont, une place, un parc, une gare, un couloir ou un tunnel public…" + "then": "Une zone publique est surveillée, telle qu'une rue, un pont, une place, un parc, une gare, un couloir, un tunnel public…" }, "1": { - "then": "Une zone extérieure, mais privée, est surveillée (par exemple, un parking, une station-service, une cour, une entrée, une allée privée, etc.)" + "then": "Une zone extérieure, mais privée, est surveillée (par exemple, un parking, une station-service, une cour, une entrée, une allée privée…)" }, "2": { "then": "Une zone intérieure privée est surveillée, par exemple un magasin, un parking souterrain privé…" } }, - "question": "Quel genre de surveillance est cette caméra?" + "question": "De quel genre de surveillance cette caméra est-elle ?" }, "Surveillance:zone": { "mappings": { @@ -2493,6 +2801,55 @@ "render": "Caméra de surveillance" } }, + "tertiary_education": { + "name": "Collèges et universités", + "presets": { + "0": { + "description": "Un institut où l'on dispense un enseignement supérieur (au niveau équivalent à un bachelor ou plus). Un simple point par campus est suffisant - les bâtiments et les facultés ne doivent pas être cartographiés avec différents points d'université.", + "title": "une université" + } + }, + "tagRenderings": { + "institution-kind": { + "mappings": { + "0": { + "then": "Il s'agit d'un établissement d'enseignement post-secondaire, non tertiaire. Il faut avoir terminé l'enseignement secondaire pour s'inscrire ici, mais aucun baccalauréat (ou diplôme supérieur) n'est délivré ici" + }, + "1": { + "then": "Il s'agit d'une université, d'un établissement d'enseignement supérieur où sont délivrés des diplômes de bachelor ou plus." + } + }, + "question": "De quel type d'établissement s'agit-il ?" + }, + "isced": { + "mappings": { + "0": { + "then": "Les diplômes de bachelor y sont décernés" + }, + "1": { + "then": "Des masters y sont décernés" + }, + "2": { + "then": "Des doctorats y sont décernés" + } + }, + "question": "Quel niveau d'éducation est donné ici ?" + } + }, + "title": { + "mappings": { + "1": { + "then": "Établissement d'enseignement supérieur non universitaire" + }, + "2": { + "then": "Universitée" + }, + "3": { + "then": "École dispensant un enseignement supérieur" + } + } + } + }, "toilet": { "name": "Toilettes", "presets": { @@ -2548,6 +2905,28 @@ "question": "Quel est le prix d'accès de ces toilettes ?", "render": "Le prix est {charge}" }, + "toilet-handwashing": { + "mappings": { + "0": { + "then": "Ces toilettes ont un lavabo pour se laver les mains" + }, + "1": { + "then": "Ces toilettes n'ont pas de lavabo pour se laver les mains" + } + }, + "question": "Ces toilettes ont-ils un lavabo pour se laver les mains ?" + }, + "toilet-has-paper": { + "mappings": { + "0": { + "then": "Ces toilettes sont équipés de papier toilette" + }, + "1": { + "then": "Vous devez apporter votre propre papier toilette ici" + } + }, + "question": "Est-ce qu'il faut apporter son propre papier toilette ?" + }, "toilets-changing-table": { "mappings": { "0": { @@ -2605,11 +2984,33 @@ }, "trail": { "name": "Sentiers", + "tagRenderings": { + "Color": { + "mappings": { + "0": { + "then": "Sentier bleu" + }, + "1": { + "then": "Sentier rouge" + }, + "2": { + "then": "Sentier vert" + }, + "3": { + "then": "Sentier jaune" + } + } + }, + "trail-length": { + "render": "Le sentier fait {_length:km} kilomètres de long" + } + }, "title": { "render": "Sentier" } }, "tree_node": { + "description": "Une couche montrant les arbres", "name": "Arbre", "presets": { "0": { @@ -2643,22 +3044,22 @@ "then": "L'arbre est remarquable en raison de sa taille ou de son emplacement proéminent. Il est utile pour la navigation." }, "1": { - "then": "Cet arbre est un monument naturel (ex : âge, espèce, etc…)" + "then": "Cet arbre est un monument naturel (p.ex. : âge, espèce, etc)." }, "2": { - "then": "Cet arbre est utilisé à but d’agriculture (ex : dans un verger)" + "then": "Cet arbre est utilisé à but agricole (p.ex. : dans un verger)." }, "3": { "then": "Cet arbre est dans un parc ou une aire similaire (ex : cimetière, cour d’école, …)." }, "4": { - "then": "Cet arbre est dans une cour résidentielle." + "then": "Cet arbre est dans une jardin de résidence." }, "5": { "then": "C'est un arbre le long d'une avenue." }, "6": { - "then": "L'arbre est une zone urbaine." + "then": "L'arbre est dans une zone urbaine." }, "7": { "then": "Cet arbre est en zone rurale." @@ -2708,6 +3109,9 @@ }, "question": "Cet arbre est-il un feuillu ou un résineux ?" }, + "tree-species-wikidata": { + "question": "Quelle est l'espèce de cet arbre ?" + }, "tree_node-name": { "mappings": { "0": { @@ -2730,6 +3134,9 @@ "render": "Arbre" } }, + "veterinary": { + "name": "vétérinaire" + }, "viewpoint": { "description": "Un beau point de vue ou une belle vue. Idéal pour ajouter une image si aucune autre catégorie ne convient", "name": "Point de vue", @@ -2781,7 +3188,7 @@ "render": "Cette éolienne est opérée par {operator}." }, "turbine-output": { - "question": "Quel est la puissance générée par cette éolienne ?", + "question": "Quel est la puissance générée par cette éolienne (p.ex. 2,3 MW) ?", "render": "La puissance générée par cette éolienne est de {generator:output:electricity}." }, "turbine-start-date": { diff --git a/langs/layers/nl.json b/langs/layers/nl.json index eec892bf5..e7cc2723b 100644 --- a/langs/layers/nl.json +++ b/langs/layers/nl.json @@ -430,7 +430,7 @@ } } }, - "description": "Fietsverhuustations", + "description": "Fietsverhuurstations", "name": "Fietsverhuur", "presets": { "0": { @@ -4929,6 +4929,7 @@ }, "tagRenderings": { "capacity": { + "question": "Ten hoogste hoeveel studenten kunnen er les volgen in deze school?", "render": "Deze school kan maximaal {capacity} studenten lesgeven" }, "education-level-belgium": { @@ -4943,13 +4944,13 @@ "then": "Dit is een middelbare school die alle schooljaren aanbiedt (dus van het eerste tot en met het zesde middelbaar)" }, "3": { - "then": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het eerste en tweede middelbaar" + "then": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het eerste en tweede middelbaar" }, "4": { - "then": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het derde en vierde middelbaar" + "then": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het derde en vierde middelbaar" }, "5": { - "then": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het vijfde en zesde middelbaar" + "then": "Dit is een middelbare school die niet alle schooljaren aanbiedt, maar wel het vijfde en zesde middelbaar" }, "6": { "then": "Deze school biedt post-secundair onderwijs (bijvoorbeeld specialisatiejaren)" @@ -5257,6 +5258,9 @@ }, "sport_pitch-opening_hours": { "mappings": { + "0": { + "then": "24/7 toegankelijk" + }, "1": { "then": "24/7 toegankelijk" } diff --git a/langs/nb_NO.json b/langs/nb_NO.json index c08fb9ce1..6fe174c8c 100644 --- a/langs/nb_NO.json +++ b/langs/nb_NO.json @@ -39,7 +39,7 @@ }, "general": { "about": "Rediger og legg til OpenStreetMap for et gitt tema", - "aboutMapcomplete": "

Om MapComplete

Bruk det til å legge til OpenStreetMap-info i ett tema.Besvar spørsmål og få endringene vist i løpet av minutter. Temavedlikeholderen definerer elementer, spørsmål og språk for det.

Finn ut mer

MapComplete tilbyr alltid neste steg for å lære mer om OpenStreetMap.

  • Når bygd inn på en nettside lenker iframe-elementet til en fullskjermsversjon av MapComplete
  • Fullskjermsversjonen tilbyr info om OpenStreetMap
  • Visning fungerer uten innlogging, men redigering krever en OSM-konto.
  • Hvis du ikke er innlogget blir du spurt om å gjøre det.
  • Bpr dy har besvart ett spørsmål, kan du legge til nye punkter på kartet.
  • Etter en stund vil OSM-etiketter bli vist, som i sin tur lenker til wiki-en.


Har du oppdaget et problem? Har du en funksjonsforespørsel? Vil du bistå oversettelsen? Gå til kildekoden eller problemsporeren.

Vil du se din framdrift? Følg redigeringsantallet på OsmCha.

", + "aboutMapcomplete": "

Om MapComplete

Bruk det til å legge til OpenStreetMap-info i ett tema. Besvar spørsmål og få endringene vist i løpet av minutter. I de fleste temaene kan du legge inn bilder eller legge igjen en vurdering. Temavedlikeholderen definerer elementer, spørsmål og språk for det.

Finn ut mer

MapComplete tilbyr alltid neste steg for å lære mer om OpenStreetMap.

  • Når bygd inn på en nettside lenker iframe-elementet til en fullskjermsversjon av MapComplete.
  • Fullskjermsversjonen tilbyr info om OpenStreetMap.
  • Visning fungerer uten innlogging, men redigering krever en OSM-konto.
  • Hvis du ikke er innlogget blir du spurt om å gjøre det.
  • Når du har besvart ett spørsmål, kan du legge til nye funksjoner på kartet.
  • Etter en stund vil OSM-etiketter bli vist, som i sin tur lenker til wiki-en.


Har du oppdaget et problem? Har du en funksjonsforespørsel? Vil du bistå oversettelsen? Gå til kildekoden eller problemsporeren.

Vil du se din framdrift? Følg redigeringsantallet på OsmCha.

", "add": { "addNew": "Legg til {category} her", "addNewMapLabel": "Legg til nytt element", @@ -80,6 +80,8 @@ "donate": "Støtt MapComplete finansielt", "editId": "Åpne den nettbaserte OpenStreetMap-behandleren her", "editJosm": "Rediger med JOSM", + "followOnMastodon": "Følg MapComplete på Mastodon", + "followOnTwitter": "Følg MapComplete på Twitter", "iconAttribution": { "title": "Brukte ikoner" }, @@ -348,7 +350,8 @@ "title": "Velg fil" }, "selectTheme": { - "title": "Velg et tema" + "title": "Velg et tema", + "unmatchedTitle": "Følgende elementer samsvarer ikke med noen av forhåndsinnstillingene" }, "title": "Importhjelper" }, diff --git a/langs/nl.json b/langs/nl.json index 16d2729f5..1d5b1a4f1 100644 --- a/langs/nl.json +++ b/langs/nl.json @@ -56,6 +56,7 @@ "importTags": "Het element zal deze tags krijgen: {tags}", "officialThemesOnly": "In onofficiële thema's is de importeerknop uitgeschakeld om ongelukjes te vermijden", "wrongType": "Dit object is geen punt of lijn, en kan daarom niet geïmporteerd worden", + "wrongTypeToConflate": "Dit element is geen punt of weg en kan dus niet samengevoegd worden", "zoomInMore": "Zoom verder in om dit object af te handelen" }, "importTags": "Het object zal deze tags krijgen: {tags}", @@ -452,14 +453,50 @@ "commandNotFound": "Sorry, ik heb je commando niet verstaan. Zou het kunnen dat je {0}, {1}, {2} of {2} bedoelt?

Je kan ook help sturen om een overzicht van alle commando's te zien

", "commands": { "dm": { + "argbody": "Het commando om uit te voeren", + "argto": "De ID van degene die de output moet ontvangen", + "commandNotFound": "Commando {key} niet gevonden - zie help voor een overzicht van alle commando's", + "docs": "Voert een commando uit en stuurt de output naar iemand anders", + "executing": "{_} aan het uitvoeren, het resultaat stuur ik naar {to}", "failed": "I kon {cmd} niet uitvoeren doordag {message}", + "noDm": "Ik kon geen chat opzetten met {to}", + "receipt": "Ik leverde het bericht af aan {to}", + "selectValidCommand": "Geef een geldig commando", + "selectValidUser": "Geef een geldige ID van een gebruiker", "sendReason": "Ik stuurde jou dit bericht omdat {sender} mij gevraagd heeft om je het resultaat van {cmd} te sturen" }, "documentation": { + "argid": "Het id van een {list} of {list_end} waarvan de documentatie gevraagd is. Je can ook {coded_list} schrijven om beschikbare ids te zien.", "didYouMean": "Bedoelde je misschien één van onderstaande URL-parameters? ", "docs": "Vraag documentatie over een MapComplete-laag, -thema of URL-parameter", + "file": { + "plural": "bestanden", + "singular": "bestand" + }, + "inputElement": { + "plural": "input elementen", + "singular": "inputelement" + }, + "layer": { + "plural": "lagen", + "singular": "laag" + }, + "noIdIntro": "Om meer informatie te krijgen over een MapComplete-deel, moet je een ID geven. Bekende types zijn {list}", "notFound": "Ik kong geen {singular} vinden met naam {id}.", - "urlParam": "URL-parameter {id}" + "overview": "De volgende {plural} bestaan:", + "theme": { + "plural": "kaartthemas", + "singular": "kaartthema" + }, + "urlParam": "URL-parameter {id}", + "url_parameter": { + "plural": "url-parameters", + "singular": "url-parameter" + }, + "visualisation": { + "plural": "visualisaties", + "singular": "visualisatie" + } }, "dream": { "docs": "Stuurt een dromerige, computer-gegenereerde tekst", @@ -477,9 +514,11 @@ "supported": "De commando's die ik ken zijn:" }, "info": { + "argsearch": "Het ID van een OSM-object of een zoekterm", "closed": "Gesloten", "closedTodayAndTomorrow": "Vandaag en morgen gesloten", "couldNotDownload": "Ik kon {id} niet downloaden", + "docs": "Haal informatie op over een OSM-object. Dit kan met het ID of via een zoekterm. De objecten worden geinterpreteerd en getoond.", "editWith": "Bewerk dit element op {title}", "fetchingInfoAbout": "Data over {id} aan het ophalen...", "foundResults": "Ik vond {total} resultaten voor {search}, ik ben informatie erover aan het ophalen...", @@ -510,9 +549,28 @@ "noRightsNeeded": "Het comand {role} mag door iedereen uitgevoerd worden, je hoeft die rechten niet toe te kennen", "noRolesYet": "{user} heeft op dit moment geen rechten.", "noSuchRole": "De rechten voor {role} kunnen niet gegeven worden aan {user}. Geef de commandonaam waarvoor je de rechten wilt toekennen. (Typ help voor een overzicht van alle commando's).", - "userHasRoles": "{user} heeft op dit moment de volgende rechten:" + "userHasRoles": "{user} heeft op dit moment de volgende rechten:", + "verbadd": "Voegt een rol toe aan de aangeduide gebruiker", + "verbdefault": "Geeft een lijst van rollen van de gebruiker", + "verblist": "Geeft een lijst van rollen van de gebruiker", + "verbremove": "Verwijdert een rol van de aangeduide gebruiker", + "verbrevoke": "Verwijdert alle rollen van de gebruiker" + }, + "scheme": { + "argkey": "De naam van de key", + "docs": "Geeft informatie over een sleutel in een themaconfiguratiebestand", + "noMatchingLayer": "Geen overeenkomende sleutels gevonden, misschien bedoelde je een van de volgende:", + "notype": "geen type aangeduid", + "title": "{key} (gebruikt in {path}, {type})" }, "search": { + "announceLimited": "

Ik toon enkel de {cutoff} items het dichtst bij de gezochte locatie.

", + "arglayerid": "De naam van een laag OF een enkele zoekterm", + "argsearch": "De zoekterm", + "argverb": "Zoek ofwel in een geografisch gebied (zoals een stand) of zoek in de buurt van een POI", + "noMatchingLayer": "Ik vind geen overeenkomende laag", + "noNearOrIn": "Sorry, Ik begreep je opdracht niet omdat ik geen dichtbij of in in je zoekopdracht.\nProbeer iets als Zoek drinkwater in Londen, Zoek frituur in Brussel

\n

Daarnaast kan je ook info {cmd} proberen, om info te krijgen over een enkel object.

", + "overview": "Ik heb {length} overeenkomende items gevonden.", "searching": "Aan het zoeken naar {layerTitle} {mode} {search}..." }, "shutdown": { @@ -531,7 +589,12 @@ "p3": "Er zijn nog meer commando's, stuur me help om ze allemaal te zien." }, "wiki": { - "docs": "Stuurt een (deel van) de gevraagde pagina van {backend}. In een publieke ruimte stuur ik enkel de eerste paragraaf, in een privaat bericht krijg je de volledige pagina." + "docs": "Stuurt een (deel van) de gevraagde pagina van {backend}. In een publieke ruimte stuur ik enkel de eerste paragraaf, in een privaat bericht krijg je de volledige pagina.", + "gotResults": "Ik vond {count} resultaten voor {search}:", + "loadingFailed": "Sorry, pagina {pagename} kon niet geladen worden", + "noWiki": "Gelieve een zoekterm voor een wiki-pagina te geven", + "nothingFound": "Ik kon niets vinden voor {search} op {backend}", + "searching": "Aan het zoeken op {backend}…" } }, "decryptionFailed": "Sorry, ik kon je bericht niet ontcijferen. Probeer om deze kamer te verlaten en opnieuw te connecteren", diff --git a/langs/pt.json b/langs/pt.json index 5585b5ded..4c9362c39 100644 --- a/langs/pt.json +++ b/langs/pt.json @@ -11,6 +11,8 @@ "delete": "Eliminar", "explanations": { "hardDelete": "Este ponto será eliminado no OpenStreetMap. Pode ser recuperado por um contribuidor com experiência", + "retagNoOtherThemes": "Este recurso será reclassificado e escondido desta aplicação", + "retagOtherThemes": "Este recurso será remarcado e ficará visível em {otherThemes}", "selectReason": "Por favor, selecione a razão porque este elemento deve ser eliminado", "softDelete": "Este elemento será atualizado e ocultado nesta aplicação. {reason}" }, @@ -39,7 +41,7 @@ }, "general": { "about": "Edite e adicione facilmente o OpenStreetMap para um determinado tema", - "aboutMapcomplete": "

Sobre o MapComplete

Use-o para adicionar informações ao OpenStreetMap sobre um tema específico. Responda a perguntas e em poucos minutos as suas contribuições estão disponíveis em todos os lugares. O responsável pelo tema define os elementos, as perguntas e os idiomas disponíveis nele.

Descubra mais

O MapComplete mostra sempre o próximo passo para saber mais sobre o OpenStreetMap.

  • Quando incorporado num site, o iframe liga-se ao MapComplete em ecrã cheio.
  • A versão ecrã cheio fornece informações sobre o OpenStreetMap
  • A visualização funciona sem ser preciso autenticar-se, mas a edição requer uma conta no OpenStreetMap.
  • Se não estiver autenticado, é solicitado a fazê-lo
  • Após responder a uma pergunta, pode adicionar novos pontos ao mapa
  • Depois de um tempo, as etiquetas reais do OpenStreetMap são mostradas, mais tarde vinculando-se à wiki


Deparou-se com um problema? Quer uma nova funcionalidade? Quer ajudar a traduzir? Vá ao código-fonte ou rastreador de problemas.

Quer ver o seu progresso? Veja a contagem de edições em OsmCha.

", + "aboutMapcomplete": "

Sobre o MapComplete

Use-o para adicionar informações ao OpenStreetMap sobre um tema específico. Responda a perguntas e em poucos minutos as suas contribuições estão disponíveis em todos os lugares. Na maioria dos temas pode adicionar imagens ou mesmo deixar uma avaliação. O responsável pelo tema define os elementos, as perguntas e os idiomas disponíveis nele.

Descubra mais

O MapComplete mostra sempre o próximo passo para saber mais sobre o OpenStreetMap.

  • Quando incorporado num site, o iframe liga-se ao MapComplete em ecrã cheio.
  • A versão ecrã cheio fornece informações sobre o OpenStreetMap
  • A visualização funciona sem ser preciso autenticar-se, mas a edição requer uma conta no OpenStreetMap.
  • Se não estiver autenticado, é solicitado a fazê-lo
  • Após responder a uma pergunta, pode adicionar novos pontos ao mapa
  • Depois de um tempo, as etiquetas reais do OpenStreetMap são mostradas, mais tarde vinculando-se à wiki


Deparou-se com um problema? Quer uma nova funcionalidade? Quer ajudar a traduzir? Vá ao código-fonte ou rastreador de problemas.

Quer ver o seu progresso? Veja a contagem de edições em OsmCha.

", "add": { "addNew": "Adicionar {category} aqui", "addNewMapLabel": "Adicionar novo item", @@ -50,8 +52,14 @@ "hasBeenImported": "Este ponto já foi importado", "import": { "hasBeenImported": "Este objeto foi importado", - "importTags": "Este elemento irá receber {tags}" + "howToTest": "Para testar, adicione test=true ou backend=osm-test ao URL. O conjunto de alterações será impresso na consola. Por favor abra um \"pull request\" para oficializar este tema de modo a ativar efetivamente o botão de importação.", + "importTags": "Este elemento irá receber {tags}", + "officialThemesOnly": "O botão de importação está desativado em temas não oficiais para evitar acidentes", + "wrongType": "Este elemento não é um ponto ou uma linha e não pode ser importado", + "wrongTypeToConflate": "Este elemento não é um ponto ou uma linha e não pode ser fundido", + "zoomInMore": "Amplie mais para importar este elemento" }, + "importTags": "Este elemento irá receber {tags}", "intro": "Clicou em algum lugar onde ainda não há dados conhecidos.
", "layerNotEnabled": "A camada {layer} não está ativada. Ative esta camada para adicionar um ponto", "openLayerControl": "Abra a caixa de controlo da camada", @@ -60,13 +68,24 @@ "stillLoading": "Os dados ainda estão a ser carregados. Aguarde um pouco antes de adicionar um novo ponto.", "title": "Adicionar um novo ponto?", "warnVisibleForEveryone": "A sua adição será visível para todos", + "wrongType": "Este elemento não é um ponto ou uma linha e não pode ser importado", "zoomInFurther": "Amplie mais para adicionar um ponto.", "zoomInMore": "Amplie mais para importar este elemento" }, + "apply_button": { + "appliedOnAnotherObject": "O objeto {id} irá receber {tags}", + "isApplied": "As alterações são aplicadas" + }, "attribution": { "attributionContent": "

Todos os dados são fornecidos pelo OpenStreetMap e são livremente reutilizáveis sob a licença the Open DataBase License.

", "attributionTitle": "Aviso de atribuição", "codeContributionsBy": "O MapComplete foi construído por {contributors} e _blank{hiddenCount} mais contribuintes", + "donate": "Apoie o MapComplete financeiramente", + "editId": "Editar aqui com o editor online OpenStreetMap", + "editJosm": "Editar aqui com JOSM", + "followBridge": "As contas Mastodon e Twitter estão interligadas", + "followOnMastodon": "Siga o MapComplete no Mastodon", + "followOnTwitter": "Siga o MapComplete no twitter", "iconAttribution": { "title": "Ícones usados" }, diff --git a/langs/shared-questions/fr.json b/langs/shared-questions/fr.json index 4e7d5bcc8..3f7c80b62 100644 --- a/langs/shared-questions/fr.json +++ b/langs/shared-questions/fr.json @@ -91,6 +91,20 @@ }, "question": "Des prises sont elles à disposition des client·e·s en intérieur ?" }, + "smoking": { + "mappings": { + "0": { + "then": "Il est autorisé de fumer" + }, + "1": { + "then": "Il est interdit de fumer" + }, + "2": { + "then": "Il est autorisé de fumer à l'extérieur." + } + }, + "question": "Est-ce autorisé de fumer à {title()} ?" + }, "website": { "question": "Quel est le site web de {title()} ?" }, diff --git a/langs/shared-questions/nb_NO.json b/langs/shared-questions/nb_NO.json index 20738b27f..4fda6beac 100644 --- a/langs/shared-questions/nb_NO.json +++ b/langs/shared-questions/nb_NO.json @@ -91,6 +91,20 @@ }, "question": "Har denne fasiliteten stikkontakter, tilgjengelig for kunder innendørs?" }, + "smoking": { + "mappings": { + "0": { + "then": "Røyking er tillatt" + }, + "1": { + "then": "Røyking forbudt" + }, + "2": { + "then": "Røyking tillates på utsiden." + } + }, + "question": "Tillates røyking på {title()}?" + }, "website": { "question": "Hva er nettsiden til {title()}?" }, diff --git a/langs/shared-questions/pt.json b/langs/shared-questions/pt.json index 72bfbb4b1..0dfd8c9bf 100644 --- a/langs/shared-questions/pt.json +++ b/langs/shared-questions/pt.json @@ -91,6 +91,20 @@ }, "question": "Esta infraestrutura tem tomadas elétricas, disponíveis para os clientes quando estão no interior?" }, + "smoking": { + "mappings": { + "0": { + "then": "É permitido fumar" + }, + "1": { + "then": "Não é permitido fumar" + }, + "2": { + "then": "É permitido fumar no exterior." + } + }, + "question": "É permitido fumar em {title()}?" + }, "website": { "question": "Qual é o sítio web de {title()}?" }, diff --git a/langs/themes/de.json b/langs/themes/de.json index f843d1ba2..1773fd927 100644 --- a/langs/themes/de.json +++ b/langs/themes/de.json @@ -443,6 +443,10 @@ "description": "Eine Karte zum Anzeigen und Bearbeiten öffentlicher Trinkwasserstellen", "title": "Trinkwasserstellen" }, + "education": { + "description": "Auf dieser Karte können Sie Informationen über Bildungseinrichtungen finden und hinzufügen", + "title": "Bildung" + }, "entrances": { "description": "Eine Karte mit allen Eingängen, die wichtige Aspekte für Rollstuhlfahrer erfasst", "shortDescription": "Eingänge prüfen, um die Rollstuhlnavigation zu verbessern", @@ -710,6 +714,11 @@ "shortDescription": "Dieses Thema zeigt alle (touristischen) Karten, die OpenStreetMap kennt", "title": "Eine Karte der Karten" }, + "maxspeed": { + "description": "Diese Karte zeigt die zulässige Höchstgeschwindigkeit auf jeder Straße. Wenn eine Höchstgeschwindigkeit fehlt oder falsch ist, können Sie dies hier korrigieren.", + "shortDescription": "Diese Karte zeigt die zulässige Höchstgeschwindigkeit auf jeder Straße.", + "title": "Höchstgeschwindigkeit" + }, "nature": { "description": "Auf dieser Karte findet man interessante Informationen für Touristen und Naturliebhaber. ", "shortDescription": "Eine Karte mit interessanten Orten für Naturliebhaber", diff --git a/langs/themes/fr.json b/langs/themes/fr.json index 9ebc22c96..947c59f2c 100644 --- a/langs/themes/fr.json +++ b/langs/themes/fr.json @@ -4,11 +4,11 @@ "title": "Carte des défibrillateurs (DAE)" }, "artwork": { - "description": "Bienvenue sur la carte ouverte des œuvres d'art, une carte des statues, fresques, ... du monde entier", + "description": "Une carte ouverte de statues, bustes, graffitis et autres œuvres d'art de par le monde", "title": "Carte ouverte des œuvres d'art" }, "benches": { - "description": "Cette carte affiche les bancs mappés dans OpenStreetMap, entre autres : bancs des transports en commun, bancs publics, etc. À l'aide de votre compte OpenStretMap, vous pourrez ajouter de nouveaux bancs ou modifier les bancs existants.", + "description": "Cette carte affiche les bancs cartographiés dans OpenStreetMap, entre autres : bancs des transports en commun, bancs publics, etc. À l'aide de votre compte OpenStreetMap, vous pourrez ajouter de nouveaux bancs ou modifier les bancs existants.", "shortDescription": "Carte des bancs", "title": "Bancs" }, @@ -98,10 +98,10 @@ "caravansites-long-term": { "mappings": { "0": { - "then": "Oui, mais il est possible d’y passer seulement une nuit" + "then": "Il est possible d’y passer seulement une nuit" }, "1": { - "then": "Non, il n’y a pas de résidents permanents" + "then": "Il n’y a pas de résidents permanents" }, "2": { "then": "C’est possible sous contrat (Cette option fera disparaître le site de la carte)" @@ -337,17 +337,123 @@ "title": "Aménagements cyclables" }, "cycle_infra": { - "description": "Une carte montrant les aménagements cyclables et où l’on peut rajouter des informations. Réalisée durant #osoc21." + "description": "Une carte montrant les aménagements cyclables et où l’on peut rajouter des informations. Réalisée durant #osoc21.", + "shortDescription": "Une carte où vous pouvez visualiser et modifier les éléments relatifs à l'infrastructure cyclable.", + "title": "Infrastructure cyclable" + }, + "cyclenodes": { + "description": "Cette carte montre les réseaux de nœuds cyclistes et vous permet d'ajouter facilement de nouveaux nœuds", + "layers": { + "0": { + "name": "liens noeud à noeud", + "tagRenderings": { + "node2node-survey:date": { + "question": "Quand cette liaison de nœud à nœud a-t-elle été contrôlée sur le terrain pour la dernière fois ?", + "render": "Cette lien de nœud à nœud a été vérifié sur le terrain le {survey:date}" + } + }, + "title": { + "mappings": { + "0": { + "then": "lien noeud à noeud {ref}" + } + }, + "render": "lien noeud à noeud" + } + }, + "1": { + "name": "noeuds", + "tagRenderings": { + "node-expected_rcn_route_relations": { + "question": "A combien dautres nœuds vélo ce nœud est-il lié ?", + "render": "Ce noeud est lié à {expected_rcn_route_relations} d'autres noeuds cyclistes." + }, + "node-survey:date": { + "question": "Quand ce nœud cyclable a-t-il été vérifié sur le terrain pour la dernière fois ?", + "render": "Ce nœud cycliste a été verifié pour la dernière fois le {survey:date}" + } + }, + "title": { + "render": "nœud cycliste {rcn_ref}" + } + } + }, + "title": "Réseau de Nœuds Cyclistes" + }, + "cyclestreets": { + "description": "Une rue cyclable est une rue où les véhicules motorisés ne sont pas autorisés à dépasser les cyclistes. Elles sont signalées par un signal routier particulier. On trouve des rues cyclables en Belgique et aux Pays-Bas, mais aussi en Allemagne et en France. ", + "layers": { + "0": { + "description": "Une rue cyclable est une rue où les véhicules motorisés ne sont pas autorisés à dépasser les cyclistes", + "name": "Rue cyclables" + }, + "1": { + "description": "Cette rue va bientôt devenir une rue cyclable", + "name": "Future rue cyclable", + "title": { + "mappings": { + "0": { + "then": "{name} va bientôt devenir une rue cyclable" + } + }, + "render": "Future rue cyclable" + } + }, + "2": { + "description": "Calque pour marquer une rue comme cyclable", + "name": "Toutes les rues", + "title": { + "render": "Rue" + } + } + }, + "overrideAll": { + "tagRenderings+": { + "0": { + "mappings": { + "0": { + "then": "Cette rue est une rue cyclable (et est limitée à 30 km/h)" + }, + "1": { + "then": "Cette rue est une rue cyclable" + }, + "2": { + "then": "Cette rue sera bientôt une rue cyclable" + }, + "3": { + "then": "Cette rue n’est pas une rue cyclable" + } + }, + "question": "La rue {name} est-elle une rue cyclable ?" + }, + "1": { + "question": "Quand cette rue deviendra-t-elle cyclable ?", + "render": "Cette rue deviendra une rue cyclable le {cyclestreet:start_date}" + } + } + }, + "shortDescription": "Une carte des rues cyclables", + "title": "Rue cyclables" }, "cyclofix": { "description": "Le but de cette carte est de présenter aux cyclistes une solution facile à utiliser pour trouver l'infrastructure appropriée à leurs besoins.

Vous pouvez suivre votre localisation précise (mobile uniquement) et sélectionner les couches qui vous concernent dans le coin inférieur gauche. Vous pouvez également utiliser cet outil pour ajouter ou modifier des épingles (points d'intérêt) sur la carte et fournir plus de données en répondant aux questions.

Toutes les modifications que vous apportez seront automatiquement enregistrées dans la base de données mondiale d'OpenStreetMap et peuvent être librement réutilisées par d'autres.

Pour plus d'informations sur le projet cyclofix, rendez-vous sur cyclofix.osm.be.", "title": "Cyclofix - Une carte ouverte pour les cyclistes" }, "drinking_water": { - "description": "Cette carte affiche les points d'accès public à de l'eau potable, et permet d'en ajouter facilement", + "description": "Cette carte affiche les points d'accès public à de l'eau potable et permet d'en ajouter facilement", "title": "Eau potable" }, + "education": { + "description": "Sur cette carte, vous trouverez des informations concernant tous les types d'écoles et d'enseignement. Vous pouvez facilement ajouter plus d'informations", + "title": "Enseignement" + }, + "entrances": { + "description": "Une carte renseignant toutes les entrées (importante pour les utilisateurs de sièges roulants", + "shortDescription": "Vérifez les entrées pour faciliter le routage des utilisateurs de sièges roulants", + "title": "Entrées" + }, "etymology": { + "description": "Retrouvez sur cette carte l’origine du nom d’un élément. Les rues, bâtiments, etc proviennent d’OpenStreetMap et sont liés aux données venant de Wikidata. La fenêtre pop-up affiche l’article Wikipedia (s’il existe) ou l’infobox Wikidata de l’objet dont provient le nom. Si l’objet a sa propre page Wikedia, elle sera aussi affichée.

Vous pouvez contribuer aussi !Zoomez suffisamment et toutes les rues seront affichées. Cliquez-en une et une boîte de recherche Wikidata apparaîtra. En quelques clics, vous pouvez ajouter un lien étymologique. Vous devez disposer d’un compte OpenStreetMap gratuit.", "layers": { "1": { "override": { @@ -473,9 +579,14 @@ } }, "shortDescription": "Cette carte indique les murs végétalisés avec des photos et des informations comme leur orientation, l’ensoleillement et le type de plantes.", - "title": "Facade gardens" + "title": "Jardins de façade" + }, + "food": { + "description": "Restaurants et restaurants rapides", + "title": "Restaurants et restaurants rapides" }, "fritures": { + "description": "Retrouves vos friteries préférées sur cette carte !", "layers": { "0": { "override": { @@ -489,43 +600,342 @@ "description": "Les vélos fantômes sont des mémoriaux pour les cyclistes tuées sur la route, prenant la forme de vélos blancs placés à proximité des faits.

Cette carte indique leur emplacement à partir d’OpenStreetMap. Il est possible de contribuer aux informations ici, sous réserve d’avoir un compte OpenStreetMap (gratuit).", "title": "Vélo fantôme" }, + "grb": { + "description": "Ce thème tente d’aider l’import automatique GRB.", + "layers": { + "1": { + "tagRenderings": { + "building type": { + "question": "De quel type de bâtiment s’agit-il ?" + } + } + }, + "6": { + "tagRenderings": { + "Import-button": { + "mappings": { + "1": { + "then": "Ce bâtiment a des ouvertures et est modélisé comme une relation. Il ne peut être fusionné. Fusionnez-le manuellement via le site d’export de bâtiment {open_in_josm()}" + } + } + } + } + } + } + }, + "grb_fixme": { + "layers": { + "0": { + "tagRenderings": { + "building type": { + "question": "De quel type de bâtiment s’agit-il ?" + } + } + } + } + }, + "hackerspaces": { + "description": "Retrouvez, renseignez ou modifiez des ateliers numériques ouverts", + "shortDescription": "Une carte des ateliers numériques ouverts", + "title": "Ateliers numériques ouvertS" + }, "hailhydrant": { - "description": "Sur cette carte on trouve et met à jour les bornes incendies, extincteurs, casernes de pompiers et ambulanciers dans son quartier.
Les options en haut à gauche permettent de localiser sa position (sur téléphone) et de filtrer les éléments. Il est possible d’utiliser cet outil pour ajouter et éditer les points d’intérêt de la carte et d’y ajouter des détails en répondant aux questions.
Toutes les modifications sont automatiquement enregistrées dans la base de données OpenStreetMap et peuvent êtres librement réutilisées par d’autres.", + "description": "Sur cette carte on trouve et met à jour les bornes incendies, extincteurs, casernes de pompiers et ambulanciers dans son quartier.\n\nLes options en haut à gauche permettent de localiser sa position (sur téléphone) et de filtrer les éléments. Il est possible d’utiliser cet outil pour ajouter et éditer les points d’intérêt de la carte et d’y ajouter des détails en répondant aux questions.\n\nToutes les modifications sont automatiquement enregistrées dans la base de données OpenStreetMap et peuvent êtres librement réutilisées par d’autres.", "shortDescription": "Carte indiquant les bornes incendies, extincteurs, casernes de pompiers et ambulanciers.", - "title": "Bornes incendies, extincteurs, casernes de pompiers et ambulanciers." + "title": "Bornes incendies, extincteurs, casernes de pompiers et ambulanciers" + }, + "mapcomplete-changes": { + "description": "Cette carte montre les changements faits avec MapComplete", + "layers": { + "0": { + "description": "Montre les changements faits avec MapComplete", + "filter": { + "0": { + "options": { + "0": { + "question": "Nom du thème contient {search}" + } + } + }, + "1": { + "options": { + "0": { + "question": "Contribué par {search}" + } + } + }, + "2": { + "options": { + "0": { + "question": "Pas contribué par {search}" + } + } + } + }, + "tagRenderings": { + "contributor": { + "render": "Changement effectué par {_last_edit:contributor}" + }, + "render_id": { + "render": "Groupe de modifications {id}" + }, + "theme": { + "mappings": { + "0": { + "then": "Changement avec le thème non-officiel {theme}" + } + }, + "render": "Changement avec le thème {theme}" + } + }, + "title": { + "render": "Groupe de modifications pour {theme}" + } + }, + "1": { + "override": { + "tagRenderings": { + "link_to_more": { + "render": "D’autres statistiques sont disponibles ici" + } + } + } + } + }, + "shortDescription": "Montrer les changements faits avec MapComplete", + "title": "Changements faits avec MapComplete" }, "maps": { "description": "Sur cette carte sont affichées les cartes (plans) mappées dans OpenStreetMap.

Si une carte est manquante, vous pouvez l'ajouer facilement avec un compte OpenStreetMap.", "shortDescription": "Cette carte affiche toutes les cartes (plans) mappés dans OpenStreetMap", "title": "Carte des cartes" }, + "maxspeed": { + "description": "Cette carte montre la vitesse maximale autorisée sur les routes. Si la vitesse maximale est manquante ou erronée, vous pouvez la corriger ici.", + "shortDescription": "Cette carte montre la vitesse maximale autorisée sur les routes.", + "title": "Vitesse maximale" + }, + "nature": { + "description": "Retrouvez sur cette carte des informations pour les touristes et les amoureux de la nature, telles que ", + "shortDescription": "Une carte pour les amoureux de la nature", + "title": "Dans la nature" + }, + "notes": { + "description": "Une note est une épingle sur la carte avec du text pour indiquer une erreur.

Assurez-vous d’utiliser le filtre pour chercher des utilisateurs and du texte.", + "title": "Notes sur OpenStreetMap" + }, + "observation_towers": { + "description": "Tours libres d’accès pour admirer la vue", + "shortDescription": "Tours libres d’accès pour admirer la vue", + "title": "Tours d’observation" + }, "openwindpowermap": { "description": "Une carte indiquant les éoliennes et permettant leur édition.", "title": "OpenWindPowerMap" }, "parkings": { "description": "Cette carte affiche différents lieux de stationnement", + "shortDescription": "Cette montre les emplacements de parking", "title": "Stationnement" }, "personal": { - "description": "Crée un thème personnalisé basé sur toutes les couches disponibles de tous les thèmes", + "description": "Créez un thème personnalisé basé sur toutes les couches disponibles de tous les thèmes. Pour afficher des données, ouvrez la sélection de couches", "title": "Thème personnalisé" }, + "pets": { + "description": "Retrouvez sur cette carte des points d’intérêts pour votre animal : vétérinaires, parcs à chien, animaleries, restaurants acceptant les chiens, etc.", + "layers": { + "1": { + "override": { + "name": "Restaurants acceptant les chiens" + } + }, + "2": { + "override": { + "name": "Magasins acceptant les chiens", + "title": { + "render": "Magasins acceptant les chiens" + } + } + }, + "6": { + "override": { + "presets": { + "0": { + "description": "Un magasin où vous pouvez amener votre chien presque partout", + "title": "magasin acceptant les chiens" + } + } + } + } + }, + "title": "Vétérinaires, parcs à chiens et autres endroits pour chiens" + }, "playgrounds": { "description": "Cette carte affiche les aires de jeux et permet d'ajouter plus d'informations", "shortDescription": "Une carte des aires de jeux", "title": "Aires de jeux" }, + "postal_codes": { + "description": "Codes postaux", + "layers": { + "0": { + "name": "codes postaux", + "tagRenderings": { + "postal_code": { + "render": "Le code postal est {postal_code}" + } + }, + "title": { + "render": "Code postal {postal_code}" + } + }, + "2": { + "name": "mairies", + "title": { + "render": "Mairie {name}" + } + } + }, + "shortDescription": "Codes postaux", + "title": "Codes postaux" + }, + "postboxes": { + "description": "Trouvez et ajoutez des bureaux de poste et boîtes à lettres sur cette carte. Utilisez cette carte où vous pouvez envoyer vos cartes postales ! :)
Vous avez trouvez une erreur ou une boîte à lettres est manquante ? Vous pouvez modifier cette carte avec un compte OpenStreetMap gratuit. ", + "layers": { + "0": { + "description": "Le calque montrant les boîtes à lettres.", + "name": "Boîtes à lettres", + "presets": { + "0": { + "title": "une boîte à lettres" + } + }, + "title": { + "render": "Boîte à lettres" + } + }, + "1": { + "description": "Un claque montrant les bureaux de poste.", + "filter": { + "0": { + "options": { + "0": { + "question": "Ouvert actuellement" + } + } + } + }, + "name": "Bureaux de poste", + "presets": { + "0": { + "title": "un bureau de poste" + } + }, + "tagRenderings": { + "OH": { + "mappings": { + "0": { + "then": "Ouvert 24h/24 (jours fériés compris)" + } + }, + "question": "Quelles sont les heures d’ouverture de ce bureau de poste ?", + "render": "Heures d’ouverture : {opening_hours_table()}" + } + }, + "title": { + "render": "Bureau de poste" + } + } + }, + "shortDescription": "Une carte des bureaux de poste et des boîtes à lettres", + "title": "Carte des Bureaux de Poste et Boîtes à Lettres" + }, "shops": { - "description": "Sur cette carte, vous pouvez ajouter des informations sur les magasins, horaires d'ouverture et numéro de téléphone", + "description": "Sur cette carte, vous pouvez ajouter des informations sur les magasins, leurs horaires d'ouverture et leurs numéros de téléphone", "shortDescription": "Carte modifiable affichant les informations de base des magasins", "title": "Carte des magasins" }, + "sidewalks": { + "description": "Thème expérimental", + "layers": { + "0": { + "description": "Calque montrant les trottoirs", + "name": "Trottoirs", + "tagRenderings": { + "streetname": { + "render": "Cette rue s’appelle {name}" + } + }, + "title": { + "render": "{name}" + } + } + }, + "shortDescription": "Cartographier des trottoirs", + "title": "Trottoirs" + }, "sport_pitches": { "description": "Un terrain de sport est une zone faite pour pratiquer un sport", "shortDescription": "Une carte montrant les terrains de sport", "title": "Terrains de sport" }, + "street_lighting": { + "description": "Retrouvez tout ce qui touche à l’éclairage de rue sur cette carte", + "layers": { + "1": { + "name": "Rues éclairées", + "tagRenderings": { + "lit": { + "mappings": { + "0": { + "then": "Cette rue est éclairée" + }, + "1": { + "then": "Cette rue n’est pas éclairée" + }, + "2": { + "then": "Cette rue est éclairée la nuit" + }, + "3": { + "then": "Cette rue est éclairée en permanence" + } + }, + "question": "Cette est-elle éclairée ?" + } + }, + "title": { + "render": "Rue éclairée" + } + }, + "2": { + "name": "Toutes les rues", + "tagRenderings": { + "lit": { + "mappings": { + "0": { + "then": "Cette rue est éclairée" + }, + "1": { + "then": "Cette rue n’est pas éclairée" + }, + "2": { + "then": "Cette rue est éclairée la nuit" + }, + "3": { + "then": "Cette rue est éclairée en permanence" + } + }, + "question": "Cette rue est-elle éclairée ?" + } + }, + "title": { + "render": "Rue" + } + } + }, + "title": "Éclairage de Rue" + }, "surveillance": { "description": "Cette carte indique l’emplacement des caméras de surveillance.", "shortDescription": "Caméras et autres dispositifs de surveillance", @@ -539,5 +949,14 @@ "description": "Cartographions tous les arbres !", "shortDescription": "Carte des arbres", "title": "Arbres" + }, + "waste": { + "description": "Carte des poubelles et infrastructures de recyclage.", + "title": "Déchets" + }, + "waste_basket": { + "description": "Retrouvez les poubelles près de vous. Si une poubelle est manquante, vous pouvez l’ajouter vous même", + "shortDescription": "Une carte des poubelles", + "title": "Poubelles" } } \ No newline at end of file diff --git a/langs/themes/nb_NO.json b/langs/themes/nb_NO.json index 1f1d624b2..71a14b17c 100644 --- a/langs/themes/nb_NO.json +++ b/langs/themes/nb_NO.json @@ -8,16 +8,21 @@ "title": "Kunstkort" }, "benches": { + "description": "Viser alle benker som er registrert i OpenStreetMap: Individuelle benker, og benker som tilhører offentlig transport eller -skur. Med en OpenStreetMap-konto kan du kartlegge nye benker eller redigere eksisterende.", "shortDescription": "Et benkekart", "title": "Benker" }, "bicycle_rental": { + "description": "Her finner du mange sykkelutleiestasjoner slik de er kjent for OpenStreetMap", + "shortDescription": "Sykkelutleiestasjoner og sykkelutleiebutikker", "title": "Sykkelutleie" }, "bicyclelib": { + "description": "Et sykkelbibliotek er et sted der man kan låne sykler, ofte for en liten årlig sum. I særdeleshet finnes de for unger som lar dem bytte til en større sykkel når de har vokst fra den de har.", "title": "Sykkelbibliotek" }, "binoculars": { + "description": "Stedsbundne kikkerter på påle. Vanligvis på turiststeder, utkikkspunkter, på toppen av utsiktstårn, og noen ganger i naturreservat.", "shortDescription": "Et kart over fastmonterte kikkerter", "title": "Kikkerter" }, @@ -25,6 +30,7 @@ "title": "Kart over åpne bokhyller" }, "cafes_and_pubs": { + "description": "Kneiper og barer", "title": "Kafeer og kneiper" }, "campersite": { @@ -46,7 +52,44 @@ "1": { "then": "Kan brukes gratis" } - } + }, + "question": "Tar dette stedet en avgift?" + }, + "caravansites-internet": { + "mappings": { + "0": { + "then": "Det finnes tilgang til Internett" + }, + "1": { + "then": "Det finnes tilgang til Internett" + }, + "2": { + "then": "Det finnes ingen tilgang til Internett" + } + }, + "question": "Tilbyr stedet tilgang til Internett?" + }, + "caravansites-internet-fee": { + "mappings": { + "0": { + "then": "Tilgang til Internett koster ekstra" + }, + "1": { + "then": "Man må ikke betale ekstra for tilgang til Internett" + } + }, + "question": "Må man betale for tilgang til Internett?" + }, + "caravansites-long-term": { + "mappings": { + "0": { + "then": "Det finnes noen plasser for langtidsleie, men man kan også bruke dem på dagsbasis" + }, + "1": { + "then": "Det er ingen permanente gjester her" + } + }, + "question": "Tilbyr dette stedet plasser for langtidsleie?" }, "caravansites-name": { "question": "Hva heter dette stedet?", @@ -71,6 +114,13 @@ }, "1": { "tagRenderings": { + "dumpstations-access": { + "mappings": { + "0": { + "then": "Du trenger en nettverksnøkkel/kode for å bruke dette" + } + } + }, "dumpstations-charge": { "render": "Dette stedet tar {charge}" }, @@ -83,6 +133,9 @@ "then": "Kan brukes gratis" } } + }, + "dumpstations-waterpoint": { + "question": "Har dette stedet et vannkranssted?" } } } @@ -104,10 +157,12 @@ } }, "charging_stations": { + "description": "Finn og merk info om ladestasjoner", "shortDescription": "Et verdensomspennende kart over ladestasjoner", "title": "Ladestasjoner" }, "climbing": { + "description": "Forskjellige klatremuligheter, som f.eks. buldrehaller og steiner i naturen.", "layers": { "0": { "override": { @@ -143,6 +198,18 @@ }, "title": "Åpent klatrekart" }, + "cycle_highways": { + "description": "Kart som viser sykkelmotorveier", + "layers": { + "0": { + "name": "sykkelmotorveier", + "title": { + "render": "sykkelmotorvei" + } + } + }, + "title": "Sykkelmotorveier" + }, "cycle_infra": { "shortDescription": "Alt relatert til sykkelinfrastruktur.", "title": "Sykkelinfrastruktur" @@ -199,7 +266,12 @@ "3": { "then": "Denne gaten er ikke en sykkelvei" } - } + }, + "question": "Er {name}-gaten en sykkelgate?" + }, + "1": { + "question": "Når vil denne gaten bli en sykkelgate?", + "render": "Denne gaten vil bli en sykkelgate {cyclestreet:start_date}" } } }, @@ -210,28 +282,73 @@ "title": "Cyclofix — et åpent kart for syklister" }, "drinking_water": { - "description": "Offentlig tilgjengelig drikkevannssteder", + "description": "Offentlig tilgjengelige drikkevannssteder", "title": "Drikkevann" }, + "education": { + "title": "Utdanning" + }, "entrances": { + "description": "Alle innganger, som er en viktig undersøkelse å gjøre for rullestolsbrukere", + "shortDescription": "Lag oversikt over innganger for å hjelpe rullestolsruteplanlegging", "title": "Innganger" }, "facadegardens": { "layers": { "0": { + "presets": { + "0": { + "description": "Legg til en fronthage", + "title": "en fronthage" + } + }, "tagRenderings": { "facadegardens-description": { + "question": "Ekstra beskrivende info om hagen (hvis det trengs og ikke er gjengitt ovenfor)", "render": "Flere detaljer: {description}" }, + "facadegardens-edible": { + "mappings": { + "0": { + "then": "Det finnes spisbare planter" + }, + "1": { + "then": "Det finnes ingen spisbare planter" + } + }, + "question": "Finnes det noen spisbare planter?" + }, "facadegardens-plants": { "question": "Hva slags planter vokser her?" }, + "facadegardens-rainbarrel": { + "mappings": { + "0": { + "then": "Har regntønne" + }, + "1": { + "then": "Har ikke regntønne" + } + }, + "question": "Er det en vanntønne installert i denne hagen?" + }, + "facadegardens-start_date": { + "question": "Når ble hagen opprettet? (Årstall holder.)", + "render": "Konstruksjonsdato for hagen: {start_date}" + }, "facadegardens-sunshine": { "mappings": { + "0": { + "then": "Hagen er ikke i skyggen" + }, "1": { "then": "Denne hagen er i delvis skygge" + }, + "2": { + "then": "Hagen er i skyggen" } - } + }, + "question": "Er hagen i skygge eller ei?" } } } @@ -244,6 +361,17 @@ "ghostbikes": { "title": "Spøkelsessykler" }, + "grb_fixme": { + "layers": { + "0": { + "tagRenderings": { + "building type": { + "question": "Hva slags bygning er dette?" + } + } + } + } + }, "hailhydrant": { "title": "Hydranter, brannslukkere, brannstasjoner, og ambulansestasjoner." }, @@ -257,17 +385,51 @@ "question": "Temanavn inneholder {search}" } } + }, + "1": { + "options": { + "0": { + "question": "Laget av {search}" + } + } + }, + "2": { + "options": { + "0": { + "question": "Ikke laget av {search}" + } + } } }, "name": "Endringssettsenter", "tagRenderings": { + "contributor": { + "render": "Endring gjort av {_last_edit:contributor}" + }, "render_id": { "render": "Endringssett {id}" + }, + "theme": { + "mappings": { + "0": { + "then": "Endring med det uoffisielle temaet {theme}" + } + }, + "render": "Endring med temaet {theme}" } }, "title": { "render": "Endringssett for {theme}" } + }, + "1": { + "override": { + "tagRenderings": { + "link_to_more": { + "render": "Mer statistikk er å finne her" + } + } + } } }, "shortDescription": "Vis endringer utført med MapComplete", @@ -279,10 +441,16 @@ "notes": { "title": "Notater på OpenStreetMap" }, + "observation_towers": { + "description": "Offentlig tilgjengelige tårn for å nyte utsikten", + "shortDescription": "Offentlig tilgjengelige tårn for å nyte utsikten", + "title": "Observasjonstårn" + }, "openwindpowermap": { "title": "ÅpentVindkraftKart" }, "parkings": { + "description": "Forskjellige parkeringsplasser", "shortDescription": "Dette kartet viser forskjellige parkeringsplasser", "title": "Parkering" }, @@ -323,9 +491,17 @@ "layers": { "0": { "name": "postkoder", + "tagRenderings": { + "postal_code": { + "render": "Postnummeret er {postal_code}" + } + }, "title": { "render": "Postkode {postal_code}" } + }, + "2": { + "name": "rådhus" } }, "shortDescription": "Postkoder", @@ -340,6 +516,8 @@ } }, "1": { + "description": "Et lag som viser postkontor.", + "name": "Postkontor", "presets": { "0": { "title": "et postkontor" @@ -347,26 +525,43 @@ }, "tagRenderings": { "OH": { + "mappings": { + "0": { + "then": "Døgnåpent (inkludert helligdager)" + } + }, "render": "Åpningstider: {opening_hours_table()}" } + }, + "title": { + "render": "Postkontor" } } }, + "shortDescription": "Postbokser og postkontor", "title": "Postboks og postkontor-kart" }, "shops": { "title": "Kart over åpne butikker" }, "sidewalks": { + "description": "Eksperimentelt tema", "layers": { "0": { - "name": "Fortau" + "name": "Fortau", + "tagRenderings": { + "streetname": { + "render": "Denne gaten heter {name}" + } + } } - } + }, + "title": "Fortau" }, "street_lighting": { "layers": { "1": { + "name": "Belyste gater", "tagRenderings": { "lit": { "mappings": { @@ -382,9 +577,13 @@ }, "question": "Er denne gaten belyst?" } + }, + "title": { + "render": "Belyst gate" } }, "2": { + "name": "Alle gater", "tagRenderings": { "lit": { "mappings": { @@ -408,7 +607,11 @@ "render": "Gate" } } - } + }, + "title": "Gatebelysning" + }, + "surveillance": { + "title": "Overvåkning under overvåkning" }, "toilets": { "description": "Et kart over offentlige toaletter", @@ -421,5 +624,9 @@ }, "waste": { "title": "Avfall" + }, + "waste_basket": { + "shortDescription": "Oversikt over søppelkurver", + "title": "Søppelkurv" } } \ No newline at end of file diff --git a/package.json b/package.json index 0104e0471..044609d30 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "weblate-add-upstream": "git remote add weblate-github git@github.com:weblate/MapComplete.git", "weblate-fix": "git remote update weblate-github ; git merge weblate-github/weblate-mapcomplete-core; git merge weblate-github/weblate-mapcomplete-layers ; git merge weblate-github/weblate-mapcomplete-layer-translations", "weblate-fix-heavy": "git remote rm weblate-layers; git remote add weblate-layers https://hosted.weblate.org/git/mapcomplete/layers/; git remote update weblate-layers; git merge weblate-layers/master", - "housekeeping": "npm run generate && npm run generate:docs && npm run generate:contributor-list && git commit assets/ langs/ Docs/ -m 'Housekeeping...'", + "housekeeping": "npm run generate && npm run generate:docs && npm run generate:contributor-list && git add Docs/* && git commit assets/ langs/ Docs/ -m 'Housekeeping...'", "parseSchools": "ts-node scripts/schools/amendSchoolData.ts" }, "keywords": [ diff --git a/scripts/build.sh b/scripts/build.sh index 9413f873f..55244db13 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -1,4 +1,3 @@ -#! /bin/bash echo "Starting build" # The build script; we build the application step by step as building everything at once takes too much RAM # Should be run from the repository root diff --git a/scripts/fetchLanguages.ts b/scripts/fetchLanguages.ts index 33e24012c..12c9f4ae6 100644 --- a/scripts/fetchLanguages.ts +++ b/scripts/fetchLanguages.ts @@ -7,6 +7,9 @@ import {Utils} from "../Utils"; import ScriptUtils from "./ScriptUtils"; import {existsSync, readFileSync, writeFileSync} from "fs"; import * as used_languages from "../assets/generated/used_languages.json" +import {QuestionableTagRenderingConfigJson} from "../Models/ThemeConfig/Json/QuestionableTagRenderingConfigJson"; +import {LayerConfigJson} from "../Models/ThemeConfig/Json/LayerConfigJson"; + const languageRemap = { // MapComplete (or weblate) on the left, language of wikimedia on the right "nb":"nb_NO", @@ -25,7 +28,6 @@ async function fetch(target: string){ async function fetchRegularLanguages() { - ScriptUtils.fixUtils() console.log("Fetching languages") const sparql = 'SELECT ?lang ?label ?code \n' + @@ -67,7 +69,6 @@ async function fetchSpecial(id: number, code: string) { '} ' const url = wds.sparqlQuery(sparql) -// request the generated URL with your favorite HTTP request library const result = await Utils.downloadJson(url, {"User-Agent": "MapComplete script"}) const bindings = result.results.bindings bindings.forEach(binding => binding["code"] = {value: code}) @@ -107,6 +108,32 @@ function getNativeList(langs: Map>){ return native } +async function getOfficialLanguagesPerCountry() : Promise>{ + const lngs = new Map(); + const sparql = `SELECT ?country ?countryLabel ?countryCode ?language ?languageCode ?languageLabel + WHERE + { + ?country wdt:P31/wdt:P279* wd:Q3624078; + wdt:P297 ?countryCode; + wdt:P37 ?language. + ?language wdt:P218 ?languageCode. + SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } + }` + const url = wds.sparqlQuery(sparql) + + const result = await Utils.downloadJson(url, {"User-Agent": "MapComplete script"}) + const bindings : {countryCode: {value: string}, languageCode: {value: string}}[]= result.results.bindings + for (const binding of bindings) { + const countryCode = binding.countryCode.value + const language = binding.languageCode.value + if(lngs.get(countryCode) === undefined){ + lngs.set(countryCode, []) + } + lngs.get(countryCode).push(language) + } + return lngs; +} + async function main(wipeCache = false){ const cacheFile = "./assets/generated/languages-wd.json" if(wipeCache || !existsSync(cacheFile)){ @@ -121,7 +148,7 @@ async function main(wipeCache = false){ writeFileSync("./assets/language_native.json", JSON.stringify(nativeList, null, " ")) - const translations = Utils.MapToObj>(perId, (value, key) => { + const translations = Utils.MapToObj(perId, (value, key) => { if(!usedLanguages.has(key)){ return undefined // Remove unused languages } @@ -135,7 +162,44 @@ async function main(wipeCache = false){ writeFileSync("./assets/language_translations.json", JSON.stringify(translations, null, " ")) + + + let officialLanguages : Record; + const officialLanguagesPath = "./assets/language_in_country.json" + if(existsSync("./assets/languages_in_country.json") && !wipeCache){ + officialLanguages = JSON.parse(readFileSync(officialLanguagesPath, "utf8")) + }else { + officialLanguages = Utils.MapToObj(await getOfficialLanguagesPerCountry(), t => t) + writeFileSync(officialLanguagesPath, JSON.stringify(officialLanguages, null, " ")) + } + + const perLanguage = Utils.TransposeMap(officialLanguages); + console.log(JSON.stringify(perLanguage, null, " ")) + const mappings: {if: string, then: Record, hideInAnswer: string}[] = [] + for (const language of Object.keys(perLanguage)) { + const countries = Utils.Dedup(perLanguage[language].map(c => c.toLowerCase())) + mappings.push({ + if: "language="+language, + then: translations[language], + hideInAnswer : "_country="+countries.join("|") + }) + } + + const tagRenderings = { + id: "official-language", + mappings, + question: "What languages are spoken here?" + } + + writeFileSync("./assets/layers/language/language.json", JSON.stringify({ + id:"language", + description: "Various tagRenderings to help language tooling", + tagRenderings + }, null, " ")) + } const forceRefresh = process.argv[2] === "--force-refresh" -main(forceRefresh).then(() => console.log("Done!")) \ No newline at end of file +ScriptUtils.fixUtils() +main(forceRefresh).then(() => console.log("Done!")) + diff --git a/scripts/generateLayerOverview.ts b/scripts/generateLayerOverview.ts index a87b3ade5..81a67a69a 100644 --- a/scripts/generateLayerOverview.ts +++ b/scripts/generateLayerOverview.ts @@ -19,7 +19,6 @@ import {PrepareLayer} from "../Models/ThemeConfig/Conversion/PrepareLayer"; import {PrepareTheme} from "../Models/ThemeConfig/Conversion/PrepareTheme"; import {DesugaringContext} from "../Models/ThemeConfig/Conversion/Conversion"; import {Utils} from "../Utils"; -import {And} from "../Logic/Tags/And"; // This scripts scans 'assets/layers/*.json' for layer definition files and 'assets/themes/*.json' for theme definition files. // It spits out an overview of those to be used to load them @@ -262,6 +261,7 @@ class LayerOverviewUtils { tagRenderings: this.getSharedTagRenderings(knownImagePaths), publicLayers } + const nonDefaultLanguages : {theme: string, language: string}[] = [] for (const themeInfo of themeFiles) { let themeFile = themeInfo.parsed const themePath = themeInfo.path diff --git a/scripts/generateStats.ts b/scripts/generateStats.ts index aa0813087..8ad991945 100644 --- a/scripts/generateStats.ts +++ b/scripts/generateStats.ts @@ -66,8 +66,8 @@ async function main(includeTags = true) { writeFileSync("./assets/key_totals.json", JSON.stringify( { - keys: Utils.MapToObj(keyTotal), - tags: Utils.MapToObj(tagTotal, v => Utils.MapToObj(v)) + keys: Utils.MapToObj(keyTotal, t => t), + tags: Utils.MapToObj(tagTotal, v => Utils.MapToObj(v, t => t)) }, null, " " ) diff --git a/scripts/generateTranslations.ts b/scripts/generateTranslations.ts index 32553fe39..b4aa5a5ce 100644 --- a/scripts/generateTranslations.ts +++ b/scripts/generateTranslations.ts @@ -32,6 +32,10 @@ class TranslationPart { } addTranslationObject(translations: any, context?: string) { + if(translations["#"] === "no-translations"){ + console.log("Ignoring object at ",context,"which has '#':'no-translations'") + return; + } for (const translationsKey in translations) { if (!translations.hasOwnProperty(translationsKey)) { continue; @@ -267,6 +271,9 @@ class TranslationPart { * @param tr */ function isTranslation(tr: any): boolean { + if(tr["#"] === "no-translations") { + return false + } for (const key in tr) { if (typeof tr[key] !== "string") { return false;