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

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE language SYSTEM "language.dtd">
  3. <!--
  4.     Proposed language specification for CSS (Cascading Style Sheet) files.
  5.  
  6.     Reference used:
  7.          http://www.w3.org/TR/CSS2/
  8.  
  9.      Tested with:
  10.          http://www.simplebits.com/css/simple.css
  11.  
  12.     Submitted by Scott Martin (scott@coffeeblack.org)
  13. -->
  14. <language _name="CSS" version="1.0" _section="Others" mimetypes="text/css">
  15.     
  16.     <escape-char>\</escape-char>
  17.     
  18.     <string _name="String" style="String" end-at-line-end="FALSE">
  19.         <start-regex>"</start-regex>
  20.         <end-regex>"</end-regex>
  21.     </string>
  22.  
  23.     <string _name="String 2" style="String" end-at-line-end="FALSE">
  24.         <start-regex>'</start-regex>
  25.         <end-regex>'</end-regex>
  26.     </string>
  27.  
  28.     <block-comment _name="Block Comment" style="Comment">
  29.         <start-regex>/\*</start-regex>
  30.         <end-regex>\*/</end-regex>
  31.     </block-comment>
  32.  
  33.     <line-comment _name="Line Comment" style="Comment">
  34.         <start-regex>//</start-regex>
  35.     </line-comment>
  36.     
  37.     <!--
  38.         Escaped unicode characters can contain either 6 hexadecimal characters
  39.         or 1-5 hex characters followed by one whitespace character.
  40.     -->
  41.     <pattern-item _name="Unicode Character Reference" style="Others 2">
  42.         <regex>\\([a-fA-F0-9]{1,5}[ \t]|[a-fA-F0-9]{6})</regex>
  43.     </pattern-item>
  44.     
  45.     <!--
  46.         Brackets define a declaration block, parentheses define functions.
  47.     -->
  48.     <pattern-item _name="Punctuators" style="Others 3">
  49.         <regex>[{}();,]</regex>
  50.     </pattern-item>
  51.     
  52.     <!--
  53.         For CSS 2-style selectors: tag[attr="value"].
  54.     -->
  55.     <pattern-item _name="Attribute Value Delimiters" style="Others 2">
  56.         <regex>(\[|\])</regex>
  57.     </pattern-item>
  58.     
  59.     <pattern-item _name="Operators" style="Function">
  60.         <regex>[@%~|!=]</regex>
  61.     </pattern-item>
  62.     
  63.     <!--
  64.         Used to combine selectors. Example syntax:
  65.  
  66.             body * div#ID.className > p + ul li:first-child
  67.     -->
  68.     <pattern-item _name="Selector Grammar" style="Others 3">
  69.         <regex>[*#.>+]</regex>
  70.     </pattern-item>
  71.  
  72.     <!--
  73.         Pseudo-element rules. Good to have syntax highlighting for these
  74.         for mistypings.
  75.     -->
  76.     <keyword-list _name="Selector Pseudo Elements" style="Function">
  77.         <keyword>first-line</keyword>
  78.         <keyword>first-letter</keyword>
  79.         <keyword>before</keyword>
  80.         <keyword>after</keyword>
  81.     </keyword-list>
  82.     
  83.     <!--
  84.         Pseudo-class rules. Good to have syntax highlighting for these
  85.         for mistypings.
  86.     -->
  87.     <keyword-list _name="Selector Pseudo Classes" style="Function">
  88.         <keyword>first-child</keyword>
  89.         <keyword>link</keyword>
  90.         <keyword>visited</keyword>
  91.         <keyword>hover</keyword>
  92.         <keyword>active</keyword>
  93.         <keyword>focus</keyword>
  94.         <keyword>lang</keyword>
  95.     </keyword-list>
  96.     
  97.     <!--
  98.         At rules must occur at the start of a line.
  99.     -->
  100.     <keyword-list _name="At Rules" style="Preprocessor" beginning-regex="^[ \t]*@">
  101.         <keyword>charset</keyword>
  102.         <keyword>font-face</keyword>
  103.         <keyword>media</keyword>
  104.         <keyword>page</keyword>
  105.         <keyword>import</keyword>
  106.     </keyword-list>
  107.     
  108.     <!--
  109.         Hexadecimal method of specifying colors. Can either be 3 or 6 in
  110.         length: #ffcc00 = #fc0.
  111.     -->
  112.     <pattern-item _name="Hexadecimal Color" style="Base-N Integer">
  113.         <regex>#([a-fA-F0-9]{3}|[a-fA-F0-9]{6})</regex>
  114.     </pattern-item>
  115.     
  116.     <!--
  117.         CSS functions, such as rgb(), clip(), or lang().
  118.     -->
  119.     <syntax-item _name="Function" style="Function">
  120.         <start-regex>[a-zA-Z][a-z0-9-]+\(</start-regex>
  121.         <end-regex>\)</end-regex>
  122.     </syntax-item>
  123.     
  124.     <!--
  125.         Value length specifier. Unless it is 0, must always be like: -1.2em.
  126.     -->
  127.     <pattern-item _name="Dimension" style="Floating Point">
  128.         <regex>[\+-]?([0-9]+|[0-9]*\.[0-9]+)(%|e(m|x)|p(x|t|c)|in|ft|(m|c)m|k?Hz|deg|g?rad|m?s)</regex>
  129.     </pattern-item>
  130.     
  131.     <!--
  132.         For values like: z-index: 2;
  133.         +/- before 0 is not allowed.
  134.     -->
  135.     <pattern-item _name="Number" style="Decimal">
  136.         <regex>\b(0|[\+-]?[1-9][0-9]*)</regex>
  137.     </pattern-item>
  138.     
  139.     <!--
  140.         Unicode range values.
  141.     -->    
  142.     <pattern-item _name="Unicode Range" style="Others 2">
  143.         <regex>[uU]\+[a-fA-F0-9]{1,6}(-[a-fA-F0-9]{1,6})?</regex>
  144.     </pattern-item>
  145.     
  146.     <!--
  147.         Upgrades a rule set's importance when several rule sets conflict.
  148.     -->
  149.     <pattern-item _name="Importance Modifier" style="Specials">
  150.         <regex>\![ \t]*important</regex>
  151.     </pattern-item>
  152.     
  153.     <keyword-list _name="Property Names" style="Keyword" case-sensitive="FALSE">
  154.         <keyword>azimuth</keyword>
  155.         <keyword>background</keyword>
  156.         <keyword>background-attachment</keyword>
  157.         <keyword>background-color</keyword>
  158.         <keyword>background-image</keyword>
  159.         <keyword>background-position</keyword>
  160.         <keyword>background-repeat</keyword>
  161.         <keyword>border</keyword>
  162.         <keyword>border-collapse</keyword>
  163.         <keyword>border-color</keyword>
  164.         <keyword>border-spacing</keyword>
  165.         <keyword>border-style</keyword>
  166.         <keyword>border-top</keyword>
  167.         <keyword>border-right</keyword>
  168.         <keyword>border-bottom</keyword>
  169.         <keyword>border-left</keyword>
  170.         <keyword>border-top-color</keyword>
  171.         <keyword>border-right-color</keyword>
  172.         <keyword>border-bottom-color</keyword>
  173.         <keyword>border-left-color</keyword>
  174.         <keyword>border-top-style</keyword>
  175.         <keyword>border-right-style</keyword>
  176.         <keyword>border-bottom-style</keyword>
  177.         <keyword>border-left-style</keyword>
  178.         <keyword>border-top-width</keyword>
  179.         <keyword>border-right-width</keyword>
  180.         <keyword>border-bottom-width</keyword>
  181.         <keyword>border-left-width</keyword>
  182.         <keyword>border-width</keyword>
  183.         <keyword>bottom</keyword>
  184.         <keyword>caption-side</keyword>
  185.         <keyword>clear</keyword>
  186.         <keyword>clip</keyword>
  187.         <keyword>color</keyword>
  188.         <keyword>content</keyword>
  189.         <keyword>counter-increment</keyword>
  190.         <keyword>counter-reset</keyword>
  191.         <keyword>cue</keyword>
  192.         <keyword>cue-after</keyword>
  193.         <keyword>cue-before</keyword>
  194.         <keyword>cursor</keyword>
  195.         <keyword>direction</keyword>
  196.         <keyword>display</keyword>
  197.         <keyword>elevation</keyword>
  198.         <keyword>empty-cells</keyword>
  199.         <keyword>float</keyword>
  200.         <keyword>font</keyword>        
  201.         <keyword>font-family</keyword>
  202.         <keyword>font-size</keyword>
  203.         <keyword>font-size-adjust</keyword>
  204.         <keyword>font-style</keyword>
  205.         <keyword>font-variant</keyword>
  206.         <keyword>font-weight</keyword>
  207.         <keyword>height</keyword>
  208.         <keyword>left</keyword>
  209.         <keyword>letter-spacing</keyword>
  210.         <keyword>line-height</keyword>
  211.         <keyword>list-style</keyword>
  212.         <keyword>list-style-image</keyword>
  213.         <keyword>list-style-position</keyword>
  214.         <keyword>list-style-type</keyword>
  215.         <keyword>margin</keyword>
  216.         <keyword>margin-top</keyword>
  217.         <keyword>margin-right</keyword>
  218.         <keyword>margin-bottom</keyword>
  219.         <keyword>margin-left</keyword>
  220.         <keyword>marker-offset</keyword>
  221.         <keyword>marks</keyword>
  222.         <keyword>max-height</keyword>
  223.         <keyword>max-width</keyword>
  224.         <keyword>min-height</keyword>
  225.         <keyword>min-width</keyword>
  226.         <keyword>orphans</keyword>
  227.         <keyword>outline</keyword>
  228.         <keyword>outline-color</keyword>
  229.         <keyword>outline-style</keyword>
  230.         <keyword>outline-width</keyword>
  231.         <keyword>overflow</keyword>
  232.         <keyword>padding</keyword>
  233.         <keyword>padding-top</keyword>
  234.         <keyword>padding-right</keyword>
  235.         <keyword>padding-bottom</keyword>
  236.         <keyword>padding-left</keyword>
  237.         <keyword>page</keyword>
  238.         <keyword>page-break-after</keyword>
  239.         <keyword>page-break-before</keyword>
  240.         <keyword>page-break-inside</keyword>
  241.         <keyword>pause</keyword>
  242.         <keyword>pause-after</keyword>
  243.         <keyword>pause-before</keyword>
  244.         <keyword>pitch</keyword>
  245.         <keyword>pitch-range</keyword>
  246.         <keyword>play-during</keyword>
  247.         <keyword>position</keyword>
  248.         <keyword>quotes</keyword>
  249.         <keyword>richness</keyword>
  250.         <keyword>right</keyword>
  251.         <keyword>size</keyword>
  252.         <keyword>speak</keyword>
  253.         <keyword>speak-header</keyword>
  254.         <keyword>speak-numerical</keyword>
  255.         <keyword>speak-punctuation</keyword>
  256.         <keyword>speech-rate</keyword>
  257.         <keyword>stress</keyword>
  258.         <keyword>table-layout</keyword>
  259.         <keyword>text-align</keyword>
  260.         <keyword>text-decoration</keyword>
  261.         <keyword>text-indent</keyword>
  262.         <keyword>text-shadow</keyword>
  263.         <keyword>text-transform</keyword>
  264.         <keyword>top</keyword>
  265.         <keyword>unicode-bidi</keyword>
  266.         <keyword>vertical-align</keyword>
  267.         <keyword>visibility</keyword>
  268.         <keyword>voice-family</keyword>
  269.         <keyword>volume</keyword>
  270.         <keyword>white-space</keyword>
  271.         <keyword>widows</keyword>
  272.         <keyword>width</keyword>
  273.         <keyword>word-spacing</keyword>
  274.         <keyword>z-index</keyword>
  275.     </keyword-list>
  276.     
  277.     <keyword-list _name="Known Property Values" style="Data Type" case-sensitive="FALSE">
  278.         <keyword>auto</keyword>
  279.         <keyword>none</keyword>
  280.         <keyword>inherit</keyword>
  281.         <keyword>transparent</keyword>
  282.         <keyword>hidden</keyword>
  283.         <keyword>left</keyword>
  284.         <keyword>right</keyword>
  285.         <keyword>top</keyword>
  286.         <keyword>bottom</keyword>
  287.         <keyword>center</keyword>        
  288.         <keyword>left-side</keyword>
  289.         <keyword>far-left</keyword>
  290.         <keyword>center-left</keyword>
  291.         <keyword>center-right</keyword>
  292.         <keyword>far-right</keyword>
  293.         <keyword>right-side</keyword>
  294.         <keyword>behind</keyword>
  295.         <keyword>leftwards</keyword>
  296.         <keyword>rightwards</keyword>
  297.         <keyword>aqua</keyword>
  298.         <keyword>black</keyword>
  299.         <keyword>blue</keyword>
  300.         <keyword>fuchsia</keyword>
  301.         <keyword>gray</keyword>
  302.         <keyword>green</keyword>
  303.         <keyword>lime</keyword>
  304.         <keyword>maroon</keyword>
  305.         <keyword>navy</keyword>
  306.         <keyword>olive</keyword>
  307.         <keyword>purple</keyword>
  308.         <keyword>red</keyword>
  309.         <keyword>silver</keyword>
  310.         <keyword>teal</keyword>
  311.         <keyword>white</keyword>
  312.         <keyword>yellow</keyword>
  313.         <keyword>repeat</keyword>
  314.         <keyword>repeat-x</keyword>
  315.         <keyword>repeat-y</keyword>
  316.         <keyword>no-repeat</keyword>
  317.         <keyword>scroll</keyword>
  318.         <keyword>fixed</keyword>
  319.         <keyword>thin</keyword>
  320.         <keyword>medium</keyword>
  321.         <keyword>thick</keyword>
  322.         <keyword>dotted</keyword>
  323.         <keyword>dashed</keyword>
  324.         <keyword>solid</keyword>
  325.         <keyword>double</keyword>
  326.         <keyword>groove</keyword>
  327.         <keyword>ridge</keyword>
  328.         <keyword>inset</keyword>
  329.         <keyword>outset</keyword>
  330.         <keyword>collapse</keyword>
  331.         <keyword>separate</keyword>
  332.         <keyword>open-quote</keyword>
  333.         <keyword>close-quote</keyword>
  334.         <keyword>no-open-quote</keyword>
  335.         <keyword>no-close-quote</keyword>
  336.         <keyword>cue-before</keyword>
  337.         <keyword>cue-after</keyword>
  338.         <keyword>crosshair</keyword>
  339.         <keyword>default</keyword>
  340.         <keyword>pointer</keyword>
  341.         <keyword>move</keyword>
  342.         <keyword>e-resize</keyword>
  343.         <keyword>ne-resize</keyword>
  344.         <keyword>nw-resize</keyword>
  345.         <keyword>n-resize</keyword>
  346.         <keyword>se-resize</keyword>
  347.         <keyword>sw-resize</keyword>
  348.         <keyword>s-resize</keyword>
  349.         <keyword>w-resize</keyword>
  350.         <keyword>text</keyword>
  351.         <keyword>wait</keyword>
  352.         <keyword>help</keyword>
  353.         <keyword>ltr</keyword>
  354.         <keyword>rlt</keyword>
  355.         <keyword>inline</keyword>
  356.         <keyword>block</keyword>
  357.         <keyword>list-item</keyword>
  358.         <keyword>run-in</keyword>
  359.         <keyword>compact</keyword>
  360.         <keyword>marker</keyword>
  361.         <keyword>table</keyword>
  362.         <keyword>inline-table</keyword>
  363.         <keyword>table-row-group</keyword>
  364.         <keyword>table-header-group</keyword>
  365.         <keyword>table-footer-group</keyword>
  366.         <keyword>table-row</keyword>
  367.         <keyword>table-column-group</keyword>
  368.         <keyword>table-column</keyword>
  369.         <keyword>table-cell</keyword>
  370.         <keyword>table-caption</keyword>
  371.         <keyword>below</keyword>
  372.         <keyword>level</keyword>
  373.         <keyword>above</keyword>
  374.         <keyword>higher</keyword>
  375.         <keyword>lower</keyword>
  376.         <keyword>show</keyword>
  377.         <keyword>hide</keyword>
  378.         <keyword>normal</keyword>
  379.         <keyword>italic</keyword>
  380.         <keyword>oblique</keyword>
  381.         <keyword>small-caps</keyword>
  382.         <keyword>bold</keyword>
  383.         <keyword>bolder</keyword>
  384.         <keyword>lighter</keyword>
  385.         <keyword>wider</keyword>
  386.         <keyword>narrower</keyword>
  387.         <keyword>ultra-condensed</keyword>
  388.         <keyword>extra-condensed</keyword>
  389.         <keyword>condensed</keyword>
  390.         <keyword>semi-condensed</keyword>
  391.         <keyword>semi-expanded</keyword>
  392.         <keyword>expanded</keyword>
  393.         <keyword>extra-expanded</keyword>
  394.         <keyword>ultra-expanded</keyword>
  395.         <keyword>inside</keyword>
  396.         <keyword>outside</keyword>
  397.         <keyword>disc</keyword>
  398.         <keyword>circle</keyword>
  399.         <keyword>square</keyword>
  400.         <keyword>decimal</keyword>
  401.         <keyword>decimal-leading-zero</keyword>
  402.         <keyword>lower-roman</keyword>
  403.         <keyword>upper-roman</keyword>
  404.         <keyword>lower-greek</keyword>
  405.         <keyword>lower-alpha</keyword>
  406.         <keyword>lower-latin</keyword>
  407.         <keyword>upper-alpha</keyword>
  408.         <keyword>upper-latin</keyword>
  409.         <keyword>hebrew</keyword>
  410.         <keyword>armenian</keyword>
  411.         <keyword>georgian</keyword>
  412.         <keyword>cjk-ideographic</keyword>
  413.         <keyword>hiragana</keyword>
  414.         <keyword>katakana</keyword>
  415.         <keyword>hiragana-iroha</keyword>
  416.         <keyword>katakana-iroha</keyword>
  417.         <keyword>crop</keyword>
  418.         <keyword>cross</keyword>
  419.         <keyword>invert</keyword>
  420.         <keyword>visible</keyword>
  421.         <keyword>scroll</keyword>
  422.         <keyword>always</keyword>
  423.         <keyword>avoid</keyword>
  424.         <keyword>x-low</keyword>
  425.         <keyword>low</keyword>
  426.         <keyword>medium</keyword>
  427.         <keyword>high</keyword>
  428.         <keyword>x-high</keyword>
  429.         <keyword>mix</keyword>
  430.         <keyword>repeat</keyword>
  431.         <keyword>static</keyword>
  432.         <keyword>relative</keyword>
  433.         <keyword>absolute</keyword>
  434.         <keyword>fixed</keyword>
  435.         <keyword>portait</keyword>
  436.         <keyword>landscape</keyword>
  437.         <keyword>spell-out</keyword>
  438.         <keyword>once</keyword>
  439.         <keyword>digits</keyword>
  440.         <keyword>continuous</keyword>
  441.         <keyword>code</keyword>
  442.         <keyword>x-slow</keyword>
  443.         <keyword>slow</keyword>
  444.         <keyword>fast</keyword>
  445.         <keyword>x-fast</keyword>
  446.         <keyword>faster</keyword>
  447.         <keyword>slower</keyword>
  448.         <keyword>justify</keyword>
  449.         <keyword>underline</keyword>
  450.         <keyword>overline</keyword>
  451.         <keyword>line-through</keyword>
  452.         <keyword>blink</keyword>
  453.         <keyword>capitalize</keyword>
  454.         <keyword>uppercase</keyword>
  455.         <keyword>lowercase</keyword>
  456.         <keyword>embed</keyword>
  457.         <keyword>bidi-override</keyword>
  458.         <keyword>baseline</keyword>
  459.         <keyword>sub</keyword>
  460.         <keyword>super</keyword>
  461.         <keyword>top</keyword>
  462.         <keyword>text-top</keyword>
  463.         <keyword>middle</keyword>
  464.         <keyword>text-bottom</keyword>
  465.         <keyword>silent</keyword>
  466.         <keyword>x-soft</keyword>
  467.         <keyword>soft</keyword>
  468.         <keyword>loud</keyword>
  469.         <keyword>x-loud</keyword>
  470.         <keyword>pre</keyword>
  471.         <keyword>nowrap</keyword>
  472.         <keyword>smaller</keyword>
  473.         <keyword>larger</keyword>
  474.         <keyword>xx-small</keyword>
  475.         <keyword>x-small</keyword>
  476.         <keyword>small</keyword>
  477.         <keyword>large</keyword>
  478.         <keyword>x-large</keyword>
  479.         <keyword>xx-large</keyword>
  480.         <keyword>serif</keyword>
  481.         <keyword>sans-serif</keyword>
  482.         <keyword>cursive</keyword>
  483.         <keyword>fantasy</keyword>
  484.         <keyword>monospace</keyword>                                        
  485.     </keyword-list>
  486. </language>
  487.