Tag "capital" avec plusieurs valeurs à traduire
publié le , mis à jourLe tag capital
(ici) peut avoir une valeur admin_level-number
:
Dans osmTagLabels.ts
, faudrait-il passer le tagName
à la fonction tagValueCorrespondance()
afin de permettre une traduction spécifique des valeurs en fonction du tagName
?
kevinvennitti Pour info, j'ai modifié la fonction
tagValueCorrespondance()
dans mon fork pour avoir une liste des traductions spécifiques (lorsqu'une valeur peut se traduire différemment en fonction du contexte/tagName) et une liste de fonctions de formattage pour transformer la valeur d'une clé (par exemple : ajouter un suffixe, mieux afficher une liste, etc) :export const tagValueCorrespondance = (key: string, tagName: string) => { const translations = { children: 'Enfant', only: 'Uniquement', subway: 'Métro', metro: 'Métro', } const specificTranslations = { 'seamark:type': { 'harbour': 'Port', }, 'type:RATP': { 'rer': 'RER', } } const formats = { 'route_ref': (v) => v.split(';').join(', '), 'Population': (v) => v + ' habitants', } return formats[tagName] ? formats[tagName](key) : ( specificTranslations[tagName] ? (specificTranslations[tagName][key] ?? (translations[key] ?? key)) : (translations[key] ?? key)) }