aboutsummaryrefslogtreecommitdiff
path: root/fontconfig
diff options
context:
space:
mode:
Diffstat (limited to 'fontconfig')
-rw-r--r--fontconfig/doc/fontconfig-user.sgml35
-rw-r--r--fontconfig/src/fcxml.c16
2 files changed, 48 insertions, 3 deletions
diff --git a/fontconfig/doc/fontconfig-user.sgml b/fontconfig/doc/fontconfig-user.sgml
index 92d0db8bf..f7632ea67 100644
--- a/fontconfig/doc/fontconfig-user.sgml
+++ b/fontconfig/doc/fontconfig-user.sgml
@@ -677,6 +677,41 @@ $XDG_CONFIG_HOME/fontconfig/fonts.conf
<match target="font">
<edit name="rgba" mode="assign"><const>rgb</const></edit>
</match>
+<!--
+ use WenQuanYi Zen Hei font when serif is requested for Chinese
+-->
+<match>
+ <!--
+ If you don't want to use WenQuanYi Zen Hei font for zh-tw etc,
+ you can use zh-cn instead of zh.
+ Please note, even if you set zh-cn, it still matches zh.
+ if you don't like it, you can use compare="eq"
+ instead of compare="contains".
+ -->
+ <test name="lang" compare="contains">
+ <string>zh</string>
+ </test>
+ <test name="family">
+ <string>serif</string>
+ </test>
+ <edit name="family" mode="prepend">
+ <string>WenQuanYi Zen Hei</string>
+ </edit>
+</match>
+<!--
+ use VL Gothic font when sans-serif is requested for Japanese
+-->
+<match>
+ <test name="lang" compare="contains">
+ <string>ja</string>
+ </test>
+ <test name="family">
+ <string>sans-serif</string>
+ </test>
+ <edit name="family" mode="prepend">
+ <string>VL Gothic</string>
+ </edit>
+</match>
</fontconfig>
</programlisting>
</refsect2>
diff --git a/fontconfig/src/fcxml.c b/fontconfig/src/fcxml.c
index 9563ad847..8c0d1f2ba 100644
--- a/fontconfig/src/fcxml.c
+++ b/fontconfig/src/fcxml.c
@@ -2043,6 +2043,7 @@ FcParseInclude (FcConfigParse *parse)
FcChar8 *s;
const FcChar8 *attr;
FcBool ignore_missing = FcFalse;
+ FcBool deprecated = FcFalse;
FcChar8 *prefix = NULL;
s = FcStrBufDoneStatic (&parse->pstack->str);
@@ -2054,6 +2055,9 @@ FcParseInclude (FcConfigParse *parse)
attr = FcConfigGetAttribute (parse, "ignore_missing");
if (attr && FcConfigLexBool (parse, (FcChar8 *) attr) == FcTrue)
ignore_missing = FcTrue;
+ attr = FcConfigGetAttribute (parse, "deprecated");
+ if (attr && FcConfigLexBool (parse, (FcChar8 *) attr) == FcTrue)
+ deprecated = FcTrue;
attr = FcConfigGetAttribute (parse, "prefix");
if (attr && FcStrCmp (attr, (const FcChar8 *)"xdg") == 0)
prefix = FcConfigXdgConfigHome ();
@@ -2079,9 +2083,15 @@ FcParseInclude (FcConfigParse *parse)
parse->error = FcTrue;
else
{
- attr = FcConfigGetAttribute (parse, "deprecated");
- if (attr && FcConfigLexBool (parse, (FcChar8 *) attr) == FcTrue)
- FcConfigMessage (parse, FcSevereWarning, "reading configurations from %s is deprecated.\n", s);
+ FcChar8 *filename;
+
+ filename = FcConfigFilename(s);
+ if ((deprecated == FcTrue) && filename)
+ {
+ FcConfigMessage (parse, FcSevereWarning, "reading configurations from %s is deprecated.", s);
+ }
+ if(filename)
+ FcStrFree(filename);
}
FcStrBufDestroy (&parse->pstack->str);