Difference between revisions of "De/Übersetzung"
(Created page with "==Programm== ==Voraussetzung== ==Dokumentation==") |
(maint -> stable) |
||
(16 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
==Programm== | ==Programm== | ||
− | |||
+ | Zu übersetzen sind die Zeichenketten (Wörter und Sätze) der grafischen Benutzeroberfläche. | ||
+ | Außerdem ist die Online-Hilfe zu übersetzen. Diese bildet jedoch zusammen mit dem Tutorial ("Kurs und Konzepte") ein eigenes (Dokumentations-)Repository. | ||
+ | ===Voraussetzung=== | ||
+ | ====Weblate==== | ||
+ | Einige Komponenten können inzwischen auf weblate bearbeitet werden – ohne Git … | ||
+ | ;Das Glossar:[https://hosted.weblate.org/engage/gnucash/ https://hosted.weblate.org/widgets/gnucash/-/glossary/287x66-grey.png] | ||
+ | ;Das Programm:[https://hosted.weblate.org/engage/gnucash/ https://hosted.weblate.org/widgets/gnucash/-/gnucash/287x66-grey.png] | ||
+ | ;Die Website:[https://hosted.weblate.org/engage/gnucash/ https://hosted.weblate.org/widgets/gnucash/-/website/287x66-grey.png] | ||
+ | ;Idee zum Programm testen: Auf weblate eine aktuelle mo-Datei erzeugen und in ein aktuelles Nightly kopieren. | ||
+ | Wer an der Übersetzung mitwirken möchte, sollte das öffentliche [https://github.com/Gnucash/gnucash Git-Repository von GnuCash] sowohl in ein eigenes Repository auf [https://github.com GitHub], als auch in ein Arbeitsverzeichnis auf dem eigenen Rechner "klonen". Hierfür ist Git auf dem eigenen Rechner zu installieren. | ||
+ | Ebenso sollte man aus dem Quelltext einen eigenen Build erstellen können. Dadurch wird gewährleistet, dass immer die aktuelle Vorlage für die Übersetzung vorliegt und benutzt wird. | ||
+ | |||
+ | ====Git-Repository==== | ||
+ | |||
+ | Nachdem man bei GitHub einen Account angelegt und sich eingeloggt hat, geht man auf die oben verlinkte Seite und klickt auf "Fork". Dann wird das Git-Repository von GnuCash in den eigenen Bereich auf GitHub kopiert ("geklont"). Dies wird benötigt, um direkt von Github aus einen Pullrequest zu erstellen. | ||
+ | |||
+ | Man kann aber auch Patches über den Bugtracker einsenden. | ||
+ | |||
+ | Um das Git-Repository von GnuCash in das Arbeitsverzeichnis auf dem eigenen Rechner kopieren, führt man in dem Verzeichnis auf dem eigenen Rechner, in das das spätere Arbeitsverzeichnis platziert werden soll, folgenden Befehl aus: | ||
+ | |||
+ | <pre>git clone https://github.com/Gnucash/gnucash.git</pre> | ||
+ | |||
+ | Es entsteht dann das Arbeitsverzeichnis, in das man nun wechseln kann. | ||
+ | |||
+ | Für Git gibt es zahlreiche Anleitungen - auch Online. Sie sind über Suchmaschinen unschwer zu finden. Wer an der Übersetzung mitwirken möchte, sollte in einem gewissen Maße im Umgang mit diesem Versionskontrollsystem vertraut sein- | ||
+ | |||
+ | ====Build-Umgebung==== | ||
+ | |||
+ | Compiler (gcc), Linker (libtools), autotools, intltools, git, ... | ||
+ | |||
+ | Gnucash verwendet die folgenden Bibliotheken. Daher müssen ihre dev[el]-Pakete beim Bauen installiert sein. | ||
+ | |||
+ | Unter Debian 9 (Stretch/Testing) werden folgende Pakete benötigt: | ||
+ | |||
+ | libglib2.0-dev (>= 2.28.0) | ||
+ | libgtk2.0-dev (>= 2.24.0) | ||
+ | guile-2.0-dev (>= 2.0.0) | ||
+ | libart-2.0-dev | ||
+ | libgnomecanvas-2-dev (>= 2.0) | ||
+ | libgoffice-0.8-dev (>= 0.7.0) | ||
+ | libxml2-dev (>= 2.5.10) | ||
+ | libxslt1-dev | ||
+ | swig (>=b2.0.10) Wird nur benötigt, wenn aus Git oder SVN heraus gebaut wird. | ||
+ | libwebkitgtk-dev (>= 1.0) | ||
+ | libboost-dev (>=1.53.0) | ||
+ | |||
+ | Optional, aber sinnvoll sind noch folgende Pakete: | ||
+ | |||
+ | libaqbanking (>= 4.0.0) für Onlinebanking und Importe; benötigt auch | ||
+ | libgwenhywfar60-dev und ibktoblzcheck1-dev (Beide Pakete werden nachisntalliert.) | ||
+ | libdbi-dev (>=0.8.3) für die SQL Backends, | ||
+ | Vergessen Sie nicht, Ihren bevorzugten Datenbanktreiber zu installieren. | ||
+ | In Debian heißen die Treiber: libdbd-mysql, libdbd-postgresql und libdbd-sqlite. | ||
+ | libofx-dev (>= 0.9.0) | ||
+ | python-dev (>= 2.7.0) python bindings; Es werden die Headers, nicht die Binaries benötigt. | ||
+ | |||
+ | |||
+ | Quelle: [http://wiki.gnucash.org/wiki/Dependencies#Libraries.2FDeps Libraries/Deps] | ||
+ | |||
+ | ====Eigenes Build erstellen==== | ||
+ | |||
+ | Praktischerweise erstellt man mit Git einen eigenen Branch für die Überarbeitung der Übersetzung. Dieser muss auf dem Branch ''stable'' basieren. | ||
+ | |||
+ | Danach führt man im Arbeitsverzeichnis | ||
+ | |||
+ | ./autogen.sh | ||
+ | ./configure --enable-debug --enable-aqbanking --prefix=/opt/gnucash-git | ||
+ | make | ||
+ | sudo make install | ||
+ | |||
+ | aus. | ||
+ | |||
+ | Wenn das erfolgreich durchgelaufen ist, hat man eine selbstgebaute Version nach /opt installiert. | ||
+ | |||
+ | Mit | ||
+ | |||
+ | make pot | ||
+ | |||
+ | werden alle übersetzbaren Zeichenketten in die Datei ''gnucash.pot'' eingesammelt. | ||
+ | |||
+ | ''Zu jedem Release gibt es eine eigene gnucash.pot Datei. Für die Version 2.6.14 ist es [http://translationproject.org/POT-files/gnucash-2.6.14.pot gnucash-2.6.14.pot]. Für weitere Versionen muss die Versionsnummer im Link angepasst werden.'' | ||
+ | |||
+ | |||
+ | Mit | ||
+ | |||
+ | ./configure --help | ||
+ | |||
+ | kann man sich alle Parameter anzeigen lassen. | ||
+ | |||
+ | ====Aktualisieren der *.po Datei==== | ||
+ | |||
+ | Hierfür benötigt man unter Debian das Paket ''gettext'', welches die GNU-Internationalisierungsprogramme enthält. | ||
+ | |||
+ | Es ist im Verzeichnis ''po'' folgender Befehl ausführen: | ||
+ | |||
+ | <pre> | ||
+ | msgmerge -o de.new.po de.po gnucash.pot | ||
+ | mv de.new.po de.po | ||
+ | </pre> | ||
+ | |||
+ | Auf diese Art und Weise werden alle neuen Zeichenketten in die bereits bestehende de.po eingepflegt. | ||
+ | |||
+ | Mit | ||
+ | |||
+ | msgfmt -c --statistics de.po | ||
+ | |||
+ | können Sie die Syntax checken und eine Statistik auflisten. | ||
+ | |||
+ | ====Testen==== | ||
+ | |||
+ | Nach der Aktualisierung der Datei ''de.po'' wird diese im aktuellen Build getestet. | ||
+ | |||
+ | Dazu ruft man im Arbeitsverzeichnis nochmal | ||
+ | |||
+ | make | ||
+ | sudo make install | ||
+ | |||
+ | auf. | ||
+ | |||
+ | Mit ''make'' wird u.a. auch ''msgfmt'' aufgerufen, um aus der Datei de.po die Datei gnucash.mo zu erstellen. | ||
+ | |||
+ | Wer zunächst in der eigenen Installation testen möchte, kann unter (GNU/Linux) auch einfach nur die *.mo Datei wie folgt aktualisieren: | ||
+ | |||
+ | sudo msgfmt <Pfad zur *.po Datei>/de.po -o /usr/share/locale/de/LC_MESSAGES/gnucash.mo | ||
+ | |||
+ | Bei anderen Betriebssystemen muss der Pfad zur *.mo Datei angepasst werden. | ||
==Dokumentation== | ==Dokumentation== | ||
+ | |||
+ | Zur Dokumentation von [[GnuCash]] gehören die Online-Hilfe und das Tutorial "Kurs und Konzepte". | ||
+ | |||
+ | Hierfür gibt es ein eigenes [https://github.com/Gnucash/gnucash-docs Repository auf GitHub]. | ||
+ | |||
+ | Hinsichtlich der eigenen Repositories auf GitHub und auf dem eigenen Rechner gilt das [[#Git-Repository|oben Ausgeführte]] entsprechend. | ||
+ | |||
+ | ===Übersetzen=== | ||
+ | |||
+ | Die Übersetzungen erfolgen in den xml-Dateien im ''guide/de''- bzw. ''help/de''-Unterverzeichnis. | ||
+ | |||
+ | ===Dokumentation erstellen=== | ||
+ | |||
+ | Im Arbeitsverzeichnis wird danach der Befehl | ||
+ | |||
+ | <pre>./autogen.sh</pre> | ||
+ | |||
+ | ausgeführt. | ||
+ | |||
+ | Es folgt der Befehl: | ||
+ | |||
+ | <pre>./configure --with-mobi</pre> | ||
+ | |||
+ | Schließlich im Verzeichnis, das die jeweiligen Sprachdateien enthält (also im ''guide/de''- oder ''help/de''-Unterverzeichnis): | ||
+ | |||
+ | <pre>make pdf mobi</pre> | ||
+ | |||
+ | Wird dieser Befehl im Arbeitsverzeichnis ausgeführt, werden alle Sprachen (und jeweils beide Dokumentationsobjekte) "gebaut". Dies nimmt nicht nur viel Zeit in Anspruch, sondern ist meist auch überflüssig. | ||
+ | |||
+ | ===Validierung=== | ||
+ | |||
+ | Zur Validierung kann der Befehl | ||
+ | |||
+ | <pre>xmllint --valid --noout gnucash-guide.xml</pre> | ||
+ | |||
+ | (im Verzeichnis ''guide/de'') ausgeführt werden. | ||
+ | |||
+ | ''xmllint'' ist ein Programm zum Validieren und Umformatieren von XML-Dokumenten. Dieses Programm ist bei Debian im Paket für XML-Hilfsprogramme ''libxml2-utils'' enthalten. | ||
+ | |||
+ | |||
+ | |||
+ | [[Category:De|Übersetzung]] | ||
+ | [[Category:Translation|Übersetzung]] |
Latest revision as of 00:59, 25 October 2023
Contents
Programm
Zu übersetzen sind die Zeichenketten (Wörter und Sätze) der grafischen Benutzeroberfläche.
Außerdem ist die Online-Hilfe zu übersetzen. Diese bildet jedoch zusammen mit dem Tutorial ("Kurs und Konzepte") ein eigenes (Dokumentations-)Repository.
Voraussetzung
Weblate
Einige Komponenten können inzwischen auf weblate bearbeitet werden – ohne Git …
- Das Glossar
- Das Programm
- Die Website
- Idee zum Programm testen
- Auf weblate eine aktuelle mo-Datei erzeugen und in ein aktuelles Nightly kopieren.
Wer an der Übersetzung mitwirken möchte, sollte das öffentliche Git-Repository von GnuCash sowohl in ein eigenes Repository auf GitHub, als auch in ein Arbeitsverzeichnis auf dem eigenen Rechner "klonen". Hierfür ist Git auf dem eigenen Rechner zu installieren. Ebenso sollte man aus dem Quelltext einen eigenen Build erstellen können. Dadurch wird gewährleistet, dass immer die aktuelle Vorlage für die Übersetzung vorliegt und benutzt wird.
Git-Repository
Nachdem man bei GitHub einen Account angelegt und sich eingeloggt hat, geht man auf die oben verlinkte Seite und klickt auf "Fork". Dann wird das Git-Repository von GnuCash in den eigenen Bereich auf GitHub kopiert ("geklont"). Dies wird benötigt, um direkt von Github aus einen Pullrequest zu erstellen.
Man kann aber auch Patches über den Bugtracker einsenden.
Um das Git-Repository von GnuCash in das Arbeitsverzeichnis auf dem eigenen Rechner kopieren, führt man in dem Verzeichnis auf dem eigenen Rechner, in das das spätere Arbeitsverzeichnis platziert werden soll, folgenden Befehl aus:
git clone https://github.com/Gnucash/gnucash.git
Es entsteht dann das Arbeitsverzeichnis, in das man nun wechseln kann.
Für Git gibt es zahlreiche Anleitungen - auch Online. Sie sind über Suchmaschinen unschwer zu finden. Wer an der Übersetzung mitwirken möchte, sollte in einem gewissen Maße im Umgang mit diesem Versionskontrollsystem vertraut sein-
Build-Umgebung
Compiler (gcc), Linker (libtools), autotools, intltools, git, ...
Gnucash verwendet die folgenden Bibliotheken. Daher müssen ihre dev[el]-Pakete beim Bauen installiert sein.
Unter Debian 9 (Stretch/Testing) werden folgende Pakete benötigt:
libglib2.0-dev (>= 2.28.0) libgtk2.0-dev (>= 2.24.0) guile-2.0-dev (>= 2.0.0) libart-2.0-dev libgnomecanvas-2-dev (>= 2.0) libgoffice-0.8-dev (>= 0.7.0) libxml2-dev (>= 2.5.10) libxslt1-dev swig (>=b2.0.10) Wird nur benötigt, wenn aus Git oder SVN heraus gebaut wird. libwebkitgtk-dev (>= 1.0) libboost-dev (>=1.53.0)
Optional, aber sinnvoll sind noch folgende Pakete:
libaqbanking (>= 4.0.0) für Onlinebanking und Importe; benötigt auch libgwenhywfar60-dev und ibktoblzcheck1-dev (Beide Pakete werden nachisntalliert.) libdbi-dev (>=0.8.3) für die SQL Backends, Vergessen Sie nicht, Ihren bevorzugten Datenbanktreiber zu installieren. In Debian heißen die Treiber: libdbd-mysql, libdbd-postgresql und libdbd-sqlite. libofx-dev (>= 0.9.0) python-dev (>= 2.7.0) python bindings; Es werden die Headers, nicht die Binaries benötigt.
Quelle: Libraries/Deps
Eigenes Build erstellen
Praktischerweise erstellt man mit Git einen eigenen Branch für die Überarbeitung der Übersetzung. Dieser muss auf dem Branch stable basieren.
Danach führt man im Arbeitsverzeichnis
./autogen.sh ./configure --enable-debug --enable-aqbanking --prefix=/opt/gnucash-git make sudo make install
aus.
Wenn das erfolgreich durchgelaufen ist, hat man eine selbstgebaute Version nach /opt installiert.
Mit
make pot
werden alle übersetzbaren Zeichenketten in die Datei gnucash.pot eingesammelt.
Zu jedem Release gibt es eine eigene gnucash.pot Datei. Für die Version 2.6.14 ist es gnucash-2.6.14.pot. Für weitere Versionen muss die Versionsnummer im Link angepasst werden.
Mit
./configure --help
kann man sich alle Parameter anzeigen lassen.
Aktualisieren der *.po Datei
Hierfür benötigt man unter Debian das Paket gettext, welches die GNU-Internationalisierungsprogramme enthält.
Es ist im Verzeichnis po folgender Befehl ausführen:
msgmerge -o de.new.po de.po gnucash.pot mv de.new.po de.po
Auf diese Art und Weise werden alle neuen Zeichenketten in die bereits bestehende de.po eingepflegt.
Mit
msgfmt -c --statistics de.po
können Sie die Syntax checken und eine Statistik auflisten.
Testen
Nach der Aktualisierung der Datei de.po wird diese im aktuellen Build getestet.
Dazu ruft man im Arbeitsverzeichnis nochmal
make sudo make install
auf.
Mit make wird u.a. auch msgfmt aufgerufen, um aus der Datei de.po die Datei gnucash.mo zu erstellen.
Wer zunächst in der eigenen Installation testen möchte, kann unter (GNU/Linux) auch einfach nur die *.mo Datei wie folgt aktualisieren:
sudo msgfmt <Pfad zur *.po Datei>/de.po -o /usr/share/locale/de/LC_MESSAGES/gnucash.mo
Bei anderen Betriebssystemen muss der Pfad zur *.mo Datei angepasst werden.
Dokumentation
Zur Dokumentation von GnuCash gehören die Online-Hilfe und das Tutorial "Kurs und Konzepte".
Hierfür gibt es ein eigenes Repository auf GitHub.
Hinsichtlich der eigenen Repositories auf GitHub und auf dem eigenen Rechner gilt das oben Ausgeführte entsprechend.
Übersetzen
Die Übersetzungen erfolgen in den xml-Dateien im guide/de- bzw. help/de-Unterverzeichnis.
Dokumentation erstellen
Im Arbeitsverzeichnis wird danach der Befehl
./autogen.sh
ausgeführt.
Es folgt der Befehl:
./configure --with-mobi
Schließlich im Verzeichnis, das die jeweiligen Sprachdateien enthält (also im guide/de- oder help/de-Unterverzeichnis):
make pdf mobi
Wird dieser Befehl im Arbeitsverzeichnis ausgeführt, werden alle Sprachen (und jeweils beide Dokumentationsobjekte) "gebaut". Dies nimmt nicht nur viel Zeit in Anspruch, sondern ist meist auch überflüssig.
Validierung
Zur Validierung kann der Befehl
xmllint --valid --noout gnucash-guide.xml
(im Verzeichnis guide/de) ausgeführt werden.
xmllint ist ein Programm zum Validieren und Umformatieren von XML-Dokumenten. Dieses Programm ist bei Debian im Paket für XML-Hilfsprogramme libxml2-utils enthalten.