25
☢ ☍ ⌘ ✰ ⣿ ⚡ ☯ ⚑  ↺  ⤴  ⤵ blabla

Мне нужно отображать символы выше в Windows 7, используя пропорциональные шрифты. Однако некоторые символы отображаются неправильно. Этот конкретный пример использует Courier New .

черт!

У меня установлен английский (США) в моих региональных настройках.

Обновить:

Конечная цель - показать в PuTTY это

Как вы видите на левой стороне есть много специальных символов.

Теперь посмотрим, что я получу с шрифтом DejaVu Mono .

ДежаВу Моно

Это с Courier New

Новый Курьер

Этот с Consolas

Consolas

Этот с Inconsolata

Inconsolata

Это тестовый вывод с DejaVu Sans Mono .

Нажмите здесь, чтобы увеличить

Теперь сравните с тем скриншотом прямо под Update

4 ответа4

15

Что вам нужно сделать, это установить шрифт (рисунок 1) и кодировку (рисунок 2) в PuTTY.

Шрифт на скриншоте - Inconsolata (получите файл OTF и скопируйте его в папку «Шрифты Windows»). (PyroScope предлагает DejaVu Sans Mono для Windows. Получите dejavu-fonts-ttf-2.33.zip , распакуйте четыре DejaVuSansMono*.ttf и скопируйте их в папку шрифтов Windows.)

Кодировка для использования - UTF-8.


Рисунок 1: Установите шрифт:

Для шрифта PuTTY установлено значение Deja Vu Sans Mono

Рисунок 2: Установите кодировку:

Кодировка PuTTY установлена в UTF-8

9

Everson Mono работает в PuTTY (очень важное условие; многие другие шрифты работают, например, в konsole) для всех символов, которые вы разместили. Однако выполнение полного теста со скриптом Python выявляет блок, который не совсем верен.

python -c 'print u"\u22c5 \u22c5\u22c5 \u201d \u2019 \u266f \u2622 \u260d \u2318 \u2730 " \
u"\u28ff \u26a1 \u262f \u2691 \u21ba \u2934 \u2935 \u2206 \u231a \u2240\u2207 \u2707 " \
u"\u26a0\xa0\u25d4 \u26a1\xa0\u21af \xbf \u2a02 \u2716 \u21e3 \u21e1  \u2801 \u2809 " \
u"\u280b \u281b \u281f \u283f \u287f \u28ff \u2639 \u2780 \u2781 \u2782 \u2783 \u2784 " \
u"\u2785 \u2786 \u2787 \u2788 \u2789 \u25b9\xa0\u254d \u25aa \u26af \u2692 \u25cc " \
u"\u21c5 \u21a1 \u219f \u229b \u267a ".encode("utf8")'

Everson Mono от PuTTY до виртуальной машины Kubuntu

Для использования Everson Mono в PuTTY может потребоваться установить флажок « Allow selection of variable-pitch fonts в разделе « Window -> « Appearance -> « Font settings ».

Другие шрифты, такие как DejaVu Sans Mono, отлично работают в других программах, возможно заимствуя глифы из других файлов (я не уверен, как работают шрифты TT), что, похоже, не работает в PuTTY. Code2000 должен был сработать, но он сделал что-то ... странное ... с моим окном PuTTY. Это может работать для вас. Каждый шрифт, который я пробовал, работает непосредственно в konsole, даже тот, который не должен. Возможно, стоит поискать альтернативный клиент / эмулятор.

8

Я проверил принятое решение, однако на моей машине замазка не показывает Everson Mono или DejaVu Sans Mono в списке шрифтов. (Должно быть, что-то не так с моей конфигурацией системы).

Кроме того, я не люблю менять свой любимый моноширинный шрифт.

После некоторого поиска в Google я нашел более предпочтительное решение:

Добавьте (или измените) многострочное значение для предпочитаемого вами шрифта в разделе реестра Windows.

HKEY_LOCAL_MACHINE\ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Microsoft \ Windows NT \ CurrentVersion \ FontLink \ SystemLink

Имя добавленного (или отредактированного) ключа должно быть именем шрифта, а соответствующее значение - это список вариантов резервного шрифта для отображения символов, не распознаваемых предыдущим шрифтом. Там должно быть несколько существующих, вы можете скопировать значение оттуда.

Для меня я добавил запись:

Monaco -> 
    msyh.ttf,Microsoft YaHei Regular
    SIMSUN.TTC,SimSun
    MINGLIU.TTC,PMingLiU
    MSGOTHIC.TTC,MS UI Gothic
    BATANG.TTC,Batang

Перезагрузитесь, и теперь Putty сможет правильно отображать символы Unicode:

ой-мой-zsh подскажите

2

У меня DejaVu Sans Mono работает. Конечно, есть и другие шрифты, которые будут работать так же хорошо.

РЕДАКТИРОВАТЬ: Если вы используете rtorrent на screen , убедитесь, что на экране тоже используется utf8.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .