copy wombat text domain to other SET @domain="wombat"; CREATE TABLE nlstmp LIKE wbnlsmsg; INSERT INTO nlstmp SELECT * FROM palas.wbnlsmsg WHERE domain="@domain"; SELECT w.mid FROM wbnlsmsg w JOIN nlstmp USING (md5); Add language RENAME TABLE wbnlsmsg wbnlsmsgorg; DROP TABLE wbnlsmsg; CREATE TABLE wbnlsmsg LIKE palas.wbnlsmsg; INSERT INTO wbnlsmsg SELECT * FROM palas.wbnlsmsg WHERE domain="wombat"; ALTER TABLE wbnlsmsg ADD COLUMN `trans_pt_PT` text DEFAULT NULL, ADD COLUMN `changed_pt_PT` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', ADD COLUMN `min_pt_PT` int(11) DEFAULT 0; UPDATE wbnlsmsg SET `trans_en_GB`= msg, changed_en_GB=changed, min_en_GB=42 WHERE domain="wombat" AND trans_en_GB IS NULL; UPDATE wbnlsmsg SET `trans_en_GB`= msg, changed_en_GB=addtime(changed, 1), min_en_GB=0 WHERE domain="wombat" AND min_en_GB=42; Translate Wombat and derived projects ===================================== 1) Setup Environment ==================== 1.1) locale-gen Generate calendar setting and stuff for used locales. $ sudo vim /etc/locale.gen de_DE.UTF-8 UTF-8 $ sudo locale-gen Don't forget the proper charset in /etc/locale.gen! 1.2) Message folders For each language create folder LC_MESSAGES: var/lang/de/LC_MESSAGES 2) patForms =========== Craeate MO file and copy to right location $ msgfmt -c -v inlcude/patForms/data/gettext/patForms/de.po -o var/lang/de/LC_MESSAGES/patForms.mo 3) Wombat ========= 3.1) PHP files Extract messages from PHP files $ find include -name \*.php | xgettext -f - -o resource/gettext/wombat.pot 3.2) XML Config Files 3.3) Wombat patTemplate Templates 4) The POT-file has changed and a merge with existing PO files is required. =========================================================================== To merge POT files with PO files, use "msgmerge" $ msgmerge -U resource/gettext/wombat/de.po resource/gettext/wombat.pot 5) Make binary files ==================== To translate portable objects to machine objects use msgfmt $ msgfmt -c -v resource/gettext/wombat/de.po -o var/lang/de/LC_MESSAGES/wombat.mo 6) How can I add another language ================================= If you want to add another language - lets say Greek. Just copy the the POT to gr.po and start translating it! $ cp resource/gettext/wombat.pot resource/gettext/wombat/gr.po $ vim resource/gettext/wombat/gr.po 9) Are there some tools to edit PO files? ========================================= As said, PO files are just text files. Therefore you can always use your favourite text-editor such as VIM. Still there are some tools that make it a lot easier PO-Edit for windows KBabel for Linux