diff options
| author | Mavridis Philippe <mavridisf@gmail.com> | 2022-06-07 22:51:48 +0300 | 
|---|---|---|
| committer | Mavridis Philippe <mavridisf@gmail.com> | 2022-06-08 13:30:08 +0300 | 
| commit | f8c1d05234d45674cc122ed982e7392595859852 (patch) | |
| tree | 02e13242a6e75330ec5d2e150d60b8c7e593a131 | |
| parent | 18c8dbb466c565ff2ae24bfee122890653c3e945 (diff) | |
| download | tdelibs-f8c1d05234d45674cc122ed982e7392595859852.tar.gz tdelibs-f8c1d05234d45674cc122ed982e7392595859852.zip | |
Kate: syntax highlighting for Markdown
Source:  https://github.com/claes/kate-markdown
Licence: GPL or BSD (dual)
Copyright 2008 Darrin Yeager. http://dyeager.org/
Extended  2009 Claes Holmerson. http://github.com/claes/kate-markdown
Per mailing list recommendation by Dr. Niklaus Klepp <dr.klepp@gmx.at>
Signed-off-by: Mavridis Philippe <mavridisf@gmail.com>
(cherry picked from commit 65ab72853b27a5f49b2de0a12cdcb4b33756a7e1)
| -rw-r--r-- | kate/data/CMakeLists.txt | 6 | ||||
| -rw-r--r-- | kate/data/Makefile.am | 6 | ||||
| -rw-r--r-- | kate/data/markdown.xml | 146 | ||||
| -rw-r--r-- | kate/data/update-files.xml | 1 | 
4 files changed, 153 insertions, 6 deletions
| diff --git a/kate/data/CMakeLists.txt b/kate/data/CMakeLists.txt index 6c9e158cb..b823e4e60 100644 --- a/kate/data/CMakeLists.txt +++ b/kate/data/CMakeLists.txt @@ -45,9 +45,9 @@ install( FILES      ini.xml isocpp.xml jam.xml javadoc.xml javascript.xml java.xml json.xml      jsp.xml julia.xml j.xml kbasic.xml latex.xml ldif.xml ld.xml less.xml lex.xml lilypond.xml      literate-curry.xml literate-haskell.xml logtalk.xml lpc.xml lsl.xml lua.xml m3u.xml -    m4.xml mab.xml magma.xml makefile.xml mako.xml mandoc.xml mason.xml mathematica.xml matlab.xml -    maxima.xml mediawiki.xml mel.xml mergetagtext.xml meson.xml metafont.xml mips.xml modelica.xml -    modelines.xml modula-2-iso-only.xml modula-2-pim-only.xml modula-2-r10-only.xml +    m4.xml mab.xml magma.xml makefile.xml mako.xml mandoc.xml markdown.xml mason.xml mathematica.xml +    matlab.xml maxima.xml mediawiki.xml mel.xml mergetagtext.xml meson.xml metafont.xml mips.xml +    modelica.xml modelines.xml modula-2-iso-only.xml modula-2-pim-only.xml modula-2-r10-only.xml      modula-2.xml monobasic.xml mup.xml nagios.xml nasm.xml nemerle.xml nesc.xml      noweb.xml objectivecpp.xml objectivec.xml ocaml.xml ocamllex.xml ocamlyacc.xml      octave.xml oors.xml opal.xml opencl.xml diff --git a/kate/data/Makefile.am b/kate/data/Makefile.am index 09df83b7f..5f1eda66d 100644 --- a/kate/data/Makefile.am +++ b/kate/data/Makefile.am @@ -23,9 +23,9 @@ syntaxkate_DATA = language.dtd syntax.template \      ini.xml isocpp.xml jam.xml javadoc.xml javascript.xml javascript-php.xml java.xml json.xml \      jsp.xml julia.xml j.xml kbasic.xml latex.xml ldif.xml ld.xml less.xml lex.xml lilypond.xml \      literate-curry.xml literate-haskell.xml logtalk.xml lpc.xml lsl.xml lua.xml m3u.xml \ -    m4.xml mab.xml magma.xml makefile.xml mako.xml mandoc.xml mason.xml mathematica.xml matlab.xml \ -    maxima.xml mediawiki.xml mel.xml mergetagtext.xml meson.xml metafont.xml mips.xml modelica.xml \ -    modelines.xml modula-2-iso-only.xml modula-2-pim-only.xml modula-2-r10-only.xml \ +    m4.xml mab.xml magma.xml makefile.xml mako.xml mandoc.xml markdown.xml mason.xml mathematica.xml \ +    matlab.xml maxima.xml mediawiki.xml mel.xml mergetagtext.xml meson.xml metafont.xml mips.xml \ +    modelica.xml modelines.xml modula-2-iso-only.xml modula-2-pim-only.xml modula-2-r10-only.xml \      modula-2.xml monobasic.xml mup.xml nagios.xml nasm.xml nemerle.xml nesc.xml \      noweb.xml objectivecpp.xml objectivec.xml ocaml.xml ocamllex.xml ocamlyacc.xml \      octave.xml oors.xml opal.xml opencl.xml \ diff --git a/kate/data/markdown.xml b/kate/data/markdown.xml new file mode 100644 index 000000000..a132f6d63 --- /dev/null +++ b/kate/data/markdown.xml @@ -0,0 +1,146 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +	Kate syntax highlight filter for Markdown/MultiMarkdown documents. + +	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/ +--> + + +<!-- the [^\s]{1} is in the regex to avoid interfering with bullet list which +	  starts "* item". Thus emphasis/strong MUST be formed like *words here* +	  with the asterisks next to the beginning of the first word. + +	  Match space or newline, followed by "*", followed by one non-space, +	  followed by anything non-asterisk, followed by "*", followed by +	  space, end-of-sentence punctuation, or the end of the line. +--> +<!DOCTYPE language SYSTEM "language.dtd" +			 [ +			 <!ENTITY strongemphasisregex "(\s|^)[\*_]{3}[^\*_]+[\*_]{3}(\s|\.|,|;|:|\-|\?|$)"> +			 <!ENTITY strongregex "(\s|^)[\*_]{2}[^\s]{1}[^\*_]+[\*_]{2}(\s|\.|,|;|:|\-|\?|$)"> +			 <!ENTITY emphasisregex "(\s|^)[\*_]{1}[^\s]{1}[^\*_]+[\*_]{1}(\s|\.|,|;|:|\-|\?|$)"> +			 <!ENTITY reflinkregex '\[[^\]\^]+\]\s*\[[^\]]*\]\s*(\s+\"[^\"]*\"){0,1}'> +			 <!ENTITY reflinktargetregex '\[[^\]\^]+\]\:\s+[^\s]+(\s+\"[^\"]*\"){0,1}'> +			 <!ENTITY footnoteregex "\[\^[^\]]+\]"> +			 <!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*([\*\-_]\s?){3,}\s*'> +			 <!-- two spaces at end of line generates linebreak --> +			 <!ENTITY linebreakregex "  $">  +			 <!ENTITY strikeoutregex "[~]{2}[^~].*[^~][~]{2}"> <!-- pandoc style --> +]> +			  +<language name="Markdown" version="1.2" section="Markup" +		extensions="*.text;*.md;*.mmd;*.mdwn" priority="15" +		author="Darrin Yeager, Claes Holmerson" +		license="GPL,BSD" > +	<highlighting> +		<contexts> + +			<context attribute="Normal Text" lineEndContext="#stay" name="Normal Text" > +				<DetectChar context="blockquote" char=">" column="0"/> +				<RegExpr attribute="h1" String="^#\s.*[#]?$" /> +				<RegExpr attribute="h2" String="^##\s.*[#]?$" /> +				<RegExpr attribute="h3" String="^###\s.*[#]?$" /> +				<RegExpr attribute="h4" String="^####\s.*[#]?$" /> +				<RegExpr attribute="h5" String="^#####\s.*[#]?$" /> +				<RegExpr attribute="ruler" String="&rulerregex;" /> +				<RegExpr attribute="strong" String="&strongregex;" /> +				<RegExpr attribute="emphasis" String="&emphasisregex;" /> +				<RegExpr attribute="strongemphasis" String="&strongemphasisregex;" /> +				<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> + +			<context attribute="blockquote" lineEndContext="#pop" name="blockquote"> +				<RegExpr attribute="bq-strong" String="&strongregex;" /> +				<RegExpr attribute="bq-emphasis" String="&emphasisregex;" /> +				<IncludeRules context="inc" /> +			</context> + +			<context attribute="bullet" lineEndContext="#pop" name="bullet" > +				<RegExpr attribute="bl-strong" String="&strongregex;" /> +				<RegExpr attribute="bl-emphasis" String="&emphasisregex;" /> +				<IncludeRules context="inc" /> +			</context> +			 +			<context attribute="numlist" lineEndContext="#pop" name="numlist" > +				<RegExpr attribute="nl-strong" String="&strongregex;" /> +				<RegExpr attribute="nl-emphasis" String="&emphasisregex;" /> +				<IncludeRules context="inc" /> +			</context> +			 +			<context attribute="comment" lineEndContext="#stay" name="comment" > +				<RegExpr String="-->" attribute="comment" context="#pop" endRegion="comment"/> +			</context> + +			<context attribute="common" name="inc" lineEndContext="#stay" > +				<RegExpr attribute="code" String="`[^`]+`" /> +				<RegExpr context="comment" String="<!--" beginRegion="comment" /> +				<RegExpr attribute="reflink" String="&reflinkregex;" /> +				<RegExpr attribute="footnote" String="&footnoteregex;" /> +				<RegExpr attribute="inlinelink" String="&inlinelinkregex;"/> +				<RegExpr attribute="reflinktarget" String="&reflinktargetregex;"/> +				<RegExpr attribute="inlineimage" String="&inlineimageregex;"/> +				<RegExpr attribute="refimage" String="&refimageregex;"/> +				<RegExpr attribute="autolink" String="&autolinkregex;"/> +				<RegExpr attribute="mailtolink" String="&mailtolinkregex;"/> +				<RegExpr attribute="strikeout" minimal="true" String="&strikeoutregex;"/> +				<RegExpr attribute="linebreak" minimal="true" String="&linebreakregex;"/> +			</context> +		</contexts> + +		<itemDatas> +			<itemData name="Normal Text" defStyleNum="dsNormal" /> +			<itemData name="common" defStyleNum="dsNormal" /> +			<itemData name="strongemphasis" defStyleNum="dsNormal" italic="true" bold="true"/> +			<itemData name="emphasis" defStyleNum="dsNormal" italic="true" /> +			<itemData name="strong" defStyleNum="dsNormal" 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="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="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" /> +		</itemDatas> + +    </highlighting> + +	 <general> +		 <comments> +			 <comment name="multiLine" start="<!--" end="-->" region="comment" /> +		 </comments> +	 </general> + + </language> diff --git a/kate/data/update-files.xml b/kate/data/update-files.xml index c4cf021de..0af937293 100644 --- a/kate/data/update-files.xml +++ b/kate/data/update-files.xml @@ -136,6 +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.2"/>  <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"/> | 
