Zuerst müssen Sie die Domänen trennen.
Zum Beispiel: Angenommen, Sie haben eine Domäne für lib und eine für App, dann eine Verknüpfung für den dgettext()
Anruf erstellen;
_app(msg) -> dgettext("app", msg);
und eine für die lib Domäne:
_lib(msg) -> dgettext("lib", msg);
Fügen Sie diese Anrufe ganzen Code wie folgt;
show_message(_app("Choose a directory to save your work."));
show_message(_lib("No space left on device."));
Denken Sie daran, dass Sie bindtextdomain()
für beide Domains aufrufen müssen, wenn die Anwendung initialisiert wird.
extrahieren sie Sie andere Suchbegriffe zu xgettext
auf allen Dateinamen in der Quellbaum, der enthält diese Markierungen angeben müssen:
xgettext --keyword=_app -d domain1 filenames...
xgettext --keyword=_lib -d domain2 filenames...
Schließlich kompilieren beide der .po-Dateien in ihre binäre .mo Variante und kopieren/installieren Sie sie an der richtigen Stelle.
Ich fand einen [Vorschlag] (http://Stackoverflow.com/a/5354360/645186) auf, wie man jede Domäne getrennt analysiert. Dies ist jedoch eine Problemumgehung. – Shef