<?xml version="1.0" encoding="UTF-8"?>
<!--
Le fichier markdown.lang fait partie de gedit-markdown.
Auteur: Ulrik Sverdrup <ulrik.sverdrup@gmail.com>
Copyright © Ulrik Sverdrup, 2007.
Copyright © Jean-Philippe Fleury, 2009. <contact@jpfleury.net>
Ce programme est un logiciel libre; vous pouvez le redistribuer ou
le modifier suivant les termes de la Licence Générale Publique Limitée
GNU telle que publiée par la Free Software Foundation: soit la
version 2.1 de la License, soit (à votre gré) toute version ultérieure.
Ce programme est distribué dans l'espoir qu'il sera utile, mais
SANS AUCUNE GARANTIE: sans même la garantie implicite de
COMMERCIALISABILITÉ ou d'ADÉQUATION À UN OBJECTIF PARTICULIER. Consultez
la Licence Générale Publique Limitée pour plus de détails.
Vous devriez avoir reçu une copie de la Licence Générale Publique Limitée
GNU avec ce programme; si ce n'est pas le cas, écrivez à la:
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
-->
<language id="markdown" _name="Markdown" version="2.0" _section="Markup">
<metadata>
<property name="mimetypes">text/x-markdown</property>
<property name="globs">*.mdtxt</property>
<property name="block-comment-start"><!--</property>
<property name="block-comment-end">--></property>
</metadata>
<styles>
<style id="header" _name="Header" map-to="def:type"/>
<style id="line" _name="Line" map-to="def:type"/>
<style id="list-item" _name="List item" map-to="def:keyword"/>
<style id="quote" _name="Quote" map-to="def:comment"/>
<style id="code" _name="Code" map-to="diff:added-line"/>
<style id="newline" _name="New line" map-to="def:note"/>
<style id="link" _name="Link" map-to="def:underlined"/>
<style id="image" _name="Image" map-to="def:underlined"/>
<style id="emphasis" _name="Emphasis" map-to="def:doc-comment-element"/>
<style id="strong-emphasis" _name="Strong emphasis" map-to="def:statement"/>
<style id="escape" _name="Escape" map-to="def:special-char"/>
</styles>
<definitions>
<define-regex id="link">\[[^]]*\]\([^)]*\)|((\[[^]]+\] ?\[[^]]*\])|(\[\] ?\[[^]]+\]))</define-regex>
<context id="atx-header" style-ref="header">
<match>^#+[^#]+.*$</match>
</context>
<context id="setext-header" style-ref="header">
<match>^(-+[ \t]*|=+[ \t]*)$</match>
</context>
<context id="line" style-ref="line">
<match>^ {0,3}((-+ {0,2}){3,}|(_+ {0,2}){3,}|(\*+ {0,2}){3,})[ \t]*$</match>
</context>
<context id="list-item" style-ref="list-item">
<match>^ {0,3}(-|\+|\*|[0-9]+\.)[ \t]+</match>
</context>
<context id="quote" style-ref="quote">
<match>^ {0,3}>.+$</match>
</context>
<context id="code-block" style-ref="code">
<match>^( {4}|\t)[ \t]*[^ \t]+.*$</match>
</context>
<context id="inline-code-1" style-ref="code">
<match>(?<!`)`[^`]+(`{2,}[^`]+)*`(?!`)</match>
</context>
<context id="inline-code-2" style-ref="code">
<match>(?<!`)``[^`]+((`|`{3,})[^`]+)*``(?!`)</match>
</context>
<context id="inline-code">
<include>
<context ref="inline-code-1"/>
<context ref="inline-code-2"/>
</include>
</context>
<context id="newline" style-ref="newline">
<match> {2,}$</match>
</context>
<context id="link" style-ref="link">
<match>\%{link}</match>
</context>
<context id="link-address" style-ref="link">
<match>^ {0,3}\[[^]]+\]:[ \t]*[^ \t]+(([ \t]+"[^"]*"[ \t]*)?|[ \t]*)$</match>
</context>
<context id="automatic-link">
<match>(<([A-Za-z._0-9]+@[A-Za-z0-9]+.[A-Za-z]+)>)|(<([a-z]+://[^ ]+)>)</match>
<include>
<context sub-pattern="2" style-ref="link"/>
<context sub-pattern="4" style-ref="link"/>
</include>
</context>
<context id="image" style-ref="image">
<match>!\%{link}</match>
</context>
<context id="emphasis" style-ref="emphasis">
<match>((?<!\*)\*[^* \t]+([^*]*[^* \t]+)?\*(?!\*))|((?<!_)_[^_ \t]+([^_]*[^_ \t]+)?_(?!_))</match>
</context>
<context id="strong-emphasis" style-ref="strong-emphasis">
<match>((?<!\*)\*\*[^* \t]+([ \t]*\*?([ \t]+\*)*[ \t]*[^* \t]+)*\*\*(?!\*))|((?<!_)__[^_ \t]+([ \t]*_?([ \t]+_)*[ \t]*[^_ \t]+)*__(?!_))</match>
</context>
<context id="escape" style-ref="escape">
<match>\\(\\|`|\*|_|\{|\}|\[|\]|\(|\)|#|\+|-|\.|!)</match>
</context>
<context id="markdown-syntax">
<include>
<context ref="atx-header"/>
<context ref="setext-header"/>
<context ref="line"/>
<context ref="list-item"/>
<context ref="quote"/>
<context ref="code-block"/>
<context ref="inline-code"/>
<context ref="newline"/>
<context ref="link"/>
<context ref="link-address"/>
<context ref="automatic-link"/>
<context ref="image"/>
<context ref="emphasis"/>
<context ref="strong-emphasis"/>
<context ref="escape"/>
</include>
</context>
<replace id="html:embedded-lang-hook" ref="markdown-syntax"/>
<context id="markdown">
<include>
<context ref="markdown-syntax"/>
<context ref="html:html"/>
</include>
</context>
</definitions>
</language>