polib
A Rust library to read, manipulate and write GNU gettext translation data in .po format.
Basic Concepts
A Message represents a translation of a text entry from the source language to a target language.
A Catalog holds a collection of Messages, and is stored in a .po file.
Example
Iterate over messages in a .po file
use po_file;
use Error;
use Path;
Remove untranslated or fuzzy entries and save to another .po file
let mut catalog = parse?;
let mut filtered: usize = 0;
for mut message in catalog.messages_mut
write?;
println!;
Fill in missing translations from some other translation service
let mut catalog = parse?;
for mut message in catalog.messages_mut
write?;
Compile a .po file to .mo format
compile_from_po?;
Documentation
Refer to docs.rs.