doc/rules-format.txt: document include support
authorRan Benita <ran@unusedvar.com>
Sat, 18 Jan 2020 21:06:58 +0000 (23:06 +0200)
committerRan Benita <ran@unusedvar.com>
Sat, 18 Jan 2020 21:06:58 +0000 (23:06 +0200)
Signed-off-by: Ran Benita <ran@unusedvar.com>
doc/rules-format.txt

index e8959fd..d97d8e8 100644 (file)
@@ -40,7 +40,9 @@ Grammar
 (It might be helpful to look at a file like rules/evdev along with
 this grammer. Comments, whitespace, etc. are not shown.)
 
-File         ::= { "!" (Group | RuleSet) }
+File         ::= { "!" (Include | Group | RuleSet) }
+
+Include      ::= "include" <ident>
 
 Group        ::= GroupName "=" { GroupElement } "\n"
 GroupName    ::= "$"<ident>
@@ -59,6 +61,18 @@ KccgstValue  ::= <ident>
 
 Notes:
 
+- Include processes the rules in the file path specified in the ident,
+  in order. %-expanasion is performed, as follows:
+
+  %%:
+    A literal %.
+
+  %H:
+    The value of the HOME environment variable.
+
+  %S:
+    The system-installed rules directory (usually /usr/share/X11/xkb/rules).
+
 - The order of values in a Rule must be the same as the Mapping it
   follows. The mapping line determines the meaning of the values in
   the rules which follow in the RuleSet.