PO2C.

PO2C ist ein Perl-Skript, das eine Reihe von GETTExt-Sprachübersetzungsdateien von seinen Befehlszeilenargumenten annimmt.
Jetzt downloaden

PO2C. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • GPL
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Angel Ortega
  • Website des Verlags:
  • http://www.triptico.com/software/po2c.html

PO2C. Stichworte


PO2C. Beschreibung

PO2C ist ein Perl-Skript, das eine Reihe von GETTEXT-Sprachübersetzungsdateien von seinen Befehlszeilenargumenten annimmt. PO2C ist ein kleines Perl-Skript, das eine Reihe von GETText-Sprachübersetzungsdateien von seinen Befehlszeilenargumenten annimmt und eine C-Quellcodedatei enthält, die alle diese Meldungen enthält, und die erforderlichen Funktionen, um sie ohne andere Abhängigkeit zu verwenden. Dies ist nützlich. Wenn Sie bereitstellen möchten C-Quellcode-Datei umfassen die ursprünglichen und übersetzten Nachrichten als Gruppe statischer, null terminierter Zeiger-zu-String-Arrays und die folgenden zwei C-Funktionen: Void PO2C_SETLANG (CHAR * LANG); CHAR * PO2C_GETTEXT (CHAR * MSGID); Der erste, po2c_setlang (), wird verwendet, um die Favoritensprache des Benutzers einzustellen, die wahrscheinlich von ihm erhielt oder von einem der Umgebungsvariablen von LANC_ALL- oder LC_Messages gelesen wird. Die Namen der verarbeiteten .PO-Dateien müssen mit den Sprachzeichenfolgen entsprechen. Die MsgID ist die Zeichenfolge, um zu übersetzen. Es gibt die übersetzte Zeichenfolge, falls gefunden, oder dasselbe msgstr, ansonsten.Examplesuppose Sie haben ein Verzeichnis mit dem Namen Po und die folgenden zwei Dateien, po / ES.PO: #Spanish Übersetzungen msgstr "Guten Morgen!" Msgstr "Buenos DAS!" und PO / FR.PO: #Franzation Übersetzungen msgstr "Guten Morgen!" Msgstr "Bon Jour!" Dann Ausführung des folgenden Befehls: PO2C PO / *. PO> Lang.cwill Ergebnis in der folgenden lang.c c-Quelldatei: / * Von PO2C 1.0.2 generiert - nicht ändern * / #include # static char * _po2c_msgids [] = {/ * 0 * / "Guten Morgen!", Null}. struct _po2c_msg {int msgid; char * msgstr; }; Statische Struktur _PO2C_MSG _PO2C_LANG_FR [] = {{0, "Bon Jour!" }, {-1, null}}}; Statische Struktur _PO2C_MSG _PO2C_LANG_ES [] = {{0, "Buenos DAS!" }, {-1, null}}}; statische Struktur {char * lang; struct _po2c_msg * msgs; } _PO2C_LANGS [] = {{{"fr", _PO2C_LANG_FR}, {"ES", _PO2C_LANG_ES}, {null, null}}; / * Code * / Statische Struktur _PO2C_MSG * _PO2C_LANG = NULL; Static Int _PO2C_LANG_SIZE = 0; void po2c_setlang (char * lang) {int n; _PO2C_LANG = NULL; _PO2C_LANG_SIZE = 0; / * Wenn lang null ist oder "" deaktivieren * / if (lang == null || * lang == '') zurück; / * sucht nach einem gültigen Spracharray * / für (n = 0; _PO2c_lang == null _PO2C_LANGS .Lang! = null; n ++) {if (strcmp (lang, _PO2c_langs .lang) == 0) _PO2C_LANG = _PO2C_LANGS .msgs; } / * Versuchen Sie partielle Suchen * / für (n = 0; _PO2C_LANG == null _PO2C_LANGS .Lang! = null; n ++) {if (strncmp (lang, _PO2c_langs .lang, 2) == 0) _PO2C_LANG = _PO2C_LANGS .msgs; } / * falls gefunden, zähleneinträge * / if (_po2c_lang! = null) {struct _po2c_msg * m; für (m = _PO2C_LANG; M-> msgid! = -1; M ++) _PO2C_LANG_SIZE ++; }} char * po2c_gettext (char * msgid) {struct _po2c_msg * m; int b, t, n, c; / * Wenn keine Sprache eingestellt ist oder msgstr leer ist, geben Sie msgstr aus wie * / if (_PO2C_LANG == null || * msgid == ') zurück (msgid); / * Binary-Suchen nach Msgstr * / B = 0; t = _PO2C_LANG_SIZE - 1; während (t> = b) {n = (b + t) / 2; m = _PO2C_LANG ; c = strcmp (msgid, _po2c_msgids ); if (c == 0) Rückgabe (m-> msgstr); sonst, wenn (c <0) t = n - 1; sonst b = n + 1; } Rückkehr (msgstr); } Sie können es kompilieren und mit Ihrem Code verknüpfen. Dort fügen Sie die Funktion Prototypen hinzu und verwenden Sie sie.Virequirements: · Perl Anforderungen: · Perl.


PO2C. Zugehörige Software

Sichern

Safestruct dient als Basisklasse für jede Klasse, die seine Mitglieder vor Missbrennen schützen möchte. ...

266

Herunterladen

E16MENDEDIT2.

E16MENDEDIT2 ist ein grafischer Menü-Editor für den in C und GTK geschriebenen Aufklärungsfenstermanager. ...

316

Herunterladen