home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / ftes46b5.zip / ftes46b5 / config / m_pascal.fte < prev    next >
Text File  |  1997-05-30  |  3KB  |  87 lines

  1. colorize PASCAL {
  2.     SyntaxParser       = 'SIMPLE';
  3.  
  4.     color {
  5.         { 'Normal',      'Lang_Default' },
  6.         { 'Number',      'Lang_DecimalNumber' },
  7.         { 'HexNumber',   'Lang_HexNumber' },
  8.         { 'Punctuation', 'Lang_Punctuation' },
  9.         { 'String',      'Lang_String' },
  10.         { 'Comment',     'Lang_Comment' },
  11.         { 'Command',     'Lang_Assembler' }, # assembler
  12.     };
  13.  
  14.     keyword 'Editor_Keywords' {
  15.         'program', 'const', 'type', 'var', 
  16.         'begin', 'end', 'array', 'set', 'record', 'string', 
  17.         'if', 'then', 'else', 'while', 'for', 'to', 'downto', 'do', 'with',
  18.         'repeat', 'until', 'case', 'of', 'goto', 'exit', 'label',
  19.         'procedure', 'function', 'nil', 'file', 'and', 'or', 'not', 'xor',
  20.         'div', 'mod',
  21.         
  22.         'unit', 'uses', 'implementation', 'interface', 'external', 
  23.         'asm', 'inline', 'object', 'constructor', 'destructor',
  24.         'virtual', 'far', 'assembler', 'near', 'inherited', 
  25.     };
  26.  
  27.     h_state 0 { 'Normal' }
  28.     h_trans { 8, '', 'asm', 'Command' }
  29.     h_trans { 5, '-s', 'a-zA-Z_', 'Normal' }
  30.     h_trans { 1, '<', '(*', 'Comment' }
  31.     h_trans { 2, '<', '{', 'Comment' }
  32.     h_trans { 3, '<', '"', 'String' }
  33.     h_trans { 4, '<', '\'', 'String' }
  34.     h_trans { 6, '<', '0x', 'HexNumber' }
  35.     h_trans { 7, '<s', '0-9', 'Number' }
  36.     h_trans { 0, 'S', '_a-zA-Z0-9', 'Punctuation' }
  37.  
  38.     h_state 1 { 'Comment' }
  39.     h_trans { 0, '>', '*)', 'Comment' }
  40.  
  41.     h_state 2 { 'Comment' }
  42.     h_trans { 0, '>', '}', 'Comment' }
  43.  
  44.     h_state 3 { 'String' }
  45.     h_trans { 0, '>', '"', 'String' }
  46.     h_trans { 0, '$', '', 'String' }
  47.  
  48.     h_state 4 { 'String' }
  49.     h_trans { 0, '>', '\'', 'String' }
  50.     h_trans { 0, '$', '', 'String' }
  51.  
  52.     h_state 5 { 'Normal' }
  53.     h_trans { 0, '$', '', 'Normal' }
  54.     h_wtype { 0, 0, 0, 'i', 'a-zA-Z0-9_' }
  55.  
  56.     h_state 6 { 'HexNumber' }
  57.     h_trans { 0, '-S', '0-9A-Fa-f', 'Normal' }
  58.     h_trans { 0, '$', '', 'Normal' }
  59.  
  60.     h_state 7 { 'Number' }
  61.     h_trans { 0, '-S', '0-9', 'Normal' }
  62.     h_trans { 0, '$', '', 'Normal' }
  63.  
  64.     h_state 8 { 'Command' }
  65.     h_trans { 0, '', 'end', 'Command' }
  66. }
  67.  
  68. mode PASCAL: PLAIN {      # Pascal Mode
  69.     FileNameRx          = /\.\cPAS$/;
  70.     HilitOn             = 1;
  71.     Colorizer           = 'PASCAL';
  72.     AutoIndent          = 1;
  73.     IndentMode          = 'PLAIN';
  74.     TabSize             = 8;
  75.     SpaceTabs           = 1;
  76.     MatchCase           = 1;
  77.     Trim                = 1;
  78.     MultiLineHilit      = 1;
  79.     AutoHilitParen      = 1;
  80.  
  81.     SaveFolds           = 2;      # save fold info at end of line
  82.     CommentStart        = ' (*';
  83.     CommentEnd          = '*)';
  84.  
  85.     RoutineRegexp       = '^{procedure}|{function}';
  86. }
  87.