home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / m_modula.zip / m_modula.fte
Text File  |  1998-09-01  |  3KB  |  107 lines

  1. colorize MODULA {
  2.     SyntaxParser       = 'SIMPLE';
  3.  
  4.     color {
  5.         { 'Normal',      '-7' },
  6.         { 'Number',      '-C' },
  7. #        { 'HexNumber',   '-D' },
  8.         { 'Punctuation', '-6' },
  9.         { 'String',      '-E' },
  10.         { 'Comment',     '-A' },
  11. #        { 'Command',     '-A' }, # assembler
  12.     };
  13.  
  14. keyword '1' {
  15.    "abs",
  16.    "bitset", "boolean",
  17.    "cardinal", "card", "cap", "chr", "char", "complex", "cmplx",
  18.    "dec", "dispose",
  19.    "excl",
  20.    "false", "float",
  21.    "halt", "high",
  22.    "im", "inc", "incl", "int", "integer", "interruptible",
  23.    "length", "lfloat", "longcomplex", "longreal",
  24.    "max", "min",
  25.    "new", "nil",
  26.    "odd", "ord",
  27.    "proc", "protection",
  28.    "re", "real",
  29.    "size",
  30.    "true", "trunc",
  31.    "uninterruptible",
  32.    "val"
  33. };
  34.  
  35.  
  36. keyword '-' {
  37.    'and', 'array',
  38.    'begin', 'by',
  39.    'case', 'const',
  40.    'definition', 'div', 'do',
  41.    'else', 'elsif', 'end', 'exit', 'except', 'export',
  42.    'finally', 'for', 'forward', 'from',
  43.    'if', 'implementation', 'import', 'in',
  44.    'loop',
  45.    'mod', 'module',
  46.    'not',
  47.    'of', 'or',
  48.    'packedset', 'pointer', 'procedure',
  49.    'qualified',
  50.    'record', 'rem', 'retry', 'repeat', 'return',
  51.    'set',
  52.    'then', 'to', 'type',
  53.    'until',
  54.    'var',
  55.    'while', 'with'
  56.     };
  57.  
  58.     h_state 0 { 'Normal' }
  59.     h_trans { 4, '-s', 'a-zA-Z_', 'Normal' }
  60.     h_trans { 1, '<', '(*', 'Comment' }
  61.     h_trans { 2, '<', '"', 'String' }
  62.     h_trans { 3, '<', '\'', 'String' }
  63.     h_trans { 5, '<s', '0-9', 'Number' }
  64.     h_trans { 0, 'S', '_a-zA-Z0-9', 'Punctuation' }
  65.  
  66.     h_state 1 { 'Comment' }
  67.     h_trans { 0, '>', '*)', 'Comment' }
  68.  
  69.     h_state 2 { 'String' }
  70.     h_trans { 0, '>', '"', 'String' }
  71.     h_trans { 0, '$', '', 'String' }
  72.  
  73.     h_state 3 { 'String' }
  74.     h_trans { 0, '>', '\'', 'String' }
  75.     h_trans { 0, '$', '', 'String' }
  76.  
  77.     h_state 4 { 'Normal' }
  78.     h_trans { 0, '$', '', 'Normal' }
  79.     h_wtype { 0, 0, 0, 'i', 'a-zA-Z0-9_' }
  80.  
  81.     h_state 5 { 'Number' }
  82.     h_trans { 0, '-S', '0-9', 'Normal' }
  83.     h_trans { 0, '$', '', 'Normal' }
  84.  
  85.  
  86. }
  87.  
  88. mode MODULA: PLAIN {      # Modula-2 Mode
  89.     FileNameRx          = /\.\c{{MOD}|{DEF}}$/;
  90.     HilitOn             = 1;
  91.     Colorizer           = 'MODULA';
  92.     AutoIndent          = 1;
  93.     IndentMode          = 'PLAIN';
  94.     TabSize             = 4;
  95.     SpaceTabs           = 1;
  96.     MatchCase           = 1;
  97.     Trim                = 1;
  98.     MultiLineHilit      = 1;
  99.     AutoHilitParen      = 1;
  100.  
  101.     SaveFolds           = 2;      # save fold info at end of line
  102.     CommentStart        = ' (*';
  103.     CommentEnd          = '*)';
  104.  
  105. #   RoutineRegexp       = '^{procedure}';
  106. }
  107.