1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
|
<!DOCTYPE html>
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>test.mod</title>
<meta name="generator" content="KF5::SyntaxHighlighting - Definition (Modula-2) - Theme (Breeze Dark)"/>
</head><body style="background-color:#232629;color:#cfcfc2"><pre>
<span style="color:#7a7c7d;font-style:italic">(* ISO Modula-2 Syntax highlighting test *)</span>
<span style="color:#7a7c7d;font-style:italic">(* dialect tags *)</span>
<span style="color:#7a7c7d;font-weight:bold">(*!m2iso*)</span>
<span style="color:#7a7c7d;font-style:italic">(* pragmas *)</span>
<span style="color:#27ae60;font-weight:bold"><*foo*></span>
<span style="color:#7a7c7d;font-style:italic">(* foldable comments *)</span>
<span style="color:#7a7c7d;font-style:italic">(* foo bar baz</span>
<span style="color:#7a7c7d;font-style:italic"> (* nested comment *)</span>
<span style="color:#7a7c7d;font-style:italic"> bam boo bee bop *)</span>
<span style="color:#7a7c7d;font-style:italic">(* built-in constants *)</span>
<span style="color:#7f8c8d;font-weight:bold">FALSE</span> <span style="color:#7f8c8d;font-weight:bold">INTERRUPTIBLE</span> <span style="color:#7f8c8d;font-weight:bold">NIL</span> <span style="color:#7f8c8d;font-weight:bold">TRUE</span> <span style="color:#7f8c8d;font-weight:bold">UNINTERRUPTIBLE</span>
<span style="color:#7a7c7d;font-style:italic">(* built-in types *)</span>
<span style="color:#2980b9;font-weight:bold">BOOLEAN</span> <span style="color:#2980b9;font-weight:bold">BITSET</span> <span style="color:#2980b9;font-weight:bold">CARDINAL</span> <span style="color:#2980b9;font-weight:bold">COMPLEX</span> <span style="color:#2980b9;font-weight:bold">CHAR</span> <span style="color:#2980b9;font-weight:bold">INTEGER</span> <span style="color:#2980b9;font-weight:bold">LONGCOMPLEX</span> <span style="color:#2980b9;font-weight:bold">LONGREAL</span>
<span style="color:#2980b9;font-weight:bold">PROC</span> <span style="color:#2980b9;font-weight:bold">PROTECTION</span> <span style="color:#2980b9;font-weight:bold">REAL</span>
<span style="color:#7a7c7d;font-style:italic">(* built-in procedures *)</span>
<span style="color:#7f8c8d;font-weight:bold">ABS</span> <span style="color:#7f8c8d;font-weight:bold">ALLOCATE</span> <span style="color:#7f8c8d;font-weight:bold">CAP</span> <span style="color:#7f8c8d;font-weight:bold">CHR</span> <span style="color:#7f8c8d;font-weight:bold">CMPLX</span> <span style="color:#7f8c8d;font-weight:bold">DEALLOCATE</span> <span style="color:#7f8c8d;font-weight:bold">DEC</span> <span style="color:#7f8c8d;font-weight:bold">DISPOSE</span> <span style="color:#7f8c8d;font-weight:bold">EXCL</span> <span style="color:#7f8c8d;font-weight:bold">FLOAT</span> <span style="color:#7f8c8d;font-weight:bold">HALT</span> <span style="color:#7f8c8d;font-weight:bold">HIGH</span>
<span style="color:#7f8c8d;font-weight:bold">INC</span> <span style="color:#7f8c8d;font-weight:bold">INCL</span> <span style="color:#7f8c8d;font-weight:bold">INT</span> <span style="color:#7f8c8d;font-weight:bold">LENGTH</span> <span style="color:#7f8c8d;font-weight:bold">LFLOAT</span> <span style="color:#7f8c8d;font-weight:bold">MAX</span> <span style="color:#7f8c8d;font-weight:bold">MIN</span> <span style="color:#7f8c8d;font-weight:bold">NEW</span> <span style="color:#7f8c8d;font-weight:bold">ODD</span> <span style="color:#7f8c8d;font-weight:bold">ORD</span> <span style="color:#7f8c8d;font-weight:bold">RE</span> <span style="color:#7f8c8d;font-weight:bold">SIZE</span> <span style="color:#7f8c8d;font-weight:bold">TRUNC</span> <span style="color:#7f8c8d;font-weight:bold">VAL</span>
<span style="color:#7a7c7d;font-style:italic">(* reserved words *)</span>
<span style="font-weight:bold">AND</span> <span style="font-weight:bold">ARRAY</span> <span style="font-weight:bold">BEGIN</span> <span style="font-weight:bold">BY</span> <span style="font-weight:bold">CASE</span> <span style="font-weight:bold">CONST</span> <span style="font-weight:bold">DEFINITION</span> <span style="font-weight:bold">DIV</span> <span style="font-weight:bold">DO</span> <span style="font-weight:bold">ELSE</span> <span style="font-weight:bold">ELSIF</span> <span style="font-weight:bold">END</span> <span style="font-weight:bold">EXIT</span> <span style="font-weight:bold">EXPORT</span>
<span style="font-weight:bold">FINALLY</span> <span style="font-weight:bold">FOR</span> <span style="font-weight:bold">FORWARD</span> <span style="font-weight:bold">FROM</span> <span style="font-weight:bold">IF</span> <span style="font-weight:bold">IMPLEMENTATION</span> <span style="font-weight:bold">IMPORT</span> <span style="font-weight:bold">IN</span> <span style="font-weight:bold">LOOP</span> <span style="font-weight:bold">MOD</span> <span style="font-weight:bold">MODULE</span> <span style="font-weight:bold">NOT</span> <span style="font-weight:bold">OF</span> <span style="font-weight:bold">OR</span>
<span style="font-weight:bold">PACKEDSET</span> <span style="font-weight:bold">POINTER</span> <span style="font-weight:bold">PROCEDURE</span> <span style="font-weight:bold">QUALIFIED</span> <span style="font-weight:bold">RECORD</span> <span style="font-weight:bold">REM</span> <span style="font-weight:bold">REPEAT</span> <span style="font-weight:bold">RETRY</span> <span style="font-weight:bold">RETURN</span> <span style="font-weight:bold">SET</span> <span style="font-weight:bold">THEN</span>
<span style="font-weight:bold">TO</span> <span style="font-weight:bold">TYPE</span> <span style="font-weight:bold">UNTIL</span> <span style="font-weight:bold">VAR</span> <span style="font-weight:bold">WHILE</span> <span style="font-weight:bold">WITH</span>
<span style="color:#7a7c7d;font-style:italic">(* unsafe facilities *)</span>
<span style="color:#7a7c7d;font-style:italic">(* module *)</span>
<span style="color:#da4453;font-weight:bold">SYSTEM</span>
<span style="color:#7a7c7d;font-style:italic">(* constants *)</span>
<span style="color:#da4453;font-weight:bold">BITSPERLOC</span> <span style="color:#da4453;font-weight:bold">BITSPERWORD</span>
<span style="color:#7a7c7d;font-style:italic">(* types *)</span>
<span style="color:#da4453;font-weight:bold">ADDRESS</span> <span style="color:#da4453;font-weight:bold">LOC</span> <span style="color:#da4453;font-weight:bold">WORD</span>
<span style="color:#7a7c7d;font-style:italic">(* procedures *)</span>
<span style="color:#da4453;font-weight:bold">ADDADR</span> <span style="color:#da4453;font-weight:bold">ADR</span> <span style="color:#da4453;font-weight:bold">CAST</span> <span style="color:#da4453;font-weight:bold">DIFADR</span> <span style="color:#da4453;font-weight:bold">MAKEADR</span> <span style="color:#da4453;font-weight:bold">ROTATE</span> <span style="color:#da4453;font-weight:bold">SHIFT</span> <span style="color:#da4453;font-weight:bold">SUBADR</span> <span style="color:#da4453;font-weight:bold">TSIZE</span>
<span style="color:#7a7c7d;font-style:italic">(* number literals *)</span>
<span style="font-weight:bold">CONST</span>
n = <span style="color:#f67400">1000</span>; r = <span style="color:#f67400">1.234</span>; x = <span style="color:#f67400">0FFFFH</span>; c = <span style="color:#f67400">077C</span>;
<span style="color:#7a7c7d;font-style:italic">(* quoted literals *)</span>
<span style="font-weight:bold">CONST</span>
apostrophe = <span style="color:#f44f4f">"'"</span>; doublequote = <span style="color:#f44f4f">'"'</span>;
single =<span style="color:#f44f4f">'foobar'</span>; double = <span style="color:#f44f4f">"bazbam"</span>;
<span style="color:#7a7c7d;font-style:italic">(* sample code *)</span>
<span style="font-weight:bold">TYPE</span> Foo = <span style="font-weight:bold">RECORD</span>
bar : Baz;
bam : Boo
<span style="font-weight:bold">END</span>; <span style="color:#7a7c7d;font-style:italic">(* Foobar *)</span>
<span style="font-weight:bold">VAR</span>
foo, bar, baz : <span style="color:#2980b9;font-weight:bold">CARDINAL</span>;
<span style="font-weight:bold">IF</span> foo > bar <span style="font-weight:bold">THEN</span>
baz := bam
<span style="font-weight:bold">ELSE</span>
baz := boo
<span style="font-weight:bold">END</span>;
<span style="color:#7a7c7d;font-style:italic">(* EOF *)</span>
</pre></body></html>
|