less легко научить просматривать не только текстовые файлы, но и многие другие. Например, ей можно смотреть сжатые файлы или файлы PDF не задумываясь о вызове архиватора или нужного конвертера. Примерно так:$ less /usr/share/doc/less/changelog.gzСобственно, во многих дистрибутивах так уже настроено по умолчанию. В Debian эта возможность по умолчанию выключена. Чтобы она заработала нужно в ~/.bashrc (если пользуетесь bash) добавить eval $(lesspipe) или eval $(lessfile). Это установит переменные окружения LESSOPEN и LESSCLOSE, говорящие less пропускать файлы через указанный фильтр. Фильтр /usr/bin/lesspipe смотрит на расширение файла и запускает нужный конвертрер, если необходимо. Разница между lesspipe и lessfile в том, что первый конвертирует файлы на лету, сразу отдавая результат в less, а lessfile вначале полностью конвертирует файл, и только потом вызывает less.Понятно, что очень просто можно настроить пользовательские фильтры. Добавлять их нужно в пользовательский скрипт
~/.lessfilter. Например, чтобы просматривать с помощью less файлы OpenOffice, я добавляю фильтр, вызывающий antiodt, а чтобы просматривать файлы MSWord, фильтр, вызывающий antiword. Файл ~/.lessfilter выглядит при этом так:#!/bin/sh
(
case `echo "$1" | tr '[:upper:]' '[:lower:]'` in
*.odt)
if [ -x "`which antiodt`" ]; then antiodt "$1" ;
else cat "$1"; fi ;; # No antiodt available
*.doc)
if [ -x "`which antiword`" ]; then antiword "$1" ;
else cat "$1"; fi ;; # No antiword available
esac
) 2>/dev/nullP.S. Код раскрасил с помощью плагина toblog к vim, создающего цветной HTML согласно текущей цветовой схеме редактора.