Merge develop

This commit is contained in:
Pieter Vander Vennet 2022-04-13 02:44:42 +02:00
commit 01ba686270
50 changed files with 686 additions and 860 deletions

View file

@ -1,4 +1,4 @@
import {Translation} from "../../UI/i18n/Translation";
import {Translation, TypedTranslation} from "../../UI/i18n/Translation";
import {TagsFilter} from "../../Logic/Tags/TagsFilter";
import Translations from "../../UI/i18n/Translations";
import {TagUtils} from "../../Logic/Tags/TagUtils";
@ -22,8 +22,8 @@ export default class TagRenderingConfig {
public readonly id: string;
public readonly group: string;
public readonly render?: Translation;
public readonly question?: Translation;
public readonly render?: TypedTranslation<object>;
public readonly question?: TypedTranslation<object>;
public readonly condition?: TagsFilter;
public readonly configuration_warnings: string[] = []
@ -43,7 +43,7 @@ export default class TagRenderingConfig {
public readonly mappings?: {
readonly if: TagsFilter,
readonly ifnot?: TagsFilter,
readonly then: Translation,
readonly then: TypedTranslation<object>,
readonly icon: string,
readonly iconClass: string
readonly hideInAnswer: boolean | TagsFilter
@ -110,12 +110,13 @@ export default class TagRenderingConfig {
}
const type = json.freeform.type ?? "string"
let placeholder = Translations.T(json.freeform.placeholder)
let placeholder: Translation = Translations.T(json.freeform.placeholder)
if (placeholder === undefined) {
const typeDescription = Translations.t.validation[type]?.description
placeholder = Translations.T(json.freeform.key+" ("+type+")")
if(typeDescription !== undefined){
placeholder = placeholder.Subs({[type]: typeDescription})
placeholder = Translations.T(json.freeform.key+" ("+type+")").Subs({[type]: typeDescription})
}else{
placeholder = Translations.T(json.freeform.key+" ("+type+")")
}
}
@ -383,7 +384,7 @@ export default class TagRenderingConfig {
let freeformKeyDefined = this.freeform?.key !== undefined;
let usedFreeformValues = new Set<string>()
// We run over all the mappings first, to check if the mapping matches
const applicableMappings: { then: Translation, img?: string }[] = Utils.NoNull((this.mappings ?? [])?.map(mapping => {
const applicableMappings: { then: TypedTranslation<any>, img?: string }[] = Utils.NoNull((this.mappings ?? [])?.map(mapping => {
if (mapping.if === undefined) {
return mapping;
}
@ -404,7 +405,7 @@ export default class TagRenderingConfig {
const leftovers = freeformValues.filter(v => !usedFreeformValues.has(v))
for (const leftover of leftovers) {
applicableMappings.push({then:
this.render.replace("{"+this.freeform.key+"}", leftover)
new TypedTranslation<object>(this.render.replace("{"+this.freeform.key+"}", leftover).translations)
})
}
}
@ -412,7 +413,7 @@ export default class TagRenderingConfig {
return applicableMappings
}
public GetRenderValue(tags: any, defltValue: any = undefined): Translation {
public GetRenderValue(tags: any, defltValue: any = undefined): TypedTranslation<any> {
return this.GetRenderValueWithImage(tags, defltValue).then
}
@ -421,7 +422,7 @@ export default class TagRenderingConfig {
* Not compatible with multiAnswer - use GetRenderValueS instead in that case
* @constructor
*/
public GetRenderValueWithImage(tags: any, defltValue: any = undefined): { then: Translation, icon?: string } {
public GetRenderValueWithImage(tags: any, defltValue: any = undefined): { then: TypedTranslation<any>, icon?: string } {
if (this.mappings !== undefined && !this.multiAnswer) {
for (const mapping of this.mappings) {
if (mapping.if === undefined) {

View file

@ -22,7 +22,7 @@ import {OsmConnection} from "../../Logic/Osm/OsmConnection";
import Constants from "../../Models/Constants";
import ContributorCount from "../../Logic/ContributorCount";
import Img from "../Base/Img";
import {Translation} from "../i18n/Translation";
import {TypedTranslation} from "../i18n/Translation";
import TranslatorsPanel from "./TranslatorsPanel";
export class OpenIdEditor extends VariableUiElement {
@ -198,7 +198,7 @@ export default class CopyrightPanel extends Combine {
this.SetStyle("max-width:100%; width: 40rem; margin-left: 0.75rem; margin-right: 0.5rem")
}
private static CodeContributors(contributors, translation: Translation): BaseUIElement {
private static CodeContributors(contributors, translation: TypedTranslation<{contributors, hiddenCount}>): BaseUIElement {
const total = contributors.contributors.length;
let filtered = [...contributors.contributors]

View file

@ -14,7 +14,7 @@ import Title from "../Base/Title";
import {UIEventSource} from "../../Logic/UIEventSource";
import {SubtleButton} from "../Base/SubtleButton";
import Svg from "../../Svg";
import * as native_languages from "../../assets/language_native.json"
class TranslatorsPanelContent extends Combine {
constructor(layout: LayoutConfig, isTranslator: UIEventSource<boolean>) {
@ -48,7 +48,8 @@ class TranslatorsPanelContent extends Combine {
// "translationCompleteness": "Translations for {theme} in {language} are at {percentage}: {translated} out of {total}",
const translated = seed.Subs({total, theme: layout.title,
percentage: new Translation(completenessPercentage),
translated: new Translation(completenessTr)
translated: new Translation(completenessTr),
language: seed.OnEveryLanguage((_, lng) => native_languages[lng])
})
super([

View file

@ -25,7 +25,7 @@ export default class ReviewElement extends VariableUiElement {
SingleReview.GenStars(avg),
new Link(
revs.length === 1 ? Translations.t.reviews.title_singular.Clone() :
Translations.t.reviews.title.Clone()
Translations.t.reviews.title
.Subs({count: "" + revs.length}),
`https://mangrove.reviews/search?sub=${encodeURIComponent(subject)}`,
true

View file

@ -1,7 +1,7 @@
import {VariableUiElement} from "../Base/VariableUIElement";
import {UIEventSource} from "../../Logic/UIEventSource";
import Wikidata, {WikidataResponse} from "../../Logic/Web/Wikidata";
import {Translation} from "../i18n/Translation";
import {Translation, TypedTranslation} from "../i18n/Translation";
import {FixedUiElement} from "../Base/FixedUiElement";
import Loading from "../Base/Loading";
import Translations from "../i18n/Translations";
@ -22,7 +22,7 @@ export default class WikidataPreviewBox extends VariableUiElement {
private static extraProperties: {
requires?: { p: number, q?: number }[],
property: string,
display: Translation | Map<string, string | (() => BaseUIElement) /*If translation: Subs({value: * }) */>
display: TypedTranslation<{value}> | Map<string, string | (() => BaseUIElement) /*If translation: Subs({value: * }) */>
}[] = [
{
requires: WikidataPreviewBox.isHuman,

View file

@ -1,9 +1,6 @@
import Locale from "./Locale";
import {Utils} from "../../Utils";
import BaseUIElement from "../BaseUIElement";
import Link from "../Base/Link";
import Svg from "../../Svg";
import {VariableUiElement} from "../Base/VariableUIElement";
import LinkToWeblate from "../Base/LinkToWeblate";
export class Translation extends BaseUIElement {
@ -164,25 +161,7 @@ export class Translation extends BaseUIElement {
public AllValues(): string[] {
return this.SupportedLanguages().map(lng => this.translations[lng]);
}
/**
* Substitutes text in a translation.
* If a translation is passed, it'll be fused
*
* // Should replace simple keys
* new Translation({"en": "Some text {key}"}).Subs({key: "xyz"}).textFor("en") // => "Some text xyz"
*
* // Should fuse translations
* const subpart = new Translation({"en": "subpart","nl":"onderdeel"})
* const tr = new Translation({"en": "Full sentence with {part}", nl: "Volledige zin met {part}"})
* const subbed = tr.Subs({part: subpart})
* subbed.textFor("en") // => "Full sentence with subpart"
* subbed.textFor("nl") // => "Volledige zin met onderdeel"
*/
public Subs(text: any, context?: string): Translation {
return this.OnEveryLanguage((template, lang) => Utils.SubstituteKeys(template, text, lang), context)
}
public OnEveryLanguage(f: (s: string, language: string) => string, context?: string): Translation {
const newTranslations = {};
for (const lang in this.translations) {
@ -278,5 +257,28 @@ export class Translation extends BaseUIElement {
return this.txt
}
}
export class TypedTranslation<T> extends Translation {
constructor(translations: object, context?: string) {
super(translations, context);
}
/**
* Substitutes text in a translation.
* If a translation is passed, it'll be fused
*
* // Should replace simple keys
* new TypedTranslation<object>({"en": "Some text {key}"}).Subs({key: "xyz"}).textFor("en") // => "Some text xyz"
*
* // Should fuse translations
* const subpart = new Translation({"en": "subpart","nl":"onderdeel"})
* const tr = new TypedTranslation<object>({"en": "Full sentence with {part}", nl: "Volledige zin met {part}"})
* const subbed = tr.Subs({part: subpart})
* subbed.textFor("en") // => "Full sentence with subpart"
* subbed.textFor("nl") // => "Volledige zin met onderdeel"
*/
Subs(text: T, context?: string): Translation {
return this.OnEveryLanguage((template, lang) => Utils.SubstituteKeys(template, text, lang), context)
}
}

View file

@ -1,5 +1,5 @@
import {FixedUiElement} from "../Base/FixedUiElement";
import {Translation} from "./Translation";
import {Translation, TypedTranslation} from "./Translation";
import BaseUIElement from "../BaseUIElement";
import * as known_languages from "../../assets/generated/used_languages.json"
import CompiledTranslations from "../../assets/generated/CompiledTranslations";
@ -22,7 +22,7 @@ export default class Translations {
return s;
}
static T(t: string | any, context = undefined): Translation {
static T(t: string | any, context = undefined): TypedTranslation<object> {
if (t === undefined || t === null) {
return undefined;
}
@ -30,17 +30,17 @@ export default class Translations {
t = "" + t
}
if (typeof t === "string") {
return new Translation({"*": t}, context);
return new TypedTranslation({"*": t}, context);
}
if (t.render !== undefined) {
const msg = "Creating a translation, but this object contains a 'render'-field. Use the translation directly"
console.error(msg, t);
throw msg
}
if (t instanceof Translation) {
if (t instanceof TypedTranslation) {
return t;
}
return new Translation(t, context);
return new TypedTranslation(t, context);
}
/**

View file

@ -155,7 +155,8 @@
"en": "This is a single bollard in the road",
"hu": "Ez egyetlen oszlop az úton",
"nl": "Dit is een enkel paaltje in de weg",
"fr": "C'est un plot unique sur la route"
"fr": "C'est un plot unique sur la route",
"de": "Dies ist ein einzelner Poller auf der Straße"
}
},
{
@ -164,7 +165,8 @@
"en": "This is a cycle barrier slowing down cyclists",
"nl": "Dit zijn fietshekjes die fietsers afremmen",
"hu": "Ez egy kerékpárakadály, amely lelassítja a kerékpárosokat",
"fr": "C'est une barrière visant à ralentir les vélos"
"fr": "C'est une barrière visant à ralentir les vélos",
"de": "Dies ist eine Fahrradbarriere, die Radfahrer abbremst"
}
}
]

View file

@ -656,6 +656,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."
}
}

View file

@ -185,6 +185,7 @@
"en": "A layer showing all public-transport-stops which do have a bench",
"es": "Una capa que muestra todas las paradas de transporte público que tienen bancos",
"nl": "Een laag die stopplaatsen van openbaar vervoer toont waar er een zitbank is",
"fr": "Une couche montrant tous les arrêts de transports publics qui ont un banc"
"fr": "Une couche montrant tous les arrêts de transports publics qui ont un banc",
"de": "Eine Ebene mit allen Haltestellen des öffentlichen Nahverkehrs, die über eine Sitzbank verfügen"
}
}

View file

@ -25,7 +25,8 @@
"render": {
"en": "Bicycle rental",
"nl": "Fietsverhuur",
"es": "Alquiler de bicicletas"
"es": "Alquiler de bicicletas",
"de": "Fahrradverleih"
},
"mappings": [
{
@ -36,7 +37,8 @@
},
"then": {
"en": "{name}",
"nl": "{name}"
"nl": "{name}",
"de": "{name}"
}
}
]
@ -44,7 +46,8 @@
"description": {
"en": "Bicycle rental stations",
"nl": "Fietsverhuustations",
"fr": "Station de location de vélo"
"fr": "Station de location de vélo",
"de": "Fahrradverleihstationen"
},
"tagRenderings": [
"images",
@ -52,7 +55,8 @@
"id": "bicycle_rental_type",
"question": {
"en": "What kind of bicycle rental is this?",
"nl": "Wat voor fietsverhuur is dit?"
"nl": "Wat voor fietsverhuur is dit?",
"de": "Was ist das für ein Fahrradverleih?"
},
"mappings": [
{
@ -64,7 +68,8 @@
},
"then": {
"en": "This is a shop whose main focus is bicycle rental",
"nl": "Dit is een zaak die focust op fietsverhuur"
"nl": "Dit is een zaak die focust op fietsverhuur",
"de": "Dies ist ein Geschäft, dessen Schwerpunkt auf dem Fahrradverleih liegt"
}
},
{
@ -76,21 +81,24 @@
},
"then": {
"en": "This is a rental buisiness which rents out various objects and/or vehicles. It rents out bicycles too, but this is not the main focus",
"nl": "Dit is een zaak die verschillende voorwerpen en/of voertuigen verhuurt, waaronder ook fietsen; al zijn fietsen niet de hoofdfocus"
"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 Vermietungsunternehmen, das verschiedene Gegenstände und/oder Fahrzeuge vermietet. Es vermietet auch Fahrräder, aber das ist nicht der Hauptschwerpunkt"
}
},
{
"if": "bicycle_rental=docking_station",
"then": {
"en": "This is a shop which sells or repairs bicycles, but also rents out bicycles",
"nl": "Dit is een fietsenmaker of fietswinkel die ook fietsen verhuurt"
"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"
}
},
{
"if": "bicycle_rental=key_dispensing_machine",
"then": {
"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"
"nl": "Dit is een docking station waar de fietsen mechanisch in een grotere structuur worden vastgemaakt",
"de": "Dies ist eine automatisierte Dockingstation, bei der ein Fahrrad mechanisch in einer Struktur verriegelt wird"
}
},
{
@ -98,7 +106,8 @@
"then": {
"en": "A machine is present which dispenses and accepts keys, eventually after authentication and/or payment. The bicycles are parked nearby",
"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"
"hu": "Ez egy leadási pont: ennek a kerékpárkölcsönzőnek a kijelölt kerékpártárolója",
"de": "Es gibt einen Automaten, der Schlüssel ausgibt und annimmt, eventuell nach Authentifizierung und/oder Bezahlung. Die Fahrräder sind in der Nähe geparkt"
}
}
],
@ -137,11 +146,13 @@
],
"question": {
"en": "What kind of bicycles and accessories are rented here?",
"nl": "Wat voor soort fietsen en fietstoebehoren worden hier verhuurd?"
"nl": "Wat voor soort fietsen en fietstoebehoren worden hier verhuurd?",
"de": "Welche Art von Fahrrädern und Zubehör wird hier vermietet?"
},
"render": {
"en": "{rental} is rented here",
"nl": "{rental} kunnen hier uitgeleend worden"
"nl": "{rental} kunnen hier uitgeleend worden",
"de": "{rental} wird hier vermietet"
},
"freeform": {
"key": "rental",
@ -153,49 +164,56 @@
"if": "rental=city_bike",
"then": {
"en": "Normal city bikes can be rented here",
"nl": "Gewone stadsfietsen kunnen hier gehuurd worden"
"nl": "Gewone stadsfietsen kunnen hier gehuurd worden",
"de": "Normale Stadtfahrräder können hier gemietet werden"
}
},
{
"if": "rental=ebike",
"then": {
"en": "Electrical bikes can be rented here",
"nl": "Elektrische fietsen kunnen hier gehuurd worden"
"nl": "Elektrische fietsen kunnen hier gehuurd worden",
"de": "Elektrofahrräder können hier gemietet werden"
}
},
{
"if": "rental=bmx",
"then": {
"en": "BMX bikes can be rented here",
"nl": "BMX-fietsen kunnen hier gehuurd worden"
"nl": "BMX-fietsen kunnen hier gehuurd worden",
"de": "BMX-Räder können hier gemietet werden"
}
},
{
"if": "rental=mtb",
"then": {
"en": "Mountainbikes can be rented here",
"nl": "Mountainbikes kunnen hier gehuurd worden"
"nl": "Mountainbikes kunnen hier gehuurd worden",
"de": "Mountainbikes können hier gemietet werden"
}
},
{
"if": "rental=kid_bike",
"then": {
"en": "Bikes for childs can be rented here",
"nl": "Kinderfietsen kunnen hier gehuurd worden"
"nl": "Kinderfietsen kunnen hier gehuurd worden",
"de": "Kinderfahrräder können hier gemietet werden"
}
},
{
"if": "rental=tandem",
"then": {
"en": "Tandem bicycles can be rented here",
"nl": "Tandems kunnen hier gehuurd worden"
"nl": "Tandems kunnen hier gehuurd worden",
"de": "Tandems können hier gemietet werden"
}
},
{
"if": "rental=racebike",
"then": {
"en": "Race bicycles can be rented here",
"nl": "Wielerfietsen (sportfietsen) kunnen hier gehuurd worden"
"nl": "Wielerfietsen (sportfietsen) kunnen hier gehuurd worden",
"de": "Rennräder können hier gemietet werden"
}
}
]
@ -211,49 +229,56 @@
"city_bike",
{
"en": "city bikes",
"nl": "stadsfietsen"
"nl": "stadsfietsen",
"de": "Stadträder"
}
],
[
"ebike",
{
"en": "electrical bikes",
"nl": "elektrische fietsen"
"nl": "elektrische fietsen",
"de": "Elektrofahrräder"
}
],
[
"kid_bike",
{
"en": "bikes for children",
"nl": "kinderfietsen"
"nl": "kinderfietsen",
"de": "Kinderfahrräder"
}
],
[
"bmx",
{
"en": "BMX bikes",
"nl": "BMX-fietsen"
"nl": "BMX-fietsen",
"de": "BMX-Räder"
}
],
[
"mtb",
{
"en": "mountainbike",
"nl": "mountainbike"
"nl": "mountainbike",
"de": "Mountainbikes"
}
],
[
"bicycle_pannier",
{
"en": "bicycle panniers",
"nl": "fietstassen"
"nl": "fietstassen",
"de": "Fahrradtaschen"
}
],
[
"tandem_bicycle",
{
"en": "tandem",
"nl": "tandem"
"nl": "tandem",
"de": "Tandems"
}
]
]
@ -286,7 +311,8 @@
"title": {
"en": "a bicycle rental shop",
"nl": "een fietsverhuurzaak",
"fr": "une magasin de location de vélos"
"fr": "une magasin de location de vélos",
"de": "Ein Fahrradverleih"
},
"tags": [
"amenity=bicycle_rental",
@ -295,13 +321,15 @@
"description": {
"en": "A manned shop which focuses on bicycle rental",
"nl": "Een bemande winkel die focust op fietsverhuur",
"fr": "Un magasin qui priorise la location de vélos"
"fr": "Un magasin qui priorise la location de vélos",
"de": "Ein Geschäft, das sich auf den Fahrradverleih konzentriert"
}
},
{
"title": {
"en": "a bicycle rental",
"nl": "een fietsverhuur"
"nl": "een fietsverhuur",
"de": "Ein Fahrradverleih"
},
"tags": [
"amenity=bicycle_rental"
@ -346,7 +374,8 @@
"explanation": {
"nl": "{title()} is permanent gestopt",
"en": "{title()} has closed down permanently",
"fr": "{title()} a était fermé de façon permanente"
"fr": "{title()} a était fermé de façon permanente",
"de": "{title()} ist dauerhaft geschlossen"
},
"changesetMessage": "shop_closed"
}
@ -361,7 +390,8 @@
"then": {
"en": "This bicycle shop used to rent out bikes but doesn't rent out bikes anymore",
"nl": "Deze fietszaak verhuurde vroeger fietsen, maar nu niet meer",
"fr": "Ce magasin de vélo louait des vélos, mais n'en loue plus maintenant"
"fr": "Ce magasin de vélo louait des vélos, mais n'en loue plus maintenant",
"de": "Dieser Fahrradladen vermietete früher Fahrräder, aber jetzt nicht mehr"
}
}
]

View file

@ -287,6 +287,7 @@
],
"description": {
"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,...)"
"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, ...)"
}
}

View file

@ -378,6 +378,7 @@
],
"description": {
"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."
"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, ..."
}
}

View file

@ -219,6 +219,7 @@
],
"description": {
"en": "A layer showing facilities where one can clean their bike",
"nl": "Een laag die plaatsen toont waar je je fiets kunt wassen"
"nl": "Een laag die plaatsen toont waar je je fiets kunt wassen",
"de": "Eine Ebene mit Einrichtungen, in denen man sein Fahrrad reinigen kann"
}
}

View file

@ -480,7 +480,7 @@
"then": {
"en": "This parking has room for cargo bikes",
"nl": "Deze parking heeft plaats voor bakfietsen",
"gl": "Este aparcadoiro ten espazo para bicicletas de carga.",
"gl": "Este aparcadoiro ten espazo para bicicletas de carga",
"de": "Dieser Parkplatz bietet Platz für Lastenfahrräder",
"fr": "Ce parking a de la place pour les vélos cargo",
"it": "Questo parcheggio ha posto per bici da trasporto",
@ -579,6 +579,7 @@
],
"description": {
"en": "A layer showing where you can park your bike",
"nl": "Een laag die toont waar je je fiets kunt parkeren"
"nl": "Een laag die toont waar je je fiets kunt parkeren",
"de": "Eine Ebene, die anzeigt, wo Sie Ihr Fahrrad abstellen können"
}
}

View file

@ -285,21 +285,24 @@
"id": "access",
"question": {
"en": "Who is allowed to use this repair station?",
"nl": "Wie kan dit herstelpunt gebruiken?"
"nl": "Wie kan dit herstelpunt gebruiken?",
"de": "Wer darf diese Reparaturstation benutzen?"
},
"mappings": [
{
"if": "access=yes",
"then": {
"en": "Publicly accessible",
"nl": "Publiek toegankelijk"
"nl": "Publiek toegankelijk",
"de": "Öffentlich zugänglich"
}
},
{
"if": "access=public",
"then": {
"en": "Publicly accessible",
"nl": "Publiek toegankelijk"
"nl": "Publiek toegankelijk",
"de": "Öffentlich zugänglich"
},
"hideInAnswer": true
},
@ -307,14 +310,16 @@
"if": "access=customers",
"then": {
"en": "Only for customers",
"nl": "Enkel voor klanten van de bijhorende zaak"
"nl": "Enkel voor klanten van de bijhorende zaak",
"de": "Nur für Kunden"
}
},
{
"if": "access=private",
"then": {
"en": "Not accessible to the general public",
"nl": "Niet publiek toegankelijk"
"nl": "Niet publiek toegankelijk",
"de": "Nicht für die Allgemeinheit zugänglich"
},
"icon": "./assets/svg/invalid.svg"
},
@ -322,7 +327,8 @@
"if": "access=no",
"then": {
"en": "Not accessible to the general public",
"nl": "Niet publiek toegankelijk"
"nl": "Niet publiek toegankelijk",
"de": "Nicht für die Allgemeinheit zugänglich"
},
"icon": "./assets/svg/invalid.svg",
"hideInAnswer": true
@ -737,7 +743,8 @@
],
"description": {
"en": "Tools to repair your bike in the public space (without pump). The tools are secured against theft.",
"nl": "Gereedschap om je fiets te herstellen in de publieke ruimte (zonder pomp). Deze zijn op een vastgemaakt, bijvoorbeeld aan een paal."
"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."
}
}
],
@ -829,6 +836,7 @@
],
"description": {
"en": "A layer showing bicycle pumps and bicycle repair tool stands",
"nl": "Deze laag toont fietspompen en herstelpunten voor fietsen"
"nl": "Deze laag toont fietspompen en herstelpunten voor fietsen",
"de": "Eine Ebene mit Fahrradpumpen und Werkzeugständern für die Fahrradreparatur"
}
}

View file

@ -216,7 +216,8 @@
"if": "shop=rental",
"then": {
"nl": "Deze zaak focust op verhuur",
"en": "Deze business focuses on rental"
"en": "Deze business focuses on rental",
"de": "Dieses Geschäft konzentriert sich auf die Vermietung"
}
}
]
@ -311,7 +312,8 @@
{
"render": {
"en": "Only accessible to {access}",
"nl": "Enkel voor {access}"
"nl": "Enkel voor {access}",
"de": "Nur zugänglich für {access}"
},
"freeform": {
"key": "access"

View file

@ -82,6 +82,7 @@
],
"description": {
"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"
"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"
}
}

View file

@ -131,7 +131,8 @@
"id": "access",
"question": {
"en": "Who is allowed to use this charging station?",
"nl": "Wie mag er dit oplaadpunt gebruiken?"
"nl": "Wie mag er dit oplaadpunt gebruiken?",
"de": "Wer darf diese Ladestation benutzen?"
},
"render": {
"en": "Access is {access}",
@ -168,21 +169,24 @@
"if": "access=customers",
"then": {
"en": "Only customers of the place this station belongs to can use this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests</span>",
"nl": "Enkel <b>klanten van de bijhorende plaats</b> mogen dit oplaadpunt gebruiken<br/><span class='subtle'>Bv. op de parking van een hotel en enkel toegankelijk voor klanten van dit hotel</span>"
"nl": "Enkel <b>klanten van de bijhorende plaats</b> mogen dit oplaadpunt gebruiken<br/><span class='subtle'>Bv. op de parking van een hotel en enkel toegankelijk voor klanten van dit hotel</span>",
"de": "Nur Kunden des Ortes, zu dem diese Station gehört, können diese Ladestation nutzen<br/><span class='subtle'>Z.B. eine von einem Hotel betriebene Ladestation, die nur von dessen Gästen genutzt werden kann</span>"
}
},
{
"if": "access=key",
"then": {
"en": "A <b>key</b> must be requested to access this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests, which receive a key from the reception to unlock the charging station</span>",
"nl": "Een <b>sleutel</b> is nodig om dit oplaadpunt te gebruiken<br/><span class='subtle'>Bv. voor klanten van een hotel of een bar, die de sleutel aan de receptie kunnen krijgen</span>"
"nl": "Een <b>sleutel</b> is nodig om dit oplaadpunt te gebruiken<br/><span class='subtle'>Bv. voor klanten van een hotel of een bar, die de sleutel aan de receptie kunnen krijgen</span>",
"de": "Für den Zugang zu dieser Ladestation muss ein <b>Schlüssel</b> angefordert werden<br/><span class='subtle'>Z.B. eine von einem Hotel betriebene Ladestation, die nur von dessen Gästen genutzt werden kann, die an der Rezeption einen Schlüssel erhalten, um die Ladestation aufzuschließen</span>"
}
},
{
"if": "access=private",
"then": {
"en": "Not accessible to the general public (e.g. only accessible to the owners, employees, ...)",
"nl": "Niet toegankelijk voor het publiek <br/><span class='subtle'>Bv. enkel toegankelijk voor de eigenaar, medewerkers ,...</span>"
"nl": "Niet toegankelijk voor het publiek <br/><span class='subtle'>Bv. enkel toegankelijk voor de eigenaar, medewerkers ,...</span>",
"de": "Nicht für die Allgemeinheit zugänglich (z. B. nur für die Eigentümer, Mitarbeiter, ...)"
}
}
]
@ -1036,7 +1040,7 @@
"id": "plugs-0",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Schuko wall plug</b> without ground pin (CEE7/4 type F)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/CEE7_4F.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Schuko stekker</b> zonder aardingspin (CEE7/4 type F)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/CEE7_4F.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Schuko stekker</b> zonder aardingspin (CEE7/4 type F)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/CEE7_4F.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:schuko}</b> plugs of type <div style='display: inline-block'><b><b>Schuko wall plug</b> without ground pin (CEE7/4 type F)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/CEE7_4F.svg'/></div> available here",
@ -1057,7 +1061,7 @@
"id": "plugs-1",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>European wall plug</b> with ground pin (CEE7/4 type E)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/TypeE.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Europese stekker</b> met aardingspin (CEE7/4 type E)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/TypeE.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Europese stekker</b> met aardingspin (CEE7/4 type E)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/TypeE.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:typee}</b> plugs of type <div style='display: inline-block'><b><b>European wall plug</b> with ground pin (CEE7/4 type E)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/TypeE.svg'/></div> available here",
@ -1078,7 +1082,7 @@
"id": "plugs-2",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Chademo</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Chademo_type4.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Chademo</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Chademo_type4.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Chademo</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Chademo_type4.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:chademo}</b> plugs of type <div style='display: inline-block'><b><b>Chademo</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Chademo_type4.svg'/></div> available here",
@ -1099,7 +1103,7 @@
"id": "plugs-3",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Type 1 with cable</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 1 met kabel</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 1 met kabel</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:type1_cable}</b> plugs of type <div style='display: inline-block'><b><b>Type 1 with cable</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> available here",
@ -1120,7 +1124,7 @@
"id": "plugs-4",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Type 1 <i>without</i> cable</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 1 <i>zonder</i> kabel</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 1 <i>zonder</i> kabel</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:type1}</b> plugs of type <div style='display: inline-block'><b><b>Type 1 <i>without</i> cable</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> available here",
@ -1141,7 +1145,7 @@
"id": "plugs-5",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Type 1 CCS</b> (aka Type 1 Combo)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1-ccs.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 1 CCS</b> (ook gekend als Type 1 Combo)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1-ccs.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 1 CCS</b> (ook gekend als Type 1 Combo)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1-ccs.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:type1_combo}</b> plugs of type <div style='display: inline-block'><b><b>Type 1 CCS</b> (aka Type 1 Combo)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1-ccs.svg'/></div> available here",
@ -1162,7 +1166,7 @@
"id": "plugs-6",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Tesla Supercharger</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Tesla Supercharger</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Tesla Supercharger</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:tesla_supercharger}</b> plugs of type <div style='display: inline-block'><b><b>Tesla Supercharger</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> available here",
@ -1183,7 +1187,7 @@
"id": "plugs-7",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Type 2</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_socket.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 2</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_socket.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 2</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_socket.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:type2}</b> plugs of type <div style='display: inline-block'><b><b>Type 2</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_socket.svg'/></div> available here",
@ -1204,7 +1208,7 @@
"id": "plugs-8",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Type 2 CCS</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 2 CCS</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 2 CCS</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:type2_combo}</b> plugs of type <div style='display: inline-block'><b><b>Type 2 CCS</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> available here",
@ -1225,7 +1229,7 @@
"id": "plugs-9",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Type 2 with cable</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 2 met kabel</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Type 2 met kabel</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:type2_cable}</b> plugs of type <div style='display: inline-block'><b><b>Type 2 with cable</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> available here",
@ -1246,7 +1250,7 @@
"id": "plugs-10",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (een type2 CCS met Tesla-logo)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (een type2 CCS met Tesla-logo)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:tesla_supercharger_ccs}</b> plugs of type <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> available here",
@ -1267,7 +1271,7 @@
"id": "plugs-11",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:tesla_destination}</b> plugs of type <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> available here",
@ -1309,7 +1313,7 @@
"id": "plugs-13",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>USB</b> to charge phones and small electronics</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/usb_port.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>USB</b> om GSMs en kleine electronica op te laden</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/usb_port.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>USB</b> om GSMs en kleine electronica op te laden</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/usb_port.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:USB-A}</b> plugs of type <div style='display: inline-block'><b><b>USB</b> to charge phones and small electronics</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/usb_port.svg'/></div> available here",
@ -1330,7 +1334,7 @@
"id": "plugs-14",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Bosch Active Connect with 3 pins</b> and cable</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-3pin.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Bosch Active Connect met 3 pinnen</b> aan een kabel</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-3pin.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Bosch Active Connect met 3 pinnen</b> aan een kabel</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-3pin.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:bosch_3pin}</b> plugs of type <div style='display: inline-block'><b><b>Bosch Active Connect with 3 pins</b> and cable</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-3pin.svg'/></div> available here",
@ -1351,7 +1355,7 @@
"id": "plugs-15",
"question": {
"en": "How much plugs of type <div style='display: inline-block'><b><b>Bosch Active Connect with 5 pins</b> and cable</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-5pin.svg'/></div> are available here?",
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Bosch Active Connect met 5 pinnen</b> aan een kabel</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-5pin.svg'/></div> heeft dit oplaadpunt?"
"nl": "Hoeveel stekkers van type <div style='display: inline-block'><b><b>Bosch Active Connect met 5 pinnen</b> aan een kabel</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-5pin.svg'/></div> heeft dit oplaadpunt?"
},
"render": {
"en": "There are <b class='text-xl'>{socket:bosch_5pin}</b> plugs of type <div style='display: inline-block'><b><b>Bosch Active Connect with 5 pins</b> and cable</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-5pin.svg'/></div> available here",
@ -3358,7 +3362,7 @@
"then": {
"en": "24/7 opened (including holidays)",
"nl": "24/7 open - ook tijdens vakanties",
"de": "durchgehend geöffnet (einschließlich Feiertage)",
"de": "Die Station ist durchgehend geöffnet (einschließlich Feiertage)",
"es": "Abre 24/7 (incluidos días festivos)"
}
}
@ -3432,7 +3436,8 @@
},
"then": {
"nl": "Betalend",
"en": "Paid use"
"en": "Paid use",
"de": "Nutzung gebührenpflichtig"
}
}
]
@ -3445,7 +3450,8 @@
},
"render": {
"en": "Using this charging station costs <b>{charge}</b>",
"nl": "Dit oplaadpunt gebruiken kost <b>{charge}</b>"
"nl": "Dit oplaadpunt gebruiken kost <b>{charge}</b>",
"de": "Die Nutzung dieser Ladestation kostet <b>{charge}</b>"
},
"freeform": {
"key": "charge"

View file

@ -423,7 +423,8 @@
"osmTags": "shop~^.*{search}.*$",
"question": {
"en": "Only show shops selling {search}",
"de": "Nur Geschäfte, die {search} verkaufen"
"de": "Nur Geschäfte, die {search} verkaufen",
"nl": "Toon enkel winkels die {search} verkopen"
}
}
]
@ -441,7 +442,8 @@
"osmTags": "name~^.*{search}.*$",
"question": {
"en": "Only show shops with name {search}",
"de": "Nur Geschäfte mit dem Namen {search} anzeigen"
"de": "Nur Geschäfte mit dem Namen {search} anzeigen",
"nl": "Toon enkel winkels met naam {search}"
}
}
]

View file

@ -305,11 +305,11 @@
"key": "surveillance:zone"
},
"render": {
"en": " Surveills a {surveillance:zone}",
"en": "Surveills a {surveillance:zone}",
"nl": "Bewaakt een {surveillance:zone}",
"fr": " Surveille un(e) {surveillance:zone}",
"fr": "Surveille un(e) {surveillance:zone}",
"it": " Sorveglia una {surveillance:zone}",
"de": " Überwacht ein/e {surveillance:zone}"
"de": "Überwacht ein/e {surveillance:zone}"
},
"mappings": [
{

View file

@ -722,7 +722,7 @@
"question": {
"nl": "Op welke verdieping bevindt dit punt zich?",
"en": "On what level is this feature located?",
"de": "In welchem Stockwerk befindet sich dieses Objekt?",
"de": "Auf welcher Ebene befindet sich dieses Objekt?",
"zh_Hant": "此圖徽位於哪個樓層/層級?",
"fr": "À quel étage se situe lélément ?",
"pl": "Na jakim poziomie znajduje się ta funkcja?",

View file

@ -408,7 +408,8 @@
"zh_Hant": "你需要為網路連線付費嗎?",
"fr": "Laccès internet est-il payant ?",
"pt_BR": "Você tem que pagar pelo acesso à internet?",
"de": "Ist der Internetzugang gebührenpflichtig?"
"de": "Ist der Internetzugang gebührenpflichtig?",
"nl": "Moet je betalen voor internettoegang?"
},
"mappings": [
{
@ -425,7 +426,8 @@
"zh_Hant": "你需要額外付費來使用網路連線",
"fr": "Laccès internet est en supplément",
"pt_BR": "Você precisa pagar um extra pelo acesso à internet",
"de": "Der Internetzugang ist gebührenpflichtig"
"de": "Der Internetzugang ist gebührenpflichtig",
"nl": "Je moet extra betalen voor internettoegang"
}
},
{
@ -442,7 +444,8 @@
"zh_Hant": "你不需要額外付費來使用網路連線",
"fr": "Laccès internet est inclus",
"pt_BR": "Você não precisa pagar um extra pelo acesso à internet",
"de": "Der Internetzugang ist kostenlos"
"de": "Der Internetzugang ist kostenlos",
"nl": "Je hoeft niet extra te betalen voor internettoegang"
}
}
],

View file

@ -29,7 +29,7 @@
"ja": "このオープンマップでは充電ステーションに関する情報を見つけてマークすることができます",
"ru": "На этой карте вы можно найти и отметить информацию о зарядных станциях",
"zh_Hant": "在這份開放地圖上,你可以尋找與標示充電站的資訊",
"de": "Auf dieser freien Karte kann man Informationen über Ladestationen finden und hinzufügen",
"de": "Auf dieser freien Karte kann man Informationen zu Ladestationen finden und hinzufügen",
"hu": "Ezen a térképen a elektromos töltőpontokról szóló információkat lehet megtalálni és megadni"
},
"maintainer": "",

View file

@ -183,7 +183,7 @@
"sport=climbing"
],
"title": {
"de": "eine eine kletter-organisation",
"de": "Eine Kletterorganisation",
"en": "a climbing ngo",
"nl": "een een klimorganisatie",
"ja": "クライミングNGO",
@ -1705,4 +1705,4 @@
"reviews"
]
}
}
}

View file

@ -12,7 +12,7 @@
"description": {
"nl": "Restaurants en fast food",
"en": "Restaurants and fast food",
"de": "Restaurants und Fast Food"
"de": "Restaurants und Schnellimbisse"
},
"maintainer": "",
"icon": "./assets/layers/food/restaurant.svg",

View file

@ -494,7 +494,8 @@
"#": "Failsafe",
"if": "_grb_ref=",
"then": {
"en": "Did not yet calculate the metatags... Reopen this popup"
"en": "Did not yet calculate the metatags... Reopen this popup",
"de": "Metatags noch nicht berechnet... Dieses Fenster erneut öffnen"
}
},
{

View file

@ -8,7 +8,7 @@
"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.",
"de": "Hydranten, Feuerlöscher, Feuerwachen und Rettungswachen",
"hu": "Tűzcsapok, tűzoltó készülékek, tűzoltóságok és mentőállomások.",
"nl": "Brandkranen, brandblussers, brandweerposten en ambulanceposten"
},

View file

@ -25,7 +25,8 @@
{
"id": "mapcomplete-changes",
"name": {
"en": "Changeset centers"
"en": "Changeset centers",
"de": "Schwerpunkte von Änderungssätzen"
},
"minzoom": 0,
"source": {
@ -65,13 +66,15 @@
{
"id": "theme",
"render": {
"en": "Change with theme <a href='https://mapcomplete.osm.be/{theme}'>{theme}</a>"
"en": "Change with theme <a href='https://mapcomplete.osm.be/{theme}'>{theme}</a>",
"de": "Änderung mit Thema <a href='https://mapcomplete.osm.be/{theme}'>{theme}</a>"
},
"mappings": [
{
"if": "theme~http.*",
"then": {
"en": "Change with <b>unofficial</b> theme <a href='https://mapcomplete.osm.be/theme.html?userlayout={theme}'>{theme}</a>"
"en": "Change with <b>unofficial</b> theme <a href='https://mapcomplete.osm.be/theme.html?userlayout={theme}'>{theme}</a>",
"de": "Änderung mit <b>inoffiziellem</b> Thema <a href='https://mapcomplete.osm.be/theme.html?userlayout={theme}'>{theme}</a>"
}
}
]

View file

@ -127,14 +127,16 @@
"fr": "La hauteur totale, incluant les pales, est de {height} mètres.",
"it": "Laltezza totale (raggio del rotore incluso) di questa pala eolica è di {height} metri.",
"zh_Hant": "這風機的總高度 (包括風葉直徑) 是 {height} 公尺。",
"hu": "A szélerőmű teljes (rotor sugarával együtt számított) magassága: {height} méter."
"hu": "A szélerőmű teljes (rotor sugarával együtt számított) magassága: {height} méter.",
"de": "Die Gesamthöhe dieses Windrads beträgt (einschließlich Rotorradius) {height} Meter."
},
"question": {
"en": "What is the total height of this wind turbine (including rotor radius), in metres?",
"fr": "Quelle est la hauteur totale de léolienne en mètres, pales incluses ?",
"it": "Qual è laltezza (in metri e raggio del rotore incluso) di questa pala eolica?",
"zh_Hant": "這個風機的總高度是多少 (包括風葉大小) 公尺?",
"hu": "Hány méter a szélerőmű teljes magassága (a rotor sugarával együtt)?"
"hu": "Hány méter a szélerőmű teljes magassága (a rotor sugarával együtt)?",
"de": "Wie hoch ist dieses Windrad (inklusive Rotorradius) in Metern?"
},
"freeform": {
"key": "height",

View file

@ -53,7 +53,8 @@
"render": {
"en": "The postal code is {postal_code}",
"id": "Kode posnya adalah {postal_code}",
"hu": "Irányítószám: {postal_code}"
"hu": "Irányítószám: {postal_code}",
"de": "Die Postleitzahl lautet {postal_code}"
}
}
],

View file

@ -181,7 +181,8 @@
"en": "What are the opening hours for this post office?",
"zh_Hant": "這間郵局的開放時間是?",
"id": "Jam berapa kantor pos ini buka?",
"hu": "Mikor van nyitva ez a posta?"
"hu": "Mikor van nyitva ez a posta?",
"de": "Wie sind die Öffnungszeiten dieser Poststelle?"
},
"mappings": [
{

View file

@ -7,11 +7,13 @@
"de": "Gehwege"
},
"shortDescription": {
"en": "Sidewalk mapping"
"en": "Sidewalk mapping",
"de": "Kartierung von Bürgersteigen"
},
"description": {
"en": "Experimental theme",
"ru": "Экспериментальная тема"
"ru": "Экспериментальная тема",
"de": "Experimentelles Thema"
},
"maintainer": "",
"icon": "./assets/svg/bug.svg",
@ -54,13 +56,15 @@
]
},
"description": {
"en": "Layer showing sidewalks of highways"
"en": "Layer showing sidewalks of highways",
"de": "Ebene mit Bürgersteigen"
},
"tagRenderings": [
{
"id": "streetname",
"render": {
"en": "This street is named {name}"
"en": "This street is named {name}",
"de": "Diese Straße heißt {name}"
}
},
{

View file

@ -90,7 +90,8 @@
"en": "This street is not lit",
"nl": "Deze straat is niet verlicht",
"zh_Hant": "這個道路沒有照明",
"hu": "Ezen az utcán nincs közvilágítás"
"hu": "Ezen az utcán nincs közvilágítás",
"de": "Diese Straße ist nicht beleuchtet"
}
},
{
@ -99,7 +100,8 @@
"en": "This street is lit at night",
"nl": "Deze straat is 's nachts verlicht",
"zh_Hant": "這個道路晚上有照明",
"hu": "Ez az utca éjszaka ki van világítva"
"hu": "Ez az utca éjszaka ki van világítva",
"de": "Diese Straße ist nachts beleuchtet"
},
"hideInAnswer": true
},
@ -109,7 +111,8 @@
"en": "This street is lit 24/7",
"nl": "Deze straat is 24/7 verlicht",
"zh_Hant": "這個道路 24/7 有照明",
"hu": "Ez az utca éjjel-nappal ki van világítva"
"hu": "Ez az utca éjjel-nappal ki van világítva",
"de": "Diese Straße ist durchgehend beleuchtet"
}
}
]
@ -193,7 +196,8 @@
"en": "This street is not lit",
"nl": "Deze straat is niet verlicht",
"zh_Hant": "這道路沒有照明",
"hu": "Ez az utca nincs kivilágítva"
"hu": "Ez az utca nincs kivilágítva",
"de": "Diese Straße ist nicht beleuchtet"
}
},
{
@ -202,7 +206,8 @@
"en": "This street is lit at night",
"nl": "Deze straat is 's nachts verlicht",
"zh_Hant": "這道路晚上有照明",
"hu": "Ez az utca éjjel ki van világítva"
"hu": "Ez az utca éjjel ki van világítva",
"de": "Diese Straße ist nachts beleuchtet"
},
"hideInAnswer": true
},
@ -212,7 +217,8 @@
"en": "This street is lit 24/7",
"nl": "Deze straat is 24/7 verlicht",
"zh_Hant": "這道路 24/7 有照明",
"hu": "Ez az utca éjjel-nappal ki van világítva"
"hu": "Ez az utca éjjel-nappal ki van világítva",
"de": "Diese Straße ist durchgehend beleuchtet"
}
}
]

View file

@ -51,9 +51,9 @@
"import": {
"hasBeenImported": "Aquest objecte ha estat importat",
"importTags": "L'element rebrà {tags}",
"zoomInMore": "Ampliar més per importar aquest element",
"officialThemesOnly": "El botó d'importació està desactivat per a temes no oficials per evitar accidents",
"wrongType": "Aquest element no és un punt o una via i no pot ser importat"
"wrongType": "Aquest element no és un punt o una via i no pot ser importat",
"zoomInMore": "Ampliar més per importar aquest element"
},
"importTags": "L'element rebrà {tags}",
"intro": "Has marcat un lloc on no coneixem les dades.<br>",
@ -64,33 +64,33 @@
"stillLoading": "Les dades es segueixen carregant. Espera una mica abans d'afegir cap punt.",
"title": "Vols afegir un punt?",
"warnVisibleForEveryone": "La teva contribució serà vista per tothom",
"wrongType": "Aquest element no és un punt o una via i no pot ser importat",
"zoomInFurther": "Apropa per afegir un punt.",
"zoomInMore": "Ampliar per importar aquest element",
"wrongType": "Aquest element no és un punt o una via i no pot ser importat"
"zoomInMore": "Ampliar per importar aquest element"
},
"apply_button": {
"isApplied": "S'aplicaran els canvis",
"appliedOnAnotherObject": "L'objecte {id} rebrà {tags}"
"appliedOnAnotherObject": "L'objecte {id} rebrà {tags}",
"isApplied": "S'aplicaran els canvis"
},
"attribution": {
"attributionContent": "<p>Totes les dades provenen d'<a href=\"https://osm.org\" target=\"_blank\">OpenStreetMap</a>, i es poden reutilitzar lliurement sota <a href=\"https://osm.org/copyright\" target=\"_blank\">la Llicència Oberta de Base de Dades (ODbL)</a>.</p>",
"attributionTitle": "Avís datribució",
"codeContributionsBy": "MapComplete ha estat fet per {contributors} i <a href=\"https://github.com/pietervdvn/MapComplete/graphs/contributors\" target=\"_blank\">{hiddenCount} més contribuïdors</a>",
"donate": "Donar suport econòmic a MapComplete",
"editId": "Obre l'editor en línia d'OpenStreetMap aquí",
"editJosm": "Editar aquí amb JOSM",
"iconAttribution": {
"title": "Icones utilitzades"
},
"josmNotOpened": "No s'ha pogut contactar amb JOSM. Assegura't que estigui obert i que el control remot estigui habilitat",
"josmOpened": "JOSM és obert",
"mapContributionsBy": "Les dades mostrades tenen edicions fetes per {contributors}",
"mapContributionsByAndHidden": "Les dades mostrades tenen edicions fetes per {contributors} i {hiddenCount} col·laboradors més",
"openIssueTracker": "Registrar un error",
"openMapillary": "Obrir Mapillary aquí",
"themeBy": "Tema mantingut per {author}",
"editId": "Obre l'editor en línia d'OpenStreetMap aquí",
"openOsmcha": "Veure darreres edicions fetes amb {theme}",
"translatedBy": "MapComplete ha estat traduït per {contributors} i <a href=\"https://github.com/pietervdvn/MapComplete/graphs/contributors\" target=\"_blank\">{hiddenCount} col·laboradors més</a>",
"josmNotOpened": "No s'ha pogut contactar amb JOSM. Assegura't que estigui obert i que el control remot estigui habilitat"
"themeBy": "Tema mantingut per {author}",
"translatedBy": "MapComplete ha estat traduït per {contributors} i <a href=\"https://github.com/pietervdvn/MapComplete/graphs/contributors\" target=\"_blank\">{hiddenCount} col·laboradors més</a>"
},
"back": "Tornar",
"backToMapcomplete": "Tornar a l'explicació general de la petició",
@ -101,6 +101,8 @@
"download": {
"downloadAsPdf": "Baixar un PDF del mapa actual",
"downloadAsPdfHelper": "Ideal per imprimir el mapa actual",
"downloadAsSvg": "Baixa un SVG del mapa actual",
"downloadAsSvgHelper": "Compatible amb Inkscape o Adobe Illustrator; necessitaràs un processament ",
"downloadCSV": "Baixar dades visibles com a CSV",
"downloadCSVHelper": "Compatible amb LibreOffice Calc, Excel, …",
"downloadFeatureAsGeojson": "Baixar com a arxiu GeoJson",
@ -108,15 +110,13 @@
"downloadGeoJsonHelper": "Compatible amb QGIS, ArcGIS, ESRI, …",
"downloadGeojson": "Baixar dades visibles com a GeoJSON",
"downloadGpx": "Baixar com a arxiu GPX",
"downloadGpxHelper": "Un fitxer GPX es pot utilitzar amb la majoria de dispositius i aplicacions de navegació",
"exporting": "Exportant…",
"includeMetaData": "Incloure metadades (darrer editor, valors calculats, ...)",
"licenseInfo": "<h3>Avís de drets de còpia</h3>Les dades proveïdes estan sota ODbL. Es poden reutilitzar de forma gratuïta, però <ul><li>l'atribució a <b>© Contribuïdors d'OpenStreetMap</b> és obligatòria</li><li>Qualsevol canvi ha de seguir la llicència</li></ul> Llegeix sencer <a href=\"https://www.openstreetmap.org/copyright\" target=\"_blank\">l'avís de drets de còpia</a> per més detalls.",
"noDataLoaded": "No s'han carregat dades. La baixada estarà disponible aviat",
"title": "Baixar dades visibles",
"uploadGpx": "Pujar la teva traça a OpenStreetMap",
"downloadAsSvg": "Baixa un SVG del mapa actual",
"downloadAsSvgHelper": "Compatible amb Inkscape o Adobe Illustrator; necessitaràs un processament ",
"downloadGpxHelper": "Un fitxer GPX es pot utilitzar amb la majoria de dispositius i aplicacions de navegació"
"uploadGpx": "Pujar la teva traça a OpenStreetMap"
},
"example": "Exemple",
"examples": "Exemples",
@ -190,6 +190,7 @@
"removeLocationHistory": "Esborrar l'historial d'ubicació",
"returnToTheMap": "Tornar al mapa",
"save": "Desar",
"screenToSmall": "Obrir {theme} en una finestra nova",
"search": {
"error": "Alguna cosa no ha sortit bé…",
"nothing": "Res trobat…",
@ -250,14 +251,15 @@
},
"searchWikidata": "Cercar a Wikidata",
"wikipediaboxTitle": "Viquipèdia"
},
"screenToSmall": "Obrir {theme} en una finestra nova"
}
},
"image": {
"addPicture": "Afegir foto",
"ccb": "sota la llicència CC-BY",
"ccbExplanation": "La llicència CC-BY implica que qualsevol persona pot utilitzar la teva imatge per a qualsevol propòsit, però t'ha d'atribuir",
"ccbs": "sota llicència CC-BY-SA",
"cco": "en domini públic",
"ccoExplanation": "Afegir una imatge al domini públic implica que qualsevol pot fer qualsevol cosa amb la teva imatge",
"doDelete": "Esborrar imatge",
"dontDelete": "Cancel·lar",
"isDeleted": "Esborrada",
@ -269,63 +271,61 @@
"uploadMultipleDone": "{count} imatges afegides. Gràcies per ajudar.",
"uploadingMultiple": "Pujant {count} imatges…",
"uploadingPicture": "Pujant la teva imatge…",
"willBePublished": "La teva foto serà publicada: ",
"ccoExplanation": "Afegir una imatge al domini públic implica que qualsevol pot fer qualsevol cosa amb la teva imatge",
"ccbExplanation": "La llicència CC-BY implica que qualsevol persona pot utilitzar la teva imatge per a qualsevol propòsit, però t'ha d'atribuir"
"willBePublished": "La teva foto serà publicada: "
},
"importHelper": {
"allAttributesSame": "Totes les funcions a importar tenen aquesta etiqueta",
"inspectDataTitle": "Inspecciona les dades de {count} funcions per importar",
"inspectDidAutoDected": "La capa es va seleccionar automàticament",
"inspectLooksCorrect": "Aquests valors semblen correctes",
"mapPreview": {
"title": "Vista prèvia del mapa",
"selectLayer": "Amb quina capa coincideix aquesta importació?",
"confirm": "Les característiques es troben a la ubicació correcta del mapa",
"autodetected": "La capa es va deduir automàticament en funció de les propietats"
},
"selectFile": {
"loadedFilesAre": "L'arxiu carregat actualment és {file}",
"noFilesLoaded": "No s'ha carregat cap arxiu",
"title": "Seleccionar arxiu",
"description": "Seleccionar un fitxer .csv o .geojson per començar",
"fileFormatDescription": "Selecciona un fitxer <b class=\"code\">.csv</b> o un fitxer <b class=\"code\">.geojson</b>",
"errNoName": "Algunes columnes no tenen nom",
"errDuplicate": "Algunes columnes tenen el mateix nom",
"errNoLatOrLon": "La capçalera no conté `lat` o `lon`",
"errNotFeatureCollection": "El fitxer JSON carregat no és una col·lecció de funcions geojson",
"errPointsOnly": "El fitxer JSON carregat només hauria de contenir punts"
},
"selectLayer": "Seleccionar capa...",
"title": "Ajuda de l'importador",
"userAccountTitle": "Seleccionar compte d'usuari",
"validateDataTitle": "Validar dades",
"inspectDataTitle": "Inspecciona les dades de {count} funcions per importar",
"loginRequired": "Has d'entrar per continuar",
"someHaveSame": "{count} característiques per importar tenen aquesta etiqueta, això és un {percentage}% del total",
"lockNotice": "Aquesta pàgina està bloquejada. Necessites {importHelperUnlock} conjunts de canvis per poder accedir aquí.",
"locked": "Necessites almenys {importHelperUnlock} per utilitzar l'ajudant d'importació",
"loggedInWith": "Actualment has entrat com a <b>{name}</b> i has fet {csCount} conjunts de canvis",
"lockNotice": "Aquesta pàgina està bloquejada. Necessites {importHelperUnlock} conjunts de canvis per poder accedir aquí.",
"allAttributesSame": "Totes les funcions a importar tenen aquesta etiqueta",
"loginIsCorrect": "<b>{name}</b> és el compte correcte per crear les notes d'importació."
"loginIsCorrect": "<b>{name}</b> és el compte correcte per crear les notes d'importació.",
"loginRequired": "Has d'entrar per continuar",
"mapPreview": {
"autodetected": "La capa es va deduir automàticament en funció de les propietats",
"confirm": "Les característiques es troben a la ubicació correcta del mapa",
"selectLayer": "Amb quina capa coincideix aquesta importació?",
"title": "Vista prèvia del mapa"
},
"selectFile": {
"description": "Seleccionar un fitxer .csv o .geojson per començar",
"errDuplicate": "Algunes columnes tenen el mateix nom",
"errNoLatOrLon": "La capçalera no conté `lat` o `lon`",
"errNoName": "Algunes columnes no tenen nom",
"errNotFeatureCollection": "El fitxer JSON carregat no és una col·lecció de funcions geojson",
"errPointsOnly": "El fitxer JSON carregat només hauria de contenir punts",
"fileFormatDescription": "Selecciona un fitxer <b class=\"code\">.csv</b> o un fitxer <b class=\"code\">.geojson</b>",
"loadedFilesAre": "L'arxiu carregat actualment és {file}",
"noFilesLoaded": "No s'ha carregat cap arxiu",
"title": "Seleccionar arxiu"
},
"selectLayer": "Seleccionar capa...",
"someHaveSame": "{count} característiques per importar tenen aquesta etiqueta, això és un {percentage}% del total",
"title": "Ajuda de l'importador",
"userAccountTitle": "Seleccionar compte d'usuari",
"validateDataTitle": "Validar dades"
},
"importInspector": {
"title": "Inspeccionar i controlar notes d'importació"
},
"importLayer": {
"layerName": "Possible {title}",
"popupTitle": "Possible {title}",
"notFound": "No he pogut trobar {title}: esborra-ho",
"alreadyMapped": "Ja hi ha un altre {title} al mapa; aquest punt és un duplicat",
"description": "Una capa que importa entrades per a {title}",
"importHandled": "<div class=\"thanks\">Aquesta funció s'ha gestionat. Gràcies pel teu esforç.</div>",
"importButton": "import_button({layerId}, _tags, he trobat un {title} aquí; afegeix-lo al mapa,./assets/svg/addSmall.svg,,,id)",
"alreadyMapped": "Ja hi ha un altre {title} al mapa; aquest punt és un duplicat"
"importHandled": "<div class=\"thanks\">Aquesta funció s'ha gestionat. Gràcies pel teu esforç.</div>",
"layerName": "Possible {title}",
"notFound": "No he pogut trobar {title}: esborra-ho",
"popupTitle": "Possible {title}"
},
"index": {
"#": "Aquests textos es mostren sobre els botons de les peticions quan no hi ha petició carregada",
"featuredThemeTitle": "Destacades aquesta setmana",
"intro": "MapComplete és un visor i editor d'OpenStreetMap, que et mostra informació sobre elements d'una petició específica i et permet actualitzar-los.",
"logIn": "Entra per veure altres temes que has visitat anteriorment",
"pickTheme": "Tria una petició de sota per començar.",
"title": "Benvingut/da a MapComplete",
"logIn": "Entra per veure altres temes que has visitat anteriorment"
"title": "Benvingut/da a MapComplete"
},
"move": {
"cancel": "Cancel·lar moviment",
@ -363,6 +363,7 @@
"anonymous": "Usuari/a anònim/a",
"closeNote": "Tancar nota",
"createNote": "Crear una nova nota",
"createNoteIntro": "Hi ha alguna cosa malament o falta al mapa? Creeu una nota aquí. Aquests seran verificats per voluntaris.",
"createNoteTitle": "Crear una nova nota aquí",
"disableAllNoteFilters": "Deshabilitar tots els filtres",
"isClosed": "Aquesta nota s'ha resolt",
@ -370,17 +371,16 @@
"loginToAddComment": "Entrar per afegir un comentari",
"loginToAddPicture": "Entrar per afegir una imatge",
"loginToClose": "Entrar per tancar aquesta nota",
"noteIsPublic": "Això serà visible per a tothom",
"noteLayerDoEnable": "Habilita la capa que mostra notes",
"noteLayerHasFilters": "Algunes notes poden estar ocultes per un filtre",
"noteLayerNotEnabled": "La capa que mostra les notes no està activada. Aquesta capa s'ha d'habilitar per afegir una nota nova",
"notesLayerMustBeEnabled": "La capa 'notes' està desactivada. Activa-la per afegir una nota",
"reopenNote": "Reobrir nota",
"reopenNoteAndComment": "Reobrir nota i comentar",
"textNeeded": "Introdueix un text descriptiu per crear una nota",
"noteIsPublic": "Això serà visible per a tothom",
"warnAnonymous": "No has entrat. No podrem contactar amb tu per resoldre el problema.",
"noteLayerNotEnabled": "La capa que mostra les notes no està activada. Aquesta capa s'ha d'habilitar per afegir una nota nova",
"typeText": "Escriu text per afegir un comentari",
"notesLayerMustBeEnabled": "La capa 'notes' està desactivada. Activa-la per afegir una nota",
"noteLayerHasFilters": "Algunes notes poden estar ocultes per un filtre",
"createNoteIntro": "Hi ha alguna cosa malament o falta al mapa? Creeu una nota aquí. Aquests seran verificats per voluntaris."
"warnAnonymous": "No has entrat. No podrem contactar amb tu per resoldre el problema."
},
"privacy": {
"editingTitle": "Quan es facin canvis",
@ -392,87 +392,87 @@
},
"professional": {
"aboutMc": {
"survey": {
"title": "Possibilitats d'enquesta"
},
"title": "Utilitzar MapComplete a la teva organització",
"layers": {
"title": "Quines dades es poden mostrar amb MapComplete?"
},
"internalUse": {
"title": "Ús de les dades en processos interns"
},
"text2": "Si encara no et sents segur, les possibilitats es descriuen a continuació. A més, es responen algunes preguntes habituals"
"layers": {
"title": "Quines dades es poden mostrar amb MapComplete?"
},
"survey": {
"title": "Possibilitats d'enquesta"
},
"text2": "Si encara no et sents segur, les possibilitats es descriuen a continuació. A més, es responen algunes preguntes habituals",
"title": "Utilitzar MapComplete a la teva organització"
},
"aboutOsm": {
"aboutOsm": {
"li2": "Els lavabos poden tenir informació sobre l'accessibilitat per a cadira de rodes, un canviador, si cal pagar, …",
"li3": "i molt, molt més…",
"title": "Què és OpenStreetMap?",
"li2": "Els lavabos poden tenir informació sobre l'accessibilitat per a cadira de rodes, un canviador, si cal pagar, …"
"title": "Què és OpenStreetMap?"
},
"benefits": {
"title": "Beneficis de l'ecosistema OSM",
"li0": "Ja no estàs sol per reunir i mantenir aquest conjunt de dades: tota una comunitat està al teu costat",
"li2": "Moltes organitzacions governamentals i municipis també utilitzen OpenStreetMap als seus llocs web",
"li0": "Ja no estàs sol per reunir i mantenir aquest conjunt de dades: tota una comunitat està al teu costat"
"title": "Beneficis de l'ecosistema OSM"
},
"license": {
"title": "La llicència",
"intro": "OpenStreetMap té llicència sota la llicència de base de dades oberta. El <a href=\"https://osm.org/copyright\" target=\"_blank\">text complet dels drets d'autor</a> es pot resumir de la següent manera:",
"li0": "Un producte que utilitza dades d'OpenStreetMap ha de donar-ne atribució.",
"outro": "La llicència té algunes implicacions; aquestes s'expliquen a continuació.",
"li1": "Les dades d'OpenStreetMap han de romandre <i>obertes</i>. Això significa que les dades d'un mapa que conté dades d'OpenStreetMap es poden tornar a copiar.",
"intro": "OpenStreetMap té llicència sota la llicència de base de dades oberta. El <a href=\"https://osm.org/copyright\" target=\"_blank\">text complet dels drets d'autor</a> es pot resumir de la següent manera:"
"outro": "La llicència té algunes implicacions; aquestes s'expliquen a continuació.",
"title": "La llicència"
},
"vandalism": {
"title": "Què és el vandalisme?",
"li0": "la barrera tècnica per fer canvis és alta",
"li1": "un petit canvi maliciós té un impacte baix, per tant, poca recompensa per a un vàndal",
"li2": "un canvi d'alt impacte es nota ràpidament i es reverteix ja que molta gent utilitza aquestes dades",
"li3": "tots els canvis es fan un seguiment i es vincula a un sol usuari. Un delinqüent reincident és ràpidament prohibit",
"li1": "un petit canvi maliciós té un impacte baix, per tant, poca recompensa per a un vàndal",
"li4": "A Bèlgica (i alguns altres països), la primera edició d'un nou col·laborador es verifica i corregeix sistemàticament si cal."
"li4": "A Bèlgica (i alguns altres països), la primera edició d'un nou col·laborador es verifica i corregeix sistemàticament si cal.",
"title": "Què és el vandalisme?"
}
},
"drawbacks": {
"intro": "Tot i que unir-se a aquesta comunitat té enormes beneficis, hi ha alguns temes que cal tenir en compte.",
"licenseNuances": {
"intro": "OpenStreetMap té llicència sota la llicència de base de dades oberta que estableix que:",
"li0": "Totes les dades es poden reutilitzar per a qualsevol finalitat, incloses les comercials",
"li1": "Les aplicacions o productes que utilitzen OpenStreetMap haurien de donar un avís clar de drets d'autor",
"outro": "Això té algunes implicacions que s'han de tenir en compte per a alguns casos d'ús, tal com s'explica a continuació",
"title": "Implicacions de l'ODbL: alguns casos d'ús",
"usecaseGatheringOpenData": {
"title": "Aconseguint dades obertes"
},
"usecaseMapDifferentSources": {
"title": "Creació d'un mapa a partir de diferents fonts",
"li0": "la llicència oberta requeriria que les modificacions es tornin a publicar obertament…",
"li1": "… mentre que la llicència de tots els drets reservats ho prohibiria.",
"outro": "Com a resultat, aquest tipus de barreja no està permès",
"li0": "la llicència oberta requeriria que les modificacions es tornin a publicar obertament…"
},
"title": "Implicacions de l'ODbL: alguns casos d'ús",
"li1": "Les aplicacions o productes que utilitzen OpenStreetMap haurien de donar un avís clar de drets d'autor",
"li0": "Totes les dades es poden reutilitzar per a qualsevol finalitat, incloses les comercials",
"intro": "OpenStreetMap té llicència sota la llicència de base de dades oberta que estableix que:",
"outro": "Això té algunes implicacions que s'han de tenir en compte per a alguns casos d'ús, tal com s'explica a continuació"
},
"unsuitedData": {
"title": "Les dades no són acceptables per OpenStreetMap",
"li1": "Els esdeveniments <i>no</i> es registren, ni tampoc les obres viàries que només duren uns quants dies."
"title": "Creació d'un mapa a partir de diferents fonts"
}
},
"title": "Alguns inconvenients a tenir en compte",
"intro": "Tot i que unir-se a aquesta comunitat té enormes beneficis, hi ha alguns temes que cal tenir en compte."
"unsuitedData": {
"li1": "Els esdeveniments <i>no</i> es registren, ni tampoc les obres viàries que només duren uns quants dies.",
"title": "Les dades no són acceptables per OpenStreetMap"
}
},
"indexPage": {
"button": "Descobreix els nostres serveis",
"hook": "Necessites ajuda professional?",
"hookMore": "Podem ajudar a configurar enquestes, importacions de dades i consultoria OpenStreetMap"
},
"intro": "El desenvolupador de MapComplete ofereix suport professional. Aquest document descriu algunes de les possibilitats, preguntes habituals i els límits de MapComplete",
"osmTitle": "Què poden fer OpenStreetMap i MapComplete per a la vostra organització?",
"services": {
"title": "Serveis de Mapcomplete",
"intro": "El desenvolupador de MapComplete us pot ajudar amb els serveis següents:",
"li0": "Configurar una petició adaptada a les vostres necessitats",
"li4": "Formació sobre com baixar dades filtrades d'OpenStreetMap",
"li1": "Ajuda a configurar el flux de dades intern per integrar OpenStreetMap",
"li2": "Formació sobre com aportar dades amb MapComplete",
"li3": "Formació avançada (per exemple, per a l'equip GIS) sobre com afegir dades avançades a OpenStreetMap",
"intro": "El desenvolupador de MapComplete us pot ajudar amb els serveis següents:",
"li1": "Ajuda a configurar el flux de dades intern per integrar OpenStreetMap"
"li4": "Formació sobre com baixar dades filtrades d'OpenStreetMap",
"title": "Serveis de Mapcomplete"
},
"title": "Suport professional amb MapComplete",
"text1": "<p>MapComplete és l'editor per facilitar la contribució de dades a OpenStreetMap.</p>",
"intro": "El desenvolupador de MapComplete ofereix suport professional. Aquest document descriu algunes de les possibilitats, preguntes habituals i els límits de MapComplete",
"osmTitle": "Què poden fer OpenStreetMap i MapComplete per a la vostra organització?"
"title": "Suport professional amb MapComplete"
},
"reviews": {
"affiliated_reviewer_warning": "(Ressenya afiliada)",
@ -500,16 +500,19 @@
},
"translations": {
"activateButton": "Ajudar a traduir MapComplete",
"completeness": "Les traduccions de {theme} en {language} tenen un {percentage}%: {translated} cadenes de {total} es tradueixen",
"deactivate": "Deshabilitar els botons de traducció",
"missing": "{count} cadenes sense traduir",
"notImmediate": "Les traduccions no s'actualitzen directament. Això sol trigar uns quants dies",
"isTranslator": "El mode de traducció està actiu, ja que el vostre nom d'usuari coincideix amb el nom d'un traductor anterior",
"completeness": "Les traduccions de {theme} en {language} tenen un {percentage}%: {translated} cadenes de {total} es tradueixen"
"missing": "{count} cadenes sense traduir",
"notImmediate": "Les traduccions no s'actualitzen directament. Això sol trigar uns quants dies"
},
"validation": {
"color": {
"description": "Un color o codi hex"
},
"date": {
"description": "Una data, començant per l'any"
},
"decimal": {
"description": "Un número"
},
@ -518,8 +521,8 @@
},
"email": {
"description": "Adreça de correu electrònic",
"noAt": "Una adreça de correu electrònic ha de contenir una @",
"feedback": "Aquesta adreça de correu electrònic no és vàlida"
"feedback": "Aquesta adreça de correu electrònic no és vàlida",
"noAt": "Una adreça de correu electrònic ha de contenir una @"
},
"float": {
"description": "un número",
@ -529,10 +532,10 @@
"description": "un número sencer"
},
"nat": {
"description": "un nombre positiu, sencer o zero",
"mustBePositive": "Aquest número ha de ser positiu",
"mustBeWhole": "Només s'accepten números sencers",
"notANumber": "Escriu un número",
"description": "un nombre positiu, sencer o zero"
"notANumber": "Escriu un número"
},
"opening_hours": {
"description": "Horari d'obertura"
@ -554,16 +557,13 @@
"text": {
"description": "un tros de text"
},
"tooLong": "El text és massa llarg, es permeten com a màxim 255 caràcters. Ara tens {count} caràcters",
"url": {
"description": "enllaç a un lloc web",
"feedback": "Aquesta adreça web no és vàlida"
},
"wikidata": {
"description": "Un identificador de Wikidata"
},
"date": {
"description": "Una data, començant per l'any"
},
"tooLong": "El text és massa llarg, es permeten com a màxim 255 caràcters. Ara tens {count} caràcters"
}
}
}

View file

@ -50,11 +50,11 @@
"hasBeenImported": "Dieser Punkt wurde bereits importiert",
"import": {
"hasBeenImported": "Das Objekt wurde importiert.",
"howToTest": "Um es zu testen, hänge <b>test=true</b> oder <b>backend=osm-test</b> an die URL an. Die Änderungen werden in der Konsole ausgegeben. Bitte erstelle einen PR um das Thema zu veröffentlichen das den Import Button freischält.",
"importTags": "Das Element wird {tags} bekommen",
"officialThemesOnly": "Der Importbutton ist für nicht offizielle Themen deaktiviert um Störfälle zu vermeiden.",
"wrongType": "Dieses Element ist kein Punkt oder Weg und kann deshalb nicht importiert werden.",
"zoomInMore": "Vergrößere um das Feature zu importieren.",
"importTags": "Das Element wird {tags} bekommen",
"howToTest": "Um es zu testen, hänge <b>test=true</b> oder <b>backend=osm-test</b> an die URL an. Die Änderungen werden in der Konsole ausgegeben. Bitte erstelle einen PR um das Thema zu veröffentlichen das den Import Button freischält."
"zoomInMore": "Vergrößere um das Feature zu importieren."
},
"importTags": "Das Element erhält {tags}",
"intro": "Sie haben auf eine Stelle in der Karte geklickt, an der noch keine Daten bekannt sind.<br>",
@ -70,8 +70,8 @@
"zoomInMore": "Vergrößern Sie die Ansicht, um dieses Element zu importieren"
},
"apply_button": {
"isApplied": "Die Änderungen wurden gespeichert.",
"appliedOnAnotherObject": "Das Objekt {id} wird {tags} bekommen"
"appliedOnAnotherObject": "Das Objekt {id} wird {tags} bekommen",
"isApplied": "Die Änderungen wurden gespeichert."
},
"attribution": {
"attributionContent": "<p>Alle Daten wurden bereitgestellt von <a href=\"https://osm.org\" target=\"_blank\">OpenStreetMap</a>, frei verwendbar unter der <a href=\"https://osm.org/copyright\" target=\"_blank\">Open Database License</a>.</p>",
@ -134,6 +134,7 @@
},
"loading": "Laden...",
"loadingTheme": "Lade {theme}...",
"loginFailed": "Einloggen zu OpenStreetMap fehlgeschlagen",
"loginOnlyNeededToEdit": "zum Bearbeiten der Karte",
"loginToStart": "Anmelden, um diese Frage zu beantworten",
"loginWithOpenStreetMap": "Bei OpenStreetMap anmelden",
@ -177,6 +178,7 @@
"versionInfo": "v{version} - erstellt am {date}"
},
"pickLanguage": "Sprache wählen: ",
"poweredByOsm": "Powered by OpenStreetMap",
"questions": {
"emailIs": "Die E-Mail-Adresse dieser {category} lautet <a href=\"mailto:{email}\" target=\"_blank\">{email}</a>",
"emailOf": "Wie lautet die E-Mail-Adresse der {category}?",
@ -250,9 +252,7 @@
},
"searchWikidata": "Suche auf Wikidata",
"wikipediaboxTitle": "Wikipedia"
},
"loginFailed": "Einloggen zu OpenStreetMap fehlgeschlagen",
"poweredByOsm": "Powered by OpenStreetMap"
}
},
"image": {
"addPicture": "Bild hinzufügen",
@ -279,36 +279,42 @@
"description": "Der Import-Helfer konvertiert einen externen Datensatz in Hinweise. Der externe Datensatz muss mit einer der vorhandenen MapComplete-Ebenen übereinstimmen. Für jedes Element, das Sie in den Import-Helfer eingeben, wird ein einzelner Hinweis erstellt. Diese Hinweise werden zusammen mit den entsprechenden Objekten in diesen Karten angezeigt, um sie leicht hinzufügen zu können.",
"importFormat": "Der Hinweistext sollte folgendes Format haben, um aufgenommen zu werden: <br><div class=\"literal-code\">[Eine kleine Einführung]<br>https://mapcomplete.osm.be/[themenname].html?[Parameter wie lat und lon]#import<br>[alle Tags des Objekts] </div>",
"inspectDidAutoDected": "Ebene wurde automatisch ausgewählt",
"title": "Import-Helfer",
"locked": "Du benötigst mindestens {importHelperUnlock} um die Importhilfe zu benutzen",
"selectFile": {
"errNoName": "Einige Spalten haben keinen Namen",
"errNoLatOrLon": "Der Kopf? enhält weder `lat` noch `lon`",
"errDuplicate": "Einige Spalten haben den selben Namen",
"errNotFeatureCollection": "Die geladene JSON-Datei ist keine geojson-featurecollection",
"errPointsOnly": "Die geladene JSON-Datei sollte nur Punkte enthalten",
"fileFormatDescription": "Wähle eine <b class=\"code\">.csv</b> oder <b class=\"code\">.geojson</b> Datei",
"fileFormatDescriptionCsv": "In der CSV-Datei sollte es jeweils eine Spalte für <span class=\"literal-code\">lat</span> und <span class=\"literal-code\">lon</span>mit den Koordinaten in WGS84 geben. Jedes weitere Attribut sollte in einer eigenen Spalte sein.",
"noFilesLoaded": "Keine Datei geladen",
"loadedFilesAre": "Die Datei {file} ist geladen",
"title": "Wähle eine Datei",
"description": "Wähle eine .csv oder .geojson Datei um anzufangen"
},
"loginIsCorrect": "<b>{name}</b> ist der richtige Account um Importnotizen zu erstellen.",
"inspectLooksCorrect": "Die Werte sehen richtig aus",
"lockNotice": "Diese Seite ist gesperrt. Du brauchst die Änderungen {importHelperUnlock} bevor du die Seite öffnen kannst.",
"locked": "Du benötigst mindestens {importHelperUnlock} um die Importhilfe zu benutzen",
"loggedInWith": "Du bist eingeloggt als <b>{name}</b> und hast {csCount} Änderungen",
"loginIsCorrect": "<b>{name}</b> ist der richtige Account um Importnotizen zu erstellen.",
"loginRequired": "Du musst eingeloggt sein um fortzufahren.",
"mapPreview": {
"title": "Kartenvorschau"
},
"validateDataTitle": "Bestätige Daten",
"selectFile": {
"description": "Wähle eine .csv oder .geojson Datei um anzufangen",
"errDuplicate": "Einige Spalten haben den selben Namen",
"errNoLatOrLon": "Der Kopf? enhält weder `lat` noch `lon`",
"errNoName": "Einige Spalten haben keinen Namen",
"errNotFeatureCollection": "Die geladene JSON-Datei ist keine geojson-featurecollection",
"errPointsOnly": "Die geladene JSON-Datei sollte nur Punkte enthalten",
"fileFormatDescription": "Wähle eine <b class=\"code\">.csv</b> oder <b class=\"code\">.geojson</b> Datei",
"fileFormatDescriptionCsv": "In der CSV-Datei sollte es jeweils eine Spalte für <span class=\"literal-code\">lat</span> und <span class=\"literal-code\">lon</span>mit den Koordinaten in WGS84 geben. Jedes weitere Attribut sollte in einer eigenen Spalte sein.",
"loadedFilesAre": "Die Datei {file} ist geladen",
"noFilesLoaded": "Keine Datei geladen",
"title": "Wähle eine Datei"
},
"selectLayer": "Wähle eine Ebene...",
"userAccountTitle": "Wähle einen Benutzeraccount"
"title": "Import-Helfer",
"userAccountTitle": "Wähle einen Benutzeraccount",
"validateDataTitle": "Bestätige Daten"
},
"importInspector": {
"title": "Importhinweise überprüfen und verwalten"
},
"importLayer": {
"description": "Eine Ebene, die Einträge für {title} importiert",
"layerName": "Möglicher {title}",
"notFound": "Ich konnte {title} nicht finden - entferne es",
"popupTitle": "Möglicher {title}"
},
"index": {
"#": "Dieser Text wird über die Thema-Auswahlschaltfläche gezeigt, wenn kein Thema geladen ist",
"featuredThemeTitle": "Diese Woche im Blickpunkt",
@ -345,6 +351,26 @@
"multi_apply": {
"autoApply": "Wenn Sie die Attribute {attr_names} ändern, werden diese Attribute automatisch auch auf {count} anderen Objekten geändert"
},
"notes": {
"addAComment": "Füge einen Kommentar hinzu",
"addComment": "Kommentieren",
"addCommentAndClose": "Kommentieren und Schließe",
"addCommentPlaceholder": "Add a comment...",
"anonymous": "Anonymer Benutzer",
"closeNote": "Schließe Notiz",
"createNote": "Erstelle eine neue Notiz",
"createNoteTitle": "Erstelle hier eine neue Notiz",
"disableAllNoteFilters": "Deaktiviere alle Filter",
"isClosed": "Diese Notiz ist geklärt",
"isCreated": "Deine Notiz wurde erstellt!",
"loginToAddComment": "Einloggen um zu Kommentieren",
"loginToAddPicture": "Einloggen um ein Bild hinzuzufügen",
"loginToClose": "Einloggen um die Notiz zu schließen",
"noteIsPublic": "Es wird für alle sichtbar sein",
"noteLayerDoEnable": "Aktiviere die Ebene \"showing notes\"",
"noteLayerHasFilters": "Einige Notizen können durch einen Filter versteckt sein",
"noteLayerNotEnabled": "Die Ebene \"showing notes\" ist nicht aktiviert. Die Ebene muss aktiviert sein um eine Notiz hinzuzufügen"
},
"privacy": {
"editing": "Wenn Sie eine Änderung an der Karte vornehmen, wird diese Änderung auf OpenStreetMap aufgezeichnet und ist für jeden öffentlich zugänglich. Ein mit MapComplete vorgenommener Änderungssatz enthält die folgenden Daten: <ul><li>Die von Ihnen vorgenommenen Änderungen</li><li>Ihr Benutzername</li><li>Wann diese Änderung vorgenommen wurde</li><li>Das Thema, das Sie bei der Änderung verwendet haben</li><li>Die Sprache der Benutzeroberfläche</li><li>Eine Angabe darüber, wie nah Sie an geänderten Objekten waren. Andere Kartierer können diese Informationen nutzen, um festzustellen, ob eine Änderung auf Basis einer Vor-Ort Erkundung oder einer Fernerkundung vorgenommen wurde</li></ul> Ausführliche Informationen finden Sie in <a href=\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\" target=\"_blank\">den Datenschutzbestimmungen auf OpenStreetMap.org</a>. Wir möchten Sie daran erinnern, dass Sie bei der Anmeldung einen fiktiven Namen verwenden können.",
"editingTitle": "Ihre Änderungen",
@ -355,15 +381,10 @@
"miscCookiesTitle": "Andere Cookies",
"surveillance": "Da Sie die Datenschutzbestimmungen lesen, ist Ihnen der Datenschutz wahrscheinlich wichtig - uns auch! Wir haben sogar <a href=\"https://mapcomplete.osm.be/surveillance\">ein Thema gemacht, das Überwachungskameras zeigt.</a> Zögern Sie nicht, sie alle zu mappen!",
"title": "Datenschutzbestimmungen",
"whileYoureHere": "Ist Ihnen die Privatsphäre wichtig?",
"trackingTitle": "Statistische Daten"
"trackingTitle": "Statistische Daten",
"whileYoureHere": "Ist Ihnen die Privatsphäre wichtig?"
},
"professional": {
"indexPage": {
"button": "Erfahren Sie mehr über unsere Dienstleistungen",
"hook": "Benötigen Sie professionelle Unterstützung?",
"hookMore": "Wir können bei der Erstellung von Umfragen, Datenimporten und OpenStreetMap-Beratung helfen."
},
"aboutMc": {
"layers": {
"title": "Welche Daten können mit MapComplete gezeigt werden?"
@ -374,19 +395,24 @@
"title": "Benutze MapComplete in deinem Organisation"
},
"aboutOsm": {
"license": {
"title": "Die Lizenz"
},
"aboutOsm": {
"title": "Was ist OpenStreetMap?",
"li3": "und vieles, vieles mehr…"
},
"vandalism": {
"title": "Gibt es Vandalismus?"
"li3": "und vieles, vieles mehr…",
"title": "Was ist OpenStreetMap?"
},
"benefits": {
"title": "Vorteile des OSM-Ökosystem"
},
"license": {
"title": "Die Lizenz"
},
"vandalism": {
"title": "Gibt es Vandalismus?"
}
},
"indexPage": {
"button": "Erfahren Sie mehr über unsere Dienstleistungen",
"hook": "Benötigen Sie professionelle Unterstützung?",
"hookMore": "Wir können bei der Erstellung von Umfragen, Datenimporten und OpenStreetMap-Beratung helfen."
}
},
"reviews": {
@ -419,31 +445,5 @@
"deactivate": "Schaltflächen für die Übersetzung deaktivieren",
"help": "Klicken Sie auf das 'translate'-Symbol neben einer Zeichenfolge, um einen Text einzugeben oder zu aktualisieren. Dazu benötigen Sie einen Weblate-Account. Erstellen Sie einen mit Ihrem OSM-Benutzernamen, um den Übersetzungsmodus automatisch freizuschalten.",
"isTranslator": "Der Übersetzungsmodus ist aktiv, da Ihr Benutzername mit dem Namen eines früheren Übersetzers übereinstimmt"
},
"notes": {
"addCommentPlaceholder": "Add a comment...",
"anonymous": "Anonymer Benutzer",
"closeNote": "Schließe Notiz",
"disableAllNoteFilters": "Deaktiviere alle Filter",
"isCreated": "Deine Notiz wurde erstellt!",
"noteIsPublic": "Es wird für alle sichtbar sein",
"addAComment": "Füge einen Kommentar hinzu",
"addComment": "Kommentieren",
"createNote": "Erstelle eine neue Notiz",
"createNoteTitle": "Erstelle hier eine neue Notiz",
"loginToClose": "Einloggen um die Notiz zu schließen",
"isClosed": "Diese Notiz ist geklärt",
"loginToAddComment": "Einloggen um zu Kommentieren",
"loginToAddPicture": "Einloggen um ein Bild hinzuzufügen",
"noteLayerDoEnable": "Aktiviere die Ebene \"showing notes\"",
"noteLayerNotEnabled": "Die Ebene \"showing notes\" ist nicht aktiviert. Die Ebene muss aktiviert sein um eine Notiz hinzuzufügen",
"noteLayerHasFilters": "Einige Notizen können durch einen Filter versteckt sein",
"addCommentAndClose": "Kommentieren und Schließe"
},
"importLayer": {
"popupTitle": "Möglicher {title}",
"layerName": "Möglicher {title}",
"notFound": "Ich konnte {title} nicht finden - entferne es",
"description": "Eine Ebene, die Einträge für {title} importiert"
}
}

View file

@ -7,14 +7,14 @@
},
"delete": {
"cancel": "Kanselá",
"isDeleted": "Tinanggal na ang tampók na ito",
"isntAPoint": "Mga buko (point) lang ang maaring tanggalin, ang piniling tampók ay isang way, area o relation.",
"loginToDelete": "Dapat kang naka-logged in para matanggal ang buko(point)",
"cannotBeDeleted": "Ang tampok na ito ay hindi matatanggal",
"delete": "Tanggalin",
"explanations": {
"selectReason": "Pumili ng dahilan kung bakit dapat tanggalin ang tampók na ito."
},
"cannotBeDeleted": "Ang tampok na ito ay hindi matatanggal",
"isDeleted": "Tinanggal na ang tampók na ito",
"isntAPoint": "Mga buko (point) lang ang maaring tanggalin, ang piniling tampók ay isang way, area o relation.",
"loading": "Sinisiyasat ang mga katangian ng tampók para alamin kung maari itong tanggalin.",
"delete": "Tanggalin"
"loginToDelete": "Dapat kang naka-logged in para matanggal ang buko(point)"
}
}

View file

@ -42,11 +42,6 @@
"getStartedLogin": "Entra no OpenStreetMap para comezar",
"getStartedNewAccount": " ou <a href='https://www.openstreetmap.org/user/new' target='_blank'>crea unha nova conta</a>",
"goToInbox": "Abrir mensaxes",
"index": {
"intro": "O MapComplete é un visor e editor do OpenStreetMap, que te amosa información sobre un tema específico.",
"pickTheme": "Escolle un tema para comezar.",
"title": "Benvido ao MapComplete"
},
"layerSelection": {
"title": "Seleccionar capas",
"zoomInToSeeThisLayer": "Achégate para ver esta capa"

View file

@ -213,6 +213,16 @@
"question": "Wie breit ist die kleinste Öffnung neben den Barrieren?",
"render": "Breite der Öffnung: {width:opening} m"
},
"barrier_type": {
"mappings": {
"0": {
"then": "Dies ist ein einzelner Poller auf der Straße"
},
"1": {
"then": "Dies ist eine Fahrradbarriere, die Radfahrer abbremst"
}
}
},
"bicycle=yes/no": {
"mappings": {
"0": {
@ -223,16 +233,6 @@
}
},
"question": "Kann ein Radfahrer das Hindernis passieren?"
},
"barrier_type": {
"mappings": {
"1": {
"then": "Dies ist eine Fahrradbarriere, die Radfahrer abbremst"
},
"0": {
"then": "Dies ist ein einzelner Poller auf der Straße"
}
}
}
},
"title": {
@ -248,6 +248,7 @@
}
},
"bench": {
"description": "Diese Karte stellt Sitzbänke aus Holz, Metall, Stein, ... dar und stellt ein paar Fragen, um weitere Informationen zu ergänzen.",
"name": "Sitzbänke",
"presets": {
"0": {
@ -335,10 +336,10 @@
},
"title": {
"render": "Sitzbank"
},
"description": "Diese Karte stellt Sitzbänke aus Holz, Metall, Stein, ... dar und stellt ein paar Fragen, um weitere Informationen zu ergänzen."
}
},
"bench_at_pt": {
"description": "Eine Ebene mit allen Haltestellen des öffentlichen Nahverkehrs, die über eine Sitzbank verfügen",
"name": "Sitzbänke an Haltestellen",
"tagRenderings": {
"bench_at_pt-bench_type": {
@ -369,8 +370,7 @@
}
},
"render": "Sitzbank"
},
"description": "Eine Ebene mit allen Haltestellen des öffentlichen Nahverkehrs, die über eine Sitzbank verfügen"
}
},
"bicycle_library": {
"description": "Eine Einrichtung, in der Fahrräder für längere Zeit geliehen werden können",
@ -418,56 +418,30 @@
}
},
"bicycle_rental": {
"name": "Fahrradverleih",
"deletion": {
"extraDeleteReasons": {
"0": {
"explanation": "{title()} ist dauerhaft geschlossen"
}
},
"nonDeleteMappings": {
"0": {
"then": "Dieser Fahrradladen vermietete früher Fahrräder, aber jetzt nicht mehr"
}
}
},
"description": "Fahrradverleihstationen",
"name": "Fahrradverleih",
"presets": {
"0": {
"description": "Ein Geschäft, das sich auf den Fahrradverleih konzentriert",
"title": "Ein Fahrradverleih"
},
"1": {
"title": "Ein Fahrradverleih"
}
},
"tagRenderings": {
"bicycle_rental_type": {
"mappings": {
"1": {
"then": "Dies ist ein Vermietungsunternehmen, das verschiedene Gegenstände und/oder Fahrzeuge vermietet. Es vermietet auch Fahrräder, aber das ist nicht der Hauptschwerpunkt"
},
"3": {
"then": "Dies ist eine automatisierte Dockingstation, bei der ein Fahrrad mechanisch in einer Struktur verriegelt wird"
},
"0": {
"then": "Dies ist ein Geschäft, dessen Schwerpunkt auf dem Fahrradverleih liegt"
},
"2": {
"then": "Dies ist ein Geschäft, das Fahrräder verkauft oder repariert, aber auch Fahrräder vermietet"
},
"4": {
"then": "Es gibt einen Automaten, der Schlüssel ausgibt und annimmt, eventuell nach Authentifizierung und/oder Bezahlung. Die Fahrräder sind in der Nähe geparkt"
}
},
"question": "Was ist das für ein Fahrradverleih?"
},
"bicycle-types": {
"mappings": {
"6": {
"then": "Rennräder können hier gemietet werden"
},
"2": {
"then": "BMX-Räder können hier gemietet werden"
},
"0": {
"then": "Normale Stadtfahrräder können hier gemietet werden"
},
"1": {
"then": "Elektrofahrräder können hier gemietet werden"
},
"4": {
"then": "Kinderfahrräder können hier gemietet werden"
},
"3": {
"then": "Mountainbikes können hier gemietet werden"
},
"5": {
"then": "Tandems können hier gemietet werden"
}
},
"question": "Welche Art von Fahrrädern und Zubehör wird hier vermietet?",
"render": "{rental} wird hier vermietet"
},
"9": {
"rewrite": {
"into": {
@ -494,15 +468,53 @@
}
}
}
}
},
"presets": {
"0": {
"title": "Ein Fahrradverleih",
"description": "Ein Geschäft, das sich auf den Fahrradverleih konzentriert"
},
"1": {
"title": "Ein Fahrradverleih"
"bicycle-types": {
"mappings": {
"0": {
"then": "Normale Stadtfahrräder können hier gemietet werden"
},
"1": {
"then": "Elektrofahrräder können hier gemietet werden"
},
"2": {
"then": "BMX-Räder können hier gemietet werden"
},
"3": {
"then": "Mountainbikes können hier gemietet werden"
},
"4": {
"then": "Kinderfahrräder können hier gemietet werden"
},
"5": {
"then": "Tandems können hier gemietet werden"
},
"6": {
"then": "Rennräder können hier gemietet werden"
}
},
"question": "Welche Art von Fahrrädern und Zubehör wird hier vermietet?",
"render": "{rental} wird hier vermietet"
},
"bicycle_rental_type": {
"mappings": {
"0": {
"then": "Dies ist ein Geschäft, dessen Schwerpunkt auf dem Fahrradverleih liegt"
},
"1": {
"then": "Dies ist ein Vermietungsunternehmen, das verschiedene Gegenstände und/oder Fahrzeuge vermietet. Es vermietet auch Fahrräder, aber das ist nicht der Hauptschwerpunkt"
},
"2": {
"then": "Dies ist ein Geschäft, das Fahrräder verkauft oder repariert, aber auch Fahrräder vermietet"
},
"3": {
"then": "Dies ist eine automatisierte Dockingstation, bei der ein Fahrrad mechanisch in einer Struktur verriegelt wird"
},
"4": {
"then": "Es gibt einen Automaten, der Schlüssel ausgibt und annimmt, eventuell nach Authentifizierung und/oder Bezahlung. Die Fahrräder sind in der Nähe geparkt"
}
},
"question": "Was ist das für ein Fahrradverleih?"
}
},
"title": {
@ -512,21 +524,10 @@
}
},
"render": "Fahrradverleih"
},
"deletion": {
"extraDeleteReasons": {
"0": {
"explanation": "{title()} ist dauerhaft geschlossen"
}
},
"nonDeleteMappings": {
"0": {
"then": "Dieser Fahrradladen vermietete früher Fahrräder, aber jetzt nicht mehr"
}
}
}
},
"bicycle_tube_vending_machine": {
"description": "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, ...)",
"name": "Automaten für Fahrradschläuche",
"presets": {
"0": {
@ -552,10 +553,10 @@
},
"title": {
"render": "Fahrradschlauch-Automat"
},
"description": "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, ...)"
}
},
"bike_cafe": {
"description": "Ein Fahrradcafé ist ein Café, das auf Radfahrer ausgerichtet ist, zum Beispiel mit Dienstleistungen wie einer Pumpe, mit viel fahrradbezogener Dekoration, ...",
"name": "Fahrrad-Cafés",
"presets": {
"0": {
@ -620,10 +621,10 @@
}
},
"render": "Fahrrad-Café"
},
"description": "Ein Fahrradcafé ist ein Café, das auf Radfahrer ausgerichtet ist, zum Beispiel mit Dienstleistungen wie einer Pumpe, mit viel fahrradbezogener Dekoration, ..."
}
},
"bike_cleaning": {
"description": "Eine Ebene mit Einrichtungen, in denen man sein Fahrrad reinigen kann",
"name": "Fahrrad-Reinigungsdienste",
"presets": {
"0": {
@ -669,10 +670,10 @@
}
},
"render": "Fahrrad-Reinigungsdienst"
},
"description": "Eine Ebene mit Einrichtungen, in denen man sein Fahrrad reinigen kann"
}
},
"bike_parking": {
"description": "Eine Ebene, die anzeigt, wo Sie Ihr Fahrrad abstellen können",
"name": "Fahrrad-Parkplätze",
"presets": {
"0": {
@ -778,10 +779,10 @@
},
"title": {
"render": "Fahrrad-Parkplätze"
},
"description": "Eine Ebene, die anzeigt, wo Sie Ihr Fahrrad abstellen können"
}
},
"bike_repair_station": {
"description": "Eine Ebene mit Fahrradpumpen und Werkzeugständern für die Fahrradreparatur",
"name": "Fahrradstationen (Reparatur, Pumpe oder beides)",
"presets": {
"0": {
@ -793,8 +794,8 @@
"title": "eine fahrrad-reparaturstation und pumpe"
},
"2": {
"title": "eine fahrrad-reparaturstation ohne pumpe",
"description": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Die Werkzeuge sind gegen Diebstahl gesichert."
"description": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Die Werkzeuge sind gegen Diebstahl gesichert.",
"title": "eine fahrrad-reparaturstation ohne pumpe"
}
},
"tagRenderings": {
@ -812,6 +813,26 @@
},
"question": "Ist die Fahrradpumpe noch funktionstüchtig?"
},
"access": {
"mappings": {
"0": {
"then": "Öffentlich zugänglich"
},
"1": {
"then": "Öffentlich zugänglich"
},
"2": {
"then": "Nur für Kunden"
},
"3": {
"then": "Nicht für die Allgemeinheit zugänglich"
},
"4": {
"then": "Nicht für die Allgemeinheit zugänglich"
}
},
"question": "Wer darf diese Reparaturstation benutzen?"
},
"bike_repair_station-available-services": {
"mappings": {
"0": {
@ -905,26 +926,6 @@
},
"question": "Welche Ventile werden unterstützt?",
"render": "Diese Pumpe unterstützt die folgenden Ventile: {valves}"
},
"access": {
"mappings": {
"4": {
"then": "Nicht für die Allgemeinheit zugänglich"
},
"2": {
"then": "Nur für Kunden"
},
"3": {
"then": "Nicht für die Allgemeinheit zugänglich"
},
"0": {
"then": "Öffentlich zugänglich"
},
"1": {
"then": "Öffentlich zugänglich"
}
},
"question": "Wer darf diese Reparaturstation benutzen?"
}
},
"title": {
@ -946,8 +947,7 @@
}
},
"render": "Fahrradstation (Pumpe & Reparatur)"
},
"description": "Eine Ebene mit Fahrradpumpen und Werkzeugständern für die Fahrradreparatur"
}
},
"bike_shop": {
"description": "Ein Geschäft, das speziell Fahrräder oder verwandte Artikel verkauft",
@ -1053,16 +1053,19 @@
},
"question": "Gibt es hier Werkzeuge, um das eigene Fahrrad zu reparieren?"
},
"bike_shop-access": {
"render": "Nur zugänglich für {access}"
},
"bike_shop-email": {
"question": "Wie lautet die E-Mail-Adresse von {name}?"
},
"bike_shop-is-bicycle_shop": {
"render": "Dieses Geschäft ist auf den Verkauf von {shop} spezialisiert und im Bereich Fahrrad tätig",
"mappings": {
"0": {
"then": "Dieses Geschäft konzentriert sich auf die Vermietung"
}
}
},
"render": "Dieses Geschäft ist auf den Verkauf von {shop} spezialisiert und im Bereich Fahrrad tätig"
},
"bike_shop-name": {
"question": "Wie heißt dieser Fahrradladen?",
@ -1073,9 +1076,6 @@
},
"bike_shop-website": {
"question": "Was ist die Webseite von {name}?"
},
"bike_shop-access": {
"render": "Nur zugänglich für {access}"
}
},
"title": {
@ -1100,6 +1100,7 @@
}
},
"bike_themed_object": {
"description": "Eine Ebene mit Objekten zum Thema Fahrrad, die zu keiner anderen Ebene passen",
"name": "Weitere fahrradbezogene Objekte",
"title": {
"mappings": {
@ -1108,8 +1109,7 @@
}
},
"render": "Mit Fahrrad zusammenhängendes Objekt"
},
"description": "Eine Ebene mit Objekten zum Thema Fahrrad, die zu keiner anderen Ebene passen"
}
},
"binocular": {
"description": "Fernglas",
@ -1365,9 +1365,6 @@
},
"question": "Welche Fahrzeuge dürfen hier laden?"
},
"capacity": {
"render": "{capacity} Fahrzeuge können hier gleichzeitig laden"
},
"access": {
"mappings": {
"2": {
@ -1382,6 +1379,9 @@
},
"question": "Wer darf diese Ladestation benutzen?"
},
"capacity": {
"render": "{capacity} Fahrzeuge können hier gleichzeitig laden"
},
"charge": {
"render": "Die Nutzung dieser Ladestation kostet <b>{charge}</b>"
},
@ -3539,4 +3539,4 @@
"watermill": {
"name": "Wassermühle"
}
}
}

View file

@ -5418,4 +5418,4 @@
"watermill": {
"name": "Watermill"
}
}
}

View file

@ -2419,4 +2419,4 @@
"watermill": {
"name": "Moulin à eau"
}
}
}

View file

@ -405,4 +405,4 @@
"render": "Bicicleta pantasma"
}
}
}
}

View file

@ -4459,6 +4459,22 @@
}
},
"description": "Een winkel",
"filter": {
"0": {
"options": {
"0": {
"question": "Toon enkel winkels die {search} verkopen"
}
}
},
"1": {
"options": {
"0": {
"question": "Toon enkel winkels met naam {search}"
}
}
}
},
"name": "Winkel",
"presets": {
"0": {
@ -4524,22 +4540,6 @@
}
},
"render": "Winkel"
},
"filter": {
"0": {
"options": {
"0": {
"question": "Toon enkel winkels die {search} verkopen"
}
}
},
"1": {
"options": {
"0": {
"question": "Toon enkel winkels met naam {search}"
}
}
}
}
},
"slow_roads": {
@ -5607,4 +5607,4 @@
"render": "Watermolens"
}
}
}
}

View file

@ -97,17 +97,13 @@
"backToMapcomplete": "Terug naar het themaoverzicht",
"backgroundMap": "Achtergrondkaart",
"cancel": "Annuleren",
"centerMessage": {
"loadingData": "Data wordt geladen…",
"ready": "Klaar!",
"retrying": "Data inladen mislukt. Opnieuw proberen over {count} seconden…",
"zoomIn": "Zoom in om de data te zien en te bewerken"
},
"confirm": "Bevestigen",
"customThemeIntro": "<h3>Onofficiële thema's</h3>De onderstaande thema's heb je eerder bezocht en zijn gemaakt door andere OpenStreetMappers.",
"download": {
"downloadAsPdf": "Download een PDF van de huidig zichtbare kaart",
"downloadAsPdfHelper": "Perfect om de huidige kaart af te printen",
"downloadAsSvg": "Download de huidige kaart als SVG",
"downloadAsSvgHelper": "Compatibel met Inkscape of Adobe Illustrator; deze data moeten nog verder verwerkt worden… ",
"downloadCSV": "Download de zichtbare data als CSV",
"downloadCSVHelper": "Compatibel met LibreOffice Calc, Excel, …",
"downloadFeatureAsGeojson": "Downloaden als GeoJson bestand",
@ -121,9 +117,7 @@
"licenseInfo": "<h3>Copyright</h3>De voorziene data is beschikbaar onder de ODbL. Het hergebruiken van deze data is gratis voor elke toepassing, maar <ul><li>de bronvermelding <b>© OpenStreetMap bijdragers</b> is vereist</li><li>Elke wijziging aan deze data moet opnieuw gepubliceerd worden onder dezelfde licentie</li></ul> Gelieve de volledige <a href=\"https://www.openstreetmap.org/copyright\" target=\"_blank\">licentie</a> te lezen voor details",
"noDataLoaded": "Er is nog geen data ingeladen. Downloaden kan zodra de data geladen is.",
"title": "Download de zichtbare data",
"uploadGpx": "Track uploaden naar OpenStreetMap",
"downloadAsSvg": "Download de huidige kaart als SVG",
"downloadAsSvgHelper": "Compatibel met Inkscape of Adobe Illustrator; deze data moeten nog verder verwerkt worden… "
"uploadGpx": "Track uploaden naar OpenStreetMap"
},
"example": "Voorbeeld",
"examples": "Voorbeelden",
@ -134,18 +128,13 @@
"histogram": {
"error_loading": "Kan het histogram niet laden"
},
"index": {
"#": "Deze teksten worden getoond boven de themaknoppen als er geen thema is geladen",
"intro": "MapComplete is een OpenStreetMap applicatie waar informatie over een specifiek thema bekeken en aangepast kan worden.",
"pickTheme": "Kies hieronder een thema om te beginnen.",
"title": "Welkom bij MapComplete"
},
"layerSelection": {
"title": "Selecteer lagen",
"zoomInToSeeThisLayer": "Vergroot de kaart om deze laag te zien"
},
"loading": "Aan het laden...",
"loadingTheme": "{theme} wordt geladen...",
"loginFailed": "Het inloggen op OpenStreetMap is gefaald",
"loginOnlyNeededToEdit": "als je de kaart wilt aanpassen",
"loginToStart": "Meld je aan om deze vraag te beantwoorden",
"loginWithOpenStreetMap": "Aanmelden met OpenStreetMap",
@ -201,23 +190,8 @@
"readYourMessages": "Gelieve eerst je berichten op OpenStreetMap te lezen alvorens nieuwe punten toe te voegen.",
"removeLocationHistory": "Verwijder de geschiedenis aan locaties",
"returnToTheMap": "Ga terug naar de kaart",
"reviews": {
"affiliated_reviewer_warning": "(Review door betrokkene)",
"attribution": "De beoordelingen worden voorzien door <a href=\"https://mangrove.reviews/\" target=\"_blank\">Mangrove Reviews</a> en zijn beschikbaar onder de<a href=\"https://mangrove.reviews/terms#8-licensing-of-content\" target=\"_blank\">CC-BY 4.0-licentie</a>.",
"i_am_affiliated": "<span>Ik ben persoonlijk betrokken</span><br/><span class='subtle'>Vink aan indien je de oprichter, maker, werknemer, ... of dergelijke bent</span>",
"name_required": "De naam van dit object moet gekend zijn om een review te kunnen maken",
"no_rating": "Geen score bekend",
"no_reviews_yet": "Er zijn nog geen beoordelingen. Wees de eerste om een beoordeling te schrijven en help open data en het bedrijf!",
"plz_login": "Meld je aan om een beoordeling te geven",
"posting_as": "Ingelogd als",
"saved": "<span class='thanks'>Bedankt om je beoordeling te delen!</span>",
"saving_review": "Opslaan…",
"title": "{count} beoordelingen",
"title_singular": "Eén beoordeling",
"tos": "Als je je review publiceert, ga je akkoord met de <a href='https://mangrove.reviews/terms' target='_blank'>de gebruiksvoorwaarden en privacy policy van Mangrove.reviews</a>",
"write_a_comment": "Schrijf een beoordeling…"
},
"save": "Opslaan",
"screenToSmall": "Open {theme} in een nieuw venster",
"search": {
"error": "Niet gelukt...",
"nothing": "Niet gevonden...",
@ -272,15 +246,13 @@
"loading": "Wikipedia aan het laden...",
"noResults": "Niet gevonden voor <i>{search}</i>",
"noWikipediaPage": "Dit Wikidata-item heeft nog geen overeenkomstig Wikipedia-artikel",
"searchWikidata": "Zoek op Wikidata",
"wikipediaboxTitle": "Wikipedia",
"previewbox": {
"born": "Geboren: {value}",
"died": "Gestorven: {value}"
}
},
"loginFailed": "Het inloggen op OpenStreetMap is gefaald",
"screenToSmall": "Open {theme} in een nieuw venster"
},
"searchWikidata": "Zoek op Wikidata",
"wikipediaboxTitle": "Wikipedia"
}
},
"image": {
"addPicture": "Voeg foto toe",
@ -305,42 +277,45 @@
},
"importHelper": {
"allAttributesSame": "Alle kaart-objecten om te importeren hebben deze tag",
"description": "De importeer-helper converteert een externe dataset in OSM-kaartnotas. De externe data moet overeenkomen met een bestaande MapComplete-laag. Voor elk item wordt er een kaartnota gemaakt. Deze notas worden dan samen met de relevante POI getoond en kunnen dan (via MapComplete) snel en eenvoudig toegevoegd worden.",
"importFormat": "Een kaartnota moet het volgende formaat hebben om gedetecteerd te worden binnen een laag: <br><div class=\"literal-code\">[Een introductietekst]<br>https://mapcomplete.osm.be/[themename].html?[parameters waaronder lon en lat]#import<br>[alle tags van het te importeren object] </div>",
"inspectDataTitle": "Bekijk de data van {count} te importeren objecten",
"inspectDidAutoDected": "Deze laag werd automatisch gekozen",
"inspectLooksCorrect": "Deze waardes zien er correct uit",
"lockNotice": "Deze pagina is afgeschermd. Je hebt minstens {importHelperUnlock} changesets nodig voor je deze pagina mag gebruiken.",
"locked": "Je hebt minstens {importHelperUnlock} changesets nodig om de import helper te gebruiken",
"loggedInWith": "Je bent momenteel aangemeld als <b>{name}</b> and maakte {csCount} eerdere wijzigingen",
"loginIsCorrect": "<b>{name}</b> is de correcte account om de import-nota's mee te maken.",
"loginRequired": "Je moet ingelogd zijn om verder te gaan",
"mapPreview": {
"autodetected": "Deze laag was automatisch gekozen gebaseerd op de aanwezige eigenschappen",
"confirm": "De objecten bevinden zich op de juiste locatie",
"title": "Voorbeeldkaart",
"mismatch": "{count} objecten hebben niet de juiste tags. Zorg ervoor dat de juiste tags om het type aan te geven aanwezig zijn, namelijk {tags}",
"selectLayer": "Met welke laag komt deze te importeren dataset overeen?"
"selectLayer": "Met welke laag komt deze te importeren dataset overeen?",
"title": "Voorbeeldkaart"
},
"selectFile": {
"description": "Selecteer een .csv of .geojson-bestand",
"errNoLatOrLon": "Geen enkele kolom heet `lat` of `lon`",
"errPointsOnly": "Het ingeladen JSON-bestand mag enkel punten bevatten",
"errDuplicate": "Sommige kolommen hebben dezelfde naam",
"errNoLatOrLon": "Geen enkele kolom heet `lat` of `lon`",
"errNoName": "De naam van sommige kolommen ontbreken",
"errNotFeatureCollection": "Het ingeladen JSON-bestand is geen geojson-featurecollection",
"errPointsOnly": "Het ingeladen JSON-bestand mag enkel punten bevatten",
"fileFormatDescription": "Selecteer een <b class=\"code\">.csv</b>- of een <b class=\"code\">.geojson</b>bestand",
"fileFormatDescriptionCsv": "Het CSV-bestand moet een kolom <span class=\"literal-code\">lat</span> en <span class=\"literal-code\">lon</span> bevatten die de coordinaten in WGS84 beschrijft. Bovendien moet er voor elk attribuut nog een kolom zijn..",
"fileFormatDescriptionGeoJson": "Het geojson-bestand mag enkel punten bevatten. De attributen moeten dezelfde zijn zoals in OpenStreetMap",
"loadedFilesAre": "{file} werd ingeladen",
"noFilesLoaded": "Geen bestand ingeladen op dit moment",
"title": "Selecteer bestand",
"fileFormatDescriptionCsv": "Het CSV-bestand moet een kolom <span class=\"literal-code\">lat</span> en <span class=\"literal-code\">lon</span> bevatten die de coordinaten in WGS84 beschrijft. Bovendien moet er voor elk attribuut nog een kolom zijn..",
"fileFormatDescriptionGeoJson": "Het geojson-bestand mag enkel punten bevatten. De attributen moeten dezelfde zijn zoals in OpenStreetMap"
"title": "Selecteer bestand"
},
"inspectDataTitle": "Bekijk de data van {count} te importeren objecten",
"lockNotice": "Deze pagina is afgeschermd. Je hebt minstens {importHelperUnlock} changesets nodig voor je deze pagina mag gebruiken.",
"description": "De importeer-helper converteert een externe dataset in OSM-kaartnotas. De externe data moet overeenkomen met een bestaande MapComplete-laag. Voor elk item wordt er een kaartnota gemaakt. Deze notas worden dan samen met de relevante POI getoond en kunnen dan (via MapComplete) snel en eenvoudig toegevoegd worden.",
"inspectDidAutoDected": "Deze laag werd automatisch gekozen",
"importFormat": "Een kaartnota moet het volgende formaat hebben om gedetecteerd te worden binnen een laag: <br><div class=\"literal-code\">[Een introductietekst]<br>https://mapcomplete.osm.be/[themename].html?[parameters waaronder lon en lat]#import<br>[alle tags van het te importeren object] </div>",
"inspectLooksCorrect": "Deze waardes zien er correct uit",
"locked": "Je hebt minstens {importHelperUnlock} changesets nodig om de import helper te gebruiken",
"loggedInWith": "Je bent momenteel aangemeld als <b>{name}</b> and maakte {csCount} eerdere wijzigingen",
"loginRequired": "Je moet ingelogd zijn om verder te gaan",
"title": "Importeer-helper",
"selectLayer": "Selecteer een laag...",
"validateDataTitle": "Valideer data",
"someHaveSame": "{count} te importeren objecten hebben dit attribuut, dit is {percentage}% van het totaal",
"userAccountTitle": "Selecteer een account"
"title": "Importeer-helper",
"userAccountTitle": "Selecteer een account",
"validateDataTitle": "Valideer data"
},
"importInspector": {
"title": "Inspecteer en beheer importeer-notas"
},
"importLayer": {
"alreadyMapped": "Er staat hier reeds een {title} op de kaart; dit punt is een duplicaat. Verwijder deze van de kaart",
@ -388,6 +363,8 @@
"autoApply": "Wijzigingen aan eigenschappen {attr_names} zullen ook worden uitgevoerd op {count} andere objecten."
},
"notes": {
"addAComment": "Voeg een commentaar toe",
"addComment": "Voeg commentaar toe",
"addCommentAndClose": "Voeg een commentaar toe en sluit de nota",
"addCommentPlaceholder": "Voeg een commentaar toe...",
"anonymous": "Anonieme bijdrager",
@ -395,24 +372,22 @@
"createNote": "Maak een nieuwe kaartnota",
"createNoteIntro": "Ontbreekt hier iets? Is hier iets mis met de kaart? Maak hier dan een kaartnota, deze zal door vrijwilligers verwerkt worden.",
"createNoteTitle": "Voeg hier een nieuwe kaartnota toe",
"textNeeded": "Geef een beschrijvende tekst om een kaartnota te maken",
"typeText": "Typ eerst een commentaar om deze toe te voegen",
"disableAllNoteFilters": "Schakel alle filters uit",
"isClosed": "Deze nota is gesloten",
"isCreated": "Je kaarnota werd gemaakt!",
"loginToAddComment": "Log in om een commentaar toe te voegen",
"loginToAddPicture": "Log in om een afbeelding toe te voegen",
"loginToClose": "Login om deze kaartnota te sluiten",
"noteIsPublic": "Dit zal voor iedereen zichtbaar zijn",
"noteLayerDoEnable": "Schakel de laat met kaartnota's in",
"noteLayerHasFilters": "Sommige kaartnota's kunnen verborgen zijn door een filter",
"noteLayerNotEnabled": "De laat met kaartnota's staat af. Zet deze aan om een nieuwe kaartnota toe te voegen",
"notesLayerMustBeEnabled": "De laat met kaartnota's staat af. Zet deze aan om een nieuwe kaartnota toe te voegen",
"reopenNote": "Heropen de kaartnota",
"addComment": "Voeg commentaar toe",
"noteIsPublic": "Dit zal voor iedereen zichtbaar zijn",
"addAComment": "Voeg een commentaar toe",
"isClosed": "Deze nota is gesloten",
"loginToAddComment": "Log in om een commentaar toe te voegen",
"loginToAddPicture": "Log in om een afbeelding toe te voegen",
"loginToClose": "Login om deze kaartnota te sluiten",
"noteLayerDoEnable": "Schakel de laat met kaartnota's in",
"isCreated": "Je kaarnota werd gemaakt!",
"warnAnonymous": "Je bent niet aangemeld. We gaan je niet kunnen contacteren om deze kaartnota te verwerken.",
"reopenNoteAndComment": "Heropen de kaartnota en voeg commentaar toe"
"reopenNoteAndComment": "Heropen de kaartnota en voeg commentaar toe",
"textNeeded": "Geef een beschrijvende tekst om een kaartnota te maken",
"typeText": "Typ eerst een commentaar om deze toe te voegen",
"warnAnonymous": "Je bent niet aangemeld. We gaan je niet kunnen contacteren om deze kaartnota te verwerken."
},
"privacy": {
"editing": "Wanneer je een wijziging maakt, wordt deze wijziging opgeslaan op OpenStreetMap. Dit is zichtbaar voor iedereen. Een wijzigingenset gemaakt met MapComplete bevat de volgende data:\n<ul><li>De aanpassingen aan de data</li><li>Je gebruikersnaam</li><li>Wanneer deze wijziging werd gemaakt</li><li>Het thema dat je gebruikt om de wijziging te maken</li><li>De taal van de gebruikersinterface</li><li>Een indicatie hoe ver jij je van de gewijzigde objecten bevindt. Andere bijdragers kunnen deze informatie gebruiken om af te leiden of de wijziging gemaakt door lokaal te gaan kijken of door onderzoek vanop afstand</li></ul> Bekijk ook <a href=\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\" target=\"_blank\">de privacy-policy op OpenStreetMap.org</a> voor gedetailleerde info. We herinneren je eraan dat je een pseudoniem of fictieve naam kan gebruiken wanneer je je registreert.",
@ -482,6 +457,17 @@
},
"drawbacks": {
"intro": "Aansluiten bij de OpenStreetMap-community heeft veel voordelen, toch zijn er enkele punten om rekening mee te houden.",
"licenseNuances": {
"intro": "OpenStreetMap wordt verspreid met de Open Database License. Deze houdt in dat:",
"li0": "Alle data mag hergebruikt worden voor alle doeleinden - inclusief commercieel gebruik",
"li1": "Applicaties en producten die OpenStreetMap gebruiken moeten een attributie tonen",
"li2": "Een dataset of kaartproduct die OpenStreetMap-data bevat moet deze data herpubliceren onder de ODbL, inclusief aanpassingen aan de data in een algemeen bruikbaar formaat.",
"outro": "Dit heeft enkele gevolgen voor sommige toepassingen zoals hieronder uitgelegd",
"title": "Gevolgen van de ODbL voor enkele toepassingen",
"usecaseGatheringOpenData": {
"title": "Het verzamelen van Open Data"
}
},
"title": "Enkele nadelen om rekening mee te houden",
"unsuitedData": {
"intro": "De basisregel is dat alle gegevens <b>ter plaatse verifieerbaar</b> moeten en ietwat <b>permanent</b> moeten zijn. Dit betekent dat sommige data <i>niet</i> in OpenStreetMap opgeslaan mogen worden - al bestaan hier oplossingen voor.",
@ -489,17 +475,6 @@
"li1": "Gebeurtenissen horen <i>niet</i> thuis in OpenStreetMap, net zoals kortstondige wegenwerken van enkele dagen of weken.",
"li2": "Tijdsgebonden data (bv. statistieken van luchtkwaliteit, verkeersintensiteit, ...) kunnen niet bewaard worden op OpenStreetMap. Merk echter op dat MapComplete dit soort data kan visualiseren indien deze op een andere locatie opgeslaan is.",
"title": "Data die niet geschikt is voor OpenStreetMap"
},
"licenseNuances": {
"li0": "Alle data mag hergebruikt worden voor alle doeleinden - inclusief commercieel gebruik",
"li1": "Applicaties en producten die OpenStreetMap gebruiken moeten een attributie tonen",
"li2": "Een dataset of kaartproduct die OpenStreetMap-data bevat moet deze data herpubliceren onder de ODbL, inclusief aanpassingen aan de data in een algemeen bruikbaar formaat.",
"outro": "Dit heeft enkele gevolgen voor sommige toepassingen zoals hieronder uitgelegd",
"title": "Gevolgen van de ODbL voor enkele toepassingen",
"intro": "OpenStreetMap wordt verspreid met de Open Database License. Deze houdt in dat:",
"usecaseGatheringOpenData": {
"title": "Het verzamelen van Open Data"
}
}
},
"indexPage": {
@ -546,14 +521,26 @@
},
"translations": {
"activateButton": "Help met het vertalen van MapComplete",
"completeness": "Vertalingen voor {theme} in {language} zijn momenteel op {percentage}%: van {total} teksten zijn er reeds {translated} vertaald",
"deactivate": "Verberg de vertaalknoppen",
"help": "Klik op het 'vertaal'-icoontje die naast een stukje tekst staat om deze tekst te vertalen of aan te passen. Hiervoor heb je een (gratis) Weblate-account nodig. Indien je jouw account maakt met dezelfde naam als je OSM-gebruikersnaam, dan zullen de vertaalknoppen automatisch verschijnen.",
"isTranslator": "Vertaalmode is actief: je gebruikersnaam is dezelfde als van een vertaler. We gaan er dus vanuit dat jij die vertaler bent",
"missing": "{count} niet-vertaalde teksten",
"notImmediate": "Vertalingen worden niet onmiddelijk geupdate. Dit duurt gemiddeld enkele dagen",
"completeness": "Vertalingen voor {theme} in {language} zijn momenteel op {percentage}%: van {total} teksten zijn er reeds {translated} vertaald"
"notImmediate": "Vertalingen worden niet onmiddelijk geupdate. Dit duurt gemiddeld enkele dagen"
},
"validation": {
"color": {
"description": "Een kleur of hexadecimale code voor een kleur"
},
"date": {
"description": "Een datum (beginnend met het jaar)"
},
"decimal": {
"description": "Een getal"
},
"direction": {
"description": "Een orientatie"
},
"email": {
"description": "email-adres",
"feedback": "Dit is geen geldig email-adres",
@ -572,6 +559,9 @@
"mustBeWhole": "Enkele gehele getallen zijn toegelaten",
"notANumber": "Dit is geen getal"
},
"opening_hours": {
"description": "Openingsuren"
},
"pfloat": {
"description": "een positief getal"
},
@ -586,34 +576,16 @@
"string": {
"description": "een stukje tekst"
},
"text": {
"description": "Een stukje tekst"
},
"tooLong": "Deze tekst is te lang. De tekst heeft {count} lettertekens, er mogen maximaal 255 letters zijn",
"url": {
"description": "een link naar een webpagina",
"feedback": "Dit is geen geldige link"
},
"color": {
"description": "Een kleur of hexadecimale code voor een kleur"
},
"direction": {
"description": "Een orientatie"
},
"opening_hours": {
"description": "Openingsuren"
},
"text": {
"description": "Een stukje tekst"
},
"date": {
"description": "Een datum (beginnend met het jaar)"
},
"decimal": {
"description": "Een getal"
},
"wikidata": {
"description": "Een Wikidata-code"
}
},
"importInspector": {
"title": "Inspecteer en beheer importeer-notas"
}
}

View file

@ -35,121 +35,9 @@
"cancel": "Anuluj",
"customThemeIntro": "<h3>Motywy własne</h3>Są to wcześniej odwiedzone motywy stworzone przez użytkowników.",
"fewChangesBefore": "Proszę odpowiedzieć na kilka pytań dotyczących istniejących punktów przed dodaniem nowego punktu.",
"general": {
"about": "Łatwo edytuj i dodaj OpenStreetMap dla określonego motywu",
"aboutMapcomplete": "<h3>O MapComplete</h3><p>Dzięki MapComplete możesz wzbogacić OpenStreetMap o informacje na <b>pojedynczy temat.</b> Odpowiedz na kilka pytań, a w ciągu kilku minut Twój wkład będzie dostępny na całym świecie! Opiekun <b>tematu</b> definiuje elementy, pytania i języki dla tematu.</p><h3>Dowiedz się więcej</h3><p>MapComplete zawsze <b>oferuje następny krok</b>, by dowiedzieć się więcej o OpenStreetMap.</p><ul><li>Po osadzeniu na stronie internetowej, element iframe łączy się z pełnoekranowym MapComplete</li><li>Wersja pełnoekranowa oferuje informacje o OpenStreetMap</li><li>Przeglądanie działa bez logowania, ale edycja wymaga loginu OSM.</li><li>Jeżeli nie jesteś zalogowany, zostaniesz poproszony o zalogowanie się</li><li>Po udzieleniu odpowiedzi na jedno pytanie, możesz dodać nowe punkty do mapy</li><li>Po chwili wyświetlane są rzeczywiste tagi OSM, które później linkują do wiki</li></ul><p></p><br><p>Zauważyłeś <b>problem</b>? Czy masz <b>prośbę o dodanie jakiejś funkcji</b>? Chcesz <b>pomóc w tłumaczeniu</b>? Udaj się do <a href=\"https://github.com/pietervdvn/MapComplete\" target=\"_blank\">kodu źródłowego</a> lub <a href=\"https://github.com/pietervdvn/MapComplete/issues\" target=\"_blank\">issue trackera.</a> </p><p> Chcesz zobaczyć <b>swoje postępy</b>? Śledź liczbę edycji na <a href=\"{osmcha_link}\" target=\"_blank\">OsmCha</a>.</p>",
"add": {
"addNew": "Dodaj nową {category} tutaj",
"confirmButton": "Dodaj tutaj {category}.<br><div class=\"alert\">Twój dodatek jest widoczny dla wszystkich</div>",
"confirmIntro": "<h3>Czy dodać tutaj {title}?</h3> Punkt, który tutaj utworzysz, będzie <b>widoczny dla wszystkich</b>. Proszę, dodawaj rzeczy do mapy tylko wtedy, gdy naprawdę istnieją. Wiele aplikacji korzysta z tych danych.",
"intro": "Kliknąłeś gdzieś, gdzie nie są jeszcze znane żadne dane.<br>",
"layerNotEnabled": "Warstwa {layer} nie jest włączona. Włącz tę warstwę, aby dodać punkt",
"openLayerControl": "Otwórz okno sterowania warstwą",
"pleaseLogin": "<a class=\"activate-osm-authentication\">Zaloguj się, aby dodać nowy punkt</a>",
"stillLoading": "Dane wciąż się ładują. Poczekaj chwilę, zanim dodasz nowy punkt.",
"title": "Czy dodać nowy punkt?",
"zoomInFurther": "Powiększ jeszcze bardziej, aby dodać punkt."
},
"backgroundMap": "Tło mapy",
"cancel": "Anuluj",
"customThemeIntro": "<h3>Motywy własne</h3>Są to wcześniej odwiedzone motywy stworzone przez użytkowników.",
"fewChangesBefore": "Proszę odpowiedzieć na kilka pytań dotyczących istniejących punktów przed dodaniem nowego punktu.",
"getStartedLogin": "Zaloguj się za pomocą OpenStreetMap, aby rozpocząć",
"getStartedNewAccount": " lub <a href=\"https://www.openstreetmap.org/user/new\" target=\"_blank\">utwórz nowe konto</a>",
"goToInbox": "Otwórz skrzynkę odbiorczą",
"layerSelection": {
"title": "Wybierz warstwy",
"zoomInToSeeThisLayer": "Powiększ, aby zobaczyć tę warstwę"
},
"loginToStart": "Zaloguj się, aby odpowiedzieć na to pytanie",
"loginWithOpenStreetMap": "Zaloguj z OpenStreetMap",
"nameInlineQuestion": "Nazwa tej {category} to $$$",
"noNameCategory": "{category} bez nazwy",
"noTagsSelected": "Nie wybrano tagów",
"number": "numer",
"oneSkippedQuestion": "Jedno pytanie zostało pominięte",
"opening_hours": {
"closed_permanently": "Zamknięte na nieokreślony czas",
"closed_until": "Zamknięte do {date}",
"error_loading": "Błąd: nie można zwizualizować tych godzin otwarcia.",
"not_all_rules_parsed": "Godziny otwarcia tego sklepu są skomplikowane. Następujące reguły są ignorowane w elemencie wejściowym:",
"openTill": "do",
"open_24_7": "Otwarte przez całą dobę",
"open_during_ph": "W czasie świąt państwowych udogodnienie to jest",
"opensAt": "z",
"ph_closed": "zamknięte",
"ph_not_known": " ",
"ph_open": "otwarte"
},
"osmLinkTooltip": "Zobacz ten obiekt na OpenStreetMap, aby uzyskać historię i więcej opcji edycji",
"pickLanguage": "Wybierz język: ",
"questions": {
"emailIs": "Adres e-mail {category} to <a href=\"mailto:{email}\" target=\"_blank\">{email}</a>",
"emailOf": "Jaki jest adres e-mail {category}?",
"phoneNumberIs": "Numer telefonu {category} to <a target=\"_blank\">{phone}</a>",
"phoneNumberOf": "Jaki jest numer telefonu do {category}?",
"websiteIs": "Strona internetowa: <a href=\"{website}\" target=\"_blank\">{website}</a>",
"websiteOf": "Jaka jest strona internetowa {category}?"
},
"readYourMessages": "Przeczytaj wszystkie wiadomości OpenStreetMap przed dodaniem nowego punktu.",
"returnToTheMap": "Wróć do mapy",
"save": "Zapisz",
"search": {
"error": "Coś poszło nie tak…",
"nothing": "Nic nie znaleziono…",
"search": "Wyszukaj lokalizację",
"searching": "Szukanie…"
},
"sharescreen": {
"addToHomeScreen": "<h3> Dodaj do ekranu głównego</h3>Możesz łatwo dodać tę stronę do ekranu głównego smartfona, aby poczuć się jak w domu. Kliknij przycisk \"Dodaj do ekranu głównego\" na pasku adresu URL, aby to zrobić.",
"copiedToClipboard": "Link został skopiowany do schowka",
"editThemeDescription": "Dodaj lub zmień pytania do tego motywu mapy",
"editThisTheme": "Edytuj ten motyw",
"embedIntro": "<h3>Umieść na swojej stronie internetowej</h3>Proszę, umieść tę mapę na swojej stronie internetowej. <br>Zachęcamy cię do tego - nie musisz nawet pytać o zgodę. <br>Jest ona darmowa i zawsze będzie. Im więcej osób jej używa, tym bardziej staje się wartościowa.",
"fsAddNew": "Włącz przycisk \"Dodaj nowe POI\"",
"fsGeolocation": "Włącz przycisk „Zlokalizuj mnie” (tylko na urządzeniach mobilnych)",
"fsIncludeCurrentBackgroundMap": "Dołącz bieżący wybór tła <b>{name}</b>",
"fsIncludeCurrentLayers": "Uwzględnij wybór bieżącej warstwy",
"fsIncludeCurrentLocation": "Uwzględnij bieżącą lokalizację",
"fsLayerControlToggle": "Zacznij od rozwiniętej kontroli warstw",
"fsLayers": "Włącz kontrolę warstw",
"fsSearch": "Włącz pasek wyszukiwania",
"fsUserbadge": "Włącz przycisk logowania",
"fsWelcomeMessage": "Pokaż wyskakujące okienko wiadomości powitalnej i powiązane zakładki",
"intro": "<h3> Udostępnij tę mapę</h3> Udostępnij tę mapę, kopiując poniższy link i wysyłając ją do przyjaciół i rodziny:",
"thanksForSharing": "Dzięki za udostępnienie!"
},
"skip": "Pomiń to pytanie",
"skippedQuestions": "Niektóre pytania są pominięte",
"weekdays": {
"abbreviations": {
"friday": "Pt",
"monday": "Pn",
"saturday": "Sob",
"sunday": "Niedz",
"thursday": "Czw",
"tuesday": "Wt",
"wednesday": "Śr"
},
"friday": "Piątek",
"monday": "Poniedziałek",
"saturday": "Sobota",
"sunday": "Niedziela",
"thursday": "Czwartek",
"tuesday": "Wtorek",
"wednesday": "Środa"
},
"welcomeBack": "Jesteś zalogowany, witaj z powrotem!"
},
"getStartedLogin": "Zaloguj się za pomocą OpenStreetMap, aby rozpocząć",
"getStartedNewAccount": " lub <a href=\"https://www.openstreetmap.org/user/new\" target=\"_blank\">utwórz nowe konto</a>",
"goToInbox": "Otwórz skrzynkę odbiorczą",
"index": {
"#": "Te teksty są wyświetlane nad przyciskami motywu, gdy nie jest załadowany żaden motyw",
"intro": "MapComplete to przeglądarka i edytor OpenStreetMap, który pokazuje informacje podzielone według tematu.",
"pickTheme": "Wybierz temat poniżej, aby rozpocząć.",
"title": "Witaj w MapComplete"
},
"layerSelection": {
"title": "Wybierz warstwy",
"zoomInToSeeThisLayer": "Powiększ, aby zobaczyć tę warstwę"

View file

@ -128,4 +128,4 @@
"question": "Was ist der entsprechende Artikel auf Wikipedia?"
}
}
}
}

View file

@ -1007,6 +1007,7 @@
}
}
},
"name": "Schwerpunkte von Änderungssätzen",
"tagRenderings": {
"contributor": {
"render": "Änderung wurde von <a href='https://openstreetmap.org/user/{_last_edit:contributor}' target='_blank'>{_last_edit:contributor}</a> gemacht"
@ -1015,18 +1016,17 @@
"render": "Änderung <a href='https://openstreetmap.org/changeset/{id}' target='_blank'>{id}</a>"
},
"theme": {
"render": "Änderung mit Thema <a href='https://mapcomplete.osm.be/{theme}'>{theme}</a>",
"mappings": {
"0": {
"then": "Änderung mit <b>inoffiziellem</b> Thema <a href='https://mapcomplete.osm.be/theme.html?userlayout={theme}'>{theme}</a>"
}
}
},
"render": "Änderung mit Thema <a href='https://mapcomplete.osm.be/{theme}'>{theme}</a>"
}
},
"title": {
"render": "Änderungen für {theme}"
},
"name": "Schwerpunkte von Änderungssätzen"
}
},
"1": {
"override": {
@ -1075,6 +1075,10 @@
"question": "Wie groß ist der Rotordurchmesser der Windturbine in Meter?",
"render": "Der Rotordurchmesser der Windturbine ist {rotor:diameter} Meter."
},
"turbine-height": {
"question": "Wie hoch ist dieses Windrad (inklusive Rotorradius) in Metern?",
"render": "Die Gesamthöhe dieses Windrads beträgt (einschließlich Rotorradius) {height} Meter."
},
"turbine-operator": {
"question": "Wer betreibt das Windrads?",
"render": "Die Windturbine wird betrieben von {operator}."
@ -1086,10 +1090,6 @@
"turbine-start-date": {
"question": "Wann wurde das Windrad in Betrieb genommen?",
"render": "Das Windrad wurde am {start_date} in Betrieb genommen."
},
"turbine-height": {
"render": "Die Gesamthöhe dieses Windrads beträgt (einschließlich Rotorradius) {height} Meter.",
"question": "Wie hoch ist dieses Windrad (inklusive Rotorradius) in Metern?"
}
},
"title": {
@ -1148,13 +1148,13 @@
"layers": {
"0": {
"name": "Postleitzahlen",
"title": {
"render": "Postleitzahl {postal_code}"
},
"tagRenderings": {
"postal_code": {
"render": "Die Postleitzahl lautet {postal_code}"
}
},
"title": {
"render": "Postleitzahl {postal_code}"
}
},
"2": {
@ -1206,8 +1206,8 @@
"then": "durchgehend geöffnet (auch an Feiertagen)"
}
},
"render": "Öffnungszeiten: {opening_hours_table()}",
"question": "Wie sind die Öffnungszeiten dieser Poststelle?"
"question": "Wie sind die Öffnungszeiten dieser Poststelle?",
"render": "Öffnungszeiten: {opening_hours_table()}"
}
},
"title": {
@ -1224,23 +1224,23 @@
"title": "Freie Geschäftskarte"
},
"sidewalks": {
"description": "Experimentelles Thema",
"layers": {
"0": {
"description": "Ebene mit Bürgersteigen",
"name": "Gehweg",
"title": {
"render": "{name}"
},
"tagRenderings": {
"streetname": {
"render": "Diese Straße heißt {name}"
}
},
"description": "Ebene mit Bürgersteigen"
"title": {
"render": "{name}"
}
}
},
"title": "Gehwege",
"description": "Experimentelles Thema",
"shortDescription": "Kartierung von Bürgersteigen"
"shortDescription": "Kartierung von Bürgersteigen",
"title": "Gehwege"
},
"sport_pitches": {
"description": "Ein Sportplatz ist eine Fläche, auf der Sportarten gespielt werden",
@ -1283,14 +1283,14 @@
"0": {
"then": "Diese Straße ist beleuchtet"
},
"3": {
"then": "Diese Straße ist durchgehend beleuchtet"
"1": {
"then": "Diese Straße ist nicht beleuchtet"
},
"2": {
"then": "Diese Straße ist nachts beleuchtet"
},
"1": {
"then": "Diese Straße ist nicht beleuchtet"
"3": {
"then": "Diese Straße ist durchgehend beleuchtet"
}
},
"question": "Ist diese Straße beleuchtet?"
@ -1326,4 +1326,4 @@
"shortDescription": "Eine Karte mit Abfalleimern",
"title": "Abfalleimer"
}
}
}

View file

@ -224,6 +224,17 @@
},
"question": "Biedt deze plaats internettoegang?"
},
"caravansites-internet-fee": {
"mappings": {
"0": {
"then": "Je moet extra betalen voor internettoegang"
},
"1": {
"then": "Je hoeft niet extra te betalen voor internettoegang"
}
},
"question": "Moet je betalen voor internettoegang?"
},
"caravansites-name": {
"question": "Wat is de naam van deze plaats?",
"render": "Deze plaats heet {name}"
@ -242,17 +253,6 @@
"caravansites-website": {
"question": "Heeft deze plaats een website?",
"render": "Officiële website: : <a href='{website}'>{website}</a>"
},
"caravansites-internet-fee": {
"question": "Moet je betalen voor internettoegang?",
"mappings": {
"0": {
"then": "Je moet extra betalen voor internettoegang"
},
"1": {
"then": "Je hoeft niet extra te betalen voor internettoegang"
}
}
}
},
"title": {
@ -1157,4 +1157,4 @@
"shortDescription": "Een kaart met vuilnisbakken",
"title": "Vuilnisbak"
}
}
}

View file

@ -90,130 +90,6 @@
"title": "下載可視的資料"
},
"fewChangesBefore": "請先回答有關既有節點的問題再來新增新節點。",
"general": {
"about": "相當容易編輯,而且能為開放街圖新增特定主題",
"aboutMapcomplete": "<h3>關於 MapComplete</h3><p>使用 MapComplete 你可以藉由<b>單一主題</b>豐富開放街圖的圖資。回答幾個問題,然後幾分鐘之內你的貢獻立刻就傳遍全球!<b>主題維護者</b>定議主題的元素、問題與語言。</p><h3>發現更多</h3><p>MapComplete 總是提供學習更多開放街圖<b>下一步的知識</b>。</p><ul><li>當你內嵌網站,網頁內嵌會連結到全螢幕的 MapComplete</li><li>全螢幕的版本提供關於開放街圖的資訊</li><li>不登入檢視成果,但是要編輯則需登入 OSM。</li><li>如果你沒有登入,你會被要求先登入</li><li>當你回答單一問題時,你可以在地圖新增新的節點</li><li>過了一陣子,實際的 OSM-標籤會顯示,之後會連結到 wiki</li></ul><p></p><br><p>你有注意到<b>問題</b>嗎?你想請求<b>功能</b>嗎?想要<b>幫忙翻譯</b>嗎?來到<a href=\"https://github.com/pietervdvn/MapComplete\" target=\"_blank\">原始碼</a>或是<a href=\"https://github.com/pietervdvn/MapComplete/issues\" target=\"_blank\">問題追蹤器。</a></p><p>想要看到<b>你的進度</b>嗎?到<a href=\"{osmcha_link}\" target=\"_blank\">OsmCha</a>追蹤編輯數。</p>",
"add": {
"addNew": "在這裡新增新的 {category}",
"confirmButton": "在此新增 {category}。<br><div class=\"alert\">大家都可以看到您新增的內容</div>",
"confirmIntro": "<h3>在這裡新增 {title} </h3>你在這裡新增的節點<b>所有人都看得到</b>。請只有在確定有物件存在的情形下才新增上去,許多應用程式都使用這份資料。",
"intro": "您點擊處目前未有已知的資料。<br>",
"layerNotEnabled": "圖層 {layer} 目前無法使用,請先啟用這圖層再加新的節點",
"openLayerControl": "開啟圖層控制框",
"pleaseLogin": "<a class=\"activate-osm-authentication\">請先登入來新增節點</a>",
"stillLoading": "目前仍在載入資料,請稍後再來新增節點。",
"title": "新增新的節點?",
"zoomInFurther": "放大來新增新的節點。"
},
"attribution": {
"attributionContent": "<p>所有資料由<a href=\"https://osm.org\" target=\"_blank\">開放街圖</a>提供,在<a href=\"https://osm.org/copyright\" target=\"_blank\">開放資料庫授權條款</a>之下自由再利用。</p>",
"attributionTitle": "署名通知",
"codeContributionsBy": "MapComplete 是由 {contributors} 和其他 <a href=\"https://github.com/pietervdvn/MapComplete/graphs/contributors\" target=\"_blank\">{hiddenCount} 位貢獻者</a>構建而成",
"iconAttribution": {
"title": "使用的圖示"
},
"mapContributionsBy": "目前檢視的資料由 {contributors} 貢獻編輯",
"mapContributionsByAndHidden": "目前顯到的資料是由 {contributors} 和其他 {hiddenCount} 位貢獻者編輯貢獻",
"themeBy": "由 {author} 維護主題"
},
"backgroundMap": "背景地圖",
"cancel": "取消",
"customThemeIntro": "<h3>客製化主題</h3>觀看這些先前使用者創造的主題。",
"fewChangesBefore": "請先回答有關既有節點的問題再來新增新節點。",
"getStartedLogin": "登入開放街圖帳號來開始",
"getStartedNewAccount": " 或是 <a href=\"https://www.openstreetmap.org/user/new\" target=\"_blank\">註冊新帳號</a>",
"goToInbox": "開啟訊息框",
"layerSelection": {
"title": "選擇圖層",
"zoomInToSeeThisLayer": "放大來看這個圖層"
},
"loginToStart": "登入之後來回答這問題",
"loginWithOpenStreetMap": "用開放街圖帳號登入",
"morescreen": {
"createYourOwnTheme": "從零開始建立你的 MapComplete 主題",
"intro": "<h3>看更多主題地圖?</h3>您喜歡蒐集地理資料嗎?<br>還有更多主題。",
"requestATheme": "如果你有客製化要求,請到問題追踪器那邊提出要求",
"streetcomplete": "行動裝置另有類似的應用程式 <a class=\"underline hover:text-blue-800\" href=\"https://play.google.com/store/apps/details?id=de.westnordost.streetcomplete\" target=\"_blank\">StreetComplete</a>。"
},
"nameInlineQuestion": "這個 {category} 的名稱是 $$$",
"noNameCategory": "{category} 沒有名稱",
"noTagsSelected": "沒有選取標籤",
"number": "號碼",
"oneSkippedQuestion": "跳過一個問題",
"openStreetMapIntro": "<h3>開放的地圖</h3><p>如果有一份地圖,任何人都能自由使用與編輯,單一的地圖能夠儲存所有地理相關資訊?這樣不就很酷嗎?接著,所有的網站使用不同的、範圍小的,不相容的地圖 (通常也都過時了),也就不再需要了。</p><p><b><a href=\"https://OpenStreetMap.org\" target=\"_blank\">開放街圖</a></b>就是這樣的地圖,人人都能免費這些圖資 (只要<a href=\"https://osm.org/copyright\" target=\"_blank\">署名與公開變動這資料</a>)。只要遵循這些,任何人都能自由新增新資料與修正錯誤,這些網站也都使用開放街圖,資料也都來自開放街圖,你的答案與修正也會加到開放街圖上面。</p><p>許多人與應用程式已經採用開放街圖了:<a href=\"https://organicmaps.app//\" target=\"_blank\">Organic Maps</a>、<a href=\"https://osmAnd.net\" target=\"_blank\">OsmAnd</a>,還有 Facebook、Instagram蘋果地圖、Bing 地圖(部分)採用開放街圖。如果你在開放街圖上變動資料,也會同時影響這些應用 - 在他們下次更新資料之後!</p>",
"opening_hours": {
"closed_permanently": "不清楚關閉多久了",
"closed_until": "{date} 起關閉",
"error_loading": "錯誤:無法視覺化開放時間。",
"not_all_rules_parsed": "這間店的開放時間相當複雜,在輸入元素時忽略接下來的規則:",
"openTill": "結束時間",
"open_24_7": "24小時營業",
"open_during_ph": "國定假日的時候,這個場所是",
"opensAt": "開始時間",
"ph_closed": "無營業",
"ph_not_known": " ",
"ph_open": "有營業"
},
"osmLinkTooltip": "在開放街圖歷史和更多編輯選項下面來檢視這物件",
"pickLanguage": "選擇語言: ",
"questions": {
"emailIs": "{category} 的電子郵件地址是<a href=\"mailto:{email}\" target=\"_blank\">{email}</a>",
"emailOf": "{category} 的電子郵件地址是?",
"phoneNumberIs": "此 {category} 的電話號碼為 <a target=\"_blank\">{phone}</a>",
"phoneNumberOf": "{category} 的電話號碼是?",
"websiteIs": "網站:<a href=\"{website}\" target=\"_blank\">{website}</a>",
"websiteOf": "{category} 的網站網址是?"
},
"readYourMessages": "請先閱讀開放街圖訊息之前再來新增新節點。",
"returnToTheMap": "回到地圖",
"save": "儲存",
"search": {
"error": "有狀況發生了…",
"nothing": "沒有找到…",
"search": "搜尋地點",
"searching": "搜尋中…"
},
"sharescreen": {
"addToHomeScreen": "<h3>新增到您的主畫面</h3>您可以輕易將這網站新增到您智慧型手機的主畫面,在網址列點選「新增到主畫面按鈕」來做這件事情。",
"copiedToClipboard": "複製連結到簡貼簿",
"editThemeDescription": "新增或改變這個地圖的問題",
"editThisTheme": "編輯這個主題",
"embedIntro": "<h3>嵌入到你的網站</h3>請考慮將這份地圖嵌入您的網站。<br>地圖毋須額外授權,非常歡迎您多加利用。<br>一切都是免費的,而且之後也是免費的,越有更多人使用,則越顯得它的價值。",
"fsAddNew": "啟用'新增新的興趣點'按鈕",
"fsGeolocation": "啟用'地理定位自身'按鈕 (只有行動版本)",
"fsIncludeCurrentBackgroundMap": "包含目前背景選擇<b>{name}</b>",
"fsIncludeCurrentLayers": "包含目前選擇圖層",
"fsIncludeCurrentLocation": "包含目前位置",
"fsLayerControlToggle": "開始時擴展圖層控制",
"fsLayers": "啟用圖層控制",
"fsSearch": "啟用搜尋列",
"fsUserbadge": "啟用登入按鈕",
"fsWelcomeMessage": "顯示歡迎訊息以及相關頁籤",
"intro": "<h3>分享這地圖</h3>複製下面的連結來向朋友與家人分享這份地圖:",
"thanksForSharing": "感謝分享!"
},
"skip": "跳過這問題",
"skippedQuestions": "有些問題已經跳過了",
"weekdays": {
"abbreviations": {
"friday": "星期五",
"monday": "星期一",
"saturday": "星期六",
"sunday": "星期日",
"thursday": "星期四",
"tuesday": "星期二",
"wednesday": "星期三"
},
"friday": "星期五",
"monday": "星期一",
"saturday": "星期六",
"sunday": "星期日",
"thursday": "星期四",
"tuesday": "星期二",
"wednesday": "星期三"
},
"welcomeBack": "你已經登入了,歡迎回來!"
},
"getStartedLogin": "登入開放街圖帳號來開始",
"getStartedNewAccount": " 或是 <a href=\"https://www.openstreetmap.org/user/new\" target=\"_blank\">註冊新帳號</a>",
"goToInbox": "開啟訊息框",

View file

@ -297,7 +297,20 @@ function transformTranslation(obj: any, path: string[] = [], languageWhitelist :
}
value = nv;
}
values += `${Utils.Times((_) => " ", path.length + 1)}get ${key}() { return new Translation(${JSON.stringify(value)}, "core:${path.join(".")}.${key}") },
if(value["en"] === undefined){
throw `At ${path.join(".")}: Missing 'en' translation for ${JSON.stringify(value)}`
}
const subParts : string[] = value["en"].match(/{[^}]*}/g)
let expr = `return new Translation(${JSON.stringify(value)}, "core:${path.join(".")}.${key}")`
if(subParts !== null){
// convert '{to_substitute}' into 'to_substitute'
const types = Utils.Dedup( subParts.map(tp => tp.substring(1, tp.length - 1)))
expr = `return new TypedTranslation<{ ${types.join(", ")} }>(${JSON.stringify(value)}, "core:${path.join(".")}.${key}")`
}
values += `${Utils.Times((_) => " ", path.length + 1)}get ${key}() { ${expr} },
`
} else {
values += (Utils.Times((_) => " ", path.length + 1)) + key + ": " + transformTranslation(value, [...path, key], languageWhitelist) + ",\n"
@ -340,7 +353,7 @@ function genTranslations() {
const translations = JSON.parse(fs.readFileSync("./assets/generated/translations.json", "utf-8"))
const transformed = transformTranslation(translations);
let module = `import {Translation} from "../../UI/i18n/Translation"\n\nexport default class CompiledTranslations {\n\n`;
let module = `import {Translation, TypedTranslation} from "../../UI/i18n/Translation"\n\nexport default class CompiledTranslations {\n\n`;
module += " public static t = " + transformed;
module += "\n }"