]> gitweb.factorcode.org Git - factor.git/blobdiff - basis/xmode/modes/lotos.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / lotos.xml
index bd1d4b78508aa5ee23242205e3b73f3b2e1ec955..d47cc91cec63e3ef10ef9cd57027bfdec9b1febe 100644 (file)
-<?xml version="1.0"?>\r
-\r
-<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
-\r
-<!--\r
-  lotos.xml    K. J. Turner <kjt@cs.stir.ac.uk>        24th April 2003\r
-\r
-  LOTOS (Language Of Temporal Ordering Specification) is an ISO standard\r
-  (8807) for a formal specification language used in communications and system\r
-  specification generally.\r
-\r
-  This mode does not (yet) deal with ISO 15437 (E-LOTOS, Enhanced LOTOS).\r
-\r
-  Auto-indentation occurs if the following are at the start of a line\r
-  (ignoring leading white space): "let", "library", "process", "specification",\r
-  "type", , ">>". This also happens if the following appear on their own (i.e.\r
-  also ignoring trailing white space): "(", "[]", "[>", "||" "|||", "|[...]|",\r
-  "[...]->".\r
--->\r
-\r
-<MODE>\r
-  <PROPS>\r
-    <PROPERTY NAME="commentStart" VALUE="(*"/>\r
-    <PROPERTY NAME="commentEnd" VALUE="*)"/>\r
-    <PROPERTY NAME="indentNextLines"\r
-      VALUE="\s*(let|library|process|specification|type|>>).*|\s*(\(|\[\]|\[>|\|\||\|\|\||\|\[.*\]\||\[.*\]\s*->)\s*"/>\r
-  </PROPS>\r
-\r
-  <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
-    <!-- Comments -->\r
-    <SPAN TYPE="COMMENT1">\r
-      <BEGIN>(*</BEGIN>\r
-      <END>*)</END>\r
-    </SPAN>\r
-\r
-    <!-- Standard Operators -->\r
-    <SEQ TYPE="OPERATOR">&gt;&gt;</SEQ>\r
-    <SEQ TYPE="OPERATOR">[&gt;</SEQ>\r
-    <SEQ TYPE="OPERATOR">|||</SEQ>\r
-    <SEQ TYPE="OPERATOR">||</SEQ>\r
-    <SEQ TYPE="OPERATOR">|[</SEQ>\r
-    <SEQ TYPE="OPERATOR">]|</SEQ>\r
-    <SEQ TYPE="OPERATOR">[]</SEQ>\r
-\r
-    <KEYWORDS>\r
-      <!-- Reserved Words -->\r
-      <KEYWORD1>accept</KEYWORD1>\r
-      <KEYWORD1>actualizedby</KEYWORD1>\r
-      <KEYWORD1>any</KEYWORD1>\r
-      <KEYWORD1>behavior</KEYWORD1>\r
-      <KEYWORD1>behaviour</KEYWORD1>\r
-      <KEYWORD1>choice</KEYWORD1>\r
-      <KEYWORD1>endlib</KEYWORD1>\r
-      <KEYWORD1>endproc</KEYWORD1>\r
-      <KEYWORD1>endspec</KEYWORD1>\r
-      <KEYWORD1>endtype</KEYWORD1>\r
-      <KEYWORD1>eqns</KEYWORD1>\r
-      <KEYWORD1>exit</KEYWORD1>\r
-      <KEYWORD1>for</KEYWORD1>\r
-      <KEYWORD1>forall</KEYWORD1>\r
-      <KEYWORD1>formaleqns</KEYWORD1>\r
-      <KEYWORD1>formalopns</KEYWORD1>\r
-      <KEYWORD1>formalsorts</KEYWORD1>\r
-      <KEYWORD1>hide</KEYWORD1>\r
-      <KEYWORD1>i</KEYWORD1>\r
-      <KEYWORD1>in</KEYWORD1>\r
-      <KEYWORD1>is</KEYWORD1>\r
-      <KEYWORD1>let</KEYWORD1>\r
-      <KEYWORD1>library</KEYWORD1>\r
-      <KEYWORD1>noexit</KEYWORD1>\r
-      <KEYWORD1>of</KEYWORD1>\r
-      <KEYWORD1>ofsort</KEYWORD1>\r
-      <KEYWORD1>opnnames</KEYWORD1>\r
-      <KEYWORD1>opns</KEYWORD1>\r
-      <KEYWORD1>par</KEYWORD1>\r
-      <KEYWORD1>process</KEYWORD1>\r
-      <KEYWORD1>renamedby</KEYWORD1>\r
-      <KEYWORD1>sortnames</KEYWORD1>\r
-      <KEYWORD1>sorts</KEYWORD1>\r
-      <KEYWORD1>specification</KEYWORD1>\r
-      <KEYWORD1>stop</KEYWORD1>\r
-      <KEYWORD1>type</KEYWORD1>\r
-      <KEYWORD1>using</KEYWORD1>\r
-      <KEYWORD1>where</KEYWORD1>\r
-\r
-      <!-- Standard Library Sorts -->\r
-      <KEYWORD2>Bit</KEYWORD2>\r
-      <KEYWORD2>BitString</KEYWORD2>\r
-      <KEYWORD2>Bool</KEYWORD2>\r
-      <KEYWORD2>DecDigit</KEYWORD2>\r
-      <KEYWORD2>DecString</KEYWORD2>\r
-      <KEYWORD2>Element</KEYWORD2>\r
-      <KEYWORD2>FBool</KEYWORD2>\r
-      <KEYWORD2>HexDigit</KEYWORD2>\r
-      <KEYWORD2>HexString</KEYWORD2>\r
-      <KEYWORD2>OctDigit</KEYWORD2>\r
-      <KEYWORD2>Octet</KEYWORD2>\r
-      <KEYWORD2>OctString</KEYWORD2>\r
-      <KEYWORD2>Nat</KEYWORD2>\r
-      <KEYWORD2>NonEmptyString</KEYWORD2>\r
-      <KEYWORD2>OctetString</KEYWORD2>\r
-      <KEYWORD2>Set</KEYWORD2>\r
-      <KEYWORD2>String</KEYWORD2>\r
-\r
-      <!-- Standard Library Types (where differing from Sorts) -->\r
-      <KEYWORD2>BasicNaturalNumber</KEYWORD2>\r
-      <KEYWORD2>BasicNonEmptyString</KEYWORD2>\r
-      <KEYWORD2>BitNatRepr</KEYWORD2>\r
-      <KEYWORD2>Boolean</KEYWORD2>\r
-      <KEYWORD2>FBoolean</KEYWORD2>\r
-      <KEYWORD2>DecNatRepr</KEYWORD2>\r
-      <KEYWORD2>HexNatRepr</KEYWORD2>\r
-      <KEYWORD2>NatRepresentations</KEYWORD2>\r
-      <KEYWORD2>NaturalNumber</KEYWORD2>\r
-      <KEYWORD2>OctNatRepr</KEYWORD2>\r
-      <KEYWORD2>RicherNonEmptyString</KEYWORD2>\r
-      <KEYWORD2>String0</KEYWORD2>\r
-      <KEYWORD2>String1</KEYWORD2>\r
-\r
-      <!-- Standard Library Literals -->\r
-      <LITERAL1>false</LITERAL1>\r
-      <LITERAL1>true</LITERAL1>\r
-    </KEYWORDS>\r
-  </RULES>\r
-</MODE>\r
+<?xml version="1.0"?>
+
+<!DOCTYPE MODE SYSTEM "xmode.dtd">
+
+<!--
+  lotos.xml    K. J. Turner <kjt@cs.stir.ac.uk>        24th April 2003
+
+  LOTOS (Language Of Temporal Ordering Specification) is an ISO standard
+  (8807) for a formal specification language used in communications and system
+  specification generally.
+
+  This mode does not (yet) deal with ISO 15437 (E-LOTOS, Enhanced LOTOS).
+
+  Auto-indentation occurs if the following are at the start of a line
+  (ignoring leading white space): "let", "library", "process", "specification",
+  "type", , ">>". This also happens if the following appear on their own (i.e.
+  also ignoring trailing white space): "(", "[]", "[>", "||" "|||", "|[...]|",
+  "[...]->".
+-->
+
+<MODE>
+  <PROPS>
+    <PROPERTY NAME="commentStart" VALUE="(*"/>
+    <PROPERTY NAME="commentEnd" VALUE="*)"/>
+    <PROPERTY NAME="indentNextLines"
+      VALUE="\s*(let|library|process|specification|type|>>).*|\s*(\(|\[\]|\[>|\|\||\|\|\||\|\[.*\]\||\[.*\]\s*->)\s*"/>
+  </PROPS>
+
+  <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">
+    <!-- Comments -->
+    <SPAN TYPE="COMMENT1">
+      <BEGIN>(*</BEGIN>
+      <END>*)</END>
+    </SPAN>
+
+    <!-- Standard Operators -->
+    <SEQ TYPE="OPERATOR">&gt;&gt;</SEQ>
+    <SEQ TYPE="OPERATOR">[&gt;</SEQ>
+    <SEQ TYPE="OPERATOR">|||</SEQ>
+    <SEQ TYPE="OPERATOR">||</SEQ>
+    <SEQ TYPE="OPERATOR">|[</SEQ>
+    <SEQ TYPE="OPERATOR">]|</SEQ>
+    <SEQ TYPE="OPERATOR">[]</SEQ>
+
+    <KEYWORDS>
+      <!-- Reserved Words -->
+      <KEYWORD1>accept</KEYWORD1>
+      <KEYWORD1>actualizedby</KEYWORD1>
+      <KEYWORD1>any</KEYWORD1>
+      <KEYWORD1>behavior</KEYWORD1>
+      <KEYWORD1>behaviour</KEYWORD1>
+      <KEYWORD1>choice</KEYWORD1>
+      <KEYWORD1>endlib</KEYWORD1>
+      <KEYWORD1>endproc</KEYWORD1>
+      <KEYWORD1>endspec</KEYWORD1>
+      <KEYWORD1>endtype</KEYWORD1>
+      <KEYWORD1>eqns</KEYWORD1>
+      <KEYWORD1>exit</KEYWORD1>
+      <KEYWORD1>for</KEYWORD1>
+      <KEYWORD1>forall</KEYWORD1>
+      <KEYWORD1>formaleqns</KEYWORD1>
+      <KEYWORD1>formalopns</KEYWORD1>
+      <KEYWORD1>formalsorts</KEYWORD1>
+      <KEYWORD1>hide</KEYWORD1>
+      <KEYWORD1>i</KEYWORD1>
+      <KEYWORD1>in</KEYWORD1>
+      <KEYWORD1>is</KEYWORD1>
+      <KEYWORD1>let</KEYWORD1>
+      <KEYWORD1>library</KEYWORD1>
+      <KEYWORD1>noexit</KEYWORD1>
+      <KEYWORD1>of</KEYWORD1>
+      <KEYWORD1>ofsort</KEYWORD1>
+      <KEYWORD1>opnnames</KEYWORD1>
+      <KEYWORD1>opns</KEYWORD1>
+      <KEYWORD1>par</KEYWORD1>
+      <KEYWORD1>process</KEYWORD1>
+      <KEYWORD1>renamedby</KEYWORD1>
+      <KEYWORD1>sortnames</KEYWORD1>
+      <KEYWORD1>sorts</KEYWORD1>
+      <KEYWORD1>specification</KEYWORD1>
+      <KEYWORD1>stop</KEYWORD1>
+      <KEYWORD1>type</KEYWORD1>
+      <KEYWORD1>using</KEYWORD1>
+      <KEYWORD1>where</KEYWORD1>
+
+      <!-- Standard Library Sorts -->
+      <KEYWORD2>Bit</KEYWORD2>
+      <KEYWORD2>BitString</KEYWORD2>
+      <KEYWORD2>Bool</KEYWORD2>
+      <KEYWORD2>DecDigit</KEYWORD2>
+      <KEYWORD2>DecString</KEYWORD2>
+      <KEYWORD2>Element</KEYWORD2>
+      <KEYWORD2>FBool</KEYWORD2>
+      <KEYWORD2>HexDigit</KEYWORD2>
+      <KEYWORD2>HexString</KEYWORD2>
+      <KEYWORD2>OctDigit</KEYWORD2>
+      <KEYWORD2>Octet</KEYWORD2>
+      <KEYWORD2>OctString</KEYWORD2>
+      <KEYWORD2>Nat</KEYWORD2>
+      <KEYWORD2>NonEmptyString</KEYWORD2>
+      <KEYWORD2>OctetString</KEYWORD2>
+      <KEYWORD2>Set</KEYWORD2>
+      <KEYWORD2>String</KEYWORD2>
+
+      <!-- Standard Library Types (where differing from Sorts) -->
+      <KEYWORD2>BasicNaturalNumber</KEYWORD2>
+      <KEYWORD2>BasicNonEmptyString</KEYWORD2>
+      <KEYWORD2>BitNatRepr</KEYWORD2>
+      <KEYWORD2>Boolean</KEYWORD2>
+      <KEYWORD2>FBoolean</KEYWORD2>
+      <KEYWORD2>DecNatRepr</KEYWORD2>
+      <KEYWORD2>HexNatRepr</KEYWORD2>
+      <KEYWORD2>NatRepresentations</KEYWORD2>
+      <KEYWORD2>NaturalNumber</KEYWORD2>
+      <KEYWORD2>OctNatRepr</KEYWORD2>
+      <KEYWORD2>RicherNonEmptyString</KEYWORD2>
+      <KEYWORD2>String0</KEYWORD2>
+      <KEYWORD2>String1</KEYWORD2>
+
+      <!-- Standard Library Literals -->
+      <LITERAL1>false</LITERAL1>
+      <LITERAL1>true</LITERAL1>
+    </KEYWORDS>
+  </RULES>
+</MODE>