# Работа с форматированным текстом

Переведённые файлы Форматированный текст
Исходные файлы Форматированный текст

Обычно в переведённом файле требуется сохранить форматирование оригинала. Информация о форматировании в поддерживаемых файлах (на момент написания это DocBook, HTML, XHTML, Open Document Format (ODF) и Office Open XML (MS Office 2007 и более новые версии)) представлена в ОмегаТ тегами. Как правило, при оценке степени схожести текстов, теги игнорируются. Теги, которые воспроизведены в переведённом сегменте, будут перенесены в переведённый документ.

## Теги форматирования

Теги

Названия тегов:

Теги Названия

Названия тегов состоят из одной, двух или трёх букв и цифры. Уникальный номер позволяет, с одной стороны, группировать схожие теги, а с другой, различать те из них, которые названы одинаковыми буквами, но на самом деле представляют собой разные сущности. Буквы, используемые при наименовании тега, по возможности отражают форматирование, которое представляет данный тег (например, «b» обозначает «bold», полужирный шрифт, а «i» обозначает «italic», курсив).

Нумерация тегов

Теги Нумерация

Теги нумеруются в порядке возрастания, по группам. Под «группой тегов» в данном контексте понимаются один или два связанных по смыслу тега (например, <i0> и </i0>). Внутри сегмента первая группа (пара или одиночный тег) получает номер 0, вторая — номер 1 и так далее. В первом примере ниже есть три группы тегов (пара, одиночный тег, затем снова пара тегов), во втором примере только одна группа (пара).

Парные и одиночные теги:

Теги Парные и одиночные теги

Теги могут быть либо одиночными, либо парными. Одиночные теги используются для представления форматирования, которое не затрагивает окружающий текст (например, дополнительный пробел или разрыв строки).

`<b0><CTRL+N></b0>, <br1><b2><ВВОД></b2><сегмент 2132>`

<br1> — это одиночный тег, он не имеет отношения к окружающему его тексту. Парные теги обычно представляют форматирование текста, расположенного между открывающим и закрывающим тегом пары. <b0> и </b0> ниже являются парными и относятся к тексту «log.txt». Обратите внимание, открывающий тег всегда должен находиться перед закрывающим:

<`Файл журнала (<b0>log.txt</b0>) для отслеживания действий пользователя и ошибок.<сегмент 3167>`

В ОмегаТ теги внедряются в текст до того, как проводится сегментация. В зависимости от правил сегментации иногда может возникать ситуация, когда парный тег разбивается и попадает в два соседних сегмента. В окне проверки тегов такие сегменты будут помечаться как содержащие ошибки.

## Операции с тегами

Теги Операции

С тегами нужно обращаться осторожно. Если их случайно изменить, форматирование конечного файла может быть нарушено. Самым надёжным решением будет всегда сохранять в переводе исходные теги в исходном порядке. Однако, при соблюдении некоторых условий, от этого правила можно иногда отступать.

Повторение тегов

Теги Повторение

Чтобы повторить группу тегов, просто скопируйте их в желаемое место в тексте. Помните, что открывающий тег всегда должен находиться перед закрывающим. Форматирование, представленное группой, которую вы продублировали, будет применено к тому месту, куда было произведено копирование.

Пример:

`<b0>Это форматирование</b0> будет применено здесь<сегмент 0001>`

После копирования:

`<b0>Это форматирование</b0> было применено <b0>здесь</b0>.<сегмент 0001>`

Удаление групп тегов

Теги Удаление групп

Чтобы убрать группу тегов, просто удалите её из сегмента. Помните, что нужно удалить как открывающие, так и закрывающие теги и убедиться, что все следы форматирования действительно стёрты. В противном случае созданный файл будет повреждён. Удаляя группу тегов, вы удаляете соответствующее форматирование из переведённого файла.

Пример:

`<b0>Это форматирование</b0> будет удалено.<сегмент 0001>`

После удаления:

`Это форматирование было удалено.<сегмент 0001>`

## Вложенные группы тегов

Теги Вложенные группы

Изменение групп тегов может привести к тому, что одна группа будет вложена в другую. Это нормально, пока внешняя группа полностью окружает вложенную. Другими словами, при перемещении парных тегов, всегда следите за тем, что и открывающий, и закрывающий теги оба находятся внутри (или оба находятся снаружи) другой группы тегов. В ином случае переведённый файл может быть повреждён и перестанет открываться.

Пример:

`<b0>Форматирование</b0> <b1>один</b1> будет скопировано внутрь форматирования ноль.<сегмент 0001>`

После перемещения тегов:

`<b0>Форматирование <b1>один</b1></b0> было скопировано внутрь форматирования ноль.<сегмент 0001>`

## Перекрывающиеся группы тегов

Теги Перекрывающиеся группы

Перекрывание является результатом некорректного обращения с парами тегов и всегда приводит к порче форматирования, а иногда и к тому, что переведённый файл перестаёт открываться вообще.

Пример:

`<b0>Форматирование</b0> <b1>один</b1> будет испорчено.<сегмент 0001>`

В результате некорректного обращения с тегами:

`<b0>Форматирование <b1>один</b0> </b1>теперь сильно испорчено.<segment 0001>`

## Параметры проверки тегов

Проверку тегов можно настроить в специальном диалоговом окне «Параметры > Проверка тегов...»:

Описанные ниже настройки применяются не только к файлам с форматированным текстом, но ко всем исходным файлам вообще.

- Переменные printf - не проверять, проверять простые, проверять все

  ОмегаТ может проверять, чтобы программные переменные из исходного сегмента (такие как %s, например) присутствовали и в переводе. Вы можете решить отказаться от подобной проверки, выбрать проверку только простых переменных printf (таких как %s %d и т. д.) или проверку всех переменных printf.

- Проверять простые шаблоны Java MessageFormat

  Если флажок установлен, ОмегаТ будет проверять корректность работы с простыми тегами Java MessageFormat (такими как {0}).

- Регулярные выражения для нестандартных тегов

  Если ввести в это поле некое регулярное выражение, ОмегаТ будет рассматривать соответствующие этому шаблону подстроки как пользовательские теги. Как и в случае с обычными тегами ОмегаТ, для пользовательских тегов будет производиться проверка, присутствуют ли они в переводе в должном порядке и количестве.

- Регулярное выражение для удаления фрагментов из перевода

  В это поле можно ввести регулярное выражение для поиска фрагментов текста, которые следует удалить из перевода. Любые совпадения в переведённых сегментах будут отмечены красным и их можно будет легко найти и исправить. При поиске нечётких совпадений это регулярное выражение игнорируется. Если удаляемая часть не совпадает с каким-либо другим сегментом, процент совпадения уменьшается на 5, так, чтобы совпадение не показывалось как точное.

## Проверка групп тегов

Теги Проверка групп

Функция проверки тегов определяет сегменты, в которых теги оригинала и перевода не совпадают и показывает их. При нажатии сочетания клавиш CTRL+T откроется окно с сегментами, при переводе которых теги возможно были расставлены неправильно. С помощью этого окна можно легко исправить теги и создать переведённые документы с правильным форматированием. Открывающееся при нажатии CTRL+T окно содержит таблицу из трёх столбцов, в которой для каждого сегмента с ошибками в тегах содержатся ссылка на него, а также текст оригинала и перевода.

Сочетания клавиш Проверка тегов - CTRL+T

Пример записи из окна проверки тегов

Теги выделены жирным шрифтом и синим цветом, чтобы можно было легко сравнить содержимое оригинала и перевода. Щелкните по ссылке, чтобы перейти к соответствующему сегменту в области редактирования. При необходимости исправьте ошибку (в примере выше надо добавить парный тег <i2></i2>) и нажмите CTRL+T, чтобы вернуться к окну проверки тегов для исправления других ошибок. Ошибками тегов считаются любые случаи, когда в переводе сегмента не воспроизводится точный порядок и число тегов оригинала. Некоторые изменения тегов необходимы и с ними приходится мириться, другие вызовут проблемы после создания переведённого документа.

## Советы по управлению тегами

Теги Советы

Упростите исходный текст

Обычно теги несут какую-то информацию о форматировании исходного текста. Упрощение форматирования исходного текста сильно уменьшает количество тегов. Если это возможно, постарайтесь унифицировать используемые шрифты, размеры, цвета и т. п., так как это упрощает перевод и уменьшает количество возможных ошибок, связанных с тегами. Прочитайте раздел «Операции с тегами», чтобы получить представление о том, что с ними можно делать. Имейте в виду, что если теги вас раздражают, а форматирование не очень важно для текущего перевода, то удаление тегов может стать решением проблемы.

Уделяйте особое внимание парным тегам

Если вы хотите видеть теги в ОмегаТ, но вам не нужно сохранять большую часть форматирования в переведённом документе, вы можете просто не добавлять теги в перевод. В этом случае обратите особое внимание на пары тегов, поскольку если вы удалите одну из частей пары, но забудете удалить другую, то гарантированно испортите форматирование переведённого документа. Поскольку теги являются частью текста, уменьшить их количество можно за счёт соответствующих настроек правил сегментации. Для правильной работы с этой функцией необходим некоторый опыт.

В настоящее время ОмегаТ не умеет полностью автоматически определять ошибки в форматировании, поэтому не отличает ошибок от изменений, сделанных в рамках адаптации оформления под язык перевода. Однако иногда в переведённом файле может быть нарушено форматирование, а в некоторых случаях он может вообще перестать открываться.