From 54b4a798b1e756b88cc03532ba410a2310543454 Mon Sep 17 00:00:00 2001 From: Yuri Astrakhan Date: Wed, 16 Jan 2019 14:35:47 -0500 Subject: [PATCH] Localize language name --- data/core.yaml | 2 +- dist/locales/en.json | 2 +- modules/ui/tag_reference.js | 17 +++++++++++++---- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/data/core.yaml b/data/core.yaml index e5bcd49f9..2a31ad804 100644 --- a/data/core.yaml +++ b/data/core.yaml @@ -428,7 +428,7 @@ en: edit_reference: Edit or translate description wiki_reference: View documentation wiki_en_reference: View documentation in English - wiki_lng_reference: View documentation in [{lng}] + wiki_lng_reference: View documentation in {lng} back_tooltip: Change feature remove: Remove search: Search diff --git a/dist/locales/en.json b/dist/locales/en.json index 4ae6375bd..6affc2d2a 100644 --- a/dist/locales/en.json +++ b/dist/locales/en.json @@ -523,7 +523,7 @@ "edit_reference": "Edit or translate description", "wiki_reference": "View documentation", "wiki_en_reference": "View documentation in English", - "wiki_lng_reference": "View documentation in [{lng}]", + "wiki_lng_reference": "View documentation in {lng}", "back_tooltip": "Change feature", "remove": "Remove", "search": "Search", diff --git a/modules/ui/tag_reference.js b/modules/ui/tag_reference.js index 69df2ce4d..136662f07 100644 --- a/modules/ui/tag_reference.js +++ b/modules/ui/tag_reference.js @@ -9,6 +9,8 @@ import { services } from '../services'; import { svgIcon } from '../svg'; import { utilQsString } from '../util'; import _findKey from 'lodash-es/findKey'; +import _find from 'lodash-es/find'; +import {dataWikipedia} from '../../data'; export function uiTagReference(tag) { @@ -59,11 +61,18 @@ export function uiTagReference(tag) { } } - function getAnyWikiInfo(wiki) { + function getAnyWikiInfo(wiki, langCode, langPrefix) { if (!wiki) return; var lng = _findKey(wiki); if (lng) { - return {title: wiki[lng], text: t('inspector.wiki_lng_reference', {lng: lng})}; + // TODO: This code should use proper CLDR country names in the current language, not this hack + var lngName = _find(dataWikipedia, function(d) { + return d[2] === langCode || d[2] === langPrefix; + }); + + return {title: wiki[lng], text: t('inspector.wiki_lng_reference', { + lng: lngName ? lngName[0] : '[' + lng + ']' + })}; } } @@ -84,8 +93,8 @@ export function uiTagReference(tag) { getWikiInfo(keyWiki, langCode, 'inspector.wiki_reference') || getWikiInfo(keyWiki, langPrefix, 'inspector.wiki_reference') || getWikiInfo(keyWiki, 'en', 'inspector.wiki_en_reference') || - getAnyWikiInfo(tagWiki) || - getAnyWikiInfo(keyWiki); + getAnyWikiInfo(tagWiki, langCode, langPrefix) || + getAnyWikiInfo(keyWiki, langCode, langPrefix); return result; }