<?xml version="1.0"?>
<!-- syntaxdefinition for C# 2000 by Mike Krueger -->

<SyntaxDefinition name = "C#" extensions = ".cs">
	
	<Properties>
		<Property name="LineComment" value="//"/>
	</Properties>
	
	<Digits name = "Digits" bold = "false" italic = "false" color = "DarkBlue"/>

	<RuleSets>
		<RuleSet ignorecase="false">
			<Delimiters>&amp;&lt;&gt;~!%^*()-+=|\#/{}[]:;"' ,	.?</Delimiters>
			
			<Span name = "PreprocessorDirectives" rule = "PreprocessorSet" bold="false" italic="false" color="Green" stopateol = "true">
				<Begin>#</Begin>
			</Span>
			
			<Span name = "DocLineComment" rule = "DocCommentSet" bold = "false" italic = "false" color = "Green" stopateol = "true">
				<Begin bold = "false" italic = "false" color = "Gray">///</Begin>
			</Span>
		  
		  	<Span name = "LineComment" rule = "CommentMarkerSet" bold = "false" italic = "false" color = "Green" stopateol = "true">
			   	<Begin>//@!/@</Begin>
		  	</Span>
		  
			<Span name = "BlockComment" rule = "CommentMarkerSet" bold = "false" italic = "false" color = "Green" stopateol = "false">
				<Begin>/*</Begin>
				<End>*/</End>
			</Span>
		  	
			<Span name = "String" bold = "false" italic = "false" color = "Blue" stopateol = "true">
				<Begin>"</Begin>
				<End>"</End>
			</Span>
			
			<Span name = "MultiLineString" bold = "false" italic = "false" color = "Blue" stopateol = "false" noescapesequences="true">
				<Begin>@@"</Begin>
				<End>"</End>
			</Span>
			
			<Span name = "Char" bold = "false" italic = "false" color = "Magenta" stopateol = "true">
				<Begin>&apos;</Begin>
				<End>&apos;</End>
			</Span>
			
			<MarkPrevious bold = "true" italic = "false" color = "MidnightBlue">(</MarkPrevious>
			
			<KeyWords name = "Punctuation" bold = "false" italic = "false" color = "DarkGreen">
				<Key word = "?" />
				<Key word = "," />
				<Key word = "." />
				<Key word = ";" />
				<Key word = "(" />
				<Key word = ")" />
				<Key word = "[" />
				<Key word = "]" />
				<Key word = "{" />
				<Key word = "}" />
				<Key word = "+" />
				<Key word = "-" />
				<Key word = "/" />
				<Key word = "%" />
				<Key word = "*" />
				<Key word = "&lt;" />
				<Key word = "&gt;" />
				<Key word = "^" />
				<Key word = "=" />
				<Key word = "~" />
				<Key word = "!" />
				<Key word = "|" />
			    <Key word = "&amp;" />
		  	</KeyWords>
		  
			<KeyWords name = "AccessKeywords" bold="true" italic="false" color="Black">
				<Key word = "this" />
				<Key word = "base" />
			</KeyWords>
			
			<KeyWords name = "OperatorKeywords" bold="true" italic="false" color="DarkCyan">
				<Key word = "as" />
				<Key word = "is" />
				<Key word = "new" />
				<Key word = "sizeof" />
				<Key word = "typeof" />
				<Key word = "true" />
				<Key word = "false" />
				<Key word = "stackalloc" />
			</KeyWords>
		  
		
			<KeyWords name = "SelectionStatements" bold="true" italic="false" color="Blue">
				<Key word = "else" />
				<Key word = "if" />
				<Key word = "switch" />
				<Key word = "case" />
				<Key word = "default" />
			</KeyWords>
		
			<KeyWords name = "IterationStatements" bold="true" italic="false" color="Blue">
				<Key word = "do" />
				<Key word = "for" />
				<Key word = "foreach" />
				<Key word = "in" />
				<Key word = "while" />
			</KeyWords>
		
			<KeyWords name = "JumpStatements" bold="false" italic="false" color="Navy">
				<Key word = "break" />
				<Key word = "continue" />
				<Key word = "goto" />
				<Key word = "return" />
			</KeyWords>
			
			<KeyWords name = "ContextKeywords" bold="false" italic="false" color="Navy">
				<Key word = "yield" />
				<Key word = "partial" />
				<Key word = "global" />
				<Key word = "where" />
			</KeyWords>
			
			<KeyWords name = "ExceptionHandlingStatements" bold="true" italic="false" color="Teal">
				<Key word = "try" />
				<Key word = "throw" />
				<Key word = "catch" />
				<Key word = "finally" />
			</KeyWords>
		  
			<KeyWords name = "CheckedUncheckedStatements" bold="true" italic="false" color="DarkGray">
				<Key word = "checked" />
				<Key word = "unchecked" />
			</KeyWords>
		
			<KeyWords name = "UnsafeFixedStatements" bold="false" italic="false" color="Olive">
				<Key word = "fixed" />
				<Key word = "unsafe" />
			</KeyWords>
			
			<KeyWords name = "ValueTypes" bold="true" italic="false" color="Red">
				<Key word = "bool" />
				<Key word = "byte" />
				<Key word = "char" />
				<Key word = "decimal" />
				<Key word = "double" />
				<Key word = "enum" />
				<Key word = "float" />
				<Key word = "int" />
				<Key word = "long" />
				<Key word = "sbyte" />
				<Key word = "short" />
				<Key word = "struct" />
				<Key word = "uint" />
				<Key word = "ushort" />
				<Key word = "ulong" />
		  	</KeyWords>
		  
		  	<KeyWords name = "ReferenceTypes" bold="false" italic="false" color="Red">
			    <Key word = "class" />
			    <Key word = "interface" />
			    <Key word = "delegate" />
			    <Key word = "object" />
			    <Key word = "string" />
		  	</KeyWords>
		  
		  	<KeyWords name = "Void" bold="false" italic="false" color="Red">
			    <Key word = "void" />
		  	</KeyWords>
		  
		  	<KeyWords name = "ConversionKeyWords" bold="true" italic="false" color="Pink">
			    <Key word = "explicit" />
			    <Key word = "implicit" />
			    <Key word = "operator" />
		  	</KeyWords>
		  
			<KeyWords name = "MethodParameters" bold="true" italic="false" color="DeepPink">
			    <Key word = "params" />
			    <Key word = "ref" />
			    <Key word = "out" />
		  	</KeyWords>
		  
		  	<KeyWords name = "Modifiers" bold="false" italic="false" color="Brown">
			    <Key word = "abstract" />
			    <Key word = "const" />
			    <Key word = "event" />
			    <Key word = "extern" />
			    <Key word = "override" />
			    <Key word = "readonly" />
			    <Key word = "sealed" />
			    <Key word = "static" />
			    <Key word = "virtual" />
				<Key word = "volatile" />
		  	</KeyWords>
		  
		  	<KeyWords name = "AccessModifiers" bold="true" italic="false" color="Blue">
				<Key word = "public" />
				<Key word = "protected" />
				<Key word = "private" />
				<Key word = "internal" />
		  	</KeyWords>
		  
			<KeyWords name = "NameSpaces" bold="true" italic="false" color="Green">
			    <Key word = "namespace" />
			    <Key word = "using" />
			</KeyWords>
		  
			<KeyWords name = "LockKeyWord" bold="false" italic="false" color="DarkViolet">
			    <Key word = "lock" />
		  	</KeyWords>
		  
			<KeyWords name = "GetSet" bold="false" italic="false" color="SaddleBrown">
			    <Key word = "get" />
			    <Key word = "set" />
			    <Key word = "add" />
			    <Key word = "remove" />
			</KeyWords>
		  
			<KeyWords name = "Literals" bold="true" italic="false" color="Black">
			    <Key word = "null" />
			    <Key word = "value" />
			</KeyWords>
		</RuleSet>
		
		<RuleSet name = "CommentMarkerSet" ignorecase = "false">
		  	<Delimiters>&lt;&gt;~!@%^*()-+=|\#/{}[]:;"' ,	.?</Delimiters>
			<KeyWords name = "ErrorWords" bold="true" italic="false" color="Red">
				<Key word = "TODO" />
				<Key word = "FIXME" />
	 	 	</KeyWords>
			<KeyWords name = "WarningWords" bold="true" italic="false" color="#EEE0E000">
				<Key word = "HACK" />
				<Key word = "UNDONE" />
	 	 	</KeyWords>
		</RuleSet>
		
		<RuleSet name = "DocCommentSet" ignorecase = "false">
		  	<Delimiters>&lt;&gt;~!@%^*()-+=|\#/{}[]:;"' ,	.?</Delimiters>
			
			<Span name = "XmlTag" rule = "XmlDocSet" bold = "false" italic = "false" color = "Gray" stopateol = "true">
				<Begin>&lt;</Begin>
				<End>&gt;</End>
			</Span>
			
			<KeyWords name = "ErrorWords" bold="true" italic="false" color="Red">
				    <Key word = "TODO" />
				    <Key word = "FIXME" />
			</KeyWords>
			
			<KeyWords name = "WarningWords" bold="true" italic="false" color="#EEE0E000">
				    <Key word = "HACK" />
				    <Key word = "UNDONE" />
			</KeyWords>
		</RuleSet>
		
		<RuleSet name = "PreprocessorSet" ignorecase="false">
			<Delimiters>&amp;&lt;&gt;~!%^*()-+=|\#/{}[]:;"' ,	.?</Delimiters>
			
			<KeyWords name = "PreprocessorDirectives" bold="true" italic="false" color="Green">
				<Key word = "if" />
				<Key word = "else" />
				<Key word = "elif" />
				<Key word = "endif" />
				<Key word = "define" />
				<Key word = "undef" />
				<Key word = "warning" />
				<Key word = "error" />
				<Key word = "line" />
				<Key word = "region" />
				<Key word = "endregion" />
				<Key word = "pragma" />
			</KeyWords>
		</RuleSet>
		
		<RuleSet name = "XmlDocSet" ignorecase = "false">
		  	<Delimiters>&lt;&gt;~!@%^*()-+=|\#/{}[]:;"' ,	.?</Delimiters>
	  	    
			<Span name = "String" bold = "true" italic = "false" color = "Silver" stopateol = "true">
				<Begin>"</Begin>
				<End>"</End>
			</Span>
	  	   
			
			<KeyWords name = "Punctuation" bold = "true" italic = "false" color = "Gray">
				<Key word = "/" />
				<Key word = "|" />
				<Key word = "=" />
		  	</KeyWords>
		  	
		 	<KeyWords name = "SpecialComment" bold="true" italic="false" color="Gray">
				    <Key word = "c" />
				    <Key word = "code" />
				    <Key word = "example" />
				    <Key word = "exception" />
				    <Key word = "list" />
				    <Key word = "para" />
				    <Key word = "param" />
				    <Key word = "paramref" />
				    <Key word = "permission" />
				    <Key word = "remarks" />
				    <Key word = "returns" />
				    <Key word = "see" />
				    <Key word = "seealso" />
				    <Key word = "summary" />
				    <Key word = "value" />
				    
				    <Key word = "type" />
				    <Key word = "name" />
				    <Key word = "cref" />
				    <Key word = "item" />
				    <Key word = "term" />
				    <Key word = "description" />
				    <Key word = "listheader" />
	 	 	</KeyWords>
		</RuleSet>
	</RuleSets>
</SyntaxDefinition>
