Add occitan translation + better names for locales in Settings
Huge thanks to Quentin for this translation! https://framagit.org/phyks/cyclassist/merge_requests/1
This commit is contained in:
parent
3da34cb148
commit
5e1c3e47fc
@ -3,6 +3,25 @@ import VueI18n from 'vue-i18n';
|
|||||||
|
|
||||||
import en from './en.json';
|
import en from './en.json';
|
||||||
import fr from './fr.json';
|
import fr from './fr.json';
|
||||||
|
import oc from './oc.json';
|
||||||
|
|
||||||
|
export const AVAILABLE_LOCALES = [
|
||||||
|
{
|
||||||
|
iso: 'en',
|
||||||
|
name: 'English',
|
||||||
|
messages: en,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
iso: 'fr',
|
||||||
|
name: 'French',
|
||||||
|
messages: fr,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
iso: 'oc',
|
||||||
|
name: 'Occitan',
|
||||||
|
messages: oc,
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
export function getBrowserLocales() {
|
export function getBrowserLocales() {
|
||||||
let langs = [];
|
let langs = [];
|
||||||
@ -31,10 +50,10 @@ export function getBrowserLocales() {
|
|||||||
|
|
||||||
Vue.use(VueI18n);
|
Vue.use(VueI18n);
|
||||||
|
|
||||||
export const messages = {
|
export const messages = {};
|
||||||
en,
|
AVAILABLE_LOCALES.forEach((item) => {
|
||||||
fr,
|
messages[item.iso] = item.messages;
|
||||||
};
|
});
|
||||||
|
|
||||||
export default new VueI18n({
|
export default new VueI18n({
|
||||||
messages,
|
messages,
|
||||||
|
78
src/i18n/oc.json
Normal file
78
src/i18n/oc.json
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
{
|
||||||
|
"about": {
|
||||||
|
"availableReportsTitle": "Los senhalaments disponibles pel moment son :",
|
||||||
|
"geolocationDescription": "Dins la version actuala, v\u00f2stra posicion es tractada dir\u00e8ctament per v\u00f2stre periferic e pas jamai enviada a un servici ext\u00e8rne. Lo fons de mapa es telecargat a la demanda del provesidor de teulas estant e a doncas acc\u00e8s a una estimacion de la posicion mostrada. Se refusatz lo partiment de v\u00f2stra geolocalizacion, poiretz picar una adre\u00e7a a la man all\u00f2c mas perdretz las foncionalitats avan\u00e7adas qu'utilizan la geolocalizacion.",
|
||||||
|
"license": "Lo c\u00f2di font es jos <a href=\"https://opensource.org/licenses/MIT\">lic\u00e9ncia MIT</a> (<a href=\"https://framagit.org/phyks/cyclassist\">c\u00f2di font</a>). Las ic\u00f2nas son basadas sus d'\u00f2bras de Wikimedia, Vecteezy, Pixabay o Flaticon. Las teulas de fons venon <a href=\"https://carto.com/location-data-services/basemaps/\">Carto.com</a> o <a href=\"http://thunderforest.com/\">Thunderforest</a>, gr\u00e0cia als <a href=\"https://www.openstreetmap.org/copyright\">contributors OpenStreetMap</a> e a <a href=\"http://leafletjs.com/\">Leaflet</a>. Los senhalaments son disponibles jos <a href=\"https://opendatacommons.org/licenses/odbl/\">lic\u00e9ncia ODbL</a>.",
|
||||||
|
"summary": "Aquesta aplicacion vos permet de senhalar e partejar de probl\u00e8mas amb los itineraris ciclables.",
|
||||||
|
"usage": "Utilizacion",
|
||||||
|
"usageDescription": "Utilizatz lo boton en bas a man drecha per ajustar un senhalament a v\u00f2stra empla\u00e7ament actual. Per ajustar un senhalament endac\u00f2m mai, tocatz l'empla\u00e7ament volgut sus la mapa. Tocatz un marcador sus la mapa per mostrar mai d'informacions e senhalar es encara present o non."
|
||||||
|
},
|
||||||
|
"buttons": {
|
||||||
|
"close": "Tampar",
|
||||||
|
"downvote": "Infirmar",
|
||||||
|
"menu": "Men\u00fa",
|
||||||
|
"recenterMap": "Recentrar la mapa",
|
||||||
|
"reportProblem": "N\u00f2u senhalament",
|
||||||
|
"upvote": "Confirmar"
|
||||||
|
},
|
||||||
|
"geolocation": {
|
||||||
|
"errorFetchingPosition": "Impossible de recuperar v\u00f2stra posicion :",
|
||||||
|
"fetching": "En esp\u00e8ra de v\u00f2stra posicion\u2026",
|
||||||
|
"geolocation": "Geolocalizacion",
|
||||||
|
"permissionDenied": "l'acc\u00e8s a v\u00f2stra posicion es estat refusat.",
|
||||||
|
"positionUnavailable": "impossible de determinar v\u00f2stra posicion.",
|
||||||
|
"timeout": "v\u00f2stra posicion tarda tr\u00f2p a \u00e8sser recuperada.",
|
||||||
|
"unavailable": "O planh\u00e8m, la geolocalizacion es pas disponibla dins v\u00f2stre navigador."
|
||||||
|
},
|
||||||
|
"intro": {
|
||||||
|
"checkingPermissions": "Verificacion de las autorizacions",
|
||||||
|
"next": "Seguent",
|
||||||
|
"ready": "Tot es pr\u00e8st !",
|
||||||
|
"reportTypes": "Tipes de senhalaments",
|
||||||
|
"startReporting": "Comen\u00e7ar de senhalar !",
|
||||||
|
"welcome": "La benvenguda !"
|
||||||
|
},
|
||||||
|
"locationPicker": {
|
||||||
|
"invalidSelection": "Seleccion invalida",
|
||||||
|
"pickALocationManually": "causir una posicion manualament"
|
||||||
|
},
|
||||||
|
"menu": {
|
||||||
|
"About": "Ajuda",
|
||||||
|
"Map": "Mapa",
|
||||||
|
"Settings": "Prefer\u00e9ncias"
|
||||||
|
},
|
||||||
|
"misc": {
|
||||||
|
"discard": "Anullar",
|
||||||
|
"or": "o",
|
||||||
|
"retry": "Ensajar tornamai",
|
||||||
|
"spaceBeforeDoublePunctuations": " "
|
||||||
|
},
|
||||||
|
"reportCard": {
|
||||||
|
"Reported": "Senhalat"
|
||||||
|
},
|
||||||
|
"reportDialog": {
|
||||||
|
"unableToSendDescription": "Una error ret empacha lo mandad\u00eds del darri\u00e8r senhalament.",
|
||||||
|
"unableToSendTitle": "Impossible d'enviar lo darri\u00e8r senhalament"
|
||||||
|
},
|
||||||
|
"reportLabels": {
|
||||||
|
"accident": "Accident",
|
||||||
|
"accidentDescription": "Un accident sus la rota (automaticament suprimit apr\u00e8p una ora).",
|
||||||
|
"gcum": "GCUM",
|
||||||
|
"gcumDescription": "Una auto (mal) estacionada sus la pista ciclabla (automaticament suprimit apr\u00e8p una ora).",
|
||||||
|
"interrupt": "Interruption",
|
||||||
|
"interruptDescription": "Una interrupcion d'itinerari ciclable (\u00f2bras, arr\u00e8st inesperat d'una pista ciclabla, etc)",
|
||||||
|
"misc": "Autre",
|
||||||
|
"miscDescription": "Un probl\u00e8ma qu'a pas cap de categoria.",
|
||||||
|
"obstacle": "Obstacle",
|
||||||
|
"obstacleDescription": "Un obstacle sus la pista ciclabla (granit de bordadura, encombrants, etc)",
|
||||||
|
"pothole": "Trauc",
|
||||||
|
"potholeDescription": "Un trauc per la rota."
|
||||||
|
},
|
||||||
|
"settings": {
|
||||||
|
"locale": "Lenga",
|
||||||
|
"preventSuspend": "Empachar lo periferic de passar en velha",
|
||||||
|
"save": "Salvar",
|
||||||
|
"skipOnboarding": "Passar l'introduccion",
|
||||||
|
"tileServer": "Servidor de teulas per la mapa"
|
||||||
|
}
|
||||||
|
}
|
@ -7,6 +7,8 @@
|
|||||||
<v-select
|
<v-select
|
||||||
:items="i18nItems"
|
:items="i18nItems"
|
||||||
v-model="locale"
|
v-model="locale"
|
||||||
|
item-text="name"
|
||||||
|
item-value="iso"
|
||||||
:label="$t('settings.locale')"
|
:label="$t('settings.locale')"
|
||||||
required
|
required
|
||||||
></v-select>
|
></v-select>
|
||||||
@ -37,12 +39,12 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { TILE_SERVERS } from '@/constants';
|
import { TILE_SERVERS } from '@/constants';
|
||||||
import { messages } from '@/i18n';
|
import { AVAILABLE_LOCALES } from '@/i18n';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
i18nItems: Object.keys(messages),
|
i18nItems: AVAILABLE_LOCALES,
|
||||||
locale: this.$store.state.settings.locale,
|
locale: this.$store.state.settings.locale,
|
||||||
preventSuspend: this.$store.state.settings.preventSuspend,
|
preventSuspend: this.$store.state.settings.preventSuspend,
|
||||||
skipOnboarding: this.$store.state.settings.skipOnboarding,
|
skipOnboarding: this.$store.state.settings.skipOnboarding,
|
||||||
|
Loading…
Reference in New Issue
Block a user