8.4. Локализация

Локализация приложений CLIP подразумевает локализацию устройства отображения (дисплея), клавиатуры, строковых констант и встроенных функций.

Устройства отображения - консоль, терминал, эмулятор терминала. Локализация устройства отображения производится стандартным путем, т.е. загрузкой фонта, прошивкой ПЗУ терминала, или загрузкой специального драйвера клавиатуры и дисплея.

При использовании scan-mode раскладка клавиатуры и перекодировка производится путем создания keymap-файла и генерации на его основе файла-описателя для клавиатурного драйвера, встроенного в CLIP.

Некоторые функции Clipper (такие как upper, lower, isalpha, isdigit) имеют национальные особенности - символы псевдографики, весовые коэффициенты символов для индексации и сравнения строк, и т.д. Утилита $CLIPROOT/bin/gen_tbl предназначена для создания файла-описателя, используемого для реализации национальных особенностей этих функций. Для более подробной информации см. главу Локализация.

CLIP имеет специальную установку для использования DBF разными пользователями, работающими с разными кодировками, одновременно:

set("DBF_CHARSET","cp866")

или в виде команды:

set dbf charset to cp866

где cp866 - имя tbl-файла с описанием национальных особенностей.

Может быть так, что данные хранятся в DBF в одной кодировке, программа работает в другой, а отображение на клиенте производится в третьей (см. выше о терминалах).

Также имеется возможность задания кодировки, используемой принтером:

set("PRINTER_CHARSET","cp866")

или в виде команды:

set printer charset to cp866

Компилятор CLIP помещает все строковые константы определенные как [строка_данных] в поддиректориях $CLIPROOT/locale.pot. Эти константы можно перевести на другие языки.

Во время выполнения приложение CLIP читает значение переменной окружения LANG и загружает соответствующие языку константы из поддиректорий $CLIPROOT/locale.po.