There are several packages to assist you with practical GUI translation. They automatically search fuzzy or untranslated strings, present you with possible or comparable translations for a given string, and perform syntax, spell and other checks to ensure that the files will work correctly. At the moment, Lokalize is the only one that can really be recommended. You can also use Kate, Emacs, Vim, or VirTaal.
Developed by Nick Shaforostoff. The recommended package for GUI translation for the time being.
As of version 2.0 its contents and capabilities can be described as follows:
User friendly, easy to understand and widely configurable user interface.
Every part of Lokalize comes with extensive context ("What's this") help that make every function easy to understand and to handle.
Capability to open multiple files (on multiple tabs) as well as Translation Memory and Project Overview
Full editing functionality, accessible through the graphic user interface as well as through user definable keyboard shortcuts
Powerful spell checking functionality
Capability to show diffs to older messages
Full navigation capabilities (such as go to next fuzzy or untranslated string)
Simple access to powerful Translation Memory through F7
Unlimited undo capability
Automatic file header updates
Automatic change of "fuzzy" status of translated messages
Support for easy insertion of tags and URLs through Ctrl+T
A "rough translation" function to initialize untranslated messages with suggestion from a Translation Memory
Automatic syntax check with msgfmt when saving
Full Drag & Drop - support
Configurable fonts for message editor
Quick overview over context in the po file
Showing source code by references in message comments
File manager view for directories of the l10n module (or similarly structured) directories), showing the present status of all PO files: if they are in need of a revision or not, how many fuzzies and untranslated strings are included etc. This view is always automatically updated and reflects all changes done to the files, including changes by programs other than Lokalize.
Easy file open mechanisms for editing in Lokalize: double click, keyboard or context menu
Powerful navigation using PO file statistics
Automatic comparisons and statistics of POT and PO files for a quick overview which and how many files are translated (or not) and which files may be obsolete
Both the Lokalize Editor and the embedded Project Overview come with extensive "What's this" help that makes every function easy to understand and use. You can get the package from the kdesdk module of KDE
For ways to set this PO mode up with GNU Emacs, see the comments in the file po-mode.el that comes with the GNU gettext package. It also works with XEmacs if you set it up like this:
po-mode.el(not the compiled .elc file) from the gettext package to a directory that's visible to XEmacs (e.g. /usr/X11R6/lib/xemacs/site-lisp/);
make the following entry at the beginning of the
.emacsor, depending on your distribution,
.xemacs-optionsfile in your home directory:
(autoload 'po-mode "po-mode")
and make the following new entry to Options -> Customize -> Variable -> auto-mode-alist:
"\\.po[tx]?\\'\\|\\.po\\."(with the quotes) in the upper line and
po-modein the lower line (without any quotes).
The functionality is about as follows:
All important navigation features (go to next fuzzy, untranslated etc.)
Automatic insertion of (some) header data
Validation (checking if everything is formatted okay)
Lots of useful shortcuts for navigation, removing fuzzies etc.
Searching auxiliary-files for translations of a given string into other languages
Looking up strings in the sources
As always with Emacs, it takes some time to get used to it. (For instance, the buffer with the original text is kind of read-only and you have always to open a new buffer where you can work on your translation.) But for people who are used to Emacs or are willing to learn its ways, this mode can be a big help. Another factor might be that Emacs is apparently still one of the best ways to edit DocBook SGML which is also the format of KDE documentation. A very good introduction to working with Emacs in general and working with the SGML module in particular can be found as an Acrobat PDF file at www.snee.com/bob/sgmlfree/index.html
(Most info in the Emacs section thanks to Matthias Kiefer.)