Добавить к пейджеру распознавание кодировки
Хочу добавить у пейджеру распознавание кодировки, для начала.
В качестве пейджера использую most.
Если сделать функцию, в которой файл передаётся через пайп, то при отсутствующем
имени файла, вся конструкция логично "зависает":
cat $*|enconv|pager
Если читать файл в буфер, при чтении большого файла, вылетает шелл с сообщением
о том, что "в куче закончилась память".
BUF="$(cat $*|enconv)"
echo "$BUF"|pager
И ещё, при чтении через пайп возникает несколько больших минусов:
1. Most не показывает имя файла, который читается.
2. При чтении большого файла, производится его полное преобразование, что
невероятно замедляет его открытие (most-у пофигу на размер файла: читается буфер
фиксированного размера, в который данные подгружаются по мере движения по файлу).
Видимо, возможно сделать нормальное распознавание, только используя хуки пейджера.
У most я хуков не обнаружил.
Отсюда вопросы:
1. Возможно ли сделать с most и, если да, то как?
2. Возможно ли сделать с less и, если да, то как?
3. Есть ли готовый пейджер с которым такое возможно сделать (произвольное
преобразование просматриваемой страницы)?
Reply to: