Merge branch 'splintah-master'

pull/722/head
Dessalines 2019-08-29 11:20:38 -07:00
commit 4a2adfc765
5 changed files with 194 additions and 10 deletions

17
README.md vendored
View File

@ -163,19 +163,20 @@ Lemmy is free, open-source software, meaning no advertising, monetizing, or vent
If you'd like to add translations, take a look a look at the [english translation file](ui/src/translations/en.ts). If you'd like to add translations, take a look a look at the [english translation file](ui/src/translations/en.ts).
- Languages supported: English (`en`), Chinese (`zh`), Esperanto (`eo`), French (`fr`), Spanish (`es`), Swedish (`sv`), German (`de`), Russian (`ru`). - Languages supported: English (`en`), Chinese (`zh`), Dutch (`nl`), Esperanto (`eo`), French (`fr`), Spanish (`es`), Swedish (`sv`), German (`de`), Russian (`ru`).
### Report ### Report
lang | done | missing lang | done | missing
--- | --- | --- --- | --- | ---
de | 90% | cross_posts,cross_post,users,settings,subscribed,expires,recent_comments,nsfw,show_nsfw,crypto,monero,joined,by,to,transfer_community,transfer_site de | 88% | cross_posts,cross_post,users,number_of_communities,settings,subscribed,expires,recent_comments,nsfw,show_nsfw,crypto,monero,joined,by,to,transfer_community,transfer_site,are_you_sure,yes,no
es | 100% | eo | 98% | number_of_communities,are_you_sure,yes,no
eo | 100% | es | 98% | number_of_communities,are_you_sure,yes,no
fr | 93% | cross_posts,cross_post,users,settings,recent_comments,nsfw,show_nsfw,monero,by,to,transfer_community,transfer_site fr | 91% | cross_posts,cross_post,users,number_of_communities,settings,recent_comments,nsfw,show_nsfw,monero,by,to,transfer_community,transfer_site,are_you_sure,yes,no
ru | 95% | cross_posts,cross_post,recent_comments,monero,by,to,transfer_community,transfer_site nl | 100% |
sv | 93% | cross_posts,cross_post,settings,recent_comments,nsfw,show_nsfw,monero,by,to,transfer_community,transfer_site ru | 93% | cross_posts,cross_post,number_of_communities,recent_comments,monero,by,to,transfer_community,transfer_site,are_you_sure,yes,no
zh | 93% | cross_posts,cross_post,users,settings,recent_comments,nsfw,show_nsfw,monero,by,to,transfer_community,transfer_site sv | 91% | cross_posts,cross_post,number_of_communities,settings,recent_comments,nsfw,show_nsfw,monero,by,to,transfer_community,transfer_site,are_you_sure,yes,no
zh | 91% | cross_posts,cross_post,users,number_of_communities,settings,recent_comments,nsfw,show_nsfw,monero,by,to,transfer_community,transfer_site,are_you_sure,yes,no
## Credits ## Credits

4
ui/src/i18next.ts vendored
View File

@ -4,10 +4,11 @@ import { en } from './translations/en';
import { eo } from './translations/eo'; import { eo } from './translations/eo';
import { es } from './translations/es'; import { es } from './translations/es';
import { de } from './translations/de'; import { de } from './translations/de';
import { zh } from './translations/zh';
import { fr } from './translations/fr'; import { fr } from './translations/fr';
import { sv } from './translations/sv'; import { sv } from './translations/sv';
import { ru } from './translations/ru'; import { ru } from './translations/ru';
import { zh } from './translations/zh';
import { nl } from './translations/nl';
// https://github.com/nimbusec-oss/inferno-i18next/blob/master/tests/T.test.js#L66 // https://github.com/nimbusec-oss/inferno-i18next/blob/master/tests/T.test.js#L66
// TODO don't forget to add moment locales for new languages. // TODO don't forget to add moment locales for new languages.
@ -20,6 +21,7 @@ const resources = {
fr, fr,
sv, sv,
ru, ru,
nl,
} }
function format(value: any, format: any, lng: any) { function format(value: any, format: any, lng: any) {

176
ui/src/translations/nl.ts vendored 100644
View File

@ -0,0 +1,176 @@
export const nl = {
translation: {
post: 'post',
remove_post: 'Verwijder post',
no_posts: 'Geen posts.',
create_a_post: 'Plaats een post',
create_post: 'Plaats post',
number_of_posts:'{{count}} posts',
posts: 'posts',
related_posts: 'Deze posts kunnen gerelateerd zijn',
cross_posts: 'Deze link is ook geplaatst in:',
cross_post: 'cross-post',
comments: 'Reacties',
number_of_comments:'{{count}} reacties',
remove_comment: 'Verwijder reactie',
communities: 'Communities',
users: 'Gebruikers',
create_a_community: 'Maak een community',
create_community: 'Maak community',
remove_community: 'Verwijder community',
subscribed_to_communities:'Geabonneerd op <1>communities</1>',
trending_communities:'Populaire <1>communities</1>',
list_of_communities: 'Lijst van communities',
number_of_communities:'{{count}} communities',
community_reqs: 'kleine letters, onderstrepingsteken en geen spaties',
edit: 'bewerk',
reply: 'reageer',
cancel: 'Annuleer',
unlock: 'ontsluiten',
lock: 'sluiten',
link: 'link',
mod: 'moderator',
mods: 'moderators',
moderates: 'Modereert',
settings: 'Instellingen',
remove_as_mod: 'Verwijder als moderator',
appoint_as_mod: 'Benoemen tot moderator',
modlog: 'Moderatorlog',
admin: 'beheerder',
admins: 'beheerders',
remove_as_admin: 'verwijder als beheerder',
appoint_as_admin: 'benoemen tot beheerder',
remove: 'weghalen',
removed: 'weggehaald',
locked: 'gesloten',
reason: 'Reden',
mark_as_read: 'markeer als gelezen',
mark_as_unread: 'markeer als ongelezen',
delete: 'verwijder',
deleted: 'verwijderd',
restore: 'herstellen',
ban: 'verban',
ban_from_site: 'verban van site',
unban: 'verbanning opzeggen',
unban_from_site: 'verbanning van site opzeggen',
save: 'opslaan',
unsave: 'unsave',
create: 'maak',
username: 'Gebruikersnaam',
email_or_username: 'E-mail of gebruikersnaam',
number_of_users:'{{count}} gebruikers',
number_of_subscribers:'{{count}} abonnees',
number_of_points:'{{count}} punten',
name: 'Naam',
title: 'Titel',
category: 'Categorie',
subscribers: 'Abonnees',
both: 'Beide',
saved: 'Opgeslagen',
unsubscribe: 'Afmelden',
subscribe: 'Abonneren',
subscribed: 'Geabonneerd',
prev: 'Vorige',
next: 'Volgende',
sidebar: 'Zijbalk',
sort_type: 'Sorteertype',
hot: 'Populair',
new: 'Nieuw',
top_day: 'Dagelijkse top',
week: 'Week',
month: 'Maand',
year: 'Jaar',
all: 'Alle',
top: 'Top',
api: 'API',
inbox: 'Postvak-in',
inbox_for: 'Postvak-in voor <1>{{user}}</1>',
mark_all_as_read: 'markeer alle als gelezen',
type: 'Type',
unread: 'Ongelezen',
reply_sent: 'Reactie gestuurd',
search: 'Zoek',
overview: 'Overzicht',
view: 'Beeld',
logout: 'Log uit',
login_sign_up: 'Log in / Aanmelden',
login: 'Log in',
sign_up: 'Aanmelden',
notifications_error: 'Bureabladberichten niet beschikbaar in je browser. Probeer Firefox of Chrome.',
unread_messages: 'Ongelezen berichten',
password: 'Wachtwoord',
verify_password: 'Herhaal wachtwoord',
email: 'E-mail',
optional: 'Optioneel',
expires: 'Verloopt',
url: 'url',
body: 'Tekst',
copy_suggested_title: 'neem voorgestelde titel over: {{title}}',
community: 'Community',
expand_here: 'Breid hier uit',
subscribe_to_communities: 'Abonneer je op een paar <1>communities</1>.',
chat: 'Praat',
recent_comments: 'Recente reacties',
no_results: 'Geen resultaten',
setup: 'Installatie',
lemmy_instance_setup: 'Installatie van Lemmy-instantie',
setup_admin: 'Maak een administrator',
your_site: 'jouw site',
modified: 'bewerkt',
nsfw: 'NSFW',
show_nsfw: 'Laat NSFW-inhoud zien',
sponsors: 'Sponsoren',
sponsors_of_lemmy: 'Sponsoren van Lemmy',
sponsor_message: 'Lemmy is vrije, <1>open-source</1> software, dus zonder reclame, winstoogmerk en durfkapitaal, punt. Jouw donaties gaan direct naar de full-time-ontwikkeling van het project. Met veel dank aan de volgende mensen:',
support_on_patreon: 'Ondersteun op Patreon',
general_sponsors:'Algemene sponsors zijn sponsors die tussen de $10 en $39 hebben gegeven aan Lemmy.',
crypto: 'Cryptovaluta',
bitcoin: 'Bitcoin',
ethereum: 'Ethereum',
monero: 'Monero',
code: 'Code',
joined: 'toegetreden',
by: 'door',
to: 'aan',
transfer_community: 'community overplaatsen',
transfer_site: 'site overplaatsen',
are_you_sure: 'weet je het zeker?',
yes: 'ja',
no: 'nee',
powered_by: 'Mogelijk gemaakt door',
landing_0: 'Lemmy is een <1>linkverzameler</1> / reddit-alternatief, bedoeld om in de <2>fediverse</2> te werken.<3></3>Lemmy kan door om het even wie gehost worden, heeft live-bijgewerkte reacties en is superklein (<4>ca. 80 kB</4>). Federatie in hte ActivityPub-netwerk is gepland. <5></5>Dit is een <6>erg vroege bèta-versie</6>, en een hoop functies zijn stuk of afwezig. <7></7>Stel nieuwe functies voor of meldt fouten <8>hier</8>.<9></9>Gemaakt met <10>Rust</10>, <11>Actix</11>, <12>Inferno</12> en <13>Typescript</13>.',
not_logged_in: 'Niet ingelogd.',
community_ban: 'Je bent verbannen uit deze community.',
site_ban: 'Je bent verbannen van deze site.',
couldnt_create_comment: 'Kon reactie niet maken.',
couldnt_like_comment: 'Kon reactie niet leuk vinden.',
couldnt_update_comment: 'Kon reactie niet bijwerken.',
couldnt_save_comment: 'Kon reactie niet opslaan.',
no_comment_edit_allowed: 'Niet toegestaan om reactie te bewerken.',
no_post_edit_allowed: 'Niet toegestaan om posts te bewerken.',
no_community_edit_allowed: 'Niet toegestaan om community te bewerken.',
couldnt_find_community: 'Kon community niet vinden.',
couldnt_update_community: 'Kon community niet bijwerken.',
community_already_exists: 'Community bestaat al.',
community_moderator_already_exists: 'Community-moderator bestaat al.',
community_follower_already_exists: 'Community-volger bestaat al.',
community_user_already_banned: 'Community-gebruiker reeds verbannen.',
couldnt_create_post: 'Kon post niet maken.',
couldnt_like_post: 'Kon post niet leuk vinden.',
couldnt_find_post: 'Kon post niet vinden.',
couldnt_get_posts: 'Kon posts niet ophalen.',
couldnt_update_post: 'Kon post niet bijwerken.',
couldnt_save_post: 'Kon post niet opslaan.',
no_slurs: 'Geen beledigingen.',
not_an_admin: 'Niet een beheerder.',
site_already_exists: 'Site bestaat al.',
couldnt_update_site: 'Kon site niet bijwerken.',
couldnt_find_that_username_or_email: 'Kon gebruikersnaam of e-mailadres niet vinden.',
password_incorrect: 'Wachtwoord incorrect.',
passwords_dont_match: 'Wachtwoorden zijn niet gelijk.',
admin_already_created: 'Sorry, er is al een beheerder.',
user_already_exists: 'Gebruiker bestaat al.',
couldnt_update_user: 'Kon gebruiker niet bijwerken.',
system_err_login: 'Systeemfout. Probeer uit te loggen en weer in te loggen.',
},
}

3
ui/src/utils.ts vendored
View File

@ -5,6 +5,7 @@ import 'moment/locale/zh-cn';
import 'moment/locale/fr'; import 'moment/locale/fr';
import 'moment/locale/sv'; import 'moment/locale/sv';
import 'moment/locale/ru'; import 'moment/locale/ru';
import 'moment/locale/nl';
import { UserOperation, Comment, User, SortType, ListingType } from './interfaces'; import { UserOperation, Comment, User, SortType, ListingType } from './interfaces';
import * as markdown_it from 'markdown-it'; import * as markdown_it from 'markdown-it';
@ -198,6 +199,8 @@ export function getMomentLanguage(): string {
lang = 'es'; lang = 'es';
} else if (lang.startsWith('eo')) { } else if (lang.startsWith('eo')) {
lang = 'eo'; lang = 'eo';
} else if (lang.startsWith('nl')) {
lang = 'nl';
} else { } else {
lang = 'en'; lang = 'en';
} }

View File

@ -6,12 +6,14 @@ import { zh } from './src/translations/zh';
import { fr } from './src/translations/fr'; import { fr } from './src/translations/fr';
import { sv } from './src/translations/sv'; import { sv } from './src/translations/sv';
import { ru } from './src/translations/ru'; import { ru } from './src/translations/ru';
import { nl } from './src/translations/nl';
let files = [ let files = [
{t: de, n: 'de'}, {t: de, n: 'de'},
{t: es, n: 'es'},
{t: eo, n: 'eo'}, {t: eo, n: 'eo'},
{t: es, n: 'es'},
{t: fr, n: 'fr'}, {t: fr, n: 'fr'},
{t: nl, n: 'nl'},
{t: ru, n: 'ru'}, {t: ru, n: 'ru'},
{t: sv, n: 'sv'}, {t: sv, n: 'sv'},
{t: zh, n: 'zh'}, {t: zh, n: 'zh'},