-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reiverr Translate #77
Comments
Hey, If you have experience with javascript, follow the steps here to get yourself a development environment. Then in the source code, create following file: If you don't have development experience, you can copy the english translations file below, add your translations and send it back to me here and I'll add them for you.
{
"appName": "Reiverr",
"setupRequiredTitle": "Welcome to",
"setupRequiredDescription": "It seems like the application is missing some environment variables that are necessary for the application to function. Please provide the following environment variables:",
"navbar": {
"home": "Home",
"discover": "Discover",
"library": "Library",
"sources": "Sources",
"settings": "Settings"
},
"search": {
"placeHolder": "Search for Movies and TV Shows",
"noRecentSearches": "No recent searches",
"noResults": "No search results"
},
"discover": {
"trending": "Trending",
"popularPeople": "Popular People",
"upcomingMovies": "Upcoming Movies",
"upcomingSeries": "Upcoming Series",
"genres": "Genres",
"newDigitalReleases": "New Digital Releases",
"streamingNow": "On Streaming Now",
"TVNetworks": "TV Networks"
},
"library": {
"missingConfiguration": "Configure Radarr, Sonarr and Jellyfin to watch and manage your library",
"available": "Available",
"watched": "Watched",
"unavailable": "Unavailable",
"sort": {
"byTitle": "By Title"
},
"content": {
"movie": "Movie",
"show": "Show",
"requestContent": "Request",
"directedBy": "Directed By",
"releaseDate": "Release Date",
"budget": "Budget",
"status": "Status",
"runtime": "Runtime",
"castAndCrew": "Cast & Crew",
"recommendations": "Recommendations",
"similarTitles": "Similar Titles"
}
},
"sources": {},
"titleShowcase": {
"details": "Details",
"watchTrailer": "Watch Trailer",
"releaseDate": "Release Date",
"directedBy": "Directed By"
},
"settings": {
"navbar": {
"settings": "Configuration",
"general": "General",
"integrations": "Integrations"
},
"general": {
"userInterface": {
"userInterface": "User Interface",
"language": "Language",
"autoplayTrailers": "Autoplay Trailers",
"animationDuration": "Animation Duration"
},
"discovery": {
"discovery": "Discovery",
"none": "None",
"region": "Region",
"excludeLibraryItemsFromDiscovery": "Exclude library items from Discovery",
"includedLanguages": "Included languages",
"includedLanguagesDescription": "Filter results based on spoken language. Takes ISO 639-1 language codes separated with commas. Leave empty to disable."
}
},
"integrations": {
"integrations": "Integrations",
"integrationsNote": "Note: Base urls must be accessible from the browser, meaning that internal docker addresses won't work, for example. API Keys <span class='font-medium underline'>will be exposed</span> to the browser.",
"baseUrl": "Base URL",
"apiKey": "API Key",
"testConnection": "Test Connection",
"status": {
"connected": "Connected",
"disconnected": "Disconnected"
},
"options": {
"options": "Options",
"rootFolder": "Root Folder",
"qualityProfile": "Quality Profile",
"languageProfile": "Language Profile",
"jellyfinUser": "Jellyfin User"
}
},
"misc": {
"saveChanges": "Save Changes",
"resetToDefaults": "Reset to Defaults ",
"changelog": "Changelog"
}
}
}
Thank you! |
I translated the json file in French for your next update
|
Very nice, I'll add them 👍 Just to double check, is the settings.integrations.integrationsNote correct? It seems like it's missing the API key part |
Ah yes indeed I forgot this part, I corrected my previous message. Thanks |
Here the Italian translation: {
"appName": "Reiverr",
"setupRequiredTitle": "Benvenuti in",
"setupRequiredDescription": "Sembra che alcune variabili di ambiente necessarie per il funzionamento dell'applicazione siano mancanti. Per favore, inserisci le seguenti variabili d'ambiente:",
"navbar": {
"home": "Home",
"discover": "Esplora",
"library": "Libreria",
"sources": "Fonti",
"settings": "Impostazioni"
},
"search": {
"placeHolder": "Cerca Film o Serie TV",
"noRecentSearches": "Nessuna ricerca recente",
"noResults": "Nessun risultato"
},
"discover": {
"trending": "In tendenza",
"popularPeople": "Personaggi in tendenza",
"upcomingMovies": "Film in uscita",
"upcomingSeries": "Serie TV in uscita",
"genres": "Generi",
"newDigitalReleases": "Nuove uscite in digitale",
"streamingNow": "In streaming adesso",
"TVNetworks": "Network TV"
},
"library": {
"missingConfiguration": "Configura Radarr, Sonarr e Jellyfin per guardare e gestire la tua libreria",
"available": "Disponibile",
"watched": "Guardato",
"unavailable": "Non disponibile",
"sort": {
"byTitle": "Per Titolo"
},
"content": {
"movie": "Film",
"show": "Serie TV",
"requestContent": "Richiedi",
"directedBy": "Diretto da",
"releaseDate": "Data di uscita",
"budget": "Budget",
"status": "Stato",
"runtime": "Durata",
"castAndCrew": "Cast e Crew",
"recommendations": "Suggerimenti",
"similarTitles": "Titoli simili"
}
},
"sources": {},
"titleShowcase": {
"details": "Dettagli",
"watchTrailer": "Guarda il trailer",
"releaseDate": "Data di uscita",
"directedBy": "Diretto da"
},
"settings": {
"navbar": {
"settings": "Configurazione",
"general": "Generale",
"integrations": "Integrazioni"
},
"general": {
"userInterface": {
"userInterface": "Interfaccia utente",
"language": "Lingua",
"autoplayTrailers": "Riproduci automaticamente i trailer",
"animationDuration": "Durata dell'animazione"
},
"discovery": {
"discovery": "Esplora",
"none": "Niente",
"region": "Paese",
"excludeLibraryItemsFromDiscovery": "Escludi i media presenti nella libreria dalla sezione Esplora",
"includedLanguages": "Lingue disponibili",
"includedLanguagesDescription": "Filtra i risultati in base alla lingua dell'audio. Inserisci i codici della lingua in formato ISO 639-1 separati da virgola. Lascia vuoto per disabilitare."
}
},
"integrations": {
"integrations": "Integrazioni",
"integrationsNote": "Nota bene: L'indirizzo (URL) deve essere accessibile dal browser, questo vuol dire che indirizzi come quello interno di docker non funzioneranno. Le chiavi API <span class='font-medium underline'>saranno rese disponibili</span> al browser.",
"baseUrl": "Indirizzo (URL)",
"apiKey": "Chiave API",
"testConnection": "Testa la connessione",
"status": {
"connected": "Connesso",
"disconnected": "Disconnesso"
},
"options": {
"options": "Opzioni",
"rootFolder": "Percorso",
"qualityProfile": "Profilo di qualità",
"languageProfile": "Profilo della lingua",
"jellyfinUser": "Utente Jellyfin"
}
},
"misc": {
"saveChanges": "Salva",
"resetToDefaults": "Impostazioni predefinite",
"changelog": "Note di rilascio"
}
}
} |
Thanks @serverless83, I added them and they will ship with the next version. |
Translation to Portuguese Brazil:
|
Translation to German:
|
I have a suggestion: convert the lang file names to locales instead of just the language. the motivation being that you can have more granular control over "accents" so to speak. so en.json would become en-gb.json and en-us.json for example. the reason I state this is because the dutch translations are made by a Belgium person. and whilst it is totally legible for me, dutch and flamish do have some differences witch result in sentences that are really unnatural in dutch, but totally normal in flamish. And since I don't think we should favor one over the other I suggest to just have both. I'd be happy to provide you with a PR |
Good insight, didn't realize this! I will probably leave language support to the community again, as I have quite a lot on my plate in terms of the rewrite. So if you or someone else wants to implement this to v0 or v2, I'd be happy to merge. Also seems like there's a lot of translations here that I've forgot to merge, so I'll try to include those next week (or if someone wants to speed things up, feel free to create a PR for me :)) |
Hi @aleksilassila, A tip for you - Homarr is using crowdin project for language translations. Its very user friendly and anyone can contribute. Perhaps it can be used for Reiverr as well. Free license covers up to 60,000 words.
|
Where can I help translate Reiverr into French?
The text was updated successfully, but these errors were encountered: