Estoy intentando establecer el estilo predeterminado de una fuente fonts.conf
porque, por alguna razón, la versión en negrita siempre coincide:
$ fc-match monospace
LigaOperatorMonoSSm-Bold.otf: "Liga Operator Mono SSm" "Bold"
Este es mi 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>
Como puede ver, intenté establecer el ancho predeterminado Medium
pero desafortunadamente no funciona. Estos son los estilos disponibles:
/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
¿Alguien ve dónde está el error? ¡Gracias!
Respuesta1
Esto es lo que usé para corregir metadatos incorrectos en Operador 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>
No olvide reemplazar el nombre de la fuente y fc-cache -f
luego.
Respuesta2
Me encontré con el mismo problema (con una fuente diferente). Este tipo de cosas es lo que funcionó para mí:
<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>
Básicamente, esto dice que siempre que se realice una búsqueda de la familia "Liga Operador Mono SSm", agregue "Medio" al final de la lista de estilos a buscar. Entonces, si se especifica algún otro estilo, tendrá prioridad, pero si no lo hay, se usará "Medio" para buscar una fuente.
...Creo. La documentación de fontconfig es un poco confusa para ser honesto.