[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Добавить к пейджеру распознавание кодировки



Хочу добавить у пейджеру распознавание кодировки, для начала.
В качестве пейджера использую most.
Если сделать функцию, в которой файл передаётся через пайп, то при отсутствующем имени файла, вся конструкция логично "зависает":

cat $*|enconv|pager

Если читать файл в буфер, при чтении большого файла, вылетает шелл с сообщением о том, что "в куче закончилась память".

BUF="$(cat $*|enconv)"
echo "$BUF"|pager

И ещё, при чтении через пайп возникает несколько больших минусов:
1. Most не показывает имя файла, который читается.
2. При чтении большого файла, производится его полное преобразование, что невероятно замедляет его открытие (most-у пофигу на размер файла: читается буфер фиксированного размера, в который данные подгружаются по мере движения по файлу).

Видимо, возможно сделать нормальное распознавание, только используя хуки пейджера.
У most я хуков не обнаружил.

Отсюда вопросы:
1. Возможно ли сделать с most и, если да, то как?
2. Возможно ли сделать с less и, если да, то как?
3. Есть ли готовый пейджер с которым такое возможно сделать (произвольное преобразование просматриваемой страницы)?


Reply to: