diff options
author | Ray-V <ray-v@inbox.lv> | 2022-07-01 20:58:12 +0100 |
---|---|---|
committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2022-10-18 20:32:05 +0900 |
commit | 82568d7205576eb92595e0fae3c96a6ca6f1d4d3 (patch) | |
tree | 42d7a9de662c98094428eb3314bb167176d496a8 | |
parent | 931d326549a1f1d077c77005b0d97f736fff4c1f (diff) | |
download | tdelibs-82568d7205576eb92595e0fae3c96a6ca6f1d4d3.tar.gz tdelibs-82568d7205576eb92595e0fae3c96a6ca6f1d4d3.zip |
Kate: improved markdown syntax highlighting.
Signed-off-by: Ray-V <ray-v@inbox.lv>
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
(cherry picked from commit 609a7393b262cbfe37e58d95169b0a5baf8b075d)
-rw-r--r-- | kate/data/markdown.xml | 130 | ||||
-rw-r--r-- | kate/data/update-files.xml | 2 |
2 files changed, 91 insertions, 41 deletions
diff --git a/kate/data/markdown.xml b/kate/data/markdown.xml index 7d99d02ed..2ede54fd3 100644 --- a/kate/data/markdown.xml +++ b/kate/data/markdown.xml @@ -4,7 +4,7 @@ Copyright 2008 Darrin Yeager. http://www.dyeager.org/ Dual-Licensed under both GPL and BSD licenses. - + Extended 2009 Claes Holmerson. http://github.com/claes/kate-markdown/ --> @@ -25,19 +25,31 @@ <!ENTITY reflinkregex '\[[^\]\^]+\]\s*\[[^\]]*\]\s*(\s+\"[^\"]*\"){0,1}'> <!ENTITY reflinktargetregex '\[[^\]\^]+\]\:\s+[^\s]+(\s+\"[^\"]*\"){0,1}'> <!ENTITY footnoteregex "\[\^[^\]]+\]"> + <!ENTITY preregex "^\s*```\s*"> + <!ENTITY pretilderegex "^\s*~~~\s*"> + <!ENTITY preendregex "^\s*```\s*$"> + <!ENTITY pretildeendregex "^\s*~~~\s*$"> + <!ENTITY presingleline '```[^`]+```'> + <!ENTITY idlinkregex '\[[^\]\^]+\]\s*\(#[^\(]*\)'> <!ENTITY inlinelinkregex '\[[^\]\^]+\]\s*\([^\(]*\)'> <!ENTITY inlineimageregex '\!\[[^\]\^]+\]\([^\(]*\)'> <!ENTITY refimageregex '\!\[[^\]\^]+\]\[[^\[]*\]'> <!ENTITY autolinkregex '<(https?|ftp):[^\">\s]+>'> <!ENTITY mailtolinkregex '<(?:mailto:)?([-.\w]+\@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>'> - <!ENTITY rulerregex '^\s*([\*\-_]){3,}\s*$'> + <!ENTITY rulerregex '^ {,3}([\*\-_]\s*){3,}\s*$'> <!-- two spaces at end of line generates linebreak --> - <!ENTITY linebreakregex " $"> - <!ENTITY strikeoutregex "[~]{2}[^~].*[^~][~]{2}"> <!-- pandoc style --> + <!ENTITY linebreakregex "( |\\)$"> + <!ENTITY strikeoutregex "~~[^~\s].*[^~\s]~~"> + <!ENTITY prediffregex "^(```|~~~)\s{0,}diff"> + <!ENTITY difflineremoveregex "^-[^-].*$"> + <!ENTITY difflineaddregex "^\+[^\+].*$"> + <!ENTITY diffheader1regex "^-{3} .*$"> + <!ENTITY diffheader2regex "^(\+{3} .*|^@@.*)$"> + <!ENTITY diffheaderdiffregex "^diff .*$"> ]> - -<language name="Markdown" version="1.3" section="Markup" - extensions="*.text;*.md;*.mmd;*.mdwn" priority="15" + +<language name="Markdown" version="1.4" section="Markup" + extensions="*.md;*.mmd;*.mdwn" author="Darrin Yeager, Claes Holmerson" license="GPL,BSD" > <highlighting> @@ -50,13 +62,14 @@ <RegExpr attribute="h3" String="^###\s.*[#]?$" /> <RegExpr attribute="h4" String="^####\s.*[#]?$" /> <RegExpr attribute="h5" String="^#####\s.*[#]?$" /> + <RegExpr attribute="h6" String="^######\s.*[#]?$" /> <RegExpr attribute="strongemphasis" String="&strongemphasisregex;" /> <RegExpr attribute="strong" String="&strongregex;" /> <RegExpr attribute="emphasis" String="&emphasisregex;" /> <RegExpr attribute="ruler" String="&rulerregex;" /> + <RegExpr context="bullet" String="^ {,3}[\*\+\-]\s" /> + <RegExpr context="numlist" String="^ {,3}[\d]+\.\s" /> <RegExpr attribute="code" String="^([\s]{4,}|\t+).*$" /> - <RegExpr context="bullet" String="^[\*\+\-]\s" /> - <RegExpr context="numlist" String="^[\d]+\.\s" /> <RegExpr attribute="meta" String="^(Title|Author|Date|Copyright|Revision|CSS|LaTeX\ XSLT|Categories|Tags|BaseName|Excerpt):(.*)+$" /> <IncludeRules context="inc" /> </context> @@ -64,30 +77,56 @@ <context attribute="blockquote" lineEndContext="#pop" name="blockquote"> <RegExpr attribute="bq-strong" String="&strongregex;" /> <RegExpr attribute="bq-emphasis" String="&emphasisregex;" /> + <RegExpr attribute="bq-strongemphasis" String="&strongemphasisregex;" /> <IncludeRules context="inc" /> </context> <context attribute="bullet" lineEndContext="#pop" name="bullet" > <RegExpr attribute="bl-strong" String="&strongregex;" /> <RegExpr attribute="bl-emphasis" String="&emphasisregex;" /> + <RegExpr attribute="bl-strongemphasis" String="&strongemphasisregex;" /> <IncludeRules context="inc" /> </context> - + <context attribute="numlist" lineEndContext="#pop" name="numlist" > <RegExpr attribute="nl-strong" String="&strongregex;" /> <RegExpr attribute="nl-emphasis" String="&emphasisregex;" /> + <RegExpr attribute="nl-strongemphasis" String="&strongemphasisregex;" /> <IncludeRules context="inc" /> </context> - + <context attribute="comment" lineEndContext="#stay" name="comment" > <RegExpr String="-->" attribute="comment" context="#pop" endRegion="comment"/> </context> + <context attribute="prediff" lineEndContext="#stay" name="prediff" > + <RegExpr String="&preendregex;" attribute="prediff" context="#pop" endRegion="prediff"/> + <RegExpr attribute="difflineremove" String="&difflineremoveregex;" /> + <RegExpr attribute="difflineadd" String="&difflineaddregex;" /> + <RegExpr attribute="diffheader1" String="&diffheader1regex;" /> + <RegExpr attribute="diffheader2" String="&diffheader2regex;" /> + <RegExpr attribute="diffheaderdiff" String="&diffheaderdiffregex;" /> + </context> + + <context attribute="code" lineEndContext="#stay" name="pre" > + <RegExpr String="&preendregex;" attribute="code" context="#pop" endRegion="pre"/> + </context> + + <context attribute="code" lineEndContext="#stay" name="pretilde" > + <RegExpr String="&pretildeendregex;" attribute="code" context="#pop" endRegion="pretilde"/> + </context> + <context attribute="common" name="inc" lineEndContext="#stay" > - <RegExpr attribute="code" String="`[^`]+`" /> <RegExpr context="comment" String="<!--" beginRegion="comment" /> + <RegExpr context="prediff" String="&prediffregex;" beginRegion="prediff" /> + <RegExpr attribute="code" minimal="true" String="&presingleline;"/> + <RegExpr attribute="code" context="pre" String="&preregex;" beginRegion="pre" /> + <RegExpr attribute="code" context="pretilde" String="&pretilderegex;" beginRegion="pretilde" /> + <RegExpr attribute="code" String="``.*``" /> + <RegExpr attribute="code" String="`[^`]*`" /> <RegExpr attribute="reflink" String="&reflinkregex;" /> <RegExpr attribute="footnote" String="&footnoteregex;" /> + <RegExpr attribute="idlink" String="&idlinkregex;"/> <RegExpr attribute="inlinelink" String="&inlinelinkregex;"/> <RegExpr attribute="reflinktarget" String="&reflinktargetregex;"/> <RegExpr attribute="inlineimage" String="&inlineimageregex;"/> @@ -104,43 +143,54 @@ <itemData name="common" defStyleNum="dsNormal" /> <itemData name="emphasis" defStyleNum="dsNormal" italic="true" /> <itemData name="strong" defStyleNum="dsNormal" bold="true" /> + <itemData name="diffheader1" defStyleNum="dsNormal" backgroundColor="#eeeeee" color="#800000" bold="true" /> + <itemData name="diffheader2" defStyleNum="dsNormal" backgroundColor="#eeeeee" color="#800000" /> + <itemData name="diffheaderdiff" defStyleNum="dsNormal" backgroundColor="#eeeeee" color="#000000" bold="true" /> + <itemData name="difflineremove" defStyleNum="dsNormal" backgroundColor="#ffeef0" /> + <itemData name="difflineadd" defStyleNum="dsNormal" backgroundColor="#e6ffed" /> <itemData name="strongemphasis" defStyleNum="dsNormal" italic="true" bold="true"/> - <itemData name="ruler" defStyleNum="dsNormal" bold="true" /> - <itemData name="strikeout" defStyleNum="dsNormal" strikeOut="true" /> - <itemData name="linebreak" defStyleNum="dsNormal" underline="true" color="#999999"/> + <itemData name="ruler" defStyleNum="dsNormal" color="#e200e2" bold="true" /> + <itemData name="strikeout" defStyleNum="dsNormal" strikeOut="true" backgroundColor="#fafaaf" /> + <itemData name="linebreak" defStyleNum="dsNormal" backgroundColor="#F8E0FF" /> <itemData name="h1" defStyleNum="dsFunction" bold="true" /> <itemData name="h2" defStyleNum="dsFunction" bold="true" /> <itemData name="h3" defStyleNum="dsFunction" bold="true" /> <itemData name="h4" defStyleNum="dsFunction" bold="true" /> <itemData name="h5" defStyleNum="dsFunction" bold="true" /> - <itemData name="blockquote" defStyleNum="dsDataType" /> - <itemData name="bq-emphasis" defStyleNum="dsDataType" italic="true" /> - <itemData name="bq-strong" defStyleNum="dsDataType" bold="true" /> - <itemData name="bullet" defStyleNum="dsFloat" /> - <itemData name="bl-emphasis" defStyleNum="dsFloat" italic="true" /> - <itemData name="bl-strong" defStyleNum="dsFloat" bold="true" /> - <itemData name="numlist" defStyleNum="dsFloat" /> - <itemData name="nl-emphasis" defStyleNum="dsFloat" italic="true" /> - <itemData name="nl-strong" defStyleNum="dsFloat" bold="true" /> - <itemData name="comment" defStyleNum="dsComment" /> - <itemData name="code" defStyleNum="dsBaseN" /> - <itemData name="reflink" defStyleNum="dsOthers" underline="true" /> - <itemData name="inlinelink" defStyleNum="dsOthers" underline="true" /> + <itemData name="h6" defStyleNum="dsFunction" bold="true" /> + <itemData name="blockquote" defStyleNum="dsNormal" color="black" /> + <itemData name="bq-emphasis" defStyleNum="dsNormal" color="black" italic="true" /> + <itemData name="bq-strong" defStyleNum="dsNormal" color="black" bold="true" /> + <itemData name="bq-strongemphasis" defStyleNum="dsNormal" color="black" italic="true" bold="true" /> + <itemData name="bullet" defStyleNum="dsNormal" color="#b700b7" /> + <itemData name="bl-emphasis" defStyleNum="dsNormal" color="#b700b7" italic="true" /> + <itemData name="bl-strong" defStyleNum="dsNormal" color="#b700b7" bold="true" /> + <itemData name="bl-strongemphasis" defStyleNum="dsNormal" color="#b700b7" bold="true" italic="true" /> + <itemData name="numlist" defStyleNum="dsNormal" color="#b700b7" /> + <itemData name="nl-emphasis" defStyleNum="dsNormal" color="#b700b7" italic="true" /> + <itemData name="nl-strong" defStyleNum="dsNormal" color="#b700b7" bold="true" /> + <itemData name="nl-strongemphasis" defStyleNum="dsNormal" color="#b700b7" bold="true" italic="true" /> + <itemData name="comment" defStyleNum="dsComment" /> + <itemData name="pre" defStyleNum="dsNormal" backgroundColor="#eeeeee" /> + <itemData name="prediff" defStyleNum="dsNormal" backgroundColor="#eeeeee" /> + <itemData name="code" defStyleNum="dsNormal" color="darkcyan" backgroundColor="#eeeeee" /> + <itemData name="reflink" defStyleNum="dsOthers" color="blue" /> + <itemData name="idlink" defStyleNum="dsOthers" color="blue" italic="true" /> + <itemData name="inlinelink" defStyleNum="dsOthers" color="blue" /> <itemData name="autolink" defStyleNum="dsOthers" underline="true" /> <itemData name="mailtolink" defStyleNum="dsOthers" underline="true" /> <itemData name="footnote" defStyleNum="dsOthers" italic="true" /> - <itemData name="meta" defStyleNum="dsComment" /> - <itemData name="reflinktarget" defStyleNum="dsOthers" italic="false" bold="false" /> - <itemData name="inlineimage" defStyleNum="dsAlert" italic="false" bold="false" /> - <itemData name="refimage" defStyleNum="dsAlert" italic="false" bold="false" /> + <itemData name="meta" defStyleNum="dsComment" /> + <itemData name="reflinktarget" defStyleNum="dsOthers" /> + <itemData name="inlineimage" defStyleNum="dsNormal" backgroundColor="#fff8f8" color="blue" /> + <itemData name="refimage" defStyleNum="dsNormal" backgroundColor="#fff8f8" color="blue" /> </itemDatas> + </highlighting> - </highlighting> - - <general> - <comments> - <comment name="multiLine" start="<!--" end="-->" region="comment" /> - </comments> - </general> + <general> + <comments> + <comment name="multiLine" start="<!--" end="-->" region="comment" /> + </comments> + </general> - </language> +</language> diff --git a/kate/data/update-files.xml b/kate/data/update-files.xml index 004f7dab2..6b2200e6c 100644 --- a/kate/data/update-files.xml +++ b/kate/data/update-files.xml @@ -136,7 +136,7 @@ <Definition name="Makefile" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/makefile.xml" version="2.1"/> <Definition name="Mako" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/mako.xml" version="1.0"/> <Definition name="Troff Mandoc" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/mandoc.xml" version="2"/> -<Definition name="Markdown" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/markdown.xml" version="1.3"/> +<Definition name="Markdown" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/markdown.xml" version="1.4"/> <Definition name="Mason" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/mason.xml" version="4"/> <Definition name="Mathematica" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/mathematica.xml" version="8.1"/> <Definition name="Matlab" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/matlab.xml" version="2-2"/> |