Рендеринг символов Юникода в urxvt (высота / ширина) против gnome-терминала

1815
blueyed

gnome-терминал отображает символы юникода (стрелки) в моем приглашении, отличные от urxvt:

urxvt

gnome-terminal

direct comparison

Они отображаются по всей высоте строки, имеют меньший интервал между ними, но более подходящий интервал в конце (после них есть пробел).

Edit: the missing space at the end was triggered by having an escape code, e.g. %b for non-bold in zsh, at the end of RPS1. Removing it or adding a space after it fixed this particular issue.

My urxvt font config:

URxvt.font: xft:Ubuntu Mono:pixelsize=16, \ xft:monospace, \ xft:Ubuntu Mono for Powerline 

This applies also to other symbols like .

I have noticed that lilyterm behaves like gnome-terminal (caused by vte), while konsole, xterm etc behave like urxvt.

Is it possible to configure urxvt to do the same?

I am using rxvt-unicode-256color 9.19-1 on Ubuntu 14.04. gnome-terminal is more recent (from Debian testing), and lilyterm is built from source.

An example prompt with symbols:

↳ git:m@o[+2]¹✗ ❯❯

3
Можете ли вы вставить эти символы Unicode здесь? Я хотел бы попытаться воспроизвести это. isuldor 9 лет назад 0
@brianbaligad Конечно. Добавил их в вопрос. blueyed 9 лет назад 0
Я подозреваю, что URxvt на самом деле не загружает шрифт из вашей конфигурации. Попробуйте запустить терминал с помощью этой команды: `urxvt -fn" xft: Ubuntu Mono: пиксел = 16 "` Он должен загрузить шрифт и выглядеть так, как вы ожидаете (по крайней мере, для меня) isuldor 9 лет назад 0
@brianbaligad Это выглядит так же. Я экспериментировал с использованием недопустимого имени (также в файле ~ / .Xresources / xrdb): это приводит не к ошибке, а к другому шрифту / интервалу. blueyed 9 лет назад 0
@brianbaligad - это символы Юникода той же высоты, что и `[`? Можете ли вы предоставить скриншот, пожалуйста? blueyed 9 лет назад 0
Вот что я получил http://imgur.com/VosZW0I isuldor 9 лет назад 0
@brianbaligad Это похоже на мой результат в urxvt. Вот еще одно сравнение, чтобы прояснить его: [http://i.imgur.com/nCh0kAJ.png](http://i.imgur.com/nCh0kAJ.png). blueyed 9 лет назад 0

1 ответ на вопрос

0
blueyed

Ожидаются разные высоты, как и проблема, когда слишком широкие символы заменяются квадратными.

Я спрашивал об этом в списке рассылки rxvt-unicode некоторое время назад (4 квартал 2004 года) и создал патч, но он был отклонен: http://lists.schmorp.de/pipermail/rxvt-unicode/2014q4/002042 .html

Патч / ветка доступны по адресу https://github.com/exg/rxvt-unicode/compare/master...blueyed:display-wide-glyphs . Это заставит rxvt-unicode не заменять слишком широкие символы квадратным значком, а просто отображать их - без специальной обработки. Поэтому вам придется добавить пробел после него, чтобы отобразить его полностью (в противном случае он будет обрезан).

Я попросил включить его в rxvt-unicode-patched Arch: https://aur.archlinux.org/packages/rxvt-unicode-patched/

Похожие вопросы