home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / fte0827.zip / config / m_xp.fte < prev    next >
Text File  |  1999-05-16  |  3KB  |  121 lines

  1. # eXPErimental C syntax parser
  2. # does everything that internal does except function( and label:
  3.  
  4. colorize XPE {
  5.     SyntaxParser = 'SIMPLE';
  6.     
  7.     color {
  8.         { 'Normal',        '-7' },
  9.         { 'Keyword',       '-F' },
  10.         { 'Number',        '-C' },
  11.         { 'HexNumber',     '-D' },
  12.         { 'OctalNumber',   '-C' },
  13.         { 'Punctuation',   '-3' },
  14.         { 'String',        '-E' },
  15.         { 'Comment',       '-6' },
  16.         { 'CPreprocessor', '-A' },
  17.         { 'Function',      '-B' },
  18.         { 'Label',         '-C' },
  19.     };
  20.  
  21.     h_state 0 { 'Normal' }
  22.     h_trans { 13, '-s', 'a-zA-Z_', 'Normal' }
  23.     h_trans { 1, '', '/*', 'Comment' }
  24.     h_trans { 2, '', '//', 'Comment' }
  25.     h_trans { 3, '^', '#', 'CPreprocessor' }
  26.     h_trans { 4, '', '"', 'String' }
  27.     h_trans { 5, '', '\'', 'String' }
  28.     h_trans { 10, '', '0x', 'HexNumber' }
  29.     h_trans { 11, '', '0', 'OctalNumber' }
  30.     h_trans { 12, 's', '0-9', 'Number' }
  31.     h_trans { 0, 'S', '_a-zA-Z0-9', 'Punctuation' }
  32.  
  33.     h_state 1 { 'Comment' }
  34.     h_trans { 0, '', '*/', 'Comment' }
  35.  
  36.     h_state 2 { 'Comment' }
  37.     h_trans { 0, '$', '', 'Comment' }
  38.  
  39.     h_state 3 { 'CPreprocessor' }
  40.     h_trans { 17, '-s', 'a-zA-Z_', 'Normal' }
  41.     h_trans { 0, '$', '', 'CPreprocessor' }
  42.     h_trans { 3, 'qQ', '\\', 'CPreprocessor' }
  43.     h_trans { 8, '', '/*', 'Comment' }
  44.     h_trans { 9, '', '//', 'Comment' }
  45.     h_trans { 6, '', '"', 'String' }
  46.     h_trans { 7, '', '\'', 'String' }
  47.     h_trans { 14, '', '0x', 'HexNumber' }
  48.     h_trans { 15, '', '0', 'OctalNumber' }
  49.     h_trans { 16, 's', '0-9', 'Number' }
  50.  
  51.     h_state 4 { 'String' }
  52.     h_trans { 0, '', '"', 'String' }
  53.     h_trans { 0, '$', '', 'String' }
  54.     h_trans { 4, 'Qq', '\\', 'String' }
  55.  
  56.     h_state 5 { 'String' }
  57.     h_trans { 0, '', '\'', 'String' }
  58.     h_trans { 0, '$', '', 'String' }
  59.     h_trans { 5, 'Qq', '\\', 'String' }
  60.  
  61.     h_state 6 { 'String' }
  62.     h_trans { 3, '', '"', 'String' }
  63.     h_trans { 3, '$', '', 'String' }
  64.     h_trans { 6, 'Qq', '\\', 'String' }
  65.  
  66.     h_state 7 { 'String' }
  67.     h_trans { 3, '', '\'', 'String' }
  68.     h_trans { 3, '$', '', 'String' }
  69.     h_trans { 7, 'qQ', '\\', 'String' }
  70.  
  71.     h_state 8 { 'Comment' }
  72.     h_trans { 3, '', '*/', 'Comment' }
  73.  
  74.     h_state 9 { 'Comment' }
  75.     h_trans { 0, '$', '', 'Comment' }
  76.  
  77.     h_state 10 { 'HexNumber' }
  78.     h_trans { 0, '-S', '0-9A-Fa-f', 'Normal' }
  79.     h_trans { 0, '$', '', 'Normal' }
  80.  
  81.     h_state 11 { 'OctalNumber' }
  82.     h_trans { 0, '-S', '0-7', 'Normal' }
  83.     h_trans { 0, '$', '', 'Normal' }
  84.  
  85.     h_state 12 { 'Number' }
  86.     h_trans { 0, '-S', '0-9', 'Normal' }
  87.     h_trans { 0, '$', '', 'Normal' }
  88.  
  89.     h_state 13 { 'Normal' }
  90.     h_trans { 0, '-S', 'a-zA-Z0-9_', 'Punctuation' }
  91.     h_trans { 0, '$', '', 'Normal' }
  92.  
  93.     h_state 14 { 'HexNumber' }
  94.     h_trans { 3, '-S', '0-9A-Fa-f', 'Normal' }
  95.     h_trans { 3, '$', '', 'Normal' }
  96.  
  97.     h_state 15 { 'OctalNumber' }
  98.     h_trans { 3, '-S', '0-7', 'Normal' }
  99.     h_trans { 3, '$', '', 'Normal' }
  100.  
  101.     h_state 16 { 'Number' }
  102.     h_trans { 3, '-S', '0-9', 'Normal' }
  103.     h_trans { 3, '$', '', 'Normal' }
  104.  
  105.     h_state 17 { 'CPreprocessor' }
  106.     h_trans { 3, '-S', 'a-zA-Z0-9_', 'Punctuation' }
  107.     h_trans { 3, '$', '', 'Normal' }
  108. }
  109.  
  110. mode XPE: PLAIN {
  111.     FileNameRx          = /\.\cXPE$/;
  112.     HilitOn             = 1;
  113.     Colorizer           = 'XPE';
  114.     AutoHilitParen      = 1;
  115.     
  116.     SaveFolds           = 2;      # save fold info at end of line
  117.     CommentStart        = ' /*';
  118.     CommentEnd          = '*/';
  119. }
  120.