Browse Source

Add markdown (.md) highlight support

pull/11/head
Philippe Miossec 6 years ago
committed by Philippe MIOSSEC
parent
commit
4cbe6d5f8b
  1. 1
      Project/ICSharpCode.TextEditor.csproj
  2. 117
      Project/Resources/Markdown.xshd
  3. 4
      Project/Resources/SyntaxModes.xml
  4. 45
      Sample.md

1
Project/ICSharpCode.TextEditor.csproj

@ -302,6 +302,7 @@
<EmbeddedResource Include="Resources\XC.xshd" />
<EmbeddedResource Include="Resources\XML.xshd" />
<EmbeddedResource Include="Resources\Xtend.xshd" />
<EmbeddedResource Include="Resources\Markdown.xshd" />
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">

117
Project/Resources/Markdown.xshd

@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<SyntaxDefinition name="Markdown" extensions=".md">
<Environment>
<Default color="Black" bgcolor="#FFFFFF"/>
<Selection color="Black" bgcolor="#C3C3FF"/>
<LineNumbers color="Gray" bgcolor="#FFFFFF"/>
<CaretMarker color="#F0F0F1"/>
<VRuler color="#E0E0E5"/>
<FoldLine color="#A0A0A0" bgcolor="#FFFFFF"/>
<FoldMarker color="Black" bgcolor="#FFFFFF"/>
<SelectedFoldLine color="Black" bgcolor="#FFFFFF"/>
<EOLMarkers color="#CACAD2"/>
<SpaceMarkers color="#B6B6C0"/>
<TabMarkers color="#B6B6C0"/>
<InvalidLines color="#B6B6C0"/>
</Environment>
<RuleSets>
<RuleSet name="HtmlTagSet" ignorecase="false">
<Delimiters>/=</Delimiters>
<Span name="String" stopateol="true" color="#0451A5" bold="false" italic="false">
<Begin>"</Begin>
<End>"</End>
</Span>
<Span name="Char" stopateol="true" color="Blue" bold="false" italic="false">
<Begin>'</Begin>
<End>'</End>
</Span>
<MarkPrevious color="Red" bold="false" italic="false">=</MarkPrevious>
<KeyWords name="Slash" color="DarkMagenta" bold="false" italic="false">
<Key word="/"/>
</KeyWords>
<KeyWords name="Assignment" color="Black" bold="false" italic="false">
<Key word="="/>
</KeyWords>
</RuleSet>
<RuleSet ignorecase="true">
<Span name="Link" stopateol="true" color="Maroon" italic="false">
<Begin>[</Begin>
<End>]</End>
</Span>
<Span name="LinkUrl" stopateol="true" color="Purple" italic="false">
<Begin>(http</Begin>
<End>)</End>
</Span>
<Span name="Header4" stopateol="true" bold="true" color="LightBlue">
<Begin startofline="true">####</Begin>
</Span>
<Span name="Header3" stopateol="true" bold="true" color="DodgerBlue">
<Begin startofline="true">###</Begin>
</Span>
<Span name="Header2" stopateol="true" bold="true" color="Blue">
<Begin startofline="true">##</Begin>
</Span>
<Span name="Header1" stopateol="true" bold="true" color="DarkBlue">
<Begin startofline="true">#</Begin>
</Span>
<Span name="Bold1" color="Black" bold="true" stopateol="true">
<Begin>**</Begin>
<End>**</End>
</Span>
<Span name="Bold2" color="Black" bold="true" stopateol="true">
<Begin>__</Begin>
<End>__</End>
</Span>
<Span name="Italic1" color="Black" italic="true" stopateol="true">
<Begin>_</Begin>
<End>_</End>
</Span>
<!-- Disabled because conflicts with unordered list items -->
<!-- <Span name="Italic2" color="Black" italic="true" stopateol="true">
<Begin>*</Begin>
<End>*</End>
</Span> -->
<Span name="Blockquote" stopateol="true" color="DimGray" bgcolor="GhostWhite" italic="true">
<Begin startofline="true">&gt;</Begin>
</Span>
<Span name="HtmlTag" rule="HtmlTagSet" stopateol="false" color="DarkMagenta" bold="false" italic="false">
<Begin>&lt;</Begin>
<End>&gt;</End>
</Span>
<Span name="MultiLineCode" color="Black" bgcolor="LightGray">
<Begin>```</Begin>
<End>```</End>
</Span>
<Span name="CodeInline" color="Black" bgcolor="LightGray">
<Begin>`</Begin>
<End>`</End>
</Span>
<KeyWords name="Keywords1" color="DodgerBlue" bold="true">
<Key word="*"/>
</KeyWords>
</RuleSet>
</RuleSets>
</SyntaxDefinition>

4
Project/Resources/SyntaxModes.xml

@ -194,6 +194,10 @@
name="Lua"
extensions=".lua" />
<Mode file="Markdown.xshd"
name="Markdown"
extensions=".md" />
<Mode file="Nemerle.xshd"
name="Nemerle"
extensions=".n" />

45
Sample.md

@ -0,0 +1,45 @@
# Title1
## Title2
### Title3
#### Title4
This *is italic*.
This _is italic_.
This **is bold**.
This __is bold__.
> Blockquote
Example of `code inlined`.
```
some
multiline
code
```
some other code
Lists:
1. of
2. ordered
3. items
* of
* unordered
* items
Links:
[Web](https://github.com/gitextensions/gitextensions)
[relative](README.md)
Some html:
<a href="https://github.com/gitextensions/gitextensions/contributors"><img src="https://opencollective.com/gitextensions/contributors.svg?width=890&button=false" /></a>
Loading…
Cancel
Save