<?xml version="1.0" encoding="utf-8"?>

<!-- 
ChucK syntax highlighting
Written by Ezra Altahan
Created 12/05/2010 | Updated 16/10/2016
Version 1.1

hello@exr.be
https://github.com/ei
-->

<SyntaxDefinition name="ChucK" extensions=".ck">
    
    <Environment> 
        <Default color="Black" bgcolor="#FFFFFF"/>
        <Selection color="Black" bgcolor="#C3C3FF"/>
        <LineNumbers color="Gray" bgcolor="#FFFFFF"/>
        <CaretMarker color="#F0F0F1"/>
        <VRuler color="#E0E0E5"/>
        
        <FoldLine color="#A0A0A0" bgcolor="#FFFFFF"/>
        <FoldMarker color="Black" bgcolor="#FFFFFF"/>
        <SelectedFoldLine color="Black" bgcolor="#FFFFFF"/>
        
        <EOLMarkers color="#CACAD2"/>
        <SpaceMarkers color="#B6B6C0"/>
        <TabMarkers color="#B6B6C0"/>
        <InvalidLines color="#B6B6C0"/>
    </Environment>
    
    <Properties>
        <Property name="LineComment" value="//"/>
        <Property name="BlockCommentBegin" value="/*"/>
        <Property name="BlockCommentEnd" value="*/"/>
    </Properties>
    
    <Digits name="Digits" color="#BF382A"/>
    
    <RuleSets>
        <RuleSet ignorecase="false">
        
        <Delimiters>&amp;~!@%^*()-+=|\#/{}[]:;"'&lt;&gt;,.?</Delimiters>
        
            <Span name="LineComment" stopateol="true" color="Green" bold="false" italic="false">
                <Begin>//</Begin>
            </Span>
            
            <Span name="BlockComment" stopateol="false" color="Green" bold="false" italic="false">
                <Begin>/*</Begin>
                <End>*/</End>
            </Span>
            
            <Span name="String" stopateol="true" color="#808080" bold="false" italic="false" escapecharacter='"'>
                <Begin>"</Begin>
                <End>"</End>
            </Span>
            
            <Span name="Char" stopateol="true" color="#808080" bold="false" italic="false">
                <Begin>'</Begin>
                <End>'</End>
            </Span>
                                
            <KeyWords name="Keywords1" color="Blue" bold="false">
                <Key word="NULL"/>
                <Key word="break"/>
                <Key word="class"/>
                <Key word="const"/>
                <Key word="continue"/>
                <Key word="do"/>
                <Key word="else"/>
                <Key word="extends"/>
                <Key word="false"/>
                <Key word="for"/>
                <Key word="fun"/>
                <Key word="function"/>
                <Key word="goto"/>
                <Key word="if"/>
                <Key word="maybe"/>
                <Key word="me"/>
                <Key word="new"/>
                <Key word="null"/>
                <Key word="private"/>
                <Key word="protected"/>
                <Key word="public"/>
                <Key word="repeat"/>
                <Key word="return"/>
                <Key word="spork"/>
                <Key word="switch"/>
                <Key word="true"/>
                <Key word="until"/>
                <Key word="while"/>
            </KeyWords>
            
            <KeyWords name="Keywords2" color="DarkViolet" bold="false">
                <Key word="dur"/>
                <Key word="float"/>
                <Key word="int"/>
                <Key word="string"/>
                <Key word="time"/>
                <Key word="void"/>
            </KeyWords>
            
            <KeyWords name="Keywords3" color="Teal" bold="false">
                <Key word="adc"/>
                <Key word="blackhole"/>
                <Key word="dac"/>
                <Key word="now"/>
            </KeyWords>
            
            <KeyWords name="Keywords4" color="#BF382A" bold="false">
                <Key word="day"/>
                <Key word="hour"/>
                <Key word="minute"/>
                <Key word="ms"/>
                <Key word="samp"/>
                <Key word="second"/>
                <Key word="week"/>
            </KeyWords>
        </RuleSet>
    </RuleSets>
</SyntaxDefinition>
