LINUX.ORG.RU

URxvt и Font Awesome

 ,


0

1

Здравствуйте!

Я выставил шрифт Font Awesome в URxvt.font и URxvt.boldFont в .Xdefaults, однако при открытии файла с символами Font Awesome вместо них рисуются квадратики.

Посоветуйте, пожалуйста, как можно это исправить?

Вот вывод cat .Xdefaults | grep URxvt:

URxvt*buffered: True
URxvt*geometry:	108x32
URxvt*color0:    #000000
URxvt*color1:    #839496
URxvt*color2:    #FFFFFF
URxvt*color3:    #00E3B0
URxvt*color4:    #268bd2
URxvt*color5:    #50008D
URxvt*color7:    #eee8d5
URxvt*color8:           #93a1a1
URxvt*color9:           #cb4b16
URxvt*color10:          #FFFFFF
URxvt*color11:          #72FCDD
URxvt*color12:          #6c71c4
URxvt*color13:          #50008D
URxvt*color14:          #93a1a1
URxvt*color15:          #aba79a
URxvt*foreground: #C0C0C0
URxvt*transparent: true
URxvt*shading: 30
URxvt.font: xft:SourceCodePro:pixelsize=10:weight=medium,xft:FontAwesome:pixelsize=10
URxvt.boldFont: xft:SourceCodePro:pixelsize=10:weight=bold,xft:FontAwesome:pixelsize=10
URxvt*letterSpace: -1
URxvt*scrollBar:	False
URxvt*saveLines:	5000


Ответ на: комментарий от anonymous

и насколько мне помнится, в раче давно настраивается через .Xresources

anonymous
()
Ответ на: комментарий от egorcod

Поставил. Квадраты не пропали.

Настройки urxvt необходимо прописать в .Xresources и загружать с помощью xrdb.

~/.Xdefaults is the older method of storing X resources. This file is re-read every time an Xlib program is started. If X11 is used over the network, the file must be present on the same filesystem as the programs.

~/.Xresources is newer. It is loaded with xrdb into the RESOURCE_MANAGER property of the X11 root window. Whenever any program looks up a resource, it is read straight from RESOURCE_MANAGER.

$ cat ~/.Xresources | grep font 
URxvt.font: xft:Terminus:size=10
URxvt.boldfont: xft:Terminus:10:bold
$ cat ~/.xinitrc | grep xrdb
xrdb -merge .Xresources
Samsky
()
Ответ на: комментарий от egorcod

На «потестить» можно запускать вот так:

urxvt -fn "xft:xos4 Terminus:pixelsize=16:weight=medium,xft:Noto Emoji,xft:Icons,xft:Symbola,xft:PowerlineSymbols"  -fb "xft:xos4 Terminus:weight=bold,xft:Noto Emoji,xft:Icons,xft:Symbola,xft:PowerlineSymbols"
заодно глянуть выхлоп.

anonymous
()
Ответ на: комментарий от egorcod

Посмотрел.

Молодец! А если серьезно, то у меня оно пишет при проблемах со шрифтами:

urxvt: unable to calculate font width for 'Noto Emoji:slant=0:weight=100:pixelsize=18:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Icons:slant=0:weight=100:pixelsize=18:minspace=True', ignoring.
Все лучше, чем гадать.
Ну и скажем так, я когда-то гуглил это дело и обнаружил, что проблемы со всякими символами и подгрузкой шрифтов в urxvt вроде как «бай дизайн». Есть скотч^W патч:
--- src/rxvtfont.C.orig 2016-10-06 10:29:29 UTC
+++ src/rxvtfont.C
@@ -1266,13 +1266,17 @@ rxvt_font_xft::load (const rxvt_fontprop
 
           XGlyphInfo g;
           XftTextExtents16 (disp, f, &ch, 1, &g);
-
+/*
           g.width -= g.x;
 
           int wcw = WCWIDTH (ch);
           if (wcw > 0) g.width = (g.width + wcw - 1) / wcw;
 
           if (width    < g.width       ) width    = g.width;
+*/
+         int wcw = WCWIDTH (ch);
+          if (wcw > 1) g.xOff = g.xOff / wcw;
+          if (width < g.xOff) width = g.xOff;
           if (height   < g.height      ) height   = g.height;
           if (glheight < g.height - g.y) glheight = g.height - g.y;
         }
У меня таким макаром оно вполне приемлимо работает (хотя в том же st оно уже из коробки, без прописывания дополнительных шрифтов, работает).

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.