Übersetzen von BASH Scripte


Um ein Bash Script auf die jeweilige Landessprache zu übersetzen, benötigt es zwei Zeilen am Anfang des zu übersetzenden Skripts als Beispiel dient GetOpenOffice:

  export TEXTDOMAIN=getopenoffice
  export TEXTDOMAINDIR="/usr/share/locale"


Um die zu übersetzenden Texte angezeigt zu bekommen, muss in den bash-Skripten jeweils vor dem Text-Einträge ein $-Zeichen gesetzt sein, zum Beispiel:

  zenity --info --text=$"You chose to exit. \nNo changes were applied to your system."


Sofern überall im Script die $-Zeichen vorhanden sind öffnen man eine Konsole/Terminal und schreibt folgenden Befehl:

  bash --dump-po-strings /usr/bin/getopenoffice | xgettext -L PO -o ~/getopenoffice.pot -


und erstellt dann als Beispiel eine deutsche po-Datei mit diesen Befehl:

  msginit -l de -i ~/getopenoffice.pot -o ~/de.po


oder sofort mit richtigen Namen:

  msginit -l de -i ~/getopenoffice.pot -o ~/getopenoffice-de.po


Übersetzer können dann mit poedit die Übersetzung für das aktuelle Pakete erstellen.

Original von pinoc