Prima di tutto penso che gettext
sia uno dei migliori a questo punto.
Si può dare un'occhiata a Boost.Locale
che può fornire una migliore API e utilizzare il modello di dizionario gettext
: http://cppcms.sourceforge.net/boost_locale/docs/ (non parte ufficiale di Boost, ancora beta).
Modifica:
Se non ti piace ... gettext
Queste sono tecnologie di traduzione:
- OASIS XLIFF
- GNU gettext PO/mo file
- PO SEI cataloghi
- Qt ts/file tm
- proprietà Java,
- risorse di Windows.
Ora:
- Ultima due schifezza totale ... molto difficile da usare tradurre e mantenere, non supportano forme plurali.
- Qt ts/tm - richiede l'utilizzo del framework Qt. Hanno un modello molto simile a
gettext
. Soluzione non male, ma limitata a Qt. Non così utile nei programmi generici.
- cataloghi POSIX - nessuno li usa, nessun supporto di forme plurali. Una schifezza.
- OASIX XLIFF: soluzione "standard", dipende dall'XML, anche l'ICU richiede la compilazione su specifiche risorse dell'ICU da utilizzare. Strumenti di traduzione limitati, non conosco alcuna libreria che supporti XLIFF. Forme plurali non così facili da usare (ICU includeva supporto solo nella versione 4.x).
Ora che cosa abbiamo?
GNU gettext
, ampiamente utilizzato, ha grandi strumenti, ha un grande supporto forme plurali, molto popolare nella comunità di traduttori ...
Quindi decidere, pensi davvero che gettext non è così buona soluzione?
Non credo. Non hai lavorato con altre soluzioni, quindi cerca di capire come funziona al primo posto.
Che cosa è esattamente di gettext si fa a trovare ingombrante? –
È difficile puntare a qualcosa di specifico, ma è qualcosa a che fare con il flusso di lavoro di esso che si sente inefficiente. –
Non penso che avresti trovato cose migliori. Ha una gamma molto ampia di strumenti con cui lavorare per la traduzione e l'estrazione di messaggi e così via. È il più popolare e probabilmente hai solo bisogno di impararlo bene. – Artyom