Как я могу заставить команду man не использовать пейджер?
Как я могу заставить man
Команда не использовать пейджер, а вместо этого выводить всю страницу сразу и сохранять подсветку?
Если я использую man -P cat
или же man | cat
Теряю подсветку.
4 ответа
Долгое чтение руководств для мужчин, меньше, groff и grotty, наконец, дал мне ответ
Подсветка по умолчанию производится с использованием последовательности возврата на одну позицию: c\bc
=> жирный шрифт, _\bc
=> подчеркнут c. Но если вывести "as", используя "cat" в качестве пейджера, то в обоих случаях выведите просто c Также сжимаются пустые строки, поэтому, чтобы сделать все это, пейджер должен быть установлен в ul | cat -s
,
Пейджер можно настроить разными способами:
использование переменных MANPAGER или PAGER (лучше использовать MANPAGER, поскольку PAGER влияет не только на команду man)
export MANPAGER='ul | cat -s'
в man.conf
PAGER ul | cat -s
используя параметр -P
cat -P 'ul | cat -s' …
или же
alias man='man -P "ul | cat -s"'
мужчина мужчина
...
PAGER A program to use for interactively delivering
man's output to the screen. If not set,
`more -s' is used. See more(1).
Это означает, что пейджер регулируется PAGER env. переменная, поэтому просто определите PAGER как
setenv PAGER cat
и наслаждаться.
Это не совсем то, что вы хотите (вы не получите вывод в консоли), но вы можете сгенерировать файл dvi с содержанием руководства, как объяснено в man's man:
man -l -Tdvi ./foo.1x.gz > ./foo.1x.dvi
Эта команда распакует и отформатирует страницу справочника источника nroff./foo.1x.gz в файл, независимый от устройства (dvi). Перенаправление необходимо, так как флаг -T приводит к тому, что вывод направляется на стандартный вывод без пейджера. Вывод может быть просмотрен с помощью программы, такой как xdvi, или дополнительно обработан в PostScript с помощью программы, такой как dvips.
Я только что проверил это и открыл файл DVI с evince: подсветка не теряется.