home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 November / CPNL0711.ISO / communic / email / Evolution-2.8.2-2.msi / Data1.cab / cpp.lang < prev    next >
Extensible Markup Language  |  2007-03-07  |  5KB  |  165 lines

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE language SYSTEM "language.dtd">
  3. <language _name="C++" version="1.0" _section="Sources" 
  4.            mimetypes="text/x-c++;text/x-cpp;text/x-c-header;text/x-c++src;text/x-c++hdr">
  5.     
  6.     <escape-char>\</escape-char>
  7.  
  8.     <line-comment _name = "Line Comment" style= "Comment">
  9.         <start-regex>//</start-regex>
  10.     </line-comment>
  11.  
  12.     <block-comment _name = "Block Comment" style = "Comment">
  13.         <start-regex>/\*</start-regex>
  14.             <end-regex>\*/</end-regex>
  15.     </block-comment>
  16.  
  17.     <block-comment _name = "'#if 0' Comment" style = "Comment">
  18.         <start-regex>^[ \t]*#[ \t]*if[ \t]*0</start-regex>
  19.             <end-regex>[ \t]*#[ \t]*(endif|else)</end-regex>
  20.     </block-comment>
  21.  
  22.     <string _name = "String" style = "String" end-at-line-end = "TRUE">
  23.         <start-regex>"</start-regex>
  24.         <end-regex>"</end-regex>
  25.     </string>
  26.  
  27.     <syntax-item _name = "Include/Pragma" style = "Preprocessor">
  28.         <start-regex>^#[ \t]*(include|pragma)</start-regex>
  29.              <end-regex>\n</end-regex>
  30.     </syntax-item>
  31.  
  32.     <keyword-list _name = "Keywords" style = "Keyword" case-sensitive="TRUE">
  33.         <keyword>and</keyword>
  34.         <keyword>and_eq</keyword>
  35.         <keyword>asm</keyword>
  36.         <keyword>bitand</keyword>
  37.         <keyword>bitor</keyword>
  38.         <keyword>break</keyword>
  39.         <keyword>case</keyword>
  40.         <keyword>catch</keyword>
  41.         <keyword>compl</keyword>
  42.         <keyword>const_cast</keyword>
  43.         <keyword>continue</keyword>
  44.         <keyword>default</keyword>
  45.         <keyword>delete</keyword>
  46.         <keyword>do</keyword>
  47.         <keyword>dynamic_cast</keyword>
  48.               <keyword>else</keyword>
  49.         <keyword>for</keyword>
  50.         <keyword>fortran</keyword>
  51.         <keyword>friend</keyword>
  52.         <keyword>goto</keyword>
  53.         <keyword>if</keyword>
  54.         <keyword>new</keyword>
  55.         <keyword>not</keyword>
  56.         <keyword>not_eq</keyword>
  57.         <keyword>operator</keyword>
  58.         <keyword>or</keyword>
  59.         <keyword>or_eq</keyword>
  60.         <keyword>private</keyword>
  61.         <keyword>protected</keyword>
  62.         <keyword>public</keyword>
  63.         <keyword>reinterpret_cast</keyword>
  64.         <keyword>return</keyword>
  65.         <keyword>sizeof</keyword>
  66.         <keyword>static_cast</keyword>
  67.         <keyword>switch</keyword>
  68.         <keyword>this</keyword>
  69.         <keyword>throw</keyword>
  70.         <keyword>try</keyword>
  71.         <keyword>typeid</keyword>
  72.         <keyword>using</keyword>
  73.         <keyword>while</keyword>
  74.         <keyword>xor</keyword>
  75.         <keyword>xor_eq</keyword>
  76.     </keyword-list>
  77.  
  78.     <keyword-list _name = "Types" style = "Data Type" case-sensitive="TRUE">
  79.         <keyword>auto</keyword>
  80.         <keyword>bool</keyword>
  81.         <keyword>char</keyword>
  82.         <keyword>class</keyword>
  83.         <keyword>const</keyword>
  84.         <keyword>double</keyword>
  85.               <keyword>enum</keyword>
  86.         <keyword>explicit</keyword>
  87.         <keyword>export</keyword>
  88.         <keyword>extern</keyword>
  89.         <keyword>float</keyword>
  90.         <keyword>inline</keyword>
  91.         <keyword>int</keyword>
  92.         <keyword>long</keyword>
  93.         <keyword>mutable</keyword>
  94.         <keyword>namespace</keyword>
  95.         <keyword>register</keyword>
  96.         <keyword>short</keyword>
  97.         <keyword>signed</keyword>
  98.         <keyword>static</keyword>
  99.         <keyword>struct</keyword>
  100.         <keyword>template</keyword>
  101.         <keyword>typedef</keyword>
  102.         <keyword>typename</keyword>
  103.         <keyword>union</keyword>
  104.         <keyword>unsigned</keyword>
  105.         <keyword>virtual</keyword>
  106.         <keyword>void</keyword>
  107.         <keyword>volatile</keyword>
  108.         <keyword>wchar_t</keyword>
  109.     </keyword-list>
  110.  
  111.     <string _name = "Character Constant" style = "String" end-at-line-end = "TRUE">
  112.         <start-regex>'</start-regex>
  113.         <end-regex>'</end-regex>
  114.     </string>
  115.  
  116.     <pattern-item _name = "Decimal" style = "Decimal">
  117.         <regex>\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b</regex>
  118.     </pattern-item>
  119.  
  120.     <pattern-item _name = "Floating Point Number" style = "Floating Point">
  121.         <regex>\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?</regex>
  122.     </pattern-item>
  123.  
  124.     <pattern-item _name = "Octal Number" style = "Base-N Integer">
  125.         <regex>\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b</regex>
  126.     </pattern-item>
  127.  
  128.     <pattern-item _name = "Hex Number" style = "Base-N Integer">
  129.         <regex>\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b</regex>
  130.     </pattern-item>
  131.  
  132.     <keyword-list _name = "Common Macro" style = "Preprocessor" case-sensitive="TRUE">
  133.         <keyword>NULL</keyword>
  134.         <keyword>TRUE</keyword>
  135.         <keyword>FALSE</keyword>
  136.         <keyword>MAX</keyword>
  137.         <keyword>MIN</keyword>
  138.         <keyword>__LINE__</keyword>
  139.         <keyword>__DATA__</keyword>
  140.         <keyword>__FILE__</keyword>
  141.         <keyword>__TIME__</keyword>
  142.         <keyword>__STDC__</keyword>
  143.         <keyword>false</keyword>
  144.         <keyword>true</keyword>
  145.     </keyword-list>
  146.  
  147.     <keyword-list _name = "Preprocessor Definitions" style = "Preprocessor" case-sensitive="TRUE"
  148.         match-empty-string-at-beginning = "FALSE"
  149.         match-empty-string-at-end = "TRUE"
  150.         beginning-regex = "^[ \t]*#[ \t]*">
  151.         <keyword>if</keyword>
  152.         <keyword>ifdef</keyword>
  153.         <keyword>ifndef</keyword>
  154.         <keyword>else</keyword>
  155.         <keyword>elif</keyword>
  156.         <keyword>define</keyword>
  157.         <keyword>endif</keyword>
  158.         <keyword>undef</keyword>
  159.         <keyword>error</keyword>
  160.         <keyword>pragma</keyword>
  161.         <keyword>line</keyword>
  162.     </keyword-list>
  163.  
  164. </language>
  165.