pospell copies the translations from the pofile to a temporary file (called the spellfile) and then calls
program with its arguments. program is supposed to somehow change the spellfile. It is typically a
spell checker. Afterwards the possibly changed translations in spellfile is copied back into the pofile.
If pofile is specified as - then pospell will act as a filter, i.e. standard input and standard output
will be used.
%f in the arguments will be expanded to the name of the spellfile, or - if the -f option is used. Use %%
for a real % character.
All comment lines in the pofile are replaced with lines with "#" as the only character in the spellfile.
The msgid strings with original text in the pofile are replaced with lines with ">" and "]" as the only
characters in the spellfile. The msgstr strings with file headers (i.e. strings without corresponding
msgid strings) are replaced with lines with ")" and "]" as the only characters in the spellfile. Don't
change or remove these lines from the spellfile - they are used when the spellfile and the pofile are
merged together after running the program.
The normal msgstr strings are copied to the spellfile with some changes: 1) The word msgstr and
everything else before the string is replaced by a "+" character. 2) Strings with C escape sequences
followed by a letter like "one\ttwo" are split to parts like "one\t" "two". 3) Leading whitespace in
continuation lines is removed. The changes of kind 1) and 2) are undone when the spellfile is copied
back into the pofile, but removed whitespace will not be restored.