## Работа с текстовыми файлами

- Кодировка по умолчанию
- Искажённые символы
- Наборы символов и кодировка
- Как с этим работает OmegaT

## Кодировка по умолчанию

Простые текстовые (plain text) файлы - в большинстве случаев с расширением `.txt` - содержат только текстовую информацию. Нет чёткого способа сообщить компьютеру, на каком языке этот текст. На практике это означает, что компьютер по умолчанию предполагает, что текст написан на том же языке, который использует сам компьютер.

## Искажённые символы

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

Но если вы русский переводчик, который работает с японским языком, то и японские файлы (если они в формате простого текста) компьютер, скорее всего, тоже сочтёт русскоязычными. Это происходит потому, что в самом файле нет никакой информации о языке. Содержимое японского файла может быть, например, таким:

OmegaTとは、コンピュータを利用した翻訳ツールです。

Поскольку ваш текстовый редактор ожидает, что файл написан на русском, он вполне может показать файл так:

OmegaTВ∆ВЌБAГRГУГsГЕБ[Г^ВрЧШЧpВµВљЦ|ЦуГcБ[ГЛВ≅ВЈБB

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

Как и все остальные программы, OmegaT тоже страдает от этой проблемы. Она может лишь предположить, что по умолчанию текстовые файлы можно отобразить, используя системные настройки компьютера. И это не представляет проблемы, если, например, ваш компьютер работает по-французски, а ваши файлы на английском или если ваш компьютер работает по-немецки, а вам прислали итальянские файлы.

## Наборы символов и кодировка

Почему это работает с английским и французским, но не с русским и японским? Потому что английский и французский используют один и тот же набор символов, а именно, Latin-1 или его вариации. До недавнего времени русский и японский наборы символов никак не пересекались. Большинство современных русских наборов символов не покрывают японский язык и наоборот. Результат показан выше.

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

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

## Как с этим работает OmegaT

В целом, в OmegaT есть три метода борьбы с этой проблемой. Все они включают использование файловых фильтров в меню Настройки.

1. Укажите кодировку для ваших текстовых файлов - то есть, файлов с расширением `.txt`: в секции Текстовые файлы диалога файловых фильтров измените кодировку исходных файлов с <auto> на кодировку, соответствующую вашим исходным `.txt`-файлам.
2. Измените расширения ваших исходных текстовых файлов (например, для японских текстовых файлов с `.txt` на `.jp`): в секции Текстовые файлы диалога файловых фильтров добавьте новый Шаблон исходных файлов (например, `*.jp`) и выберите необходимые параметры кодировки оригинала и перевода.
3. Измените кодировку ваших файлов на Unicode: откройте ваш исходный файл в текстовом редакторе, который правильно понимает его кодировку и сохраните файл в кодировке "UTF-8". Измените расширение файла с `.txt` на `.utf8`. OmegaT автоматически интерпретирует его как файл в UTF-8.

По умолчанию в OmegaT включены следующие настройки, чтобы вам было легче работать с некоторыми текстовыми файлами:

- файлы `.txt` автоматически (<auto>) интерпретируются как сохранённые в кодировке компьютера по умолчанию.
- файлы `.txt1` - это файлы в ISO-8859-1, которая покрывает большинство языков Западной Европы.
- файлы `.txt2` - это файлы в ISO-8859-2, которая покрывает большинство языков Центральной и Восточной Европы
- файлы `.utf8` интерпретируются как сохранённые в кодировке UTF-8 (она покрывает почти все языки мира).

Вы можете проверить эти настройки, выбрав пункт Файловые фильтры в меню Настройки. Например, если у вас есть текстовый файл на чешском (скорее всего, сохранённый в кодировке ISO-8859-2), то вам нужно просто заменить расширение `.txt` на `.txt2` и OmegaT корректно распознает его содержимое. И, конечно, если вы хотите навсегда избавиться от этих проблем, то рассмотрите возможность сохранения таких файлов в Unicode, то есть в формате .utf8.

Надлежащие уведомления | Наверх | Карта документации