[devel] PO2POT
Максим Иванов
=?iso-8859-1?q?ivanov_=CE=C1_cg=2Eru?=
Ср Дек 12 11:17:09 MSK 2007
В сообщении от Wednesday 12 December 2007 08:40:51 Андрей Черепанов
написал(а):
> 11 декабря 2007 Michael Shigorin написал:
> > On Tue, Dec 11, 2007 at 05:00:17PM +0300, Максим Иванов wrote:
> > > Существует ли какой более-менее просто способ отконвертить .po
> > > файлы обратно в .pot?
> >
> > msgunfmt
>
> Мища, не путай. Эта команда скомпиленные файлы .mo конвертит в исходные
> .po. Проблема очистки переводов нетривиальна и готовых скриптов нет даже у
> меня.
Получилось собрать нечто:
==================
#!/usr/bin/python
import sys
from translate.storage import po
from translate.convert import convert
def convertpo(inputpofile, outputpotfile, template):
"""reads in inputpofile, removes the header, writes to outputpotfile."""
inputpo = po.pofile(inputpofile)
header = inputpo.header()
if header:
inputpo.units = inputpo.units[1:]
for i, unit in enumerate(inputpo.units):
unit.othercomments = []
unit.markfuzzy(False)
unit.target = ""
if unit.isobsolete():
del inputpo.units[i]
outputpotfile.write(str(inputpo))
return 1
def main(argv=None):
from translate.convert import convert
formats = {"po": ("pot", convertpo)}
parser = convert.ConvertOptionParser(formats, description=__doc__)
parser.run(argv)
if __name__ == '__main__':
main(sys.argv)
=======================
конвертит один файл из .po в .pot, иногда в .pot файле строки идут с
префиксом "#~", причину этого явления еще не выявил.
Подробная информация о списке рассылки Devel