Я наткнулся на плохие специальные символы на некоторых страницах руководства:
Если ваш терминал является "истинным" терминалом с автоматической маржей (он не позволяет обновлять последнюю позицию на экране без прокрутки экрана), рассмотрите возможность использования версии вашего терминала▒ <80> < 99> termcap, у которого отключены автоматические поля. Это обеспечит точное и оптимальное обновление экрана при любых обстоятельствах. В настоящее время у большинства терминалов есть «волшебные» поля (автоматические поля плюс полезный последний столбец). Это тип стиля VT100 и идеально подходит для экрана. Если все, что у тебя есть <80> <99>, это [...]
Я провел небольшое исследование. man
использует $pager
в качестве инструмента отображения, и для него установлено значение less
в моем окружении. Так очевидно less
не может отображать специальные символы страниц руководства.
Мой терминал (замазка) установлен на Utf-8, а $LANG=en_US.UTF-8
. Что может быть не так?
Сначала посмотри, есть ли у тебя LESSCHARSET
набор переменных среды.
echo $LESSCHARSET
Если это не так utf-8
уже, затем установите его:
export LESSCHARSET="utf-8"
Посмотрим, поможет ли это. Вы также можете попробовать пейджер под названием most
, он доступен как минимум в репозиториях пакетов Debian / Ubuntu.
Пытаться -r
возможность отображения необработанных символов, например:
меньше -r file.txt
Попробуйте другой пейджер (например, most
).
PAGER=most man command_name
или
man -P most command_name
или
man --pager=most command_name
чтобы увидеть, может ли он правильно отображать апострофы.
Возможно, исходный файл (если есть) для man
страница плохая, инструменты для обработки man
страница (*roff
) неправильно обрабатывают символ, либо объектный файл (cat
файл) эти инструменты могут быть неправильными. В некоторых системах вы можете восстановить man
объектные файлы страницы.
Бегать man
с одним из этих вариантов (-W
, --where-cat
или --location-cat
), чтобы увидеть, где cat
файл находится. Попробуйте переименовать (а не удалять - чтобы при необходимости вернуть обратно) cat
файл, поэтому создается новый.
Вы можете попробовать указать кодировку, чтобы узнать, поможет ли это. Пытаться UTF-8
и UTF-16
, например.
man -E UTF-8 command_name
или
man --encoding=UTF-8 command_name
Наконец, запустите mandb
чтобы проверить целостность кеша.