Skip to content

Commit

Permalink
Merge pull request #580 from lucdekens/master
Browse files Browse the repository at this point in the history
VMworld Hackathon - International Language Support
  • Loading branch information
Sneddo authored Sep 22, 2017
2 parents ec04f45 + fcacb3b commit 01d5a9a
Show file tree
Hide file tree
Showing 30 changed files with 2,184 additions and 1,527 deletions.
13 changes: 13 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,19 @@ We are in the process of adding/consolidating more detailed documentation around

We are in the process of adding/consolidating more detailed documentation around this. In the meantime, you can review the documentation that we do have inside the [README.md](README.md) file for the repo.

## Internation Language Support

To add support for a specific language to the vCheck, you will have to do the following:

* Create a folder under the Lang folder. The folder shall have the language code of the language for which you are adding support.
* Language strings are loaded from the data files (.psd1). The name of the data file shall correspond with the name of the .ps1 file where the language strings are loaded.
* Language strings are loaded from the main vCheck.ps1 script and from several plugins
* When a data file for a specific plugin is not found, the script logic will revert to en-US
* Use the Use-Culture.ps1 script to test the language you added or updated

The ultimate goal is to remove all language strings from the .ps1 files to data files, or .psd1 files.
The initial examples did this for the main script (vCheck.ps1) and the plugin 79 (79 Find VMs in Uncontrolled Snapshot Mode.ps1).

## Slack

To join in discussions or ask questions, join the #vCheck channel on [VMware Code Slack Team](https://code.vmware.com/slack/).
Expand Down
6 changes: 6 additions & 0 deletions Lang/de-DE/79 Find VMs in Uncontrolled Snapshot Mode.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# culture="de-DE"
ConvertFrom-StringData @'
pluginActivity = Suche Datastores
pluginStatus = [{0} von {1}] {2}
Complete = Fertig
'@
2 changes: 2 additions & 0 deletions Lang/de-DE/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
### this is the german Edit by Karsten Bott
## editerd ad vmworld Hackathon
35 changes: 35 additions & 0 deletions Lang/de-DE/vCheck.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# culture="de-DE"
ConvertFrom-StringData @'
setupMsg01 =
setupMsg02 = Willkommen zu vCheck by Virtu-Al http://virtu-al.net
setupMsg03 = =================================================
setupMsg04 = Dies ist das erste mal, das Sie dieses Script starten, oder der Setupo-Wizard wurde neu gestarted.
setupMsg05 =
setupMsg06 = Um den Wizard neu zu starten, benutzen Sie vCheck.ps1 -Config
setupMsg07 = Um Hilfe zu erhalten, benutzen Sie Get-Help vCheck.ps1
setupMsg08 =
setupMsg09 = Bitte beantworten Sie die folgenden Fragen, oder drücken Sie enter, um mit den aktuellen Einstellungen fortzufahren.
setupMsg10 = Nach dem Beenden des Wizards wird der vCheck Report in diesem Fenster angezeigt.
setupMsg11 =
configMsg01 = Nachdem neue Einstellungen vom Konfigurationsinterface exportiert wurden,
configMsg02 = importieren Sie die settings CSV Datei mit Import-vCheckSettings -csvfile C:\\Pfad\\zu\\vCheckSettings.csv
configMsg03 = HINWEIS: Wenn die Datei vCheckSettings.csv im vCheck Ordner gespeichert ist, benutzen Sie Import-vCheckSettings
resFileWarn = Image Datei wurde für {0} nich gefunden!
pluginInvalid = Das folgende Plugin existiert nicht: {0}
pluginpathInvalid = Der Plugin Pfad "{0}" ist ungültig, es wird {1} verwendet
gvInvalid = Der Pfad zu den Globalen Variablen in der Job Spezifikation ist inkorrekt, {0} wird jetzt verwendet
varUndefined = Die Variable `${0} ist in der Datei GlobalVariables.ps1 nicht definiert
pluginActivity = Auswählen der Plugins
pluginStatus = [{0} von {1}] {2}
Complete = Fertig!
pluginBegin = \nStart der Plugins
pluginStart = ..Start der Berechnung {0} by {1} v{2} [{3} of {4}]
pluginEnd = ..fertig mit der Berechnung {0} by {1} v{2} [{3} of {4}]
repTime = Der Report benötigte {0} Minuten um den Check auszuführen, beenden {1} um {2}
repPRTitle = Plugin Report
repTTRTitle = Dauer der Ausführung
slowPlugins = Die folgenden Plugins benötigten länger als {0} Secunden für die Ausführung, diese sollten optimiert oder entfernt werden
emailSend = ..Sende Email
emailAtch = vCheck wurde an die email angehängt
HTMLdisp = ..Zeige die HTML ERgebnisse an
'@
6 changes: 6 additions & 0 deletions Lang/en-GB/79 Find VMs in Uncontrolled Snapshot Mode.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# culture="en-US"
ConvertFrom-StringData @'
pluginActivity = Searching Datastores
pluginStatus = [{0} of {1}] {2}
Complete = completed
'@
36 changes: 36 additions & 0 deletions Lang/en-GB/vCheck.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# culture="en-US"
ConvertFrom-StringData @'
setupMsg01 =
setupMsg02 = Welcome to vCheck by Virtu-Al http://virtu-al.net
setupMsg03 = =================================================
setupMsg04 = This is the first time you have run this script or you have re-enabled the setup wizard.
setupMsg05 =
setupMsg06 = To re-run this wizard in the future please use vCheck.ps1 -Config
setupMsg07 = To get usage information, please use Get-Help vCheck.ps1
setupMsg08 =
setupMsg09 = Please complete the following questions or hit Enter to accept the current setting
setupMsg10 = After completing this wizard the vCheck report will be displayed on the screen.
setupMsg11 =
configMsg01 = After you have exported the new settings from the configuration interface,
configMsg02 = import the settings CSV file using Import-vCheckSettings -csvfile C:\\path\\to\\vCheckSettings.csv
configMsg03 = NOTE: If vCheckSettings.csv is stored in the vCheck folder, simply run Import-vCheckSettings
resFileWarn = Image File not found for {0}!
pluginInvalid = Plugin does not exist: {0}
pluginpathInvalid = Plugin path "{0}" is invalid, defaulting to {1}
gvInvalid = Global Variables path invalid in job specification, defaulting to {0}
varUndefined = Variable `${0} is not defined in GlobalVariables.ps1
pluginActivity = Evaluating plugins
pluginStatus = [{0} of {1}] {2}
Complete = Complete
pluginBegin = \nBegin Plugin Processing
pluginStart = ..start calculating {0} by {1} v{2} [{3} of {4}]
pluginEnd = ..finished calculating {0} by {1} v{2} [{3} of {4}]
repTime = This report took {0} minutes to run all checks, completing on {1} at {2}
repPRTitle = Plugin Report
repTTRTitle = Time to Run
slowPlugins = The following plugins took longer than {0} seconds to run, there may be a way to optimize these or remove them if not needed
emailSend = ..Sending Email
emailAtch = vCheck attached to this email
HTMLdisp = ..Displaying HTML results
'@

21 changes: 21 additions & 0 deletions Lang/en-US/00 Connection Plugin for vCenter.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# culture="en-US"

ConvertFrom-StringData @'
connReuse = Re-using connection to VI Server
connOpen = Connecting to VI Server
connError = Unable to connect to vCenter, please ensure you have altered the vCenter server address correctly. To specify a username and password edit the connection string in the file $GlobalVariables
custAttr = Adding Custom properties
collectVM = Collecting VM Objects
collectHost = Collecting VM Host Objects
collectCluster = Collecting Cluster Objects
collectDatastore = Collecting Datastore Objects
collectDVM = Collecting Detailed VM Objects
collectTemplate = Collecting Template Objects
collectDVIO = Collecting Detailed VI Objects
collectAlarm = Collecting Detailed Alarm Objects
collectDHost = Collecting Detailed VMHost Objects
collectDCluster = Collecting Detailed Cluster Objects
collectDDatastore = Collecting Detailed Datastore Objects
collectDDatastoreCluster = Collecting Detailed Datastore Cluster Objects
collectAlarms = Collecting Alarm Definitions
'@
6 changes: 6 additions & 0 deletions Lang/en-US/79 Find VMs in Uncontrolled Snapshot Mode.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# culture="en-US"
ConvertFrom-StringData @'
pluginActivity = Searching Datastores
pluginStatus = [{0} of {1}] {2}
Complete = completed
'@
36 changes: 36 additions & 0 deletions Lang/en-US/vCheck.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# culture="en-US"
ConvertFrom-StringData @'
setupMsg01 =
setupMsg02 = Welcome to vCheck by Virtu-Al http://virtu-al.net
setupMsg03 = =================================================
setupMsg04 = This is the first time you have run this script or you have re-enabled the setup wizard.
setupMsg05 =
setupMsg06 = To re-run this wizard in the future please use vCheck.ps1 -Config
setupMsg07 = To get usage information, please use Get-Help vCheck.ps1
setupMsg08 =
setupMsg09 = Please complete the following questions or hit Enter to accept the current setting
setupMsg10 = After completing this wizard the vCheck report will be displayed on the screen.
setupMsg11 =
configMsg01 = After you have exported the new settings from the configuration interface,
configMsg02 = import the settings CSV file using Import-vCheckSettings -csvfile C:\\path\\to\\vCheckSettings.csv
configMsg03 = NOTE: If vCheckSettings.csv is stored in the vCheck folder, simply run Import-vCheckSettings
resFileWarn = Image File not found for {0}!
pluginInvalid = Plugin does not exist: {0}
pluginpathInvalid = Plugin path "{0}" is invalid, defaulting to {1}
gvInvalid = Global Variables path invalid in job specification, defaulting to {0}
varUndefined = Variable `${0} is not defined in GlobalVariables.ps1
pluginActivity = Evaluating plugins
pluginStatus = [{0} of {1}] {2}
Complete = Complete
pluginBegin = \nBegin Plugin Processing
pluginStart = ..start calculating {0} by {1} v{2} [{3} of {4}]
pluginEnd = ..finished calculating {0} by {1} v{2} [{3} of {4}]
repTime = This report took {0} minutes to run all checks, completing on {1} at {2}
repPRTitle = Plugin Report
repTTRTitle = Time to Run
slowPlugins = The following plugins took longer than {0} seconds to run, there may be a way to optimize these or remove them if not needed
emailSend = ..Sending Email
emailAtch = vCheck attached to this email
HTMLdisp = ..Displaying HTML results
'@

6 changes: 6 additions & 0 deletions Lang/es-ES/79 Find VMs in Uncontrolled Snapshot Mode.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# culture="es-ES"
ConvertFrom-StringData @'
pluginActivity = Buscando Datastores
pluginStatus = [{0} de {1}] {2}
Complete = Finalizado
'@
35 changes: 35 additions & 0 deletions Lang/es-ES/vCheck.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# culture="es-ES"
ConvertFrom-StringData @'
setupMsg01 =
setupMsg02 = Bienvenido a vCheck desarrollado por Virtu-Al http://virtu-al.net
setupMsg03 = =================================================================
setupMsg04 = Esta es la primera vez que has ejecutado este script, o has re-activado el asistente de configuración.
setupMsg05 =
setupMsg06 = Para volver a ejecutar este asistente en el futuro, utiliza vCheck.ps1 -Config
setupMsg07 = Para obtener ayuda, por favor, utiliza Get-Help vCheck.ps1
setupMsg08 =
setupMsg09 = Contesta a las siguientes preguntas o pulsa Enter para aceptar la configuración actual
setupMsg10 = Despues de completar este asistente, el informe de vCheck se mostrará en la pantalla.
setupMsg11 =
configMsg01 = Despues de haber exportado los nuevos ajustes desde el interfaz de configuración,
configMsg02 = importa el fichero CSV con los ajustes utilizando Import-vCheckSettings -csvfile c:\\path\\to\\vCehckSettings.csv
configMsg03 = NOTA: Si vCheckSettings.csv está almacenado en la carpeta vCheck, simplemente ejecuta Import-vCheckSettings
resFileWarn = Fichero Imagen no encontrado para {0}!
pluginInvalid = El plugin no existe: {0}
pluginpathInvalid = El Plugin path "{0}" no es válido. Utilizando {1} por defecto.
gvInvalid = El Path de las Variables Globales no es válido en la especificación del trabajo, utilizando {0} por defecto
varUndefined = La variable `${0} no está definida en GlobalVariables.ps1
pluginActivity = Evaluando plugins
pluginStatus = [{0} de {1}] {2}
Complete = Finalizado
pluginBegin = \nIniciando ejecución de Plugins
pluginStart = ..empezando cálculo {0} por {1} v{2} [{3} de {4}]
pluginEnd = ..finalizado cálculo {0} por {1} v{2} [{3} de {4}]
repTime = Este informe tardó {0} minutos en ejecutar todos los checks, completado el {1} a las {2}
repPRTitle = Informe de Plugins
repTTRTitle = Tiempo de Ejecución
slowPlugins = Los siguientes plugins tardaron más de {0} segundos en ejecturase, quizá haya una forma de optimizarlos o desactívalos si no son necesarios
emailSend = ..Enviando Email
emailAtch = vCheck adjunto a este email
HTMLdisp = ..Mostrando resultados HTML
'@
6 changes: 6 additions & 0 deletions Lang/fr-FR/79 Find VMs in Uncontrolled Snapshot Mode.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# culture="fr-FR"
ConvertFrom-StringData @'
pluginActivity = Recherche de Datastores
pluginStatus = [{0} of {1}] {2}
Complete = Terminé
'@
36 changes: 36 additions & 0 deletions Lang/fr-FR/vCheck.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# culture="fr-FR"
ConvertFrom-StringData @'
setupMsg01 =
setupMsg02 = Bienvenue dans vCheck par Virtu-Al http://virtu-al.net
setupMsg03 = =================================================
setupMsg04 = C'est la premiere fois que ce script s'execute ou vous avez relancé l'assistant.
setupMsg05 =
setupMsg06 = La prochaine fois que vous relancez l'assistant, merci d'utiliser la commande vCheck.ps1 -Config
setupMsg07 = Pour avoir des informations d'usage, merci d'utiliser Get-Help vCheck.ps1
setupMsg08 =
setupMsg09 = complétez les questions suivantes ou appuiez sur entrée pour accepter les paramètres courants
setupMsg10 = après avoir terminé l'assistant le raport vCheck s'affichera sur l'écran.
setupMsg11 =
configMsg01 = après avoir exporté les nouveaux paramètres depuis l'interface de configuration,
configMsg02 = importez le fichier CSV des paramètres en utilisant la commande Import-vCheckSettings -csvfile C:\\path\\to\\vCheckSettings.csv
configMsg03 = NOTE: Si le fichier vCheckSettings.csv est stocké dans le repertoire de vCheck, exécutez simplement Import-vCheckSettings
resFileWarn = fichier image introuvable pour {0}!
pluginInvalid = Plugin n'existe pas: {0}
pluginpathInvalid = le chemin du Plugin "{0}" est invalide, bascule sur le parametre par défaut {1}
gvInvalid = le chemin des variables Globales est invalide dans les specifications, bascule sur le parametre par défaut {0}
varUndefined = Variable `${0} n'est pas défini dans le fichier GlobalVariables.ps1
pluginActivity = evaluation des plugins
pluginStatus = [{0} of {1}] {2}
Complete = terminé
pluginBegin = \ndémarrage du process des Plugins
pluginStart = ..début du calcul {0} by {1} v{2} [{3} of {4}]
pluginEnd = ..fin du calcul {0} by {1} v{2} [{3} of {4}]
repTime = ce rapport a pris {0} pour executer tous les composants, terminé le {1} à {2}
repPRTitle = Plugin Report
repTTRTitle = temps d'execution
slowPlugins = les plugins suivants ont pris plus de {0} secondes à s'executer, il doit y avoir moyen d'améliorer cela...
emailSend = ..envoi d'Email
emailAtch = vCheck en pièce jointe à cet email
HTMLdisp = ..affichage des resultats HTML
'@

6 changes: 6 additions & 0 deletions Lang/it-IT/79 Find VMs in Uncontrolled Snapshot Mode.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# culture="it-IT"
ConvertFrom-StringData @'
pluginActivity = Searching Datastores
pluginStatus = [{0} of {1}] {2}
Complete = Complete
'@
35 changes: 35 additions & 0 deletions Lang/it-IT/vCheck.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# culture="it-IT"
ConvertFrom-StringData @'
setupMsg01 =
setupMsg02 = Benvenuto su vCheck by Virtu-Al http://virtu-al.net
setupMsg03 = =================================================
setupMsg04 = Questa è la prima volta che lanci lo script oppure devi rifare la procedura di Setup guidata
setupMsg05 =
setupMsg06 = Per ripetere la procedura di configurazione digita vCheck.ps1 -Config
setupMsg07 = Per informazioni sull'uso dello script digita Get-Help vCheck.ps1
setupMsg08 =
setupMsg09 = Prego completa le seguenti domande o premi Invio per accettare le impostazioni correnti
setupMsg10 = Dopo il completamento di questa procedura guidata, verrà visualizzato un report
setupMsg11 =
configMsg01 = Dopo l'esportazione delle configurazioni dall'interfaccia
configMsg02 = importa il file CSV delle configurazioni tramite il comando Import-vCheckSettings -csvfile C:\\path\\to\\vCheckSettings.csv
configMsg03 = NB: Se il file vCheckSettings.csv è presente nella cartella vCheck allora semplicemente lancia il comando Import-vCheckSettings
resFileWarn = File immagine non trovato per {0}!
pluginInvalid = Plugin inesistente: {0}
pluginpathInvalid = Il percorso del plugin "{0}" non è valido, verrà utilizzato {1}
gvInvalid = Il percorso per le variabili globali non è valido, verrà utilizzato {0}
varUndefined = La variable `${0} non è definita nel file GlobalVariables.ps1
pluginActivity = Valutando il plugin...
pluginStatus = [{0} of {1}] {2}
Complete = Completo
pluginBegin = \nInizio processo plugin
pluginStart = ..inizio calcolo {0} by {1} v{2} [{3} of {4}]
pluginEnd = ..calcolo terminato {0} by {1} v{2} [{3} of {4}]
repTime = Questo report ha impiegato {0} minuti per eseguire tutti i check, completando {1} a {2}
repPRTitle = Report del Plugin
repTTRTitle = Tempo di esecuzuone
slowPlugins = l'esecuzione del seguente plugin ha impiegato più di {0} secondi, potrebbe essistere un modo per ottimizzarli o rimuoverli se non servono
emailSend = ..Invio mail in corso
emailAtch = vCheck allegato a questo email
HTMLdisp = .._Visualizzazione dei risultato in formato HTML
'@
6 changes: 6 additions & 0 deletions Lang/nb-NO/79 Find VMs in Uncontrolled Snapshot Mode.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# culture="nb-NO"
ConvertFrom-StringData @'
pluginActivity = Søker datalager
pluginStatus = [{0} av {1}] {2}
Complete = fullført
'@
35 changes: 35 additions & 0 deletions Lang/nb-NO/vCheck.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# culture="nb-NO"
ConvertFrom-StringData @'
setupMsg01 =
setupMsg02 = Velkommen til vCheck, utviklet av Virtu-Al http://virtu-al.net
setupMsg03 = =================================================
setupMsg04 = Enten er dette første gangen du kjører scriptet, eller så må du reaktivere oppstartsinstillingene.
setupMsg05 =
setupMsg06 = For å sette oppe scriptet på nytt, start scriptet med følgende opsjon: vCheck.ps1 -Config
setupMsg07 = For brukerveilednin: Get-Help vCheck.ps1
setupMsg08 =
setupMsg09 = Besvar følgende spørsmål eller trykk Entertasten for å for å akseptere innstillingen.
setupMsg10 = En oppsummering av innstillinger vil presenteres etter at du har angitt alle innstillinger.
setupMsg11 =
configMsg01 = Etter at alle innstillinger er endret, importer konfigurasjonen med kommandoen:
configMsg02 = Import-vCheckSettings -csvfile C:\\sti\\to\\vCheckSettings.csv
configMsg03 = MERK: Hvis vCheckSettings.csv er lagret i vCheck katalogen, trenger du bare kjøre Import-vCheckSettings
resFileWarn = Finner ingen fil for {0}!
pluginInvalid = Tillegg finns ikke: {0}
pluginpathInvalid = Tilleggslokasjon "{0}" er ikke gyldig, prøver {1}
gvInvalid = Globale sti til variable er ikke rikig i innstillinger for kjøringen, prøver {0}
varUndefined = Variabelen `${0} er ikke definert i GlobalVariables.ps1
pluginActivity = Sjekker tilegg
pluginStatus = [{0} sv {1}] {2}
Complete = Fullført
pluginBegin = \nBegin Behandler tillegg
pluginStart = ..kalkulerer {0} {1} skrevet av {2} [{3} av {4}]
pluginEnd = ..kalkulert {0} skrevet av {1} v{2} [{3} av {4}]
repTime = Rapporten kjørte på {0} minutter, avsluttet {1} {2}
repPRTitle = Tillegsapport
repTTRTitle = Kjøretid
slowPlugins = Følgende tillegg to lengre tid enn {0} sekunder, det kan finnen en metode for å optimalisere kjøring eller fjerne disse
emailSend = ..Sender epost
emailAtch = vCheck er ved denne eposten
'@

Loading

0 comments on commit 01d5a9a

Please sign in to comment.