Терминальные программы

less

Если локаль (см. раздел “Настройка локали”) не настроена[10], то вывод кириллицы через less можно получить, установив переменную окружения LESSCHARSET:

 export
LESSCHARSET=koi8-r 

Это решение годится для всех 8-битовых кириллических кодировок.

Старые версии less не поддерживали эту установку, поэтому вместо koi8-r в этом случае следует подставить latin1. При этом однако становятся недоступными символы, чьи коды находятся в диапазоне 128-159. К счастью, коды букв обычно вне этого диапазона.

При настроенной локали (см. раздел “Настройка локали”) указывать LESSCHARSET НЕ НАДО. Более того, в ˜/.lesskey надо добавить

#env
LESSCHARSET=

чтобы программа игнорировала установку LESSCHARSET= другими "глупыми"  программами (к примеру, man). После этого надо запустить lesskey для получения бинарного файла ˜/.less. В противном случае он не будет вызывать setlocale(LC_CTYPE,"") и, как следствие, не будет icase search для русских букв.

В качестве полумеры можно воспользоваться ключом r или row-control-chars. При использовании этого ключа возможен просмотр не ASCII символов в любых условиях, но при этом возникают побочные эффекты, описанные в man less.

mc (The Midnight Commander)

Чтобы увидеть кириллицу из mc, выберите опцию full 8 bits в Options/Display меню.

Если и в этом случае при просмотре файла из mc вы не увидите кириллических символов, то загляните в раздел “nroff ”.

В случае возникновения проблем при просмотре man статей — сверьтесь с разделом “man”.

Если у вас проблемы в виде уродливых оконных рамок, то проконсультируйтесь в разделе Глава 4. Консоль.

man

Сейчас довольно бурно развивается деятельность по переводу всего и вся на русский язык (ну, не так чтобы уж очень, но кое-кто кое-что делает). Все больше и больше появляется статей man, переведённых на русский язык, но вот отобразить их не всегда удаётся.

Если есть файл с русскими буквами, то вызов, скажем man ar приводит к ерунде на экране. Для исправления этого безобразия следует поправить соответствующие строки в /usr/lib/man.config, если это файл есть, или правильно настроить less (см. раздел “less”).

ls

Если локаль установлена неправильно (см. раздел “Настройка локали”), то ls не будет печатать кириллические символы. В этом случае, возможно, поможет одна из следующих команд: ls -N, dir -N или ls —show-control-chars.



[10] Локаль должна быть настроена. Как это сделать подробно расписано в разделе “Locale”