.Xresources를 사용할 때 urxvt에 글꼴 경로를 추가하는 방법은 무엇입니까?

.Xresources를 사용할 때 urxvt에 글꼴 경로를 추가하는 방법은 무엇입니까?

xset +fp /usr/share/fonts/terminus를 사용하면 urxvt를 시작하고 다음을 사용하여 원하는 글꼴(터미널)에 대한 지원을 얻을 수 있습니다.

urxvt -fn -*-terminus-*-*-*-*-*-*-*-*-*-*-*-*

그러나 .Xresources에서는 이것이 어떻게 수행됩니까? .Xresources의 글꼴 크기를 조정하는 방법을 어떻게 지정합니까?

젠투 시스템입니다.

단순히 다음을 시도하는 것만으로는 작동하지 않는 것 같습니다.

URxvt*font: xft:terminus:pixelsize=26

내가 아는 한 urxvt는 XLFD와 Fontconfig라는 두 가지 글꼴 시스템을 사용합니다. 아래 링크https://wiki.gentoo.org/wiki/Rxvt-unicode#Font이것의 일부를 설명하려고합니다. 그러나 그들이 제공하는 예제를 그대로 복사하더라도 urxvt에서 사용하는 실제 글꼴에는 아무런 영향을 미치지 않는 것 같습니다.

나는 그것이 내 시스템에서 끔찍해 보이는 기본 글꼴을 사용한다고 생각합니다.

urxvt에 대한 디버그 및 자세한 플래그를 찾으려고 했지만 해당 매뉴얼 페이지에 플래그가 나열되어 있지 않습니다. 문제는 다른 터미널에서 urxvt를 시작할 때에도 urxvt가 어떤 글꼴을 시도하고 있는지, 어디서 찾으려고 하는지에 대한 피드백을 제공하지 않는다는 것입니다.

사용 가능한 글꼴을 나열하기 위해 fc-list를 시도했습니다. 그러나 여기에 XLFD 또는 Fontconfig와 함께 사용할 수 있는 글꼴이 나열되어 있는지 확실하지 않습니다. 그래도 무작위로 몇 가지를 시도했지만 여전히 아무 일도 일어나지 않았습니다.

답변1

의견에서 언급했듯이 를 사용하는 경우 .Xresources다음을 실행해야 합니다.

xrdb -merge ~/.Xresources

파일을 변경한 후. 또는 편집할 수도 있습니다 ~/.Xdefaults(그러나 이를 사용하려는 사람들은 xrdb이에 반대한다고 조언합니다).

어느 쪽이든 귀하의 리소스 패턴은 다음과 같이 나에게 적합합니다.

urxvt -fn 'xft:terminus:pixelsize=20'

(와일드카드는 나에게 적합하지 않습니다.) 를 사용하면 strace"Term" 또는 "term"을 찾을 때 어떤 파일이 열려 있는지 확인할 수 있습니다. 디버깅 기능으로 유용할 수 있습니다.

execve("/usr/bin/urxvt", ["urxvt", "-fn", "xft:terminus:pixelsize=25"], [/* 61 vars */]) = 0
read(7, "#! perl\n\nuse POSIX ();\n\nmy $term"..., 8192) = 1223
access("/etc/fonts/conf.d/50-enable-terminus.conf", R_OK) = 0
stat("/etc/fonts/conf.d/50-enable-terminus.conf", {st_mode=S_IFREG|0644, st_size=254, ...}) = 0
open("/etc/fonts/conf.d/50-enable-terminus.conf", O_RDONLY) = 9
open("/users/tom/.icons/default/cursors/xterm", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/icons/default/cursors/xterm", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/pixmaps/default/cursors/xterm", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/users/tom/.icons/oxy-black/cursors/xterm", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/icons/oxy-black/cursors/xterm", O_RDONLY) = 7
open("/var/run/utmp", O_RDWR|O_CLOEXEC) = -1 EACCES (Permission denied)
read(7, "/usr/build/xterm/xterm-325f (101"..., 2048) = 34
chown("/dev/pts/3", 0, 0)               = -1 EPERM (Operation not permitted)

글꼴 정보가 포함된 파일은 다음과 같습니다.

/etc/fonts/conf.d/50-enable-terminus.conf

내 시스템에서는 다음이 포함됩니다.

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <selectfont>
    <acceptfont>
      <pattern>
        <patelt name="family"><string>terminus</string></patelt>
      </pattern>
    </acceptfont>
  </selectfont>
</fontconfig>

urxvt아니요바라보다특정 글꼴에 대해. Keith Packard가 작성한 Xft 라이브러리를 통해 Fontconfig에 대한 호출을 설정합니다. 소스 코드를 읽고 urxvt이것이 어떻게 수행되는지 확인할 수 있습니다.

Fontconfig가 포함된 Xft의 주목할만한(버그가 있는) 기능 중 하나는 오류 보고 기능이 없다는 것입니다. 필요한 글꼴을 찾을 수 없는 경우묻다왜냐하면 계속해서 기본 글꼴을 제공하기 때문입니다. 를 사용하면 strace최소한 올바른 글꼴 프로필이 사용되는 것을 확인할 수 있습니다.

관련 정보