//Language: C#.NET


// tokens
Token=tnone
Token=tcshstring
Token=tcshcomment
Token=tcshident
Token=tcshinteger
Token=tcshfloat
Token=tcshresword
Token=tcshdirective
Token=tcshobject
Token=tcshsymbol
Token=turl
Token=twhitespace


// states
State=scsnormal,CaseSensitive
State=scsstring1
State=scsstring2
State=scsstring3
State=scscomment1
State=scscomment2
State=scsdirective

//delims
Delimiters=;.,:'"{}[]()<>?!@#$%^&*-+=|\/

// ASP ------------------------------------------------------------------------

// reswords
scsnormal 'abstract'  scsnormal tcshresword
scsnormal 'as'        scsnormal tcshresword
scsnormal 'base'      scsnormal tcshresword
scsnormal 'bool'      scsnormal tcshresword
scsnormal 'break'     scsnormal tcshresword
scsnormal 'byte'      scsnormal tcshresword
scsnormal 'case'      scsnormal tcshresword
scsnormal 'catch'     scsnormal tcshresword
scsnormal 'char'      scsnormal tcshresword
scsnormal 'checked'   scsnormal tcshresword
scsnormal 'class'     scsnormal tcshresword
scsnormal 'const'     scsnormal tcshresword
scsnormal 'continue'  scsnormal tcshresword
scsnormal 'decimal'   scsnormal tcshresword
scsnormal 'default'   scsnormal tcshresword
scsnormal 'delegate'  scsnormal tcshresword
scsnormal 'do'        scsnormal tcshresword
scsnormal 'double'    scsnormal tcshresword
scsnormal 'else'      scsnormal tcshresword
scsnormal 'enum'      scsnormal tcshresword
scsnormal 'event'     scsnormal tcshresword
scsnormal 'explicit'  scsnormal tcshresword
scsnormal 'extern'    scsnormal tcshresword
scsnormal 'finally'   scsnormal tcshresword
scsnormal 'fixed'     scsnormal tcshresword
scsnormal 'float'     scsnormal tcshresword
scsnormal 'for'       scsnormal tcshresword
scsnormal 'foreach'   scsnormal tcshresword
scsnormal 'get'       scsnormal tcshresword
scsnormal 'goto'      scsnormal tcshresword
scsnormal 'if'        scsnormal tcshresword
scsnormal 'implicit'  scsnormal tcshresword
scsnormal 'in'        scsnormal tcshresword
scsnormal 'int'       scsnormal tcshresword
scsnormal 'interface' scsnormal tcshresword
scsnormal 'internal'  scsnormal tcshresword
scsnormal 'is'        scsnormal tcshresword
scsnormal 'lock'      scsnormal tcshresword
scsnormal 'long'      scsnormal tcshresword
scsnormal 'namespace' scsnormal tcshresword
scsnormal 'new'       scsnormal tcshresword
scsnormal 'null'      scsnormal tcshresword
scsnormal 'object'    scsnormal tcshresword
scsnormal 'operator'  scsnormal tcshresword
scsnormal 'out'       scsnormal tcshresword
scsnormal 'override'  scsnormal tcshresword
scsnormal 'params'    scsnormal tcshresword
scsnormal 'partial'   scsnormal tcshresword
scsnormal 'private'   scsnormal tcshresword
scsnormal 'protected' scsnormal tcshresword
scsnormal 'public'    scsnormal tcshresword
scsnormal 'readonly'  scsnormal tcshresword
scsnormal 'ref'       scsnormal tcshresword
scsnormal 'return'    scsnormal tcshresword
scsnormal 'sbyte'     scsnormal tcshresword
scsnormal 'sealed'    scsnormal tcshresword
scsnormal 'set'       scsnormal tcshresword
scsnormal 'short'     scsnormal tcshresword
scsnormal 'sizeof'    scsnormal tcshresword
scsnormal 'stackalloc'  scsnormal tcshresword
scsnormal 'static'    scsnormal tcshresword
scsnormal 'string'    scsnormal tcshresword
scsnormal 'struct'    scsnormal tcshresword
scsnormal 'switch'    scsnormal tcshresword
scsnormal 'this'      scsnormal tcshresword
scsnormal 'throw'     scsnormal tcshresword
scsnormal 'try'       scsnormal tcshresword
scsnormal 'typeof'    scsnormal tcshresword
scsnormal 'uint'      scsnormal tcshresword
scsnormal 'ulong'     scsnormal tcshresword
scsnormal 'unchecked' scsnormal tcshresword
scsnormal 'unsafe'    scsnormal tcshresword
scsnormal 'ushort'    scsnormal tcshresword
scsnormal 'using'     scsnormal tcshresword
scsnormal 'value'     scsnormal tcshresword
scsnormal 'virtual'   scsnormal tcshresword
scsnormal 'void'      scsnormal tcshresword
scsnormal 'volatile'  scsnormal tcshresword
scsnormal 'where'     scsnormal tcshresword
scsnormal 'while'     scsnormal tcshresword
scsnormal 'yield'     scsnormal tcshresword
scsnormal 'FALSE'     scsnormal tcshresword
scsnormal 'TRUE'      scsnormal tcshresword

// objects
scsnormal 'AccessViolationException'    scsnormal tcshobject
scsnormal 'ActivationContext'           scsnormal tcshobject
scsnormal 'Activator'                   scsnormal tcshobject
scsnormal 'AppDomain'                   scsnormal tcshobject
scsnormal 'AppDomainManager'            scsnormal tcshobject
scsnormal 'AppDomainSetup'              scsnormal tcshobject
scsnormal 'AppDomainUnloadedException'  scsnormal tcshobject
scsnormal 'ApplicationException'        scsnormal tcshobject
scsnormal 'ApplicationId'               scsnormal tcshobject
scsnormal 'ApplicationIdentity'         scsnormal tcshobject
scsnormal 'ArgumentException'           scsnormal tcshobject
scsnormal 'ArgumentNullException'       scsnormal tcshobject
scsnormal 'ArgumentOutOfRangeException' scsnormal tcshobject
scsnormal 'ArithmeticException'         scsnormal tcshobject
scsnormal 'Array'                       scsnormal tcshobject
scsnormal 'ArrayTypeMismatchException'  scsnormal tcshobject
scsnormal 'AssemblyLoadEventArgs'       scsnormal tcshobject
scsnormal 'Attribute'                   scsnormal tcshobject
scsnormal 'AttributeUsageAttribute'     scsnormal tcshobject
scsnormal 'BadImageFormatException'     scsnormal tcshobject
scsnormal 'BitConverter'                scsnormal tcshobject
scsnormal 'Buffer'                      scsnormal tcshobject
scsnormal 'CannotUnloadAppDomainException'    scsnormal tcshobject
scsnormal 'CharEnumerator'              scsnormal tcshobject
scsnormal 'CLSCompliantAttribute'       scsnormal tcshobject
scsnormal 'Console'                     scsnormal tcshobject
scsnormal 'ConsoleCancelEventArgs'      scsnormal tcshobject
scsnormal 'ContextBoundObject'          scsnormal tcshobject
scsnormal 'ContextMarshalException'     scsnormal tcshobject
scsnormal 'ContextStaticAttribute'      scsnormal tcshobject
scsnormal 'Convert'                     scsnormal tcshobject
scsnormal 'DataMisalignedException'     scsnormal tcshobject
scsnormal 'DBNull'                      scsnormal tcshobject
scsnormal 'Delegate'                    scsnormal tcshobject
scsnormal 'DivideByZeroException'       scsnormal tcshobject
scsnormal 'DllNotFoundException'        scsnormal tcshobject
scsnormal 'DuplicateWaitObjectException'  scsnormal tcshobject
scsnormal 'EntryPointNotFoundException' scsnormal tcshobject
scsnormal 'Environment'                 scsnormal tcshobject
scsnormal 'EventArgs'                   scsnormal tcshobject
scsnormal 'Exception'                   scsnormal tcshobject
scsnormal 'ExecutionEngineException'    scsnormal tcshobject
scsnormal 'FieldAccessException'        scsnormal tcshobject
scsnormal 'FileStyleUriParser'          scsnormal tcshobject
scsnormal 'FlagsAttribute'              scsnormal tcshobject
scsnormal 'FormatException'             scsnormal tcshobject
scsnormal 'FtpStyleUriParser'           scsnormal tcshobject
scsnormal 'GC'                          scsnormal tcshobject
scsnormal 'GenericUriParser'            scsnormal tcshobject
scsnormal 'GopherStyleUriParser'        scsnormal tcshobject
scsnormal 'HttpStyleUriParser'          scsnormal tcshobject
scsnormal 'IndexOutOfRangeException'    scsnormal tcshobject
scsnormal 'InsufficientMemoryException' scsnormal tcshobject
scsnormal 'InvalidCastException'        scsnormal tcshobject
scsnormal 'InvalidOperationException'   scsnormal tcshobject
scsnormal 'InvalidProgramException'     scsnormal tcshobject
scsnormal 'LdapStyleUriParser'          scsnormal tcshobject
scsnormal 'LoaderOptimizationAttribute' scsnormal tcshobject
scsnormal 'LocalDataStoreSlot'          scsnormal tcshobject
scsnormal 'MarshalByRefObject'          scsnormal tcshobject
scsnormal 'Math'                        scsnormal tcshobject
scsnormal 'MemberAccessException'       scsnormal tcshobject
scsnormal 'MethodAccessException'       scsnormal tcshobject
scsnormal 'MissingFieldException'       scsnormal tcshobject
scsnormal 'MissingMemberException'      scsnormal tcshobject
scsnormal 'MissingMethodException'      scsnormal tcshobject
scsnormal 'MTAThreadAttribute'          scsnormal tcshobject
scsnormal 'MulticastDelegate'           scsnormal tcshobject
scsnormal 'MulticastNotSupportedException'   scsnormal tcshobject
scsnormal 'NetPipeStyleUriParser'       scsnormal tcshobject
scsnormal 'NetTcpStyleUriParser'        scsnormal tcshobject
scsnormal 'NewsStyleUriParser'          scsnormal tcshobject
scsnormal 'NonSerializedAttribute'      scsnormal tcshobject
scsnormal 'NotFiniteNumberException'    scsnormal tcshobject
scsnormal 'NotImplementedException'     scsnormal tcshobject
scsnormal 'NotSupportedException'       scsnormal tcshobject
scsnormal 'Nullable'                    scsnormal tcshobject
scsnormal 'NullReferenceException'      scsnormal tcshobject
scsnormal 'Object'                      scsnormal tcshobject
scsnormal 'ObjectDisposedException'     scsnormal tcshobject
scsnormal 'ObsoleteAttribute'           scsnormal tcshobject
scsnormal 'OperatingSystem'             scsnormal tcshobject
scsnormal 'OperationCanceledException'  scsnormal tcshobject
scsnormal 'OutOfMemoryException'        scsnormal tcshobject
scsnormal 'OverflowException'           scsnormal tcshobject
scsnormal 'ParamArrayAttribute'         scsnormal tcshobject
scsnormal 'PlatformNotSupportedException'   scsnormal tcshobject
scsnormal 'Random'                      scsnormal tcshobject
scsnormal 'RankException'               scsnormal tcshobject
scsnormal 'ResolveEventArgs'            scsnormal tcshobject
scsnormal 'SerializableAttribute'       scsnormal tcshobject
scsnormal 'StackOverflowException'      scsnormal tcshobject
scsnormal 'STAThreadAttribute'          scsnormal tcshobject
scsnormal 'String'                      scsnormal tcshobject
scsnormal 'StringComparer'              scsnormal tcshobject
scsnormal 'SystemException'             scsnormal tcshobject
scsnormal 'ThreadStaticAttribute'       scsnormal tcshobject
scsnormal 'TimeoutException'            scsnormal tcshobject
scsnormal 'TimeZone'                    scsnormal tcshobject
scsnormal 'Type'                        scsnormal tcshobject
scsnormal 'TypeInitializationException' scsnormal tcshobject
scsnormal 'TypeLoadException'           scsnormal tcshobject
scsnormal 'TypeUnloadedException'       scsnormal tcshobject
scsnormal 'UnauthorizedAccessException' scsnormal tcshobject
scsnormal 'UnhandledExceptionEventArgs' scsnormal tcshobject
scsnormal 'Uri'                         scsnormal tcshobject
scsnormal 'UriBuilder'                  scsnormal tcshobject
scsnormal 'UriFormatException'          scsnormal tcshobject
scsnormal 'UriParser'                   scsnormal tcshobject
scsnormal 'UriTypeConverter'            scsnormal tcshobject
scsnormal 'ValueType'                   scsnormal tcshobject
scsnormal 'Version'                     scsnormal tcshobject
scsnormal 'WeakReference'               scsnormal tcshobject


// numbers
scsnormal [0-9][0-9]*                            scsnormal  tcshinteger
scsnormal 0X[0-9A-F]+                            scsnormal  tcshinteger
scsnormal [1-9][0-9]*\.[0-9]*                    scsnormal  tcshfloat
scsnormal [1-9][0-9]*{\.[0-9]+}|e{[\+\-]}|[0-9]+ scsnormal  tcshfloat

//idents
scsnormal   [a-z_A-Z][a-z_A-Z0-9]*   scsnormal   tcshident
scsnormal   @[a-z_A-Z][a-z_A-Z0-9]*  scsnormal   tcshident

//white space
scsnormal #32*                      scsnormal   twhitespace

//comments
scsnormal   //                      scscomment1 tcshcomment
scscomment1 .*                      scsnormal   tcshcomment
scscomment1 $                       scsnormal   tcshcomment

scsnormal   /\*                       scscomment2 tcshcomment
scscomment2 [^\*]*                  scscomment2 tcshcomment
scscomment2 \*[^/]                  scscomment2 tcshcomment
scscomment2 [\*]*/                  scsnormal   tcshcomment

//strings
scsnormal   \'                        scsstring1   tcshstring
scsstring1   [^\']*                 scsstring1   tcshstring
scsstring1   \'                     scsnormal      tcshstring
scsstring1   \'\'                   scsstring1   tcshstring
scsstring1   \\                     scsstring1   tcshstring
scsstring1   \\\'                   scsstring1   tcshstring
scsstring1   $                      scsnormal      tcshstring

//strings
scsnormal    \"                       scsstring2   tcshstring
scsstring2   [^\"]*                 scsstring2   tcshstring
scsstring2   \"                     scsnormal      tcshstring
scsstring2   \"\"                   scsstring2   tcshstring
scsstring2   \\                     scsstring2   tcshstring
scsstring2   \\\"                   scsstring2   tcshstring
scsstring2   $                      scsnormal      tcshstring

//strings
scsnormal    @\"                      scsstring3   tcshstring
scsstring3   [^\"]*                 scsstring3   tcshstring
scsstring3   \"                     scsnormal      tcshstring
scsstring3   \"\"                   scsstring3   tcshstring

//directives
scsnormal  \#                         scsdirective tcsdirective
scsdirective [#1-#255]*             scsnormal    tcsdirective
scsdirective $                      scsnormal    tcsdirective

// symbols
scsnormal  [\&\^\$\!\~\,\(\)\+\-\*\=\.\{\}\[\]\?\:\;\>\<]  scsnormal  tcshsymbol
scsnormal %[^>]  scsnormal  tcshsymbol




 
 
