Глава 7. Файловые фильтры
Пред. |  | След.

# Глава 7. Файловые фильтры

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

- Прочитать документ в каком-либо формате. Например, текстовые файлы.

- Выделить из файла текст, который нужно переводить.

- Автоматизировать изменение имён файлов переведённых документов посредством замены содержимого, подлежащего переводу, собственно переводом.

Чтобы посмотреть, какие форматы файлов поддерживаются ОмегаТ, выберите пункт меню Параметры > Файловые фильтры...

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

В диалоговом окне Проект → Свойства... можно включить использование в проекте специальных файловых фильтров. Нажмите кнопку «Файловые фильтры» и установите флажок «Использовать настройки файловых фильтров только в этом проекте». Теперь все настройки файловых фильтров будут храниться вместе с проектом. Если позднее вы внесёте изменения в настройки, то будут обновлены только фильтры данного проекта, настройки файловых фильтров пользователя останутся неизменными.

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

## 1. Диалоговое окно «Файловые фильтры»

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

## 2. Параметры фильтров

У некоторых фильтров (текстовые файлы, файлы XHTML, файлы HTML и XHTML, файлы OpenDocument и файлы Microsoft Open XML) есть свои настройки. Чтобы изменить их, выберите фильтр из списка и нажмите кнопку Параметры. Доступны следующие настройки:

Текстовые файлы

- Сегментировать текст на абзацы по разрывам строк, пустым строкам или никогда:

  если включена сегментация по предложениям, то далее текст будет сегментироваться согласно этим настройкам.

Файлы PO

- Разрешить пустые переводы в переведённых файлах:

  При установленном флажке, если сегмент (который может оказаться целым абзацем) в файле PO не переведён, в конечном файле перевод этого сегмента будет пуст. Технически, в полученном PO-файле у соответствующего сегмента будет пуст атрибут `msgstr`. Это стандартное поведение для PO-файлов, поэтому по умолчанию флажок установлен. Если эта настройка отключена, в поле перевода будет скопирован исходный сегмент.

- Пропускать заголовок PO-файла

  Если флажок установлен, заголовок PO-файла будет пропущен без изменений.

- Автоматически заменять «nplurals=INTEGER; &plural=EXPRESSION;» в заголовке

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

XHTML-файлы

- Добавлять или изменять объявление кодировки в HTML- и XHTML-файлах: часто, кодировка переведённых файлов должна отличаться от кодировки исходных файлов (если это специально указано или подразумевается). С помощью этого параметра можно указать, следует ли включать в переведённые файлы объявление кодировки. Например, если в параметрах файлового фильтра для переведённых файлов указана кодировка UTF-8, а данный переключатель установлен в положение «Всегда», в переведённых файлах эта кодировка будет специально объявлена.

- Переводить следующие атрибуты: выбранные атрибуты будут показаны как сегменты в области редактирования.

- Начинать новый абзац по: <br> тег HTML будет использоваться для определения начала нового сегмента.

- Пропускать текст, соответствующий регулярному выражению: текст, соответствующий регулярному выражению, будет пропущен фильтром. При проверке тегов этот текст будет выделяться красным цветом. Часть исходного сегмента, соответствующая регулярному выражению, выделяется курсивом.

- Не переводить атрибут содержимого у мета-тегов...: следующие мета-теги не будут переводиться.

- Не переводить содержимое тегов со следующими парами «ключ-значение» (разделённых запятыми): если пара «ключ-значение» находится в списке, содержимое тегов переводиться не будет.

  Иногда полезно пометить некоторые теги как непереводимые, основываясь на значениях атрибутов. Например, `<div class="hide"> <span translate="no">` Вы можете определить пары «ключ-значение» для тегов, которые не будут переводиться. Для приведённого выше примера в поле списка надо выписать: `class=hide, translate=no`

Файлы Microsoft Office Open XML

Вы можете выбрать, переводить или нет следующие элементы. Они будут отображаться как отдельные сегменты.

- Word: скрытый текст, комментарии, сноски, концевые сноски, колонтитулы

- Excel: комментарии, названия листов

- Power Point: комментарии, образцы слайдов, макеты слайдов

- Global: графики, диаграммы, рисунки, объекты WordArt

- Другие параметры:

  - Объединять теги: если флажок установлен, теги, между которыми нет переводимого текста, будут объединяться в один тег.

  - Сохранять пробелы для всех тегов: если флажок установлен, «пробельные символы» (т. е., пробелы и переводы строк) будут сохранены, даже если технически они в документе не установлены.

HTML- и XHTML-файлы

- Добавлять или изменять объявление кодировки в HTML- и XHTML-файлах:: всегда (по умолчанию), только если (X)HTML-файле есть заголовок, только если в (X)HTML-файл есть объявление кодировки, никогда

- Переводить следующие атрибуты: выбранные атрибуты будут показаны как сегменты в области редактирования.

- Начинать новый абзац по: тег HTML <br> будет использоваться для определения начала нового сегмента.

- Пропускать текст, соответствующий регулярному выражению: текст, соответствующий этому регулярному выражению, будет пропущен фильтром.

- Не переводить атрибут содержимого у мета-тегов...: следующие мета-теги не будут переводиться.

- Не переводить содержимое тегов со следующими парами «ключ-значение» (разделённых запятыми): если пара «ключ-значение» находится в списке, содержимое тегов переводиться не будет.

Текстовые файлы

- Сегментировать текст на абзацы по разрывам строк, пустым строкам или никогда:

  если включена сегментация по предложениям, то далее текст будет сегментироваться согласно этим настройкам.

Файлы Open Document Format (ODF)

- Вы можете выбрать, переводить или нет следующие элементы:

  индексы, закладки, ссылки на закладки, примечания, комментарии, примечания к презентациям, ссылки (URL), названия листов

## 3. Диалоговое окно «Редактирование фильтра»

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

### 3.1. Тип исходного файла, шаблон имени файла

Когда ОмегаТ обнаруживает файл в папке исходными документами, она пытается выбрать фильтр исходя из его расширения. Точнее, ОмегаТ сопоставляет шаблоны имён файлов из фильтра с именем нового файла. Например, шаблону `*.xhtml` соответствуют любые файлы с расширением `.xhtml`. Если подходящий фильтр найден, файл передаётся ему для обработки. Так, по умолчанию для обработки файлов с расширением .xhtml будет использован фильтр XHTML. Вы можете изменять и добавлять шаблоны имён файлов, которые будет обрабатывать тот или иной фильтр. Шаблоны имён исходных файлов используют те же символы шаблонов, что и окно Поиск. Символ «*» соответствует любому количеству символов (включая ноль). Символ «?» соответствует ровно одному символу. Все остальные символы соответствуют сами себе. Например, если вы хотите, чтобы текстовый фильтр обрабатывал файлы readme (`readme, read.me`, и `readme.txt`), вам нужно использовать шаблон `read*`.

### 3.2. Кодировки исходного и переведённого файлов

Лишь в немногих форматах файлов явно прописывается кодировка. Для форматов, в которых это не делается, будет использоваться кодировка, установленная для файлов с этим расширением. Например, по умолчанию файлы с расширением `.txt` будут загружены в стандартной кодировке вашей операционной системы. Вы можете изменить кодировку для любого шаблона имени исходного файла. Кроме того, такие файлы могут быть сохранены в любой кодировке. По умолчанию кодировка переведённого файла остаётся той же, что и у исходного. Поля выбора кодировки оригинала и перевода содержат меню со списком всех поддерживаемых кодировок. <auto> оставляет выбор кодировки за ОмегаТ. Вот как это работает:

- Если в файле присутствует прямое указание кодировки (HTML-файлы, XML-файлы), ОмегаТ использует её.

- Для некоторых форматов ОмегаТ настроена на использование заранее заданных кодировок (например, для файлов Java properties и т. д.).

- Для текстовых файлов ОмегаТ использует кодировку операционной системы по умолчанию.

### 3.3. Имя переведённого файла

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

- По умолчанию установлен шаблон `${filename}` — полное имя исходного файла с расширением, то есть имя переведённого файла совпадает с именем исходного файла.

- `${nameOnly}` — позволяет вставить только имя исходного файла без расширения.

- `${extension}` — расширение исходного файла.

- `${targetLocale}` — код локали перевода (в формате «xx_YY»).

- `${targetLanguage}` — коды языка перевода и страны вместе (в форме «XX-YY»).

- `${targetLanguageCode}` — код языка перевода («XX»).

- `${targetCountryCode}` — код страны («YY»).

- `${timestamp-????}` — различные шаблоны представления системного времени на момент создания переведённых файлов.

  Примеры шаблонов «SimpleDateFormat» можно найти в документации Oracle.

- `${system-os-name}` — установленная на компьютере переводчика операционная система

- `${system-user-name}` — имя пользователя в операционной системе

- `${system-host-name}` — название машины (hostname)

- `${file-source-encoding}` — кодировка исходного файла

- `${file-target-encoding}` — кодировка переведённого файла

- `${targetLocaleLCID}` — локаль переведённого файла Microsoft

Для шаблонов ${nameOnly} и ${Extension} доступны различные варианты. Если имя файла состоит из нескольких разделённых точками элементов, можно использовать шаблоны вида `${name only`-порядковый номер расширения} and `${extension`-порядковый номер расширения} . Например, если исходный документ назывался «Document.xx.docx», с помощью шаблонов можно получить следующие результаты:

- `${nameOnly-0}` Document

- `${nameOnly-1}` Document.xx

- `${nameOnly-2}` Document.xx.docx

- `${extension-0}` docx

- `${extension-1}` xx.docx

- `${extension-2}` Document.xx.docx

Пред. |  | След.
Глава 6. Свойства проекта | Начало | Глава 8. Файлы и каталоги ОмегаТ