패키지 관리자(현재 Arch 시스템을 실행 중인)의 글꼴을 포함한 많은 글꼴에는 범용 계열 "가는 장식 선","고정 폭 글꼴" 그리고"필기체". 따라서 올바른 가족을 수동으로 표시해야 합니다(참조https://eev.ee/blog/2015/05/20/i-stared-into-the-fontconfig-and-the-fontconfig-stared-back-at-me/).
이 아니라면"고정 폭 글꼴" 글꼴인 경우 해결 방법이 있습니다. 둘 다 간격 속성이 100입니다. 다음을 실행하여 이를 확인할 수 있습니다 fc-list :spacing=100
(참조https://unix.stackexchange.com/a/363368/473666). 따라서 이 속성 값을 가진 모든 글꼴을 자동으로 "고정 폭 글꼴" 폰트.
예를 들어 기본 구성 파일과 문서에서는 "가는 장식 선" 그리고"고정 폭 글꼴"처럼"산세리프 글꼴" 이 방법:
<match target="pattern">
<test qual="all" name="family" compare="not_eq">
<string>sans-serif</string>
</test>
<test qual="all" name="family" compare="not_eq">
<string>serif</string>
</test>
<test qual="all" name="family" compare="not_eq">
<string>monospace</string>
</test>
<edit name="family" mode="append_last">
<string>sans-serif</string>
</edit>
</match>
그래서 나는 이것을 시도했습니다 :
<match target="pattern">
<test qual="all" name="spacing" compare="eq">
<int>100</int>
</test>
<test qual="all" name="family" compare="not_eq">
<string>monospace</string>
</test>
<edit name="family" mode="append_last">
<string>monospace</string>
</edit>
</match>
결과:모든이제 시스템의 글꼴이 고정폭으로 표시됩니다. 로 변경할 <int>100</int>
때도 이런 현상이 발생합니다 <const>mono</const>
. man fonts.conf
에 나열된 기본 구성 파일 중 다수를 읽었 fc-conflist
지만 제대로 작동하지 않습니다. 속성과 해당 값의 여러 조합을 시도했지만 결과는 항상전혀또는모든글꼴은 고정폭 글꼴로 간주됩니다.
이제 다음 명령을 사용하여 소스 목록을 생성하고 수동으로 추가합니다 fc-list :spacing=100 | awk -F: '{print $2}' | sort -u
. Stack Exchange에 대해 질문을 하는 것은 이번이 처음이므로 명확하게 설명할 수 있기를 바랍니다.
답변1
qual="all"
간격 테스트에서 매개변수가 제거되었습니다. 이는 family
목록(예: 문자열 목록)을 테스트할 때 동작을 지정하는 데 사용됩니다 . 스칼라 테스트는 qual="all"
항상 성공합니다. 이것은 글꼴 구성의 버그입니다.
답변2
간격을 테스트하려면 일치 대상을 로 변경해야 합니다 <match target=font>
. 패턴 일치 시 글꼴 구성이 간격을 모르는 것 같습니다.
필요하지 않기 때문에 아직 글꼴 모음 설정을 시도하지 않았지만 수정된 구성을 사용하면 콘솔 텍스트에 대해서만 GNOME 터미널에서 앤티앨리어싱을 끌 수 있습니다.
<match target="font">
<test name="spacing" compare="eq">
<int>100</int>
</test>
<test name="prgname" compare="contains">
<string>gnome-terminal</string>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
Fontconfig 버전 2.13.1에서 테스트되었습니다.