Fonts.confでデフォルトのフォントスタイルを設定する

Fonts.confでデフォルトのフォントスタイルを設定する

fonts.conf何らかの理由で太字のバージョンが常に一致するため、フォントのデフォルトスタイルを設定しようとしています。

$ fc-match monospace
LigaOperatorMonoSSm-Bold.otf: "Liga Operator Mono SSm" "Bold"

これは私のものですfonts.conf

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
  <edit name="antialias" mode="assign"><bool>true</bool></edit>

  <match target="pattern">
    <test qual="any" name="family"><string>Liga Operator Mono SSm</string></test>
    <edit name="style" mode="assign" binding="same"><string>Medium</string></edit>
  </match>

  <alias>
    <family>serif</family>
    <prefer><family>Circular Std</family></prefer>
  </alias>
  <alias>
    <family>sans-serif</family>
    <prefer><family>Circular Std</family></prefer>
  </alias>
  <alias>
    <family>sans</family>
    <prefer><family>Circular Std</family></prefer>
  </alias>
  <alias>
    <family>monospace</family>
    <prefer><family>Liga Operator Mono SSm</family></prefer>
  </alias>
  <alias>
    <family>terminal</family>
    <prefer><family>Liga Operator Mono SSm</family></prefer>
  </alias>
</fontconfig>

ご覧のとおり、デフォルトの幅をに設定しようとしましたが、Medium残念ながら機能しません。利用可能なスタイルは次のとおりです。

/usr/share/fonts/OTF/LigaOperatorMonoSSm-LightItalic.otf: Liga Operator Mono SSm:style=Light Italic,Italic
/usr/share/fonts/OTF/LigaOperatorMonoSSm-MediumItalic.otf: Liga Operator Mono SSm:style=Medium Italic,Italic
/usr/share/fonts/OTF/LigaOperatorMonoSSm-Medium.otf: Liga Operator Mono SSm:style=Medium,Regular
/usr/share/fonts/OTF/LigaOperatorMonoSSm-BoldItalic.otf: Liga Operator Mono SSm:style=Bold Italic,Italic
/usr/share/fonts/OTF/LigaOperatorMonoSSm-Book.otf: Liga Operator Mono SSm:style=Book,Regular
/usr/share/fonts/OTF/LigaOperatorMonoSSm-Bold.otf: Liga Operator Mono SSm:style=Bold,Regular
/usr/share/fonts/OTF/LigaOperatorMonoSSm-BookItalic.otf: Liga Operator Mono SSm:style=Book Italic,Italic
/usr/share/fonts/OTF/LigaOperatorMonoSSm-Light.otf: Liga Operator Mono SSm:style=Light,Regular

エラーがどこにあるかを知っている人はいますか?ありがとうございます!

答え1

Operator Monoで誤ったメタデータを修正するために使用した方法は次のとおりです。

 <!-- Fixup Operator Mono weights -->
 <match target="scan">
   <test name="family">
     <string>Operator Mono Bold</string>
   </test>
   <edit name="weight">
     <const>bold</const>
   </edit>
 </match>
 <match target="scan">
   <test name="family">
     <string>Operator Mono Book</string>
   </test>
   <edit name="weight">
     <const>book</const>
   </edit>
 </match>
 <match target="scan">
   <test name="family">
     <string>Operator Mono XLight</string>
   </test>
   <edit name="weight">
     <const>extralight</const>
   </edit>
 </match>

フォント名とfc-cache -fそれ以降を変更することを忘れないでください。

答え2

私は同じ問題がありました(他のフォントを使用)。このようなことが私にとって効果的です。

<match target="pattern">
    <test name="family" compare="eq">
        <string>Liga Operator Mono SSm</string>
    </test>
    <edit name="style" mode="append">
        <string>Medium</string>
    </edit>
</match>

デフォルトでは、これは「Liga Operator Mono SSm」シリーズを検索するたびに、検索したいスタイルリストの最後に「Medium」を追加することを意味します。したがって、別のスタイルが指定されている場合はそのスタイルが優先されますが、そうでない場合は「Medium」を使用してフォントを検索します。

...私の考えでは。正直なところ、フォント構成文書は少し混乱しています。

関連情報