М. Корьевкина, М. Суханова, 2012
Если организация выпускает продукт, который продает или планирует продавать на международном рынке, такой продукт, как правило, нужно локализовать для стран предполагаемого экспорта; в частности, требуется перевести на языки этих стран относящуюся к продукту документацию. (Будем исходить из того, что вся документация сначала пишется на языке оригинала и затем переводится на язык перевода, хотя бывают и более сложные случаи). Поскольку необходимость в локализации появляется достаточно часто, разработчики многих профессиональных инструментов подготовки документации (Help Authoring Tools — HAT) предусмотрели в своих системах механизмы для поддержки процессов перевода и синхронизации взаимосвязанных разноязычных версий комплекта документов. В этой статье мы рассмотрим такие механизмы в HAT-системах MadCap, HelpServer и AuthorIT.
В процессе перевода задействованы пользователи со следующими ролями (для некоторых из них возможно совмещение):
Группа переводчиков, такая как внешнее бюро переводов или отдел переводов внутри организации, выступает здесь как один переводчик: координатор передает материалы на перевод руководителю группы и от него же получает переведенные документы, распределение задач между участниками координатора не касается.
В системах HAT документация оформляется в виде проектов, в качестве основной единицы структурирования которых выступают тематические блоки — топики. Переводы документации в зависимости от конкретной системы могут быть организованы и как отдельные проекты, и как части единого многоязычного проекта. Так, в MadCap и AuthorIT для каждого языка создается отдельный проект, в HelpServer все локализованные версии хранятся в одном проекте, Adobe RoboHelp допускает оба варианта, хотя разработчики рекомендуют использовать единый проект.
Рисунок 1. Многоязычный проект в Adobe RoboHelp
Сам перевод выполняется либо прямо в интерфейсе HAT, либо в некоторой внешней системе — в частности, это может быть профессиональная система автоматизированного перевода (Computer-Assisted Translation, CAT). В первом случае переводчик работает непосредственно с топиками, нужным образом сохраняя готовые переводы. Во втором случае необходим экспорт материалов на перевод и затем импорт готовых переводов с соответствующим преобразованием формата. Последовательность шагов при этом выглядит приблизительно следующим образом:
Автоматизированный перевод — весьма широкое понятие, оно охватывает практически все компьютерные инструменты, так или иначе помогающие работе человека-переводчика. С точки зрения перевода комплектов документации, создаваемых в профессиональных HAT-системах, наиболее интересны программы для работы с памятью переводов (Translation Memory Tools, TMT). Память переводов (TM) — это специализированная база данных (формат зависит от конкретной системы) для хранения переводных соответствий в виде коротких двуязычных сегментов текста. В TMT поддерживается нечеткий поиск, позволяющий находить в базе примеры, сходные с сегментами текущего текста. Это помогает переводчикам, во-первых, избегать двойной и тройной работы, связанной с повторным переводом совпадающих или почти совпадающих фрагментов текста, а во-вторых, следить за единством терминологии и стиля, что особенно важно при групповой работе над документацией большого объема.
Другие полезные возможности CAT-систем включают:
На российском рынке переводческих услуг существует определенное предубеждение против автоматизированного перевода, связанное с тем, что CAT смешивают с машинным переводом (Machine Translation, MT), который известен крайне низким качеством. Но на Западе CAT-системы широко распространены, и заказчики, особенно крупные разработчики, которые выпускают и поддерживают большие объемы документации, нередко настаивают на их использовании.
Многоязычный комплект документации нуждается в постоянной синхронизации. Если в оригинальную документацию вносятся изменения — неважно, происходит ли это в связи с развитием продукта или по внутренним причинам (исправление ошибок, устранение неполноты и т.д.), — аналогичные изменения должны быть внесены и во все ее переводы.
На перевод передаются только новые или измененные топики, но чтобы выдержать терминологическое и стилевое единство, переводчику желательно иметь доступ ко всей документации. При внутреннем переводе, а также при внешнем переводе, выполняемом постоянным партнером, это условие соблюдено автоматически, а новому переводчику можно передать для сведения полную документацию. Если переводчик пользуется CAT-системой, ему будет полезна память переводов, относящаяся к данному проекту; при смене переводчика база TM может быть передана от старого исполнителя новому, даже когда они работают с разными CAT. Хотя внутренний формат базы TM в каждой системе свой, существует также ряд стандартов для обмена такими базами, в частности, основанные на XML форматы TMX (Translation Memory eXchange) и XLIFF (XML Localisation Interchange File Format).
В линейке продуктов MadCap имеется собственная CAT-система MadCap Lingo. Подготовка документации ведется в программе MadCap Flare, а для перевода документация передается в CAT-систему, в роли которой может, вообще говоря, выступать не только Lingo, но и любой другой инструмент, удобный переводчику. В свою очередь, Lingo позволяет переводить не только документацию, созданную в MadCap Flare, но и документы многих других типов. Программа поддерживает форматы HTML, XML, обычный текст (TXT) и XLIFF (обмен памятью переводов), Adobe FrameMaker (FM, MIF, BOOK), Microsoft PowerPoint (PPT, PPTX), Microsoft Word (DOC, DOCX, RTF), DITA (DITA, DITAMAP).
Материал для перевода представляет собой набор файлов с топиками (а также некоторых дополнительных файлов); для отправки проекта по электронной почте предусмотрена встроенная функция Zip and Email. Переводчик, работающий в Lingo, получив материал, создает у себя новый проект и загружает данные в него. При загрузке всем топикам автоматически присваивается статус Untranslated — «не переведено».
Система Lingo автоматически разбивает каждый топик на короткие сегменты, каждый из которых также получает статус Untranslated, и представляет текст в виде таблицы из четырех столбцов: номер сегмента — оригинальный текст — перевод (в начале работы текст в этом столбце дублирует оригинал) — статус. Переводчик последовательно заменяет тексты в столбце перевода и устанавливает для переведенных строк статус Accepted — «принято», а когда переведены все строки, топик автоматически получает статус Completed — «готово», что отражается в списке топиков. Таким образом, переводчик всегда видит, сколько топиков готово и сколько осталось, а в каждом топике – какая часть переведена и какую еще предстоит перевести.
Рисунок 2. Основное окно MadCap Lingo: список топиков и открытый топик в процессе перевода
Если в оригинал вносятся изменения и их необходимо отразить в переводе, координатор отправляет переводчику обновленную копию всего проекта, включая топики, которые не были изменены. Переводчик открывает имеющийся у него проект и выбирает операцию обновления, после чего Lingo загружает полученные данные, автоматически сравнивая их с предыдущей версией. Измененные топики получают статус Different — «отличается», несовпадающие сегменты в каждом топике — статус Untranslated. Также отмечаются новые и удаленные топики. Дальнейшая работа происходит так же, как и при первичном переводе.
У переводчика есть возможность подключать и использовать в процессе работы словари и память переводов, в том числе для перевода с русского и на русский. Однако полной поддержки русского языка в системе нет — например, проверка правописания для него не работает.
Работая в Lingo, переводчик может самостоятельно собрать комплект документации для рецензирования, переслать его рецензенту, получить замечания и внести правку. Это удобнее, чем проводить процедуру через координатора, как было описано выше.
В программе HelpServer все проекты по умолчанию многоязычны, причем перечень языков, на которых подготавливается документация, настраивается и может быть изменен в любой момент времени. Для каждого топика указывается его язык, дополнительные файлы (например, рисунки) могут быть как одними и теми же для всех языков (если они не зависят от языка), либо своими для каждого языка. Поддерживается как внешний, так и внутренний перевод.
Для внешнего перевода координатор экспортирует топики, которые требуется перевести, в файлы одного из открытых форматов, указывая при этом язык оригинала и язык перевода, и при необходимости блокирует исходные объекты, закрывая их для изменений на время, пока происходит перевод. При импорте готовых файлов блокировка автоматически снимается.
Внутренний перевод осуществляется в интерфейсе HelpServer, который позволяет работать одновременно с несколькими языками и переключать язык текущего топика. Например, можно открыть топик на русском языке, затем переключиться на английский и, если перевод уже имеется, увидеть переведенный текст. Для перевода имеется специальный двухоконный режим с поддержкой выравнивания параллельных текстов — оригинала и перевода. Переключение языка работает в обоих окнах, редактирование доступно только в окне перевода.
Рисунок 3. Перевод в HelpServer
Встроенный поиск, выполняемый с учетом даты и времени перевода, позволяет найти как переведенные, так и непереведенные данные для выбранного языка и узнать, актуальны ли они, а также определить топики с внесенными изменениями.
Рисунок 4. Поиск переведенных и непереведенных топиков в HelpServer
Рисунок 5. Поиск измененных топиков в HelpServer
Публикация данных для просмотра рецензентом может выполняться отдельно для каждого языка. При этом в статусе топика отображается информация о тех языках, на которых данный топик был изменен, но изменения еще не опубликованы.
Рисунок 6. Информация о публикации данных в HelpServer
В системе AuthorIT для управления переводом документации служит программа AuthorIT Localization Manager. Каждая локализация (т.е. версия документации для определенной зарубежной страны) хранится в отдельной библиотеке, называемой целевой (target library). Целевая библиотека создается как копия исходной, затем топики из целевой библиотеки либо переводятся внутри системы, либо отправляется внешнему переводчику.
Для отправки данных на внешний перевод служит процедура Translation job — задание на перевод; она же используется впоследствии для импорта файлов, содержащих готовый перевод, и при ее запуске необходимо сразу указать путь не только для экспорта, но и для последующего импорта. Также нужно задать состояния, которые будут присвоены экспортируемым и импортируемым данным, и правило (или правила) выбора объектов для экспорта. Возможен отбор по размещению, по типу, по состоянию обработки. Экспортированные объекты остаются заблокированными для изменений до полной готовности перевода. Если понадобится разблокировать их раньше, это можно сделать, только отменив задание на перевод.
Рисунок 7. Диалоговое окно запуска процедуры Translation Job в AuthorIT Localization Manager
Рисунок 8. Задание правила для выбора объектов на перевод в AuthorIT Localization Manager
В результате экспорта получаются три файла со стандартными именами — AuthorIT.xsd, AuthorIT.xslt и JobName.xml (переводчик должен использовать внешнюю систему, поддерживающую XML, такую как TRADOS ). Чтобы переводчик переводил текст не изолированно, а в контексте всего документа, координатор может сформировать и также отправить переводчику полный документ в формате Word или PDF, где места, экспортированные для перевода, будут выделены цветом. Как и в MadCap Flare, в AuthorIT предусмотрена встроенная функция для отправки материалов по электронной почте — Zip and Email.
Рисунок 9. Задание правила для выбора объектов на перевод в AuthorIT Localization Manager
Импорт данных, полученных от переводчика, не означают автоматического разблокирования исходных объектов: если предполагается рецензирование и правка перевода, координатор загружает его как черновик (draft translation job), затем генерирует документ в формате Word или файл формата PDF и передает рецензенту. Разблокирование происходит после импорта чистовой версии.
Если в исходную библиотеку внесены изменения, координатор запускает процедуру обновления библиотеки (Library Update) для выбранной локализации (или локализаций — есть возможность обновить несколько библиотек одновременно). Затем он формирует задание на перевод изменений, соответствующим образом настроив правила выбора объектов в процедуре Translation Job, и далее взаимодействует с переводчиком и редактором точно так же, как и при переводе нового проекта.
Рисунок 10. Синхронизация библиотек локализации в AuthorIT Localization Manager
Насколько удобно удастся организовать перевод с помощью той или иной системы подготовки документации, зависит не только от имеющихся в ней инструментов, но от того, как построено взаимодействие с переводчиками. Если работа по переводу передается на аутсорсинг (в специализированное агентство, переводчикам-фрилансерам), заказчик, как правило, не имеет никакого влияния на выбор инструмента перевода, но в случае, когда у партнера имеется совместимая CAT, может воспользоваться средствами HAT для упрощения и улучшения взаимодействия. Если же в организации есть собственные переводчики, им можно предписать использование определенного переводческого инструментария, включая и встроенные средства имеющейся HAT. Однако необходимо понимать, что при выборе этого инструментария стоит ориентироваться в первую очередь на мнение самих переводчиков как конечных пользователей и лишь во вторую — на мнение разработчиков документации, выступающих в качестве внутреннего заказчика.