Browse Source

Converted VBNet-Mode.xshd to new file format.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@5401 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Daniel Grunwald 16 years ago
parent
commit
4d372dc9b5
  1. 443
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/VBNET-Mode.xshd
  2. 8
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Xshd/V2Loader.cs

443
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/VBNET-Mode.xshd

@ -2,264 +2,209 @@ @@ -2,264 +2,209 @@
<!-- Syntaxdefinition for VB.NET, v0.1 Rev 1 by Christian Holm -->
<!-- Updated 2005 by Daniel Grunwald for VB.NET 2.0 -->
<SyntaxDefinition name = "VBNET" extensions = ".vb">
<Properties>
<Property name="LineComment" value="'"/>
</Properties>
<Digits name = "Digits" bold = "false" italic = "false" color = "Black"/>
<RuleSets>
<RuleSet ignorecase = "true">
<Delimiters>~!@%^*()-+=|\#/{}[]:;"'&lt;&gt;,.?</Delimiters>
<Span name = "STRING" bold = "false" italic = "false" color = "Black" stopateol = "true" escapecharacter='"'>
<!-- Converted to AvalonEdit format by Daniel Grunwald in 2010 -->
<SyntaxDefinition name="VBNET" extensions=".vb" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
<Color name="Comment" foreground="Green" />
<Color name="String" />
<RuleSet ignoreCase="true">
<Span color="String">
<Begin>"</Begin>
<End>"</End>
<RuleSet>
<Span begin="&quot;&quot;" end="" />
</RuleSet>
</Span>
<!--
<Span name = "LINECOMMENT" rule = "DocumentSet" bold = "false" italic = "false" color = "Green" stopateol = "true">
<Begin>'</Begin>
</Span>
<Span name = "LINECOMMENT" rule = "DocumentSet" bold = "false" italic = "false" color = "Green" stopateol = "true">
<Begin>REM</Begin>
<Span foreground="Maroon" ruleSet="PreprocessorSet">
<Begin>(?&lt;=(^\s*))\#</Begin>
</Span>
-->
<Span name = "PREPROCESSORDIRECTIVE" rule = "PreprocessorSet" bold = "false" italic = "false" color = "Maroon" stopateol = "true">
<Begin startofline="true">#</Begin>
<Span foreground="Blue">
<!-- Date Literal -->
<Begin>(?&lt;!(^\s*))\#</Begin>
<End>\#</End>
</Span>
<Span name = "DATELITERAL" bold = "false" italic = "false" color = "Blue" stopateol = "true">
<Begin startofline="false">#</Begin>
<End>#</End>
<Span color="Comment" ruleSet="XmlDoc/DocCommentSet">
<Begin color="XmlDoc/DocComment">'''</Begin>
</Span>
<Span name = "LINECOMMENT" bold = "false" italic = "false" color = "Green" stopateol = "true">
<Span color="Comment">
<Begin>'</Begin>
</Span>
<Span name = "LINECOMMENT" bold = "false" italic = "false" color = "Green" stopateol = "true">
<Begin singleword="true">REM@C</Begin>
<Span color="Comment">
<Begin>\bREM\b</Begin>
</Span>
<KeyWords name = "DataTypes" bold="false" italic="false" color="#6F002F">
<Key word = "Boolean" />
<Key word = "Byte" />
<Key word = "Char" />
<Key word = "Date" />
<Key word = "Decimal" />
<Key word = "Double" />
<Key word = "Integer" />
<Key word = "Long" />
<Key word = "Object" />
<Key word = "SByte" />
<Key word = "Short" />
<Key word = "Single" />
<Key word = "String" />
<Key word = "UInteger" />
<Key word = "ULong" />
<Key word = "UShort" />
<Key word = "Variant" />
</KeyWords>
<KeyWords name = "Operators" bold="false" italic="false" color="#8515EA">
<Key word = "AddressOf" />
<Key word = "And" />
<Key word = "AndAlso" />
<Key word = "Is" />
<Key word = "IsNot" />
<Key word = "Like" />
<Key word = "Mod" />
<Key word = "New" />
<Key word = "Not" />
<Key word = "Or" />
<Key word = "OrElse" />
<Key word = "Xor" />
</KeyWords>
<KeyWords name = "Constants" bold="false" italic="false" color="Blue">
<Key word = "False" />
<Key word = "Me" />
<Key word = "MyBase" />
<Key word = "MyClass" />
<Key word = "Nothing" />
<Key word = "True" />
</KeyWords>
<KeyWords name = "CommonKeywords" bold="false" italic="false" color="Blue">
<Key word = "As" />
<Key word = "Of" />
<Key word = "New" />
<Key word = "End" />
</KeyWords>
<KeyWords name = "FunctionKeywords" bold="false" italic="false" color="Blue">
<Key word = "CBool" />
<Key word = "CByte" />
<Key word = "CChar" />
<Key word = "CDate" />
<Key word = "CDec" />
<Key word = "CDbl" />
<Key word = "CInt" />
<Key word = "CLng" />
<Key word = "CObj" />
<Key word = "CSByte" />
<Key word = "CShort" />
<Key word = "CSng" />
<Key word = "CStr" />
<Key word = "CType" />
<Key word = "CUInt" />
<Key word = "CULng" />
<Key word = "CUShort" />
<Key word = "DirectCast" />
<Key word = "GetType" />
<Key word = "TryCast" />
<Key word = "TypeOf" />
</KeyWords>
<KeyWords name = "ParamModifiers" bold="false" italic="false" color="Blue">
<Key word = "ByRef" />
<Key word = "ByVal" />
<Key word = "Optional" />
<Key word = "ParamArray" />
</KeyWords>
<KeyWords name = "AccessModifiers" bold="false" italic="false" color="Blue">
<Key word = "Friend" />
<Key word = "Private" />
<Key word = "Protected" />
<Key word = "Public" />
</KeyWords>
<KeyWords name = "OtherModifiers" bold="false" italic="false" color="Blue">
<Key word = "Const" />
<Key word = "Custom" />
<Key word = "Default" />
<Key word = "Global" />
<Key word = "MustInherit" />
<Key word = "MustOverride" />
<Key word = "Narrowing" />
<Key word = "NotInheritable" />
<Key word = "NotOverridable" />
<Key word = "Overloads" />
<Key word = "Overridable" />
<Key word = "Overrides" />
<Key word = "Partial" />
<Key word = "ReadOnly" />
<Key word = "Shadows" />
<Key word = "Shared" />
<Key word = "Static" />
<Key word = "Widening" />
<Key word = "WithEvents" />
<Key word = "WriteOnly" />
</KeyWords>
<KeyWords name = "Statements" bold="false" italic="false" color="Blue">
<Key word = "Throw" />
<Key word = "Stop" />
<Key word = "Return" />
<Key word = "Resume" />
<Key word = "AddHandler" />
<Key word = "RemoveHandler" />
<Key word = "RaiseEvent" />
<Key word = "Option" />
<Key word = "Let" />
<Key word = "GoTo" />
<Key word = "GoSub" />
<Key word = "Call" />
<Key word = "Continue" />
<Key word = "Dim" />
<Key word = "ReDim" />
<Key word = "Erase" />
<Key word = "On" />
<Key word = "Error" />
<Key word = "Exit" />
</KeyWords>
<KeyWords name = "GlobalConstructs" bold="false" italic="false" color="Blue">
<Key word = "Namespace" />
<Key word = "Class" />
<Key word = "Imports" />
<Key word = "Implements" />
<Key word = "Inherits" />
<Key word = "Interface" />
<Key word = "Delegate" />
<Key word = "Module" />
<Key word = "Structure" />
<Key word = "Enum" />
</KeyWords>
<KeyWords name = "TypeLevelConstructs" bold="false" italic="false" color="Blue">
<Key word = "Sub" />
<Key word = "Function" />
<Key word = "Handles" />
<Key word = "Declare" />
<Key word = "Lib" />
<Key word = "Alias" />
<Key word = "Get" />
<Key word = "Set" />
<Key word = "Property" />
<Key word = "Operator" />
<Key word = "Event" />
</KeyWords>
<KeyWords name = "Constructs" bold="false" italic="false" color="Blue">
<Key word = "SyncLock" />
<Key word = "Using" />
<Key word = "With" />
<Key word = "Do" />
<Key word = "While" />
<Key word = "Loop" />
<Key word = "Wend" />
<Key word = "Try" />
<Key word = "Catch" />
<Key word = "When" />
<Key word = "Finally" />
<Key word = "If" />
<Key word = "Then" />
<Key word = "Else" />
<Key word = "ElseIf" />
<Key word = "EndIf" />
<Key word = "For" />
<Key word = "To" />
<Key word = "Step" />
<Key word = "Each" />
<Key word = "In" />
<Key word = "Next" />
<Key word = "Select" />
<Key word = "Case" />
</KeyWords>
<KeyWords name = "ContextKeywords" bold="false" italic="false" color="Blue">
<Key word = "Ansi" />
<Key word = "Auto" />
<Key word = "Unicode" />
<Key word = "Preserve" />
<Key word = "Until" />
</KeyWords>
<Keywords foreground="#FF6F002F">
<Word>Boolean</Word>
<Word>Byte</Word>
<Word>Char</Word>
<Word>Date</Word>
<Word>Decimal</Word>
<Word>Double</Word>
<Word>Integer</Word>
<Word>Long</Word>
<Word>Object</Word>
<Word>SByte</Word>
<Word>Short</Word>
<Word>Single</Word>
<Word>String</Word>
<Word>UInteger</Word>
<Word>ULong</Word>
<Word>UShort</Word>
<Word>Variant</Word>
</Keywords>
<Keywords foreground="#FF8515EA">
<Word>AddressOf</Word>
<Word>And</Word>
<Word>AndAlso</Word>
<Word>Is</Word>
<Word>IsNot</Word>
<Word>Like</Word>
<Word>Mod</Word>
<Word>New</Word>
<Word>Not</Word>
<Word>Or</Word>
<Word>OrElse</Word>
<Word>Xor</Word>
</Keywords>
<Keywords foreground="Blue">
<Word>False</Word>
<Word>Me</Word>
<Word>MyBase</Word>
<Word>MyClass</Word>
<Word>Nothing</Word>
<Word>True</Word>
<Word>As</Word>
<Word>Of</Word>
<Word>New</Word>
<Word>End</Word>
<Word>CBool</Word>
<Word>CByte</Word>
<Word>CChar</Word>
<Word>CDate</Word>
<Word>CDec</Word>
<Word>CDbl</Word>
<Word>CInt</Word>
<Word>CLng</Word>
<Word>CObj</Word>
<Word>CSByte</Word>
<Word>CShort</Word>
<Word>CSng</Word>
<Word>CStr</Word>
<Word>CType</Word>
<Word>CUInt</Word>
<Word>CULng</Word>
<Word>CUShort</Word>
<Word>DirectCast</Word>
<Word>GetType</Word>
<Word>TryCast</Word>
<Word>TypeOf</Word>
<Word>ByRef</Word>
<Word>ByVal</Word>
<Word>Optional</Word>
<Word>ParamArray</Word>
<Word>Friend</Word>
<Word>Private</Word>
<Word>Protected</Word>
<Word>Public</Word>
<Word>Const</Word>
<Word>Custom</Word>
<Word>Default</Word>
<Word>Global</Word>
<Word>MustInherit</Word>
<Word>MustOverride</Word>
<Word>Narrowing</Word>
<Word>NotInheritable</Word>
<Word>NotOverridable</Word>
<Word>Overloads</Word>
<Word>Overridable</Word>
<Word>Overrides</Word>
<Word>Partial</Word>
<Word>ReadOnly</Word>
<Word>Shadows</Word>
<Word>Shared</Word>
<Word>Static</Word>
<Word>Widening</Word>
<Word>WithEvents</Word>
<Word>WriteOnly</Word>
<Word>Throw</Word>
<Word>Stop</Word>
<Word>Return</Word>
<Word>Resume</Word>
<Word>AddHandler</Word>
<Word>RemoveHandler</Word>
<Word>RaiseEvent</Word>
<Word>Option</Word>
<Word>Let</Word>
<Word>GoTo</Word>
<Word>GoSub</Word>
<Word>Call</Word>
<Word>Continue</Word>
<Word>Dim</Word>
<Word>ReDim</Word>
<Word>Erase</Word>
<Word>On</Word>
<Word>Error</Word>
<Word>Exit</Word>
<Word>Namespace</Word>
<Word>Class</Word>
<Word>Imports</Word>
<Word>Implements</Word>
<Word>Inherits</Word>
<Word>Interface</Word>
<Word>Delegate</Word>
<Word>Module</Word>
<Word>Structure</Word>
<Word>Enum</Word>
<Word>Sub</Word>
<Word>Function</Word>
<Word>Handles</Word>
<Word>Declare</Word>
<Word>Lib</Word>
<Word>Alias</Word>
<Word>Get</Word>
<Word>Set</Word>
<Word>Property</Word>
<Word>Operator</Word>
<Word>Event</Word>
<Word>SyncLock</Word>
<Word>Using</Word>
<Word>With</Word>
<Word>Do</Word>
<Word>While</Word>
<Word>Loop</Word>
<Word>Wend</Word>
<Word>Try</Word>
<Word>Catch</Word>
<Word>When</Word>
<Word>Finally</Word>
<Word>If</Word>
<Word>Then</Word>
<Word>Else</Word>
<Word>ElseIf</Word>
<Word>EndIf</Word>
<Word>For</Word>
<Word>To</Word>
<Word>Step</Word>
<Word>Each</Word>
<Word>In</Word>
<Word>Next</Word>
<Word>Select</Word>
<Word>Case</Word>
<Word>Ansi</Word>
<Word>Auto</Word>
<Word>Unicode</Word>
<Word>Preserve</Word>
<Word>Until</Word>
</Keywords>
</RuleSet>
<RuleSet name = "PreprocessorSet" ignorecase = "true">
<Delimiters>~!@%^*()-+=|\#/{}[]:;"'&lt;&gt;,.?</Delimiters>
<KeyWords name = "PreProcessor" bold="true" italic="false" color="Maroon">
<Key word = "Const" />
<Key word = "If" />
<Key word = "ElseIf" />
<Key word = "Else" />
<Key word = "End" />
<Key word = "ExternalSource" />
<Key word = "Region" />
<Key word = "ExternalChecksum" />
</KeyWords>
<RuleSet name="PreprocessorSet" ignoreCase="true">
<Keywords foreground="Maroon" fontWeight="bold">
<Word>Const</Word>
<Word>If</Word>
<Word>ElseIf</Word>
<Word>Else</Word>
<Word>End</Word>
<Word>ExternalSource</Word>
<Word>Region</Word>
<Word>ExternalChecksum</Word>
</Keywords>
</RuleSet>
</RuleSets>
</SyntaxDefinition>

8
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Xshd/V2Loader.cs

@ -210,6 +210,7 @@ namespace ICSharpCode.AvalonEdit.Highlighting.Xshd @@ -210,6 +210,7 @@ namespace ICSharpCode.AvalonEdit.Highlighting.Xshd
{
string ruleSet = reader.GetAttribute("ruleSet");
if (ruleSet != null) {
// '/' is valid in highlighting definition names, so we need the last occurence
int pos = ruleSet.LastIndexOf('/');
if (pos >= 0) {
return new XshdReference<XshdRuleSet>(ruleSet.Substring(0, pos), ruleSet.Substring(pos + 1));
@ -226,7 +227,7 @@ namespace ICSharpCode.AvalonEdit.Highlighting.Xshd @@ -226,7 +227,7 @@ namespace ICSharpCode.AvalonEdit.Highlighting.Xshd
if (name != null) {
if (name.Length == 0)
throw Error(reader, "The empty string is not a valid name.");
if (name.Contains("/"))
if (name.IndexOf('/') >= 0)
throw Error(reader, "Element names must not contain a slash.");
}
}
@ -235,8 +236,9 @@ namespace ICSharpCode.AvalonEdit.Highlighting.Xshd @@ -235,8 +236,9 @@ namespace ICSharpCode.AvalonEdit.Highlighting.Xshd
static XshdColor ParseNamedColor(XmlReader reader)
{
XshdColor color = ParseColorAttributes(reader);
if (color.Foreground == null && color.FontWeight == null && color.FontStyle == null)
throw Error(reader, "A named color must have at least one element.");
// check removed: invisible named colors may be useful now that apps can read highlighting data
//if (color.Foreground == null && color.FontWeight == null && color.FontStyle == null)
// throw Error(reader, "A named color must have at least one element.");
color.Name = reader.GetAttribute("name");
CheckElementName(reader, color.Name);
return color;

Loading…
Cancel
Save