Browse Source

Merge branch '4.0' of https://github.com/icsharpcode/SharpDevelop into 4.0

pull/14/head
Eusebiu Marcu 15 years ago
parent
commit
4d16b9d2a8
  1. 8
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditor.cs
  2. 7
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditorView.cs
  3. 45
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/ContextActionsRenderer.cs
  4. 12
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/TextDocument.cs
  5. 25
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/ASPX.xshd
  6. 429
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/CPP-Mode.xshd
  7. 167
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/Coco-Mode.xshd
  8. 765
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/HTML-Mode.xshd
  9. 328
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/Java-Mode.xshd
  10. 255
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/JavaScript-Mode.xshd
  11. 340
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/PHP-Mode.xshd
  12. 2
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Utils/Deque.cs
  13. 14
      src/Main/Base/Project/Src/Services/File/FileService.cs
  14. 27
      src/Main/Core/Project/Src/Services/MessageService/MessageService.cs

8
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditor.cs

@ -217,10 +217,11 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -217,10 +217,11 @@ namespace ICSharpCode.AvalonEdit.AddIn
TextCopied(this, e);
}
protected virtual void DisposeTextEditor(TextEditor textEditor)
protected virtual void DisposeTextEditor(CodeEditorView textEditor)
{
// detach IconBarMargin from IconBarManager
textEditor.TextArea.LeftMargins.OfType<IconBarMargin>().Single().TextView = null;
textEditor.Dispose();
}
void textEditor_GotFocus(object sender, RoutedEventArgs e)
@ -332,9 +333,9 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -332,9 +333,9 @@ namespace ICSharpCode.AvalonEdit.AddIn
// remove secondary editor
this.Children.Remove(secondaryTextEditor);
this.Children.Remove(gridSplitter);
secondaryTextEditorAdapter.Language.Detach();
DisposeTextEditor(secondaryTextEditor);
secondaryTextEditor = null;
secondaryTextEditorAdapter.Language.Detach();
secondaryTextEditorAdapter = null;
gridSplitter = null;
this.RowDefinitions.RemoveAt(this.RowDefinitions.Count - 1);
@ -574,6 +575,9 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -574,6 +575,9 @@ namespace ICSharpCode.AvalonEdit.AddIn
if (errorPainter != null)
errorPainter.Dispose();
this.Document = null;
DisposeTextEditor(primaryTextEditor);
if (secondaryTextEditor != null)
DisposeTextEditor(secondaryTextEditor);
}
}
}

7
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditorView.cs

@ -34,7 +34,7 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -34,7 +34,7 @@ namespace ICSharpCode.AvalonEdit.AddIn
/// There can be two CodeEditorView instances in a single CodeEditor if split-view
/// is enabled.
/// </summary>
public class CodeEditorView : SharpDevelopTextEditor
public class CodeEditorView : SharpDevelopTextEditor, IDisposable
{
public ITextEditor Adapter { get; set; }
@ -69,6 +69,11 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -69,6 +69,11 @@ namespace ICSharpCode.AvalonEdit.AddIn
this.toolTip.IsOpen = false;
}
public virtual void Dispose()
{
contextActionsRenderer.Dispose();
}
protected override string FileName {
get { return this.Adapter.FileName; }
}

45
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/ContextActionsRenderer.cs

@ -18,7 +18,7 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -18,7 +18,7 @@ namespace ICSharpCode.AvalonEdit.AddIn
/// <summary>
/// Renders Popup with context actions on the left side of the current line in the editor.
/// </summary>
public class ContextActionsRenderer
public sealed class ContextActionsRenderer : IDisposable
{
readonly CodeEditorView editorView;
ITextEditor Editor { get { return this.editorView.Adapter; } }
@ -36,12 +36,11 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -36,12 +36,11 @@ namespace ICSharpCode.AvalonEdit.AddIn
public bool IsEnabled
{
get {
try {
string fileName = this.Editor.FileName;
return fileName.EndsWith(".cs") || fileName.EndsWith(".vb");
} catch {
string fileName = this.Editor.FileName;
if (String.IsNullOrEmpty(fileName))
return false;
}
return fileName.EndsWith(".cs", StringComparison.OrdinalIgnoreCase)
|| fileName.EndsWith(".vb", StringComparison.OrdinalIgnoreCase);
}
}
@ -59,10 +58,16 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -59,10 +58,16 @@ namespace ICSharpCode.AvalonEdit.AddIn
this.delayMoveTimer = new DispatcherTimer() { Interval = TimeSpan.FromMilliseconds(delayMoveMilliseconds) };
this.delayMoveTimer.Stop();
this.delayMoveTimer.Tick += TimerMoveTick;
WorkbenchSingleton.Workbench.ViewClosed += WorkbenchSingleton_Workbench_ViewClosed;
WorkbenchSingleton.Workbench.ActiveViewContentChanged += WorkbenchSingleton_Workbench_ActiveViewContentChanged;
}
public void Dispose()
{
ClosePopup();
WorkbenchSingleton.Workbench.ActiveViewContentChanged -= WorkbenchSingleton_Workbench_ActiveViewContentChanged;
delayMoveTimer.Stop();
}
void ContextActionsRenderer_KeyDown(object sender, KeyEventArgs e)
{
if (this.popup == null)
@ -131,26 +136,14 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -131,26 +136,14 @@ namespace ICSharpCode.AvalonEdit.AddIn
this.popup.IsHiddenActionsExpanded = false;
this.popup.ViewModel = null;
}
void WorkbenchSingleton_Workbench_ViewClosed(object sender, ViewContentEventArgs e)
{
try {
// prevent memory leaks
if (e.Content.PrimaryFileName == this.Editor.FileName) {
WorkbenchSingleton.Workbench.ViewClosed -= WorkbenchSingleton_Workbench_ViewClosed;
WorkbenchSingleton.Workbench.ActiveViewContentChanged -= WorkbenchSingleton_Workbench_ActiveViewContentChanged;
}
} catch {}
}
void WorkbenchSingleton_Workbench_ActiveViewContentChanged(object sender, EventArgs e)
{
ClosePopup();
try {
// open the popup again if in current file
if (((IViewContent)WorkbenchSingleton.Workbench.ActiveContent).PrimaryFileName == this.Editor.FileName)
CaretPositionChanged(this, EventArgs.Empty);
} catch {}
// open the popup again if in current file
IViewContent activeViewContent = WorkbenchSingleton.Workbench.ActiveViewContent;
if (activeViewContent != null && activeViewContent.PrimaryFileName == this.Editor.FileName)
CaretPositionChanged(this, EventArgs.Empty);
else // otherwise close popup
ClosePopup();
}
}
}

12
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/TextDocument.cs

@ -722,13 +722,23 @@ namespace ICSharpCode.AvalonEdit.Document @@ -722,13 +722,23 @@ namespace ICSharpCode.AvalonEdit.Document
}
}
readonly UndoStack undoStack;
UndoStack undoStack;
/// <summary>
/// Gets the <see cref="UndoStack"/> of the document.
/// </summary>
/// <remarks>This property can also be used to set the undo stack, e.g. for sharing a common undo stack between multiple documents.</remarks>
public UndoStack UndoStack {
get { return undoStack; }
set {
if (value == null)
throw new ArgumentNullException();
if (value != undoStack) {
undoStack.ClearAll(); // first clear old undo stack, so that it can't be used to perform unexpected changes on this document
// ClearAll() will also throw an exception when it's not safe to replace the undo stack (e.g. update is currently in progress)
undoStack = value;
}
}
}
/// <summary>

25
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/ASPX.xshd

@ -1,13 +1,16 @@ @@ -1,13 +1,16 @@
<?xml version="1.0"?>
<SyntaxDefinition name = "ASP/XHTML" extensions = ".asp;.aspx;.asax;.asmx" extends = "HTML">
<RuleSets>
<RuleSet ignorecase = "true">
<Span name = "ASPCode" rule = "ASP" bold = "false" italic = "false" color = "Black" bgcolor = "#F7F2E3" stopateol = "false">
<Begin color="Black" bgcolor="Yellow">&lt;%</Begin>
<End color="Black" bgcolor="Yellow">%&gt;</End>
</Span>
</RuleSet>
<RuleSet name="ASP" reference="C#" />
</RuleSets>
<!-- converted to AvalonEdit format by Siegfried Pammer in 2010 -->
<SyntaxDefinition name="ASP/XHTML" extensions=".asp;.aspx;.asax;.asmx" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
<Color name="ASPSectionStartEndTags" foreground="Black" background="Yellow" exampleText="&lt;% System.Console.WriteLine(&quot;Hello World!&quot;); %&gt;" />
<Color name="ASPSection" foreground="Black" background="#FFF7F2E3" exampleText="&lt;% System.Console.WriteLine(&quot;Hello World!&quot;); %&gt;" />
<RuleSet ignoreCase="true">
<Span color="ASPSection" ruleSet="ASP" multiline="true">
<Begin color="ASPSectionStartEndTags">&lt;%</Begin>
<End color="ASPSectionStartEndTags">%&gt;</End>
</Span>
<Import ruleSet="HTML/" />
</RuleSet>
<RuleSet name="ASP">
<Import ruleSet="C#/" />
</RuleSet>
</SyntaxDefinition>

429
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/CPP-Mode.xshd

@ -1,236 +1,195 @@ @@ -1,236 +1,195 @@
<?xml version="1.0"?>
<!-- syntaxdefinition for C/C++ 2001 by Andrea Paatz and Mike Krueger
this should be rewritten to xshd v2.0 syntax to handle c++/cli keywords with whitespaces properly -->
<SyntaxDefinition name = "C++" extensions = ".c;.h;.cc;.cpp;.hpp">
<Properties>
<Property name="LineComment" value="//"/>
</Properties>
<Digits name = "Digits" bold = "false" italic = "false" color = "DarkBlue"/>
<RuleSets>
<RuleSet ignorecase = "false">
<Delimiters>~!%^*()-+=|\#/{}[]:;"'&lt;&gt; , .?</Delimiters>
<Span name = "PreprocessorDirectives" bold="false" italic="false" color="Green" stopateol = "true">
<Begin>#</Begin>
</Span>
<Span name = "LineComment" bold = "false" italic = "false" color = "Green" stopateol = "true">
<Begin>//</Begin>
</Span>
<Span name = "BlockComment" bold = "false" italic = "false" color = "Green" stopateol = "false">
<Begin>/*</Begin>
<End>*/</End>
</Span>
<Span name = "String" bold = "false" italic = "false" color = "Magenta" stopateol = "true" escapecharacter="\">
<Begin>"</Begin>
<End>"</End>
</Span>
<Span name = "Char" bold = "false" italic = "false" color = "Magenta" stopateol = "true" escapecharacter="\">
<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 = "ManagedKeyWords" bold="true" italic="false" color="Black">
<Key word = "__abstract" />
<Key word = "__box" />
<Key word = "__delegate" />
<Key word = "__gc" />
<Key word = "__identifier" />
<Key word = "__nogc" />
<Key word = "__pin" />
<Key word = "__property" />
<Key word = "__sealed" />
<Key word = "__try_cast" />
<Key word = "__typeof" />
<Key word = "__value" />
<Key word = "__event" />
<Key word = "__hook" />
<Key word = "__raise" />
<Key word = "__unhook" />
<Key word = "__interface" />
<!-- c++/cli new syntax managed keywords //-->
<Key word = "ref class" />
<Key word = "ref struct" />
<Key word = "value class" />
<Key word = "value struct" />
<Key word = "interface class" />
<Key word = "interface struct" />
<Key word = "enum class" />
<Key word = "enum struct" />
<Key word = "delegate" />
<Key word = "event" />
<Key word = "property" />
<Key word = "abstract" />
<Key word = "override" />
<Key word = "sealed" />
<Key word = "generic" />
<Key word = "where" />
<Key word = "finally" />
<Key word = "for each" />
<Key word = "gcnew" />
<Key word = "in" />
<Key word = "initonly" />
<Key word = "literal" />
<Key word = "nullptr" />
</KeyWords>
<KeyWords name = "AccessKeywords" bold="true" italic="false" color="Black">
<Key word = "this" />
</KeyWords>
<KeyWords name = "OperatorKeywords" bold="true" italic="false" color="DarkCyan">
<Key word = "and" />
<Key word = "and_eq" />
<Key word = "bitand" />
<Key word = "bitor" />
<Key word = "new" />
<Key word = "not" />
<Key word = "not_eq" />
<Key word = "or" />
<Key word = "or_eq" />
<Key word = "xor" />
<Key word = "xor_eq" />
</KeyWords>
<KeyWords name = "NameSpaces" bold="true" italic="false" color="Green">
<Key word = "using" />
<Key word = "namespace" />
</KeyWords>
<KeyWords name = "Friends" bold="false" italic="false" color="Brown">
<Key word = "friend" />
</KeyWords>
<KeyWords name = "AccessModifiers" bold="true" italic="false" color="Blue">
<Key word = "private" />
<Key word = "protected" />
<Key word = "public" />
<Key word = "const" />
<Key word = "volatile" />
<Key word = "static" />
</KeyWords>
<KeyWords name = "Types" bold="false" italic="false" color="Red">
<Key word = "bool" />
<Key word = "char" />
<Key word = "unsigned" />
<Key word = "union" />
<Key word = "virtual" />
<Key word = "double" />
<Key word = "float" />
<Key word = "short" />
<Key word = "signed" />
<Key word = "void" />
<Key word = "class" />
<Key word = "enum" />
<Key word = "struct" />
</KeyWords>
<KeyWords name = "Literals" bold="true" italic="false" color="Black">
<Key word = "false" />
<Key word = "true" />
</KeyWords>
<KeyWords name = "IterationStatements" bold="true" italic="false" color="Blue">
<Key word = "do" />
<Key word = "for" />
<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 = "ExceptionHandlingStatements" bold="true" italic="false" color="Teal">
<Key word = "catch" />
<Key word = "throw" />
<Key word = "try" />
</KeyWords>
<KeyWords name = "SelectionStatements" bold="true" italic="false" color="Blue">
<Key word = "case" />
<Key word = "else" />
<Key word = "if" />
<Key word = "switch" />
<Key word = "default" />
</KeyWords>
<KeyWords name = "KEYWORD1" bold="true" italic="false" color="Blue">
<Key word = "asm" />
<Key word = "auto" />
<Key word = "compl" />
<Key word = "mutable" />
<Key word = "const_cast" />
<Key word = "delete" />
<Key word = "dynamic_cast" />
<Key word = "explicit" />
<Key word = "export" />
<Key word = "extern" />
<Key word = "inline" />
<Key word = "int" />
<Key word = "long" />
<Key word = "operator" />
<Key word = "register" />
<Key word = "reinterpret_cast" />
<Key word = "sizeof" />
<Key word = "static_cast" />
<Key word = "template" />
<Key word = "typedef" />
<Key word = "typeid" />
<Key word = "typename" />
</KeyWords>
</RuleSet>
</RuleSets>
</SyntaxDefinition>
<!-- syntaxdefinition for C/C++ 2001 by Andrea Paatz and Mike Krueger -->
<!-- converted to AvalonEdit format by Siegfried Pammer in 2010 -->
<SyntaxDefinition name="C++" extensions=".c;.h;.cc;.cpp;.hpp" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
<Color name="Comment" foreground="Green" />
<Color name="Character" foreground="Fuchsia" />
<Color name="String" foreground="Fuchsia" />
<Color name="Preprocessor" foreground="Green" />
<Color name="Punctuation" foreground="DarkGreen" />
<Color name="MethodName" foreground="MidnightBlue" fontWeight="bold" />
<Color name="Digits" foreground="DarkBlue" />
<Color name="CompoundKeywords" foreground="Black" fontWeight="bold" />
<Color name="This" foreground="Black" fontWeight="bold" />
<Color name="Operators" foreground="#FF008B8B" fontWeight="bold" />
<Color name="Namespace" foreground="#FF008000" fontWeight="bold" />
<Color name="Friend" foreground="#FFA52A2A" />
<Color name="Modifiers" foreground="#FF0000FF" fontWeight="bold" />
<Color name="TypeKeywords" foreground="#FFFF0000" />
<Color name="BooleanConstants" foreground="#FF000000" fontWeight="bold" />
<Color name="Keywords" foreground="#FF0000FF" fontWeight="bold" />
<Color name="LoopKeywords" foreground="#FF0000FF" fontWeight="bold" />
<Color name="JumpKeywords" foreground="#FF000080" />
<Color name="ExceptionHandling" foreground="#FF008080" fontWeight="bold" />
<Color name="ControlFlow" foreground="#FF0000FF" fontWeight="bold" />
<RuleSet ignoreCase="false">
<Rule color="Punctuation">
[?,.;()\[\]{}+\-/%*&lt;&gt;^=~!&amp;]+
</Rule>
<Keywords color="CompoundKeywords">
<Word>__abstract</Word>
<Word>__box</Word>
<Word>__delegate</Word>
<Word>__gc</Word>
<Word>__identifier</Word>
<Word>__nogc</Word>
<Word>__pin</Word>
<Word>__property</Word>
<Word>__sealed</Word>
<Word>__try_cast</Word>
<Word>__typeof</Word>
<Word>__value</Word>
<Word>__event</Word>
<Word>__hook</Word>
<Word>__raise</Word>
<Word>__unhook</Word>
<Word>__interface</Word>
<Word>ref class</Word>
<Word>ref struct</Word>
<Word>value class</Word>
<Word>value struct</Word>
<Word>interface class</Word>
<Word>interface struct</Word>
<Word>enum class</Word>
<Word>enum struct</Word>
<Word>delegate</Word>
<Word>event</Word>
<Word>property</Word>
<Word>abstract</Word>
<Word>override</Word>
<Word>sealed</Word>
<Word>generic</Word>
<Word>where</Word>
<Word>finally</Word>
<Word>for each</Word>
<Word>gcnew</Word>
<Word>in</Word>
<Word>initonly</Word>
<Word>literal</Word>
<Word>nullptr</Word>
</Keywords>
<Keywords color="This">
<Word>this</Word>
</Keywords>
<Keywords color="Operators">
<Word>and</Word>
<Word>and_eq</Word>
<Word>bitand</Word>
<Word>bitor</Word>
<Word>new</Word>
<Word>not</Word>
<Word>not_eq</Word>
<Word>or</Word>
<Word>or_eq</Word>
<Word>xor</Word>
<Word>xor_eq</Word>
</Keywords>
<Keywords color="Namespace">
<Word>using</Word>
<Word>namespace</Word>
</Keywords>
<Keywords color="Friend">
<Word>friend</Word>
</Keywords>
<Keywords color="Modifiers">
<Word>private</Word>
<Word>protected</Word>
<Word>public</Word>
<Word>const</Word>
<Word>volatile</Word>
<Word>static</Word>
</Keywords>
<Keywords color="TypeKeywords">
<Word>bool</Word>
<Word>char</Word>
<Word>unsigned</Word>
<Word>union</Word>
<Word>virtual</Word>
<Word>double</Word>
<Word>float</Word>
<Word>short</Word>
<Word>signed</Word>
<Word>void</Word>
<Word>class</Word>
<Word>enum</Word>
<Word>struct</Word>
</Keywords>
<Keywords color="BooleanConstants">
<Word>false</Word>
<Word>true</Word>
</Keywords>
<Keywords color="LoopKeywords">
<Word>do</Word>
<Word>for</Word>
<Word>while</Word>
</Keywords>
<Keywords color="JumpKeywords">
<Word>break</Word>
<Word>continue</Word>
<Word>goto</Word>
<Word>return</Word>
</Keywords>
<Keywords color="ExceptionHandling">
<Word>catch</Word>
<Word>throw</Word>
<Word>try</Word>
</Keywords>
<Keywords color="ControlFlow">
<Word>case</Word>
<Word>else</Word>
<Word>if</Word>
<Word>switch</Word>
<Word>default</Word>
</Keywords>
<Keywords color="Keywords">
<Word>asm</Word>
<Word>auto</Word>
<Word>compl</Word>
<Word>mutable</Word>
<Word>const_cast</Word>
<Word>delete</Word>
<Word>dynamic_cast</Word>
<Word>explicit</Word>
<Word>export</Word>
<Word>extern</Word>
<Word>inline</Word>
<Word>int</Word>
<Word>long</Word>
<Word>operator</Word>
<Word>register</Word>
<Word>reinterpret_cast</Word>
<Word>sizeof</Word>
<Word>static_cast</Word>
<Word>template</Word>
<Word>typedef</Word>
<Word>typeid</Word>
<Word>typename</Word>
</Keywords>
<Span color="Preprocessor">
<Begin>\#</Begin>
</Span>
<Span color="Comment">
<Begin>//</Begin>
</Span>
<Span color="Comment" multiline="true">
<Begin>/\*</Begin>
<End>\*/</End>
</Span>
<Span color="String">
<Begin>"</Begin>
<End>"</End>
<RuleSet>
<Span begin="\\" end="." />
</RuleSet>
</Span>
<Span color="Character">
<Begin>'</Begin>
<End>'</End>
<RuleSet>
<Span begin="\\" end="." />
</RuleSet>
</Span>
<Rule color="MethodName">[\d\w_]+(?=(\s*\())</Rule>
<Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
</SyntaxDefinition>

167
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/Coco-Mode.xshd

@ -1,97 +1,74 @@ @@ -1,97 +1,74 @@
<?xml version="1.0" ?>
<!-- syntaxdefinition for Coco/R 2003 by Mike Krueger -->
<SyntaxDefinition name="Coco" extensions=".atg">
<Digits name="Digits" bold="false" italic="false" color="DarkBlue" />
<RuleSets>
<RuleSet ignorecase="false">
<Delimiters>&amp;&lt;&gt;~!@%^*()-+=|\#/{}[]:;"' , .?</Delimiters>
<Span name = "LINECOMMENT" bold = "false" italic = "true" color = "Gray" stopateol = "true">
<Begin>//</Begin>
</Span>
<Span name = "BLOCKCOMMENT" bold = "false" italic = "true" color = "Gray" stopateol = "false">
<Begin>/*</Begin>
<End>*/</End>
</Span>
<Span name="CSharpCode2" rule="CSharp" bold="false" italic="false" color="Black" stopateol="false">
<Begin bold = "true" color = "Blue">COMPILER</Begin>
<End bold = "true" color = "Blue">TOKENNAMES</End>
</Span>
<Span name = "STRING" bold = "false" italic = "false" color = "DarkGreen" stopateol = "true">
<Begin>"</Begin>
<End>"</End>
</Span>
<Span name = "CHAR" bold = "false" italic = "false" color = "DarkGreen" stopateol = "true">
<Begin>'</Begin>
<End>'</End>
</Span>
<Span name = "paramlist" rule="ParamList" bold = "false" italic = "false" color = "Black" stopateol = "true">
<Begin bold="true" color = "Black" >&lt;</Begin>
<End bold="true" color = "Black" >&gt;</End>
</Span>
<Span name="CSharpCode" rule="CSharp" bold="false" italic="false" color="DarkSlateGray" stopateol="false">
<Begin bold = "true" italic="true" color = "Green">(.</Begin>
<End bold = "true" italic="true" color = "Green">.)</End>
</Span>
<KeyWords name = "Punctuation" bold = "true" italic = "false" color = "Black">
<Key word = "{"/>
<Key word = "}"/>
<Key word = "("/>
<Key word = ")"/>
<Key word = "["/>
<Key word = "]"/>
<Key word = "|"/>
<Key word = "+"/>
<Key word = "-"/>
<Key word = "="/>
<Key word = "."/>
</KeyWords>
<KeyWords name = "KeyWords" bold = "true" italic = "false" color = "Blue">
<Key word = "ANY"/>
<Key word = "CHARACTERS"/>
<Key word = "COMMENTS"/>
<Key word = "COMPILER"/>
<Key word = "CONTEXT"/>
<Key word = "END"/>
<Key word = "FROM"/>
<Key word = "IF"/>
<Key word = "IGNORE"/>
<Key word = "NAMESPACE"/>
<Key word = "NESTED"/>
<Key word = "PRAGMAS"/>
<Key word = "PRODUCTIONS"/>
<Key word = "SYNC"/>
<Key word = "TO"/>
<Key word = "TOKENS"/>
<Key word = "TOKENNAMES"/>
<Key word = "WEAK"/>
<Key word = "using"/>
</KeyWords>
</RuleSet>
<RuleSet name="CSharp" reference = "C#" ignorecase="false">
</RuleSet>
<RuleSet name="ParamList" reference = "C#" ignorecase="false">
</RuleSet>
<RuleSet name="RuleDefinition" ignorecase="false">
</RuleSet>
</RuleSets>
</SyntaxDefinition>
<!-- converted to AvalonEdit format by Siegfried Pammer in 2010 -->
<SyntaxDefinition name="Coco" extensions=".atg" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
<Color name="Comment" foreground="#FF808080" fontStyle="italic" />
<Color name="Punctuation" foreground="#FF000000" fontWeight="bold" />
<Color name="Keywords" foreground="#FF0000FF" fontWeight="bold" />
<Color name="String" foreground="#FF006400" />
<RuleSet ignoreCase="false">
<Rule color="Punctuation">
[{}\(\)\[\]|+\-=\.]+
</Rule>
<Keywords color="Keywords">
<Word>ANY</Word>
<Word>CHARACTERS</Word>
<Word>COMMENTS</Word>
<Word>COMPILER</Word>
<Word>CONTEXT</Word>
<Word>END</Word>
<Word>FROM</Word>
<Word>IF</Word>
<Word>IGNORE</Word>
<Word>NAMESPACE</Word>
<Word>NESTED</Word>
<Word>PRAGMAS</Word>
<Word>PRODUCTIONS</Word>
<Word>SYNC</Word>
<Word>TO</Word>
<Word>TOKENS</Word>
<Word>TOKENNAMES</Word>
<Word>WEAK</Word>
<Word>using</Word>
</Keywords>
<Span color="Comment">
<Begin>//</Begin>
</Span>
<Span color="Comment" multiline="true">
<Begin>/\*</Begin>
<End>\*/</End>
</Span>
<Span foreground="Black" ruleSet="CSharp" multiline="true">
<Begin color="Keywords">COMPILER</Begin>
<End color="Keywords">TOKENNAMES</End>
</Span>
<Span color="String">
<Begin>"</Begin>
<End>"</End>
</Span>
<Span color="String">
<Begin>'</Begin>
<End>'</End>
</Span>
<Span foreground="#FF000000" ruleSet="ParamList">
<Begin foreground="#FF000000" fontWeight="bold">&lt;</Begin>
<End foreground="#FF000000" fontWeight="bold">&gt;</End>
</Span>
<Span foreground="#FF2F4F4F" fontWeight="normal" fontStyle="normal" ruleSet="CSharp" multiline="true">
<Begin foreground="#FF008000" fontWeight="bold" fontStyle="italic">\(\.</Begin>
<End foreground="#FF008000" fontWeight="bold" fontStyle="italic">\.\)</End>
</Span>
<Rule foreground="#FF00008B" fontWeight="normal" fontStyle="normal">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
<RuleSet name="CSharp" ignoreCase="false">
<Import ruleSet="C#/" />
<Rule foreground="#FF00008B" fontWeight="normal" fontStyle="normal">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
<RuleSet name="ParamList" ignoreCase="false">
<Import ruleSet="C#/" />
<Rule foreground="#FF00008B" fontWeight="normal" fontStyle="normal">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
<RuleSet name="RuleDefinition" ignoreCase="false">
<Rule foreground="#FF00008B" fontWeight="normal" fontStyle="normal">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
</SyntaxDefinition>

765
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/HTML-Mode.xshd

@ -1,385 +1,384 @@ @@ -1,385 +1,384 @@
<?xml version="1.0"?>
<!-- syntaxdefinition for HTML 2000 by Mike Krueger -->
<SyntaxDefinition name = "HTML" extensions = ".htm;.html">
<Digits name = "Digits" bold = "false" italic = "false" color = "DarkBlue"/>
<RuleSets>
<RuleSet ignorecase = "true">
<!-- It is not necessary to define span-delimiting characters as delimiters -->
<Delimiters></Delimiters>
<Span name="Comment" bold="false" italic="false" color="DarkSlateGray" stopateol="false">
<Begin>&lt;!--</Begin>
<End>--&gt;</End>
</Span>
<Span name="ScriptTag" rule="JavaScriptSet" bold="false" italic="false" color="SpringGreen" stopateol="false">
<Begin>&lt;script&gt;</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span name="JavaScriptTag" rule="JavaScriptSet" bold="false" italic="false" color="SpringGreen" stopateol="false">
<Begin>&lt;script lang="JavaScript"&gt;</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span name="JScriptTag" bold="false" italic="false" color="SpringGreen" stopateol="false">
<Begin>&lt;script lang="JScript"&gt;</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span name="VBScriptTag" bold="false" italic="false" color="SpringGreen" stopateol="false">
<Begin>&lt;script lang="VBScript"&gt;</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span name="UnknownScriptTag" bold="false" italic="false" color="SpringGreen" stopateol="false">
<Begin>&lt;script@C</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span name="HtmlTag" rule="HtmlTagSet" bold="false" italic="false" color="DarkMagenta" stopateol="false">
<Begin>&lt;</Begin>
<End>&gt;</End>
</Span>
<Span name="EntityReference" rule="EntityReferenceSet" bold="false" italic="false" color="Blue" stopateol="true">
<Begin>&amp;</Begin>
<End>;</End>
</Span>
</RuleSet>
<RuleSet name="JavaScriptSet" reference="JavaScript" />
<RuleSet name="EntityReferenceSet" ignorecase="false">
<KeyWords name = "Entities" bold="false" italic="false" color="Green">
<Key word = "aacute" />
<Key word = "agrave" />
<Key word = "acirc" />
<Key word = "amp" />
<Key word = "atilde" />
<Key word = "aring" />
<Key word = "auml" />
<Key word = "aelig" />
<Key word = "ccedil" />
<Key word = "copy" />
<Key word = "eacute" />
<Key word = "egrave" />
<Key word = "ecirc" />
<Key word = "euml" />
<Key word = "iacute" />
<Key word = "igrave" />
<Key word = "icirc" />
<Key word = "iuml" />
<Key word = "eth" />
<Key word = "gt" />
<Key word = "lt" />
<Key word = "nbsp" />
<Key word = "ntilde" />
<Key word = "oacute" />
<Key word = "ograve" />
<Key word = "ocirc" />
<Key word = "otilde" />
<Key word = "ouml" />
<Key word = "oslash" />
<Key word = "quot" />
<Key word = "reg" />
<Key word = "szlig" />
<Key word = "uacute" />
<Key word = "ugrave" />
<Key word = "ucirc" />
<Key word = "uuml" />
<Key word = "yacute" />
<Key word = "thorn" />
<Key word = "trade" />
<Key word = "yuml" />
</KeyWords>
</RuleSet>
<RuleSet name="HtmlTagSet" ignorecase="false">
<Delimiters>/=</Delimiters>
<Span name="String" bold="false" italic="false" color="Blue" stopateol="true">
<Begin>&quot;</Begin>
<End>&quot;</End>
</Span>
<Span name="Char" bold="false" italic="false" color="Blue" stopateol="true">
<Begin>&apos;</Begin>
<End>&apos;</End>
</Span>
<MarkPrevious bold="false" italic="false" color="Red">=</MarkPrevious>
<KeyWords name="Slash" bold="false" italic="false" color="DarkMagenta">
<Key word="/" />
</KeyWords>
<KeyWords name="Assignment" bold="false" italic="false" color="Blue">
<Key word="=" />
</KeyWords>
<KeyWords name = "Tags" bold="false" italic="false" color="DarkMagenta">
<Key word = "!DOCTYPE" />
<Key word = "A" />
<Key word = "ABBR" />
<Key word = "ACRONYM" />
<Key word = "ADDRESS" />
<Key word = "APPLET" />
<Key word = "AREA" />
<Key word = "B" />
<Key word = "BASE" />
<Key word = "BASEFONT" />
<Key word = "BGSOUND" />
<Key word = "BDO" />
<Key word = "BIG" />
<Key word = "BLINK" />
<Key word = "BLOCKQUOTE" />
<Key word = "BODY" />
<Key word = "BR" />
<Key word = "BUTTON" />
<Key word = "CAPTION" />
<Key word = "CENTER" />
<Key word = "CITE" />
<Key word = "CODE" />
<Key word = "COL" />
<Key word = "COLGROUP" />
<Key word = "COMMENT" />
<Key word = "DD" />
<Key word = "DEL" />
<Key word = "DFN" />
<Key word = "DIR" />
<Key word = "DIV" />
<Key word = "DL" />
<Key word = "DT" />
<Key word = "EM" />
<Key word = "EMBED" />
<Key word = "FIELDSET" />
<Key word = "FONT" />
<Key word = "FORM" />
<Key word = "FRAME" />
<Key word = "FRAMESET" />
<Key word = "H" />
<Key word = "H1" />
<Key word = "H2" />
<Key word = "H3" />
<Key word = "H4" />
<Key word = "H5" />
<Key word = "H6" />
<Key word = "HEAD" />
<Key word = "HR" />
<Key word = "HTA:APPLICATION" />
<Key word = "HTML" />
<Key word = "I" />
<Key word = "IFRAME" />
<Key word = "IMG" />
<Key word = "INPUT" />
<Key word = "INS" />
<Key word = "ISINDEX" />
<Key word = "KBD" />
<Key word = "LABEL" />
<Key word = "LEGEnd" />
<Key word = "LI" />
<Key word = "LINK" />
<Key word = "LISTING" />
<Key word = "MAP" />
<Key word = "MARQUEE" />
<Key word = "MENU" />
<Key word = "META" />
<Key word = "MULTICOL" />
<Key word = "NEXTID" />
<Key word = "NOBR" />
<Key word = "NOFRAMES" />
<Key word = "NOSCRIPT" />
<Key word = "OBJECT" />
<Key word = "OL" />
<Key word = "OPTGROUP" />
<Key word = "OPTION" />
<Key word = "P" />
<Key word = "PARAM" />
<Key word = "PLAINTEXT" />
<Key word = "PRE" />
<Key word = "Q" />
<Key word = "S" />
<Key word = "SAMP" />
<Key word = "SCRIPT" />
<Key word = "SELECT" />
<Key word = "SERVER" />
<Key word = "SMALL" />
<Key word = "SOUND" />
<Key word = "SPACER" />
<Key word = "Span" />
<Key word = "STRONG" />
<Key word = "STYLE" />
<Key word = "SUB" />
<Key word = "SUP" />
<Key word = "TABLE" />
<Key word = "TBODY" />
<Key word = "TD" />
<Key word = "TEXTAREA" />
<Key word = "TEXTFLOW" />
<Key word = "TFOOT" />
<Key word = "TH" />
<Key word = "THEAD" />
<Key word = "TITLE" />
<Key word = "TR" />
<Key word = "TT" />
<Key word = "U" />
<Key word = "VAR" />
<Key word = "WBR" />
<Key word = "XMP" />
</KeyWords>
<KeyWords name = "Attributes" bold="false" italic="false" color="Red">
<Key word = "abbr" />
<Key word = "accept-charset" />
<Key word = "accept" />
<Key word = "accesskey" />
<Key word = "action" />
<Key word = "align" />
<Key word = "alink" />
<Key word = "alt" />
<Key word = "applicationname" />
<Key word = "archive" />
<Key word = "axis" />
<Key word = "background" />
<Key word = "behavior" />
<Key word = "bgcolor" />
<Key word = "bgproperties" />
<Key word = "border" />
<Key word = "bordercolor" />
<Key word = "bordercolordark" />
<Key word = "bordercolorligh" />
<Key word = "borderstyle" />
<Key word = "caption" />
<Key word = "cellpadding" />
<Key word = "cellspacing" />
<Key word = "char" />
<Key word = "charoff" />
<Key word = "charset" />
<Key word = "checked" />
<Key word = "cite" />
<Key word = "class" />
<Key word = "classid" />
<Key word = "clear" />
<Key word = "code" />
<Key word = "codetype" />
<Key word = "color" />
<Key word = "cols" />
<Key word = "colspan" />
<Key word = "compact" />
<Key word = "content" />
<Key word = "coords" />
<Key word = "data" />
<Key word = "datetime" />
<Key word = "declare" />
<Key word = "defer" />
<Key word = "dir" />
<Key word = "direction" />
<Key word = "disabled" />
<Key word = "dynsrc" />
<Key word = "enctype" />
<Key word = "face" />
<Key word = "for" />
<Key word = "frame" />
<Key word = "frameborder" />
<Key word = "framespacing" />
<Key word = "gutter" />
<Key word = "headers" />
<Key word = "height" />
<Key word = "href" />
<Key word = "hreflang" />
<Key word = "hspace" />
<Key word = "http-equiv" />
<Key word = "icon" />
<Key word = "id" />
<Key word = "ismap" />
<Key word = "label" />
<Key word = "language" />
<Key word = "leftmargin" />
<Key word = "link" />
<Key word = "longdesc" />
<Key word = "loop" />
<Key word = "lowsrc" />
<Key word = "marginheight" />
<Key word = "marginwidth" />
<Key word = "maximizebutton" />
<Key word = "maxlength" />
<Key word = "media" />
<Key word = "method" />
<Key word = "methods" />
<Key word = "minimizebutton" />
<Key word = "multiple" />
<Key word = "name" />
<Key word = "nohref" />
<Key word = "noresize" />
<Key word = "noshade" />
<Key word = "nowrap" />
<Key word = "object" />
<Key word = "onabort" />
<Key word = "onblur" />
<Key word = "onchange" />
<Key word = "onclick" />
<Key word = "ondblclick" />
<Key word = "onerror" />
<Key word = "onfocus" />
<Key word = "onkeydown" />
<Key word = "onkeypress" />
<Key word = "onkeyup" />
<Key word = "onload" />
<Key word = "onmousedown" />
<Key word = "onmousemove" />
<Key word = "onmouseout" />
<Key word = "onmouseover" />
<Key word = "onmouseup" />
<Key word = "onreset" />
<Key word = "onselect" />
<Key word = "onsubmit" />
<Key word = "onunload" />
<Key word = "profile" />
<Key word = "prompt" />
<Key word = "readonly" />
<Key word = "rel" />
<Key word = "rev" />
<Key word = "rows" />
<Key word = "rowspan" />
<Key word = "rules" />
<Key word = "runat" />
<Key word = "scheme" />
<Key word = "scope" />
<Key word = "scrollamount" />
<Key word = "scrolldelay" />
<Key word = "scrolling" />
<Key word = "selected" />
<Key word = "shape" />
<Key word = "showintaskbar" />
<Key word = "singleinstance" />
<Key word = "size" />
<Key word = "span" />
<Key word = "src" />
<Key word = "standby" />
<Key word = "start" />
<Key word = "style" />
<Key word = "summary" />
<Key word = "sysmenu" />
<Key word = "tabindex" />
<Key word = "target" />
<Key word = "text" />
<Key word = "title" />
<Key word = "topmargin" />
<Key word = "type" />
<Key word = "urn" />
<Key word = "usemap" />
<Key word = "valign" />
<Key word = "value" />
<Key word = "valuetype" />
<Key word = "version" />
<Key word = "vlink" />
<Key word = "vrml" />
<Key word = "vspace" />
<Key word = "width" />
<Key word = "windowstate" />
<Key word = "wrap" />
</KeyWords>
</RuleSet>
</RuleSets>
</SyntaxDefinition>
<!-- converted to AvalonEdit format by Siegfried Pammer in 2010 -->
<SyntaxDefinition name="HTML" extensions=".htm;.html" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
<Color name="Comment" foreground="DarkSlateGray" />
<Color name="Digits" foreground="DarkBlue" />
<Color name="ScriptTag" foreground="#FF00FF7F" />
<Color name="JavaScriptTag" foreground="#FF00FF7F" />
<Color name="JScriptTag" foreground="#FF00FF7F" />
<Color name="VBScriptTag" foreground="#FF00FF7F" />
<Color name="UnknownScriptTag" foreground="#FF00FF7F" />
<Color name="HtmlTag" foreground="#FF8B008B" />
<Color name="Tags" foreground="#FF8B008B" />
<Color name="Attributes" foreground="Red" />
<Color name="Slash" foreground="DarkMagenta" />
<Color name="Assignment" foreground="Blue" />
<Color name="String" foreground="Blue" />
<Color name="EntityReference" foreground="Blue" />
<Color name="Entities" foreground="#FF008000" />
<Color name="UnknownAttribute" foreground="Blue" />
<RuleSet ignoreCase="true">
<Span color="Comment" multiline="true">
<Begin>&lt;!--</Begin>
<End>--&gt;</End>
</Span>
<Span color="ScriptTag" ruleSet="JavaScriptSet" multiline="true">
<Begin>&lt;script&gt;</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span color="JavaScriptTag" ruleSet="JavaScriptSet" multiline="true">
<Begin>&lt;script\ lang="JavaScript"&gt;</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span color="JScriptTag" multiline="true">
<Begin>&lt;script\ lang="JScript"&gt;</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span color="VBScriptTag" multiline="true">
<Begin>&lt;script\ lang="VBScript"&gt;</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span color="UnknownScriptTag" multiline="true">
<Begin>&lt;script[^\w\d_]</Begin>
<End>&lt;/script&gt;</End>
</Span>
<Span color="HtmlTag" ruleSet="HtmlTagSet" multiline="true">
<Begin>&lt;</Begin>
<End>&gt;</End>
</Span>
<Span color="EntityReference" ruleSet="EntityReferenceSet">
<Begin>&amp;</Begin>
<End>;</End>
</Span>
<Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
<RuleSet name="JavaScriptSet">
<Import ruleSet="JavaScript/" />
<Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
<RuleSet name="EntityReferenceSet" ignoreCase="false">
<Keywords color="Entities">
<Word>aacute</Word>
<Word>agrave</Word>
<Word>acirc</Word>
<Word>amp</Word>
<Word>atilde</Word>
<Word>aring</Word>
<Word>auml</Word>
<Word>aelig</Word>
<Word>ccedil</Word>
<Word>copy</Word>
<Word>eacute</Word>
<Word>egrave</Word>
<Word>ecirc</Word>
<Word>euml</Word>
<Word>iacute</Word>
<Word>igrave</Word>
<Word>icirc</Word>
<Word>iuml</Word>
<Word>eth</Word>
<Word>gt</Word>
<Word>lt</Word>
<Word>nbsp</Word>
<Word>ntilde</Word>
<Word>oacute</Word>
<Word>ograve</Word>
<Word>ocirc</Word>
<Word>otilde</Word>
<Word>ouml</Word>
<Word>oslash</Word>
<Word>quot</Word>
<Word>reg</Word>
<Word>szlig</Word>
<Word>uacute</Word>
<Word>ugrave</Word>
<Word>ucirc</Word>
<Word>uuml</Word>
<Word>yacute</Word>
<Word>thorn</Word>
<Word>trade</Word>
<Word>yuml</Word>
</Keywords>
<Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
<RuleSet name="HtmlTagSet" ignoreCase="false">
<Keywords color="Slash">
<Word>/</Word>
</Keywords>
<Keywords color="Assignment">
<Word>=</Word>
</Keywords>
<Keywords color="Tags">
<Word>!DOCTYPE</Word>
<Word>A</Word>
<Word>ABBR</Word>
<Word>ACRONYM</Word>
<Word>ADDRESS</Word>
<Word>APPLET</Word>
<Word>AREA</Word>
<Word>B</Word>
<Word>BASE</Word>
<Word>BASEFONT</Word>
<Word>BGSOUND</Word>
<Word>BDO</Word>
<Word>BIG</Word>
<Word>BLINK</Word>
<Word>BLOCKQUOTE</Word>
<Word>BODY</Word>
<Word>BR</Word>
<Word>BUTTON</Word>
<Word>CAPTION</Word>
<Word>CENTER</Word>
<Word>CITE</Word>
<Word>CODE</Word>
<Word>COL</Word>
<Word>COLGROUP</Word>
<Word>COMMENT</Word>
<Word>DD</Word>
<Word>DEL</Word>
<Word>DFN</Word>
<Word>DIR</Word>
<Word>DIV</Word>
<Word>DL</Word>
<Word>DT</Word>
<Word>EM</Word>
<Word>EMBED</Word>
<Word>FIELDSET</Word>
<Word>FONT</Word>
<Word>FORM</Word>
<Word>FRAME</Word>
<Word>FRAMESET</Word>
<Word>H</Word>
<Word>H1</Word>
<Word>H2</Word>
<Word>H3</Word>
<Word>H4</Word>
<Word>H5</Word>
<Word>H6</Word>
<Word>HEAD</Word>
<Word>HR</Word>
<Word>HTA:APPLICATION</Word>
<Word>HTML</Word>
<Word>I</Word>
<Word>IFRAME</Word>
<Word>IMG</Word>
<Word>INPUT</Word>
<Word>INS</Word>
<Word>ISINDEX</Word>
<Word>KBD</Word>
<Word>LABEL</Word>
<Word>LEGEnd</Word>
<Word>LI</Word>
<Word>LINK</Word>
<Word>LISTING</Word>
<Word>MAP</Word>
<Word>MARQUEE</Word>
<Word>MENU</Word>
<Word>META</Word>
<Word>MULTICOL</Word>
<Word>NEXTID</Word>
<Word>NOBR</Word>
<Word>NOFRAMES</Word>
<Word>NOSCRIPT</Word>
<Word>OBJECT</Word>
<Word>OL</Word>
<Word>OPTGROUP</Word>
<Word>OPTION</Word>
<Word>P</Word>
<Word>PARAM</Word>
<Word>PLAINTEXT</Word>
<Word>PRE</Word>
<Word>Q</Word>
<Word>S</Word>
<Word>SAMP</Word>
<Word>SCRIPT</Word>
<Word>SELECT</Word>
<Word>SERVER</Word>
<Word>SMALL</Word>
<Word>SOUND</Word>
<Word>SPACER</Word>
<Word>Span</Word>
<Word>STRONG</Word>
<Word>STYLE</Word>
<Word>SUB</Word>
<Word>SUP</Word>
<Word>TABLE</Word>
<Word>TBODY</Word>
<Word>TD</Word>
<Word>TEXTAREA</Word>
<Word>TEXTFLOW</Word>
<Word>TFOOT</Word>
<Word>TH</Word>
<Word>THEAD</Word>
<Word>TITLE</Word>
<Word>TR</Word>
<Word>TT</Word>
<Word>U</Word>
<Word>VAR</Word>
<Word>WBR</Word>
<Word>XMP</Word>
</Keywords>
<Keywords color="Attributes">
<Word>abbr</Word>
<Word>accept-charset</Word>
<Word>accept</Word>
<Word>accesskey</Word>
<Word>action</Word>
<Word>align</Word>
<Word>alink</Word>
<Word>alt</Word>
<Word>applicationname</Word>
<Word>archive</Word>
<Word>axis</Word>
<Word>background</Word>
<Word>behavior</Word>
<Word>bgcolor</Word>
<Word>bgproperties</Word>
<Word>border</Word>
<Word>bordercolor</Word>
<Word>bordercolordark</Word>
<Word>bordercolorligh</Word>
<Word>borderstyle</Word>
<Word>caption</Word>
<Word>cellpadding</Word>
<Word>cellspacing</Word>
<Word>char</Word>
<Word>charoff</Word>
<Word>charset</Word>
<Word>checked</Word>
<Word>cite</Word>
<Word>class</Word>
<Word>classid</Word>
<Word>clear</Word>
<Word>code</Word>
<Word>codetype</Word>
<Word>color</Word>
<Word>cols</Word>
<Word>colspan</Word>
<Word>compact</Word>
<Word>content</Word>
<Word>coords</Word>
<Word>data</Word>
<Word>datetime</Word>
<Word>declare</Word>
<Word>defer</Word>
<Word>dir</Word>
<Word>direction</Word>
<Word>disabled</Word>
<Word>dynsrc</Word>
<Word>enctype</Word>
<Word>face</Word>
<Word>for</Word>
<Word>frame</Word>
<Word>frameborder</Word>
<Word>framespacing</Word>
<Word>gutter</Word>
<Word>headers</Word>
<Word>height</Word>
<Word>href</Word>
<Word>hreflang</Word>
<Word>hspace</Word>
<Word>http-equiv</Word>
<Word>icon</Word>
<Word>id</Word>
<Word>ismap</Word>
<Word>label</Word>
<Word>language</Word>
<Word>leftmargin</Word>
<Word>link</Word>
<Word>longdesc</Word>
<Word>loop</Word>
<Word>lowsrc</Word>
<Word>marginheight</Word>
<Word>marginwidth</Word>
<Word>maximizebutton</Word>
<Word>maxlength</Word>
<Word>media</Word>
<Word>method</Word>
<Word>methods</Word>
<Word>minimizebutton</Word>
<Word>multiple</Word>
<Word>name</Word>
<Word>nohref</Word>
<Word>noresize</Word>
<Word>noshade</Word>
<Word>nowrap</Word>
<Word>object</Word>
<Word>onabort</Word>
<Word>onblur</Word>
<Word>onchange</Word>
<Word>onclick</Word>
<Word>ondblclick</Word>
<Word>onerror</Word>
<Word>onfocus</Word>
<Word>onkeydown</Word>
<Word>onkeypress</Word>
<Word>onkeyup</Word>
<Word>onload</Word>
<Word>onmousedown</Word>
<Word>onmousemove</Word>
<Word>onmouseout</Word>
<Word>onmouseover</Word>
<Word>onmouseup</Word>
<Word>onreset</Word>
<Word>onselect</Word>
<Word>onsubmit</Word>
<Word>onunload</Word>
<Word>profile</Word>
<Word>prompt</Word>
<Word>readonly</Word>
<Word>rel</Word>
<Word>rev</Word>
<Word>rows</Word>
<Word>rowspan</Word>
<Word>rules</Word>
<Word>runat</Word>
<Word>scheme</Word>
<Word>scope</Word>
<Word>scrollamount</Word>
<Word>scrolldelay</Word>
<Word>scrolling</Word>
<Word>selected</Word>
<Word>shape</Word>
<Word>showintaskbar</Word>
<Word>singleinstance</Word>
<Word>size</Word>
<Word>span</Word>
<Word>src</Word>
<Word>standby</Word>
<Word>start</Word>
<Word>style</Word>
<Word>summary</Word>
<Word>sysmenu</Word>
<Word>tabindex</Word>
<Word>target</Word>
<Word>text</Word>
<Word>title</Word>
<Word>topmargin</Word>
<Word>type</Word>
<Word>urn</Word>
<Word>usemap</Word>
<Word>valign</Word>
<Word>value</Word>
<Word>valuetype</Word>
<Word>version</Word>
<Word>vlink</Word>
<Word>vrml</Word>
<Word>vspace</Word>
<Word>width</Word>
<Word>windowstate</Word>
<Word>wrap</Word>
</Keywords>
<Span color="String">
<Begin>"</Begin>
<End>"</End>
</Span>
<Span color="String">
<Begin>'</Begin>
<End>'</End>
</Span>
<Rule color="UnknownAttribute">[\d\w_]+(?=(\s*=))</Rule>
<Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
</SyntaxDefinition>

328
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/Java-Mode.xshd

@ -1,180 +1,152 @@ @@ -1,180 +1,152 @@
<?xml version="1.0"?>
<!-- syntaxdefinition for Java 2001 by Jonathan Pierce & Mike Krueger -->
<SyntaxDefinition name = "Java" extensions = ".java">
<Properties>
<Property name="LineComment" value="//"/>
</Properties>
<Digits name = "Digits" bold = "false" italic = "false" color = "DarkBlue"/>
<RuleSets>
<RuleSet ignorecase = "false">
<Delimiters>~!%^*()-+=|\#/{}[]:;"'&lt;&gt; , .?</Delimiters>
<Span name = "LINECOMMENT" rule = "TestSet" bold = "false" italic = "true" color = "SlateGray" stopateol = "true">
<Begin>//</Begin>
</Span>
<Span name = "BLOCKCOMMENT" rule = "TestSet" bold = "false" italic = "true" color = "SlateGray" stopateol = "false">
<Begin>/*</Begin>
<End>*/</End>
</Span>
<Span name = "STRING" bold = "false" italic = "false" color = "Magenta" stopateol = "true" escapecharacter="\">
<Begin>"</Begin>
<End>"</End>
</Span>
<Span name = "CHAR" bold = "false" italic = "false" color = "Magenta" stopateol = "true" escapecharacter="\">
<Begin>'</Begin>
<End>'</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 = "&lt;" />
<Key word = "&gt;" />
<Key word = "^" />
<Key word = "!" />
<Key word = "|" />
</KeyWords>
<KeyWords name = "AccessKeywords" bold="true" italic="false" color="Black">
<Key word = "this" />
<Key word = "super" />
</KeyWords>
<KeyWords name = "OperatorKeywords" bold="true" italic="false" color="DarkCyan">
<Key word = "new" />
<Key word = "instanceof" />
<Key word = "true" />
<Key word = "false" />
</KeyWords>
<KeyWords name = "SelectionStatements" bold="true" italic="false" color="Blue">
<Key word = "else" />
<Key word = "if" />
<Key word = "switch" />
<Key word = "case" />
</KeyWords>
<KeyWords name = "IterationStatements" bold="true" italic="false" color="Blue">
<Key word = "do" />
<Key word = "for" />
<Key word = "while" />
</KeyWords>
<KeyWords name = "JumpStatements" bold="false" italic="false" color="Navy">
<Key word = "break" />
<Key word = "continue" />
<Key word = "default" />
<Key word = "goto" />
<Key word = "return" />
</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 = "ValueTypes" bold="true" italic="false" color="Red">
<Key word = "boolean" />
<Key word = "double" />
<Key word = "int" />
<Key word = "short" />
<Key word = "long" />
<Key word = "float" />
<Key word = "byte" />
<Key word = "char" />
</KeyWords>
<KeyWords name = "ReferenceTypes" bold="false" italic="false" color="Red">
<Key word = "class" />
<Key word = "interface" />
<Key word = "object" />
</KeyWords>
<KeyWords name = "Void" bold="false" italic="false" color="Red">
<Key word = "void" />
</KeyWords>
<KeyWords name = "Modifiers" bold="false" italic="false" color="Brown">
<Key word = "abstract" />
<Key word = "const" />
<Key word = "static" />
<Key word = "final" />
<Key word = "native" />
<Key word = "extends" />
<Key word = "implements" />
<Key word = "volatile" />
<Key word = "transient" />
<Key word = "throws" />
<Key word = "strictfp" />
<Key word = "synchronized" />
</KeyWords>
<KeyWords name = "AccessModifiers" bold="true" italic="false" color="Blue">
<Key word = "public" />
<Key word = "protected" />
<Key word = "private" />
</KeyWords>
<KeyWords name = "NameSpaces" bold="true" italic="false" color="Green">
<Key word = "package" />
<Key word = "import" />
</KeyWords>
<KeyWords name = "Literals" bold="true" italic="false" color="Black">
<Key word = "null" />
</KeyWords>
</RuleSet>
<RuleSet name = "TestSet" ignorecase = "true">
<Delimiters>~!%^*()-+=|\#/{}[]:;"'&lt;&gt; , .?</Delimiters>
<KeyWords name = "Todoword" bold="true" italic="true" color="Red">
<Key word = "TODO" />
</KeyWords>
<KeyWords name = "JAVADOC comments" bold="true" italic="true" color="DarkGray">
<Key word = "@author" />
<Key word = "@version" />
<Key word = "@param" />
<Key word = "@return" />
<Key word = "@exception" />
<Key word = "@throws" />
<Key word = "@see" />
<Key word = "@since" />
<Key word = "@serial" />
<Key word = "@serialField" />
<Key word = "@serialData" />
<Key word = "@deprecated" />
</KeyWords>
</RuleSet>
</RuleSets>
</SyntaxDefinition>
<!-- converted to AvalonEdit format by Siegfried Pammer in 2010 -->
<SyntaxDefinition name="Java" extensions=".java" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
<Color name="MethodName" foreground="DarkBlue" />
<Color name="Digits" foreground="DarkBlue" fontStyle="italic" />
<Color name="String" foreground="Magenta" />
<Color name="Character" foreground="Magenta" />
<Color name="Comment" foreground="SlateGray" />
<Color name="Punctuation" foreground="DarkGreen" />
<Color name="AccessKeywords" foreground="Black" fontWeight="bold" />
<Color name="OperatorKeywords" foreground="DarkCyan" fontWeight="bold" />
<Color name="SelectionStatements" foreground="Blue" fontWeight="bold" />
<Color name="IterationStatements" foreground="Blue" fontWeight="bold" />
<Color name="ExceptionHandlingStatements" foreground="Teal" fontWeight="bold" />
<Color name="ValueTypes" foreground="Red" fontWeight="bold" />
<Color name="ReferenceTypes" foreground="Red" />
<Color name="Void" foreground="Red" />
<Color name="JumpStatements" foreground="Navy" />
<Color name="Modifiers" foreground="Brown" />
<Color name="AccessModifiers" foreground="Blue" fontWeight="bold" />
<Color name="Package" foreground="Green" fontWeight="bold" />
<Color name="Literals" foreground="Black" fontWeight="bold" />
<Color name="CommentTags" foreground="Red" fontWeight="bold" fontStyle="italic" />
<Color name="JavaDocTags" foreground="DarkGray" fontWeight="bold" fontStyle="italic" />
<RuleSet ignoreCase="false">
<Rule color="Punctuation">
[?,.()\[\]{}+\-/%*&lt;&gt;^!|]+
</Rule>
<Keywords color="AccessKeywords">
<Word>this</Word>
<Word>super</Word>
</Keywords>
<Keywords color="OperatorKeywords">
<Word>new</Word>
<Word>instanceof</Word>
<Word>true</Word>
<Word>false</Word>
</Keywords>
<Keywords color="SelectionStatements">
<Word>else</Word>
<Word>if</Word>
<Word>switch</Word>
<Word>case</Word>
</Keywords>
<Keywords color="IterationStatements">
<Word>do</Word>
<Word>for</Word>
<Word>while</Word>
</Keywords>
<Keywords color="JumpStatements">
<Word>break</Word>
<Word>continue</Word>
<Word>default</Word>
<Word>goto</Word>
<Word>return</Word>
</Keywords>
<Keywords color="ExceptionHandlingStatements">
<Word>try</Word>
<Word>throw</Word>
<Word>catch</Word>
<Word>finally</Word>
</Keywords>
<Keywords color="ValueTypes">
<Word>boolean</Word>
<Word>double</Word>
<Word>int</Word>
<Word>short</Word>
<Word>long</Word>
<Word>float</Word>
<Word>byte</Word>
<Word>char</Word>
</Keywords>
<Keywords color="ReferenceTypes">
<Word>class</Word>
<Word>interface</Word>
<Word>object</Word>
</Keywords>
<Keywords color="Void">
<Word>void</Word>
</Keywords>
<Keywords color="Modifiers">
<Word>abstract</Word>
<Word>const</Word>
<Word>static</Word>
<Word>final</Word>
<Word>native</Word>
<Word>extends</Word>
<Word>implements</Word>
<Word>volatile</Word>
<Word>transient</Word>
<Word>throws</Word>
<Word>strictfp</Word>
<Word>synchronized</Word>
</Keywords>
<Keywords color="AccessModifiers">
<Word>public</Word>
<Word>protected</Word>
<Word>private</Word>
</Keywords>
<Keywords color="Package">
<Word>package</Word>
<Word>import</Word>
</Keywords>
<Keywords color="Literals">
<Word>null</Word>
</Keywords>
<Span color="Comment" ruleSet="TestSet">
<Begin>//</Begin>
</Span>
<Span color="Comment" ruleSet="TestSet" multiline="true">
<Begin>/\*</Begin>
<End>\*/</End>
</Span>
<Span color="String">
<Begin>"</Begin>
<End>"</End>
<RuleSet>
<Span begin="\\" end="." />
</RuleSet>
</Span>
<Span color="Character">
<Begin>'</Begin>
<End>'</End>
<RuleSet>
<Span begin="\\" end="." />
</RuleSet>
</Span>
<Rule color="MethodName">[\d\w_]+(?=(\s*\())</Rule>
<Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
<RuleSet name="TestSet" ignoreCase="true">
<Keywords color="CommentTags">
<Word>TODO</Word>
</Keywords>
<Keywords color="JavaDocTags">
<Word>@author</Word>
<Word>@version</Word>
<Word>@param</Word>
<Word>@return</Word>
<Word>@exception</Word>
<Word>@throws</Word>
<Word>@see</Word>
<Word>@since</Word>
<Word>@serial</Word>
<Word>@serialField</Word>
<Word>@serialData</Word>
<Word>@deprecated</Word>
</Keywords>
<Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
</SyntaxDefinition>

255
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/JavaScript-Mode.xshd

@ -1,136 +1,123 @@ @@ -1,136 +1,123 @@
<?xml version="1.0"?>
<!-- syntaxdefinition for JavaScript 2.0 by Svante Lidman -->
<SyntaxDefinition name ="JavaScript" extensions = ".js">
<Properties>
<Property name="LineComment" value="//"/>
</Properties>
<Digits name ="Digits" bold ="false" italic ="false" color ="DarkBlue"/>
<RuleSets>
<RuleSet ignorecase = "false">
<Delimiters>=!&gt;&lt;+-/*%&amp;|^~.}{,;][?:</Delimiters>
<Span name ="LineComment" bold ="false" italic ="false" color ="DarkSlateGray" stopateol ="true">
<Begin>//</Begin>
</Span>
<Span name ="BlockComment" bold ="false" italic ="false" color ="DarkSlateGray" stopateol ="false">
<Begin>/*</Begin>
<End>*/</End>
</Span>
<Span name ="String" bold ="false" italic ="false" color ="Sienna" stopateol ="false" escapecharacter="\">
<Begin>&quot;</Begin>
<End>&quot;</End>
</Span>
<Span name = "Character" bold = "false" italic = "false" color = "Sienna" stopateol = "true" escapecharacter="\">
<Begin>&apos;</Begin>
<End>&apos;</End>
</Span>
<KeyWords name ="JavaScriptKeyWords" bold="false" italic = "false" color = "Blue">
<Key word = "break" />
<Key word = "continue" />
<Key word = "delete" />
<Key word = "else" />
<Key word = "for" />
<Key word = "function" />
<Key word = "if" />
<Key word = "in" />
<Key word = "new" />
<Key word = "return" />
<Key word = "this" />
<Key word = "typeof" />
<Key word = "var" />
<Key word = "void" />
<Key word = "while" />
<Key word = "with" />
<!--ECMAScript keywords-->
<!-- Reserved for future use
(some are already used in some Javascript Engines)
-->
<Key word = "abstract" />
<Key word = "boolean" />
<Key word = "byte" />
<Key word = "case" />
<Key word = "catch" />
<Key word = "char" />
<Key word = "class" />
<Key word = "const" />
<Key word = "debugger" />
<Key word = "default" />
<Key word = "do" />
<Key word = "double" />
<Key word = "enum" />
<Key word = "export" />
<Key word = "extends" />
<Key word = "final" />
<Key word = "finally" />
<Key word = "float" />
<Key word = "goto" />
<Key word = "implements" />
<Key word = "import" />
<Key word = "instanceof" />
<Key word = "int" />
<Key word = "interface" />
<Key word = "long" />
<Key word = "native" />
<Key word = "package" />
<Key word = "private" />
<Key word = "protected" />
<Key word = "public" />
<Key word = "short" />
<Key word = "static" />
<Key word = "super" />
<Key word = "switch" />
<Key word = "synchronized" />
<Key word = "throw" />
<Key word = "throws" />
<Key word = "transient" />
<Key word = "try" />
<Key word = "volatile" />
</KeyWords>
<KeyWords name ="JavaScriptIntrinsics" bold="false" italic = "false" color = "Blue">
<Key word = "Array" />
<Key word = "Boolean" />
<Key word = "Date" />
<Key word = "Function" />
<Key word = "Global" />
<Key word = "Math" />
<Key word = "Number" />
<Key word = "Object" />
<Key word = "RegExp" />
<Key word = "String" />
</KeyWords>
<KeyWords name ="JavaScriptLiterals" bold="false" italic = "false" color = "Blue">
<Key word = "false" />
<Key word = "null" />
<Key word = "true" />
<Key word = "NaN" />
<Key word = "Infinity" />
</KeyWords>
<KeyWords name ="JavaScriptLiterals" bold="false" italic = "false" color = "Blue">
<Key word = "" />
</KeyWords>
<KeyWords name ="JavaScriptGlobalFunctions" bold="false" italic = "false" color = "Blue">
<Key word = "eval" />
<Key word = "parseInt" />
<Key word = "parseFloat" />
<Key word = "escape" />
<Key word = "unescape" />
<Key word = "isNaN" />
<Key word = "isFinite" />
</KeyWords>
</RuleSet>
</RuleSets>
</SyntaxDefinition>
<!-- converted to AvalonEdit format by Siegfried Pammer in 2010 -->
<SyntaxDefinition name="JavaScript" extensions=".js" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
<Color name="Digits" foreground="DarkBlue" />
<Color name="Comment" foreground="DarkSlateGray" />
<Color name="String" foreground="Sienna" />
<Color name="Character" foreground="Sienna" />
<Color name="JavaScriptKeyWords" foreground="Blue" />
<Color name="JavaScriptIntrinsics" foreground="Blue" />
<Color name="JavaScriptLiterals" foreground="Blue" />
<Color name="JavaScriptGlobalFunctions" foreground="Blue" />
<RuleSet ignoreCase="false">
<Keywords color="JavaScriptKeyWords">
<Word>break</Word>
<Word>continue</Word>
<Word>delete</Word>
<Word>else</Word>
<Word>for</Word>
<Word>function</Word>
<Word>if</Word>
<Word>in</Word>
<Word>new</Word>
<Word>return</Word>
<Word>this</Word>
<Word>typeof</Word>
<Word>var</Word>
<Word>void</Word>
<Word>while</Word>
<Word>with</Word>
<Word>abstract</Word>
<Word>boolean</Word>
<Word>byte</Word>
<Word>case</Word>
<Word>catch</Word>
<Word>char</Word>
<Word>class</Word>
<Word>const</Word>
<Word>debugger</Word>
<Word>default</Word>
<Word>do</Word>
<Word>double</Word>
<Word>enum</Word>
<Word>export</Word>
<Word>extends</Word>
<Word>final</Word>
<Word>finally</Word>
<Word>float</Word>
<Word>goto</Word>
<Word>implements</Word>
<Word>import</Word>
<Word>instanceof</Word>
<Word>int</Word>
<Word>interface</Word>
<Word>long</Word>
<Word>native</Word>
<Word>package</Word>
<Word>private</Word>
<Word>protected</Word>
<Word>public</Word>
<Word>short</Word>
<Word>static</Word>
<Word>super</Word>
<Word>switch</Word>
<Word>synchronized</Word>
<Word>throw</Word>
<Word>throws</Word>
<Word>transient</Word>
<Word>try</Word>
<Word>volatile</Word>
</Keywords>
<Keywords color="JavaScriptIntrinsics">
<Word>Array</Word>
<Word>Boolean</Word>
<Word>Date</Word>
<Word>Function</Word>
<Word>Global</Word>
<Word>Math</Word>
<Word>Number</Word>
<Word>Object</Word>
<Word>RegExp</Word>
<Word>String</Word>
</Keywords>
<Keywords color="JavaScriptLiterals">
<Word>false</Word>
<Word>null</Word>
<Word>true</Word>
<Word>NaN</Word>
<Word>Infinity</Word>
</Keywords>
<Keywords color="JavaScriptGlobalFunctions">
<Word>eval</Word>
<Word>parseInt</Word>
<Word>parseFloat</Word>
<Word>escape</Word>
<Word>unescape</Word>
<Word>isNaN</Word>
<Word>isFinite</Word>
</Keywords>
<Span color="Comment">
<Begin>//</Begin>
</Span>
<Span color="Comment" multiline="true">
<Begin>/\*</Begin>
<End>\*/</End>
</Span>
<Span color="String" multiline="true">
<Begin>"</Begin>
<End>"</End>
<RuleSet>
<Span begin="\\" end="." />
</RuleSet>
</Span>
<Span color="Character">
<Begin>'</Begin>
<End>'</End>
<RuleSet>
<Span begin="\\" end="." />
</RuleSet>
</Span>
<Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
</RuleSet>
</SyntaxDefinition>

340
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/Resources/PHP-Mode.xshd

@ -1,198 +1,158 @@ @@ -1,198 +1,158 @@
<?xml version="1.0"?>
<!-- syntaxdefinition for PHP 2001 by Chad Smith & Mike Krueger -->
<SyntaxDefinition name ="PHP" extensions = ".php">
<Digits name ="Digits" bold ="false" italic ="false" color ="DarkBlue"/>
<RuleSets>
<RuleSet ignorecase = "false">
<Delimiters>~!%^*()-+=|\#/{}[]:;"'&lt;&gt; , .?</Delimiters>
<Span name ="PreprocessorDirectives" bold="false" italic = "false" color = "Green" stopateol ="true">
<Begin>#</Begin>
</Span>
<Span name ="LINECOMMENT" rule = "DocumentSet" bold ="false" italic ="true" color ="SlateGray" stopateol ="true">
<Begin>///</Begin>
</Span>
<Span name ="LINECOMMENT" rule = "TestSet" bold ="false" italic ="true" color ="SlateGray" stopateol ="true">
<Begin>//@!/@</Begin>
</Span>
<Span name ="BLOCKCOMMENT" rule = "TestSet" bold ="false" italic ="true" color ="SlateGray" stopateol ="false">
<Begin>/*</Begin>
<End>*/</End>
</Span>
<Span name ="STRING" bold ="false" italic ="false" color ="Magenta" stopateol ="true" escapecharacter="\">
<Begin>"</Begin>
<End>"</End>
</Span>
<Span name ="MORELINEDSTRING" bold ="false" italic ="false" color ="Magenta" stopateol ="false" escapecharacter="\">
<Begin>@@"</Begin>
<End>"</End>
</Span>
<Span name ="CHAR" bold ="false" italic ="false" color ="Magenta" stopateol ="true" escapecharacter="\">
<Begin>'</Begin>
<End>'</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 = "&lt;" />
<Key word = "&gt;" />
<Key word = "^" />
<Key word = "!" />
<Key word = "|" />
</KeyWords>
<KeyWords name ="AccessKeywords" bold="true" italic = "false" color = "Black">
<Key word = "global" />
<Key word = "my" />
</KeyWords>
<KeyWords name ="OperatorKeywords" bold="true" italic = "false" color = "DarkCyan">
<Key word = "and" />
<Key word = "or" />
<Key word = "new" />
<Key word = "xor" />
<Key word = "true" />
<Key word = "false" />
</KeyWords>
<KeyWords name ="SelectionStatements" bold="true" italic = "false" color = "Blue">
<Key word = "else" />
<Key word = "if" />
<Key word = "switch" />
<Key word = "case" />
<Key word = "endif" />
<Key word = "elseif" />
</KeyWords>
<KeyWords name ="IterationStatements" bold="true" italic = "false" color = "Blue">
<Key word = "do" />
<Key word = "for" />
<Key word = "foreach" />
<Key word = "while" />
<Key word = "endwhile" />
<Key word = "exit" />
</KeyWords>
<KeyWords name ="JumpStatements" bold="false" italic = "false" color = "Navy">
<Key word = "break" />
<Key word = "continue" />
<Key word = "default" />
<Key word = "goto" />
<Key word = "return" />
</KeyWords>
<KeyWords name ="ExceptionHandlingStatements" bold="true" italic = "false" color = "Teal">
<Key word = "require" />
<Key word = "include" />
<Key word = "function" />
<Key word = "return" />
<Key word = "old_function" />
</KeyWords>
<KeyWords name ="ValueTypes" bold="true" italic = "false" color = "Red">
<Key word = "int" />
<Key word = "integer" />
<Key word = "real" />
<Key word = "double" />
<Key word = "float" />
<Key word = "string" />
<Key word = "array" />
<Key word = "object" />
</KeyWords>
<KeyWords name ="ReferenceTypes" bold="false" italic = "false" color = "Red">
<Key word = "class" />
<Key word = "new" />
</KeyWords>
<KeyWords name ="Void" bold="false" italic = "false" color = "Red">
<Key word = "void" />
</KeyWords>
<KeyWords name ="AccessModifiers" bold="true" italic = "false" color = "Blue">
<Key word = "public" />
<Key word = "private" />
</KeyWords>
<KeyWords name ="GetSet" bold="false" italic = "false" color = "SaddleBrown">
<Key word = "get" />
<Key word = "set" />
</KeyWords>
<KeyWords name ="Literals" bold="true" italic = "false" color = "Black">
<Key word = "null" />
<Key word = "value" />
</KeyWords>
<KeyWords name ="Statements" bold="true" italic = "false" color = "DarkBlue">
<Key word = "var" />
<Key word = "extends" />
<Key word = "list" />
<Key word = "each" />
<Key word = "PHP_SELF" />
</KeyWords>
</RuleSet>
<RuleSet name ="TestSet" ignorecase = "true">
<Delimiters>~!@%^*()-+=|\#/{}[]:;"'&lt;&gt; , .?</Delimiters>
<KeyWords name ="Testword" bold="true" italic = "true" color = "Red">
<Key word = "TODO" />
</KeyWords>
</RuleSet>
<!-- converted to AvalonEdit format by Siegfried Pammer in 2010 -->
<SyntaxDefinition name ="PHP" extensions = ".php" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
<Color name="Comment" foreground="Green" exampleText="// comment" />
<Color name="String" foreground="Blue" exampleText="$text = &quot;Hello, World!&quot;" />
<Color name="NumberLiteral" foreground="DarkBlue" exampleText="3.1415" />
<Color name="Punctuation" foreground="DarkGreen" exampleText="a(b + c)" />
<Color name="FunctionCall" foreground="MidnightBlue" fontWeight="bold" exampleText="abs(num);"/>
<Color name="AccessKeywords" foreground="Black" fontWeight="bold" exampleText="global $database;" />
<Color name="OperatorKeywords" foreground="DarkCyan" fontWeight="bold" exampleText="if (x === false and y === false) { }" />
<Color name="SelectionStatements" foreground="Blue" fontWeight="bold" exampleText="if (true) { } else { }" />
<Color name="IterationStatements" foreground="Blue" fontWeight="bold" exampleText="while (true) { }" />
<Color name="JumpStatements" foreground="Navy" fontWeight="bold" exampleText="if (x == 5) continue;" />
<Color name="ControlStatements" foreground="Teal" fontWeight="bold" exampleText="include(&quot;test.php&quot;);" />
<Color name="ValueTypes" foreground="Red" fontWeight="bold" exampleText="int test = 5;" />
<Color name="OtherTypes" foreground="Red" exampleText="object test = null;" />
<Color name="AccessModifiers" foreground="Blue" fontWeight="bold" exampleText="public function test() {}" />
<RuleSet>
<Span color="Comment">
<Begin>\#</Begin>
</Span>
<Span color="Comment">
<Begin>//</Begin>
</Span>
<Span color="Comment" multiline="true">
<Begin>/\*</Begin>
<End>\*/</End>
</Span>
<RuleSet name ="DocumentSet" ignorecase = "false">
<Delimiters>~!@%^*()-+=|\#/{}[]:;"'&lt;&gt; , .?</Delimiters>
<Span name ="XMLTAG" rule = "XMLDocuSet" bold ="false" italic ="true" color ="Gray" stopateol ="true">
<Begin>&lt;</Begin>
<End>&gt;</End>
</Span>
<KeyWords name ="Testword" bold="true" italic = "true" color = "Red">
<Key word = "TODO" />
</KeyWords>
</RuleSet>
<!-- Digits -->
<Rule color="NumberLiteral">
\b0[xX][0-9a-fA-F]+ # hex number
|
\b0[0-9]+ # octal number
|
( \b\d+(\.[0-9]+)? #number with optional floating point
| \.[0-9]+ #or just starting with floating point
)
([eE][+-]?[0-9]+)? # optional exponent
</Rule>
<RuleSet name ="XMLDocuSet" ignorecase = "false">
<Delimiters>~!@%^*()-+=|\#/{}[]:;"'&lt;&gt; , .?</Delimiters>
<Rule color="Punctuation">
[?,.:;()\[\]{}+\-/%*&lt;&gt;&amp;^!|~@]+
</Rule>
<Span name ="STRING" bold ="true" italic ="true" color ="Silver" stopateol ="true">
<Begin>"</Begin>
<End>"</End>
</Span>
<!-- Mark previous rule-->
<Rule color="FunctionCall">
\b
[\d\w_]+ # an identifier
(?=\s*\() # followed by (
</Rule>
<Span color="String" multiline="true">
<Begin>'</Begin>
<End>'</End>
<RuleSet>
<!-- span for escape sequences -->
<Span begin="\\" end="."/>
</RuleSet>
</Span>
<Span color="String" multiline="true">
<Begin>"</Begin>
<End>"</End>
<RuleSet>
<!-- span for escape sequences -->
<Span begin="\\" end="."/>
</RuleSet>
</Span>
<!-- heredoc syntax -->
<Span color="String" multiline="true">
<Begin>&lt;&lt;&lt;\"?[\d\w_]+\"?$</Begin>
<End>^[\d\w_]+;</End>
</Span>
<!-- nowdoc syntax -->
<Span color="String" multiline="true">
<Begin>&lt;&lt;&lt;\'[\d\w_]+\'$</Begin>
<End>^[\d\w_]+;</End>
</Span>
<Keywords color="AccessKeywords">
<Word>global</Word>
<Word>my</Word>
<Word>var</Word>
</Keywords>
<KeyWords name ="Punctuation" bold ="true" italic ="true" color ="Gray">
<Key word = "/" />
<Key word = "|" />
<Key word = "=" />
</KeyWords>
</RuleSet>
</RuleSets>
<Keywords color="OperatorKeywords">
<Word>and</Word>
<Word>or</Word>
<Word>new</Word>
<Word>clone</Word>
<Word>instanceof</Word>
<Word>xor</Word>
<Word>true</Word>
<Word>false</Word>
</Keywords>
<Keywords color="SelectionStatements">
<Word>else</Word>
<Word>else</Word>
<Word>switch</Word>
<Word>case</Word>
<Word>endif</Word>
<Word>elseif</Word>
</Keywords>
<Keywords color="IterationStatements">
<Word>do</Word>
<Word>for</Word>
<Word>foreach</Word>
<Word>while</Word>
<Word>endwhile</Word>
<Word>exit</Word>
</Keywords>
<Keywords color="JumpStatements">
<Word>break</Word>
<Word>continue</Word>
<Word>default</Word>
<Word>goto</Word>
<Word>return</Word>
</Keywords>
<Keywords color="ControlStatements">
<Word>require</Word>
<Word>include</Word>
<Word>require</Word>
<Word>include</Word>
<Word>function</Word>
</Keywords>
<Keywords color="ValueTypes">
<Word>int</Word>
<Word>integer</Word>
<Word>real</Word>
<Word>double</Word>
<Word>float</Word>
<Word>string</Word>
<Word>array</Word>
<Word>object</Word>
</Keywords>
<Keywords color="OtherTypes">
<Word>class</Word>
<Word>void</Word>
</Keywords>
<Keywords color="AccessModifiers">
<Word>public</Word>
<Word>private</Word>
</Keywords>
</RuleSet>
</SyntaxDefinition>

2
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Utils/Deque.cs

@ -12,7 +12,7 @@ namespace ICSharpCode.AvalonEdit.Utils @@ -12,7 +12,7 @@ namespace ICSharpCode.AvalonEdit.Utils
/// </summary>
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")]
[Serializable]
public class Deque<T> : ICollection<T>
public sealed class Deque<T> : ICollection<T>
{
T[] arr = Empty<T>.Array;
int size, head, tail;

14
src/Main/Base/Project/Src/Services/File/FileService.cs

@ -412,8 +412,7 @@ namespace ICSharpCode.SharpDevelop @@ -412,8 +412,7 @@ namespace ICSharpCode.SharpDevelop
Directory.Delete(fileName, true);
}
} catch (Exception e) {
MessageService.ShowException(e, "Can't remove directory " + fileName);
// return;
MessageService.ShowHandledException(e, "Can't remove directory " + fileName);
}
} else {
try {
@ -424,8 +423,7 @@ namespace ICSharpCode.SharpDevelop @@ -424,8 +423,7 @@ namespace ICSharpCode.SharpDevelop
File.Delete(fileName);
}
} catch (Exception e) {
MessageService.ShowException(e, "Can't remove file " + fileName);
// return;
MessageService.ShowHandledException(e, "Can't remove file " + fileName);
}
}
}
@ -464,9 +462,9 @@ namespace ICSharpCode.SharpDevelop @@ -464,9 +462,9 @@ namespace ICSharpCode.SharpDevelop
}
} catch (Exception e) {
if (isDirectory) {
MessageService.ShowException(e, "Can't rename directory " + oldName);
MessageService.ShowHandledException(e, "Can't rename directory " + oldName);
} else {
MessageService.ShowException(e, "Can't rename file " + oldName);
MessageService.ShowHandledException(e, "Can't rename file " + oldName);
}
return false;
}
@ -508,9 +506,9 @@ namespace ICSharpCode.SharpDevelop @@ -508,9 +506,9 @@ namespace ICSharpCode.SharpDevelop
}
} catch (Exception e) {
if (isDirectory) {
MessageService.ShowException(e, "Can't copy directory " + oldName);
MessageService.ShowHandledException(e, "Can't copy directory " + oldName);
} else {
MessageService.ShowException(e, "Can't copy file " + oldName);
MessageService.ShowHandledException(e, "Can't copy file " + oldName);
}
return false;
}

27
src/Main/Core/Project/Src/Services/MessageService/MessageService.cs

@ -52,6 +52,33 @@ namespace ICSharpCode.Core @@ -52,6 +52,33 @@ namespace ICSharpCode.Core
ServiceManager.Instance.MessageService.ShowException(ex, message);
}
/// <summary>
/// Shows an exception.
/// </summary>
public static void ShowHandledException(Exception ex)
{
ShowHandledException(ex, null);
}
/// <summary>
/// Shows an exception.
/// </summary>
public static void ShowHandledException(Exception ex, string message)
{
LoggingService.Error(message, ex);
LoggingService.Warn("Stack trace of last exception log:\n" + Environment.StackTrace);
message = GetMessage(message, ex);
ServiceManager.Instance.MessageService.ShowError(message);
}
static string GetMessage(string message, Exception ex)
{
if (message == null) {
return ex.Message;
}
return message + "\r\n\r\n" + ex.Message;
}
/// <summary>
/// Shows a warning message.
/// </summary>

Loading…
Cancel
Save