]> git.wh0rd.org - fontconfig.git/blobdiff - fonts.dtd
Fix hidden variable warning.
[fontconfig.git] / fonts.dtd
index 14306d179b314f290bd72f8704f341b620558ef3..6c9a33df41560db3f87efe68e81a0047cf5df4eb 100644 (file)
--- a/fonts.dtd
+++ b/fonts.dtd
@@ -3,6 +3,7 @@
                      cache | 
                      include | 
                      config |
+                     selectfont |
                      match | 
                      alias)* >
 
  -->
 <!ELEMENT rescan (int)>
 
+<!--
+    Edit list of available fonts at startup/reload time
+ -->
+<!ELEMENT selectfont (rejectfont | acceptfont)* >
+
+<!ELEMENT rejectfont (glob | pattern)*>
+
+<!ELEMENT acceptfont (glob | pattern)*>
+
+<!ELEMENT glob (#PCDATA)>
+
+<!ELEMENT pattern (patelt)*>
+
+<!ELEMENT patelt (constant)*>
+<!ATTLIST patelt
+         name CDATA    #REQUIRED>
+
+<!ELEMENT constant (int|double|string|matrix|bool|charset|const)>
 
 <!ELEMENT alias (family*, prefer?, accept?, default?)>
 <!ELEMENT prefer (family)*>
 
 <!ENTITY % expr 'int|double|string|matrix|bool|charset
                |name|const
-               |or|and|eq|not_eq|less|less_eq|more|more_eq
-               |plus|minus|times|divide|not|if'>
+               |or|and|eq|not_eq|less|less_eq|more|more_eq|contains|not_contains
+               |plus|minus|times|divide|not|if|floor|ceil|round|trunc'>
 
 <!--
     Match and edit patterns.
 
     if 'qual' is 'any', then the match succeeds if any value in the field matches.
     if 'qual' is 'all', then the match succeeds only if all values match.
+    if 'qual' is 'first', then the match succeeds only if the first value matches.
+    if 'qual' is 'not_first', then the match succeeds only if any value other than
+       the first matches.
+    For match elements with target=font, if test 'target' is 'pattern',
+    then the test is applied to the pattern used in matching rather than
+    to the resulting font.
 -->
 <!ELEMENT test (%expr;)*>
 <!ATTLIST test 
-         qual (any|all)    "any"
+         qual (any|all|first|not_first)    "any"
          name CDATA        #REQUIRED
-         compare (eq|not_eq|less|less_eq|more|more_eq) "eq">
+         target (pattern|font|default)         "default"
+         compare (eq|not_eq|less|less_eq|more|more_eq|contains|not_contains)   "eq">
 
 <!--
     Edit a field in a pattern
 <!ELEMENT edit (%expr;)*>
 <!ATTLIST edit
          name CDATA        #REQUIRED
-         mode (assign|assign_replace|prepend|append|prepend_first|append_last) "assign">
+         mode (assign|assign_replace|prepend|append|prepend_first|append_last) "assign"
+         binding (weak|strong|same) "weak">
 
 <!--
     Elements of expressions follow
 <!ELEMENT string (#PCDATA)>
 <!ATTLIST string xml:space (default|preserve) 'preserve'>
 <!ELEMENT matrix (double,double,double,double)>
-<!ELEMENT bool (true|false)>
+<!ELEMENT bool (#PCDATA)>
 <!ELEMENT charset (#PCDATA)>
 <!ATTLIST charset xml:space (default|preserve) 'preserve'>
 <!ELEMENT name (#PCDATA)>
 <!ELEMENT less_eq ((%expr;), (%expr;))>
 <!ELEMENT more ((%expr;), (%expr;))>
 <!ELEMENT more_eq ((%expr;), (%expr;))>
+<!ELEMENT contains ((%expr;), (%expr;))>
+<!ELEMENT not_contains ((%expr;), (%expr;))>
 <!ELEMENT plus (%expr;)*>
 <!ELEMENT minus (%expr;)*>
 <!ELEMENT times (%expr;)*>
 <!ELEMENT divide (%expr;)*>
 <!ELEMENT not (%expr;)>
 <!ELEMENT if ((%expr;), (%expr;), (%expr;))>
+<!ELEMENT floor (%expr;)>
+<!ELEMENT ceil (%expr;)>
+<!ELEMENT round (%expr;)>
+<!ELEMENT trunc (%expr;)>