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

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE language SYSTEM "language.dtd">
  3. <language _name="Pascal" version="1.0" _section="Sources" mimetypes="text/x-pascal">
  4.  
  5.     <string _name = "String" style = "String" end-at-line-end = "FALSE">
  6.         <start-regex>[uUrR]?'</start-regex>
  7.         <end-regex>'</end-regex>
  8.     </string>
  9.  
  10.     <pattern-item _name = "Number" style = "Decimal">
  11.         <regex>\b(([0-9]+)|([0-9]+\.[0-9]+([Ee][-]?[0-9]+)?))\b</regex>
  12.     </pattern-item>
  13.  
  14.     <!-- FIXME WHY DOESN'T THIS WORK? -->
  15.     <pattern-item _name = "Hex Number" style = "Decimal">
  16.         <regex>\b\$[0-9a-fA-F]*\b</regex>
  17.     </pattern-item>
  18.  
  19.     <line-comment _name = "Line Comment" style= "Comment" end-at-line-end = "TRUE">
  20.         <start-regex>//</start-regex>
  21.     </line-comment>
  22.  
  23.     <block-comment _name = "Block Comment 1" style= "Comment" end-at-line-end = "FALSE">
  24.         <start-regex>\(\*</start-regex>
  25.         <end-regex>\*\)</end-regex>
  26.     </block-comment>
  27.  
  28.     <block-comment _name = "Block Comment 2" style= "Comment" end-at-line-end = "FALSE">
  29.         <start-regex>\{[^\$]</start-regex>
  30.         <end-regex>\}</end-regex>
  31.     </block-comment>
  32.  
  33.     <block-comment _name = "Preprocessor Defines" style= "Preprocessor" end-at-line-end = "TRUE">
  34.         <start-regex>\{\$</start-regex>
  35.         <end-regex>\}</end-regex>
  36.     </block-comment>
  37.  
  38.     <keyword-list _name = "General Format" style = "Keyword" case-sensitive="FALSE">
  39.         <!-- File Header -->
  40.         <keyword>Program</keyword>
  41.         <keyword>Library</keyword>
  42.         <keyword>Unit</keyword>
  43.         
  44.         <!-- File Sections -->
  45.         <keyword>Uses</keyword>
  46.         <keyword>Interface</keyword>
  47.         <keyword>Implementation</keyword>
  48.         
  49.         <!-- Unit Initialization/Finalization -->
  50.         <keyword>Initialization</keyword>
  51.         <keyword>Finalization</keyword>
  52.         
  53.         <!-- Code Block -->
  54.         <keyword>Begin</keyword>
  55.         <keyword>End</keyword>
  56.         
  57.         <!-- Variable and Constant -->
  58.         <keyword>Var</keyword>
  59.         <keyword>Const</keyword>
  60.     </keyword-list>
  61.  
  62.     <keyword-list _name = "Functions and Function Modifiers" style = "Keyword" case-sensitive="FALSE">
  63.         <!-- Function Declarations -->
  64.         <keyword>Function</keyword>
  65.         <keyword>Procedure</keyword>
  66.         
  67.         <!-- Function Modifiers -->
  68.         <keyword>Overload</keyword>
  69.  
  70.         <keyword>cdecl</keyword>        
  71.     </keyword-list>
  72.  
  73.     <keyword-list _name = "Boolean Bitwise Operators" style = "Keyword" case-sensitive="FALSE">
  74.         <keyword>if</keyword>
  75.         <keyword>then</keyword>
  76.         <keyword>else</keyword>
  77.  
  78.         <keyword>is</keyword>
  79.  
  80.         <keyword>and</keyword>
  81.         <keyword>not</keyword>
  82.         <keyword>or</keyword>
  83.         <keyword>xor</keyword>
  84.  
  85.         <keyword>shr</keyword>
  86.         <keyword>shl</keyword>
  87.     </keyword-list>
  88.  
  89.     <keyword-list _name = "Math Operators" style = "Keyword" case-sensitive="FALSE">
  90.         <keyword>div</keyword>
  91.         <keyword>mod</keyword>
  92.     </keyword-list>
  93.  
  94.     <keyword-list _name = "Loop, Flow, and Exceptions Keywords" style = "Keyword" case-sensitive="FALSE">
  95.         <keyword>while</keyword>
  96.         <keyword>do</keyword>
  97.  
  98.         <keyword>for</keyword>
  99.         <keyword>to</keyword>
  100.  
  101.         <keyword>case</keyword>
  102.         <keyword>of</keyword>
  103.  
  104.         <keyword>repeat</keyword>
  105.         <keyword>until</keyword>
  106.  
  107.         <keyword>break</keyword>
  108.         <keyword>continue</keyword>
  109.         
  110.         <keyword>try</keyword>
  111.         <keyword>except</keyword>
  112.         <keyword>finally</keyword>
  113.         <keyword>raise</keyword>
  114.     </keyword-list>
  115.  
  116.     <keyword-list _name = "Type, Class and Object Keywords" style = "Keyword" case-sensitive="FALSE">
  117.         <keyword>Type</keyword>
  118.  
  119.         <!-- Arrays and Records -->
  120.         <keyword>Packed</keyword>
  121.  
  122.         <keyword>Array</keyword>
  123.         <keyword>Record</keyword>
  124.  
  125.         <!-- Object, Class, and Interface  -->
  126.         <keyword>Object</keyword>
  127.         <keyword>Class</keyword>
  128.         <keyword>Interface</keyword>
  129.  
  130.         <!-- Class Visibility Sections -->
  131.         <keyword>Public</keyword>
  132.         <keyword>Private</keyword>
  133.         <keyword>Protected</keyword>
  134.  
  135.         <!-- Class Instance Initialization/Finalization -->
  136.         <keyword>Constructor</keyword>
  137.         <keyword>Destructor</keyword>
  138.  
  139.         <!-- Class Function Modifiers -->
  140.         <keyword>Virtual</keyword>
  141.         <keyword>Abstract</keyword>
  142.         <keyword>Override</keyword>
  143.  
  144.         <!-- Class Properties -->
  145.         <keyword>Property</keyword>
  146.         <keyword>Read</keyword>
  147.         <keyword>Write</keyword>
  148.         <keyword>default</keyword>
  149.                 
  150.         <!-- Type casting -->
  151.         <keyword>With</keyword>
  152.         <keyword>As</keyword>
  153.         
  154.         <!-- Class Instance Reference-->
  155.         <keyword>self</keyword>
  156.  
  157.         <!-- Class Inherited Functions -->
  158.         <keyword>Inherited</keyword>
  159.     </keyword-list>
  160.  
  161.     <keyword-list _name = "Builtin Types" style = "Data Type" case-sensitive="FALSE">
  162.         <keyword>Char</keyword>
  163.         <keyword>String</keyword>
  164.         <keyword>Integer</keyword>
  165.         <keyword>Real</keyword>
  166.         <keyword>Boolean</keyword>
  167.         <keyword>Pointer</keyword>
  168.     </keyword-list>
  169.  
  170.     <keyword-list _name = "Builtin Functions" style = "Keyword" case-sensitive="FALSE">
  171.         <!--  Conversions -->
  172.         <keyword>chr</keyword>
  173.         <keyword>ord</keyword>
  174.         <keyword>succ</keyword>
  175.         <keyword>pred</keyword>
  176.  
  177.         <!-- Absolute Unsigned Value -->
  178.         <keyword>abs</keyword>
  179.  
  180.         <!-- Rounding/Truncating -->
  181.         <keyword>round</keyword>
  182.         <keyword>trunc</keyword>
  183.  
  184.         <!-- Square & Square Root -->
  185.         <keyword>sqr</keyword>
  186.         <keyword>sqrt</keyword>
  187.  
  188.         <!-- Trig Functions -->
  189.         <keyword>arctan</keyword>
  190.         <keyword>cos</keyword>
  191.         <keyword>sin</keyword>
  192.  
  193.         <!-- Exponents -->
  194.         <keyword>exp</keyword>
  195.         <keyword>ln</keyword>
  196.  
  197.         <!-- Predicates -->
  198.         <keyword>odd</keyword>
  199.         <keyword>eof</keyword>
  200.         <keyword>eoln</keyword>
  201.     </keyword-list>
  202.  
  203.     <keyword-list _name = "Builtin Values" style = "Keyword" case-sensitive="FALSE">
  204.         <keyword>nil</keyword>
  205.         <keyword>False</keyword>
  206.         <keyword>True</keyword>
  207.     </keyword-list>
  208. </language>
  209.