QHP Converter, Небольшая программа для преобразования qhp-файлов в ini |
Здравствуйте, гость ( Вход | Регистрация )
QHP Converter, Небольшая программа для преобразования qhp-файлов в ini |
iReset |
25.12.2012, 14:12
Сообщение
#1
|
Участник Группа: Участник Сообщений: 178 Регистрация: 6.6.2012 Пользователь №: 3414 Спасибо сказали: 23 раз(а) Репутация: 2 |
Написал небольшую программку, которая позволит нам переводить qhp-файлы в OmegaT.
Написана без использования XML-парсеров, чисто на регулярных выражениях. Общая суть простая - преобразует qhp-файл в ini-файл, который понимает OmegaT. Далее мы этот файл можем перевести и, снова используя qhpconverter, преобразовать в обратно в qhp-файл. Описание из readme-файла QHP Converter Консольная программа для преобразования qhp-файлов. Не имеет параметров командной строки. При получении через командную строку файлов с расширением qhp преобразовывает их в файлы формата ini, которые понимает OmegaT. ВНИМАНИЕ: программа перезаписывает существующие файлы без запросов. Правила преобразования: 1. Содержимое элемента namespace преобразуется в строку с ключом namespace. Например, строка <namespace>com.trolltech.qt.474</namespace> будет преобразована в # <namespace> namespace=ru.trolltech.qt.474 #</namespace> 2. Теги name и title элементов преобразуются в строки, у которых ключи имеют соответствующее название. Например, строки <section ref="index.html" title="Qt Reference Documentation"> <section ref="qwidget.html" title="QWidget Class Reference"> будут преобразованы в # <section ref="index.html" title=Qt Reference Documentation #> # <section ref="qwidget.html" title=QWidget Class Reference #> При этом у параметров убираются кавычки, а коды "<", ">", "&", """ заменяются на символы "<", ">", """, "&". 3. Все остальные строки комментируются символом "#". В полученном ini-файле можно переводить незакомментированные строки. Программа OmegaT понимает этот формат. Переведённый ini-файл необходимо передать через командную строку программе qhpconverter. Она преобразует его в qhp-файл, сохранив все оформление исходного файла. При преобразовании из ini в qhp-файл в начало секции <filterSection> добавляется элемент <filterAttribute>ru</filterAttribute> Формат файла ini выбран вместо txt потому, что: 1. хотелось сохранить ненужную для перевода информацию в оригинальном виде - это позволяют делать комментарии; 2. в формате txt могут возникать проблемы, связанные с распознаванием абзацев. Сборка -------- При разработке использовались следующие программные продукты: - MinGW 4.6.2 - Qt library 4.6.3 - Qt Creator 2.5.0 Думаю, она поможет нам в переводе qhp-файлов. Есть одна тонкость, по которой мне нужна консультация. Сейчас я сделал так, что в сегменты для перевода попадают как названия разделов, так и ключевые слова. В уже переведённых qhp-файлах я не увидел перевода ключевых слов. Это сделано намеренно? Исходники и бинарники доступны тут. Сообщение отредактировал iReset - 25.12.2012, 14:16 |
|
|
Текстовая версия | Сейчас: 29.11.2024, 0:23 |