Execute (multiple links on a line):
AssertEqual SyntaxOf('c'), ''
+# Autolinks
+
+Given mkd;
+a <http://b> c
+
+Execute (autolink):
+ AssertNotEqual SyntaxOf('a'), 'mkdInlineURL'
+ AssertEqual SyntaxOf('<'), 'mkdDelimiter'
+ AssertEqual SyntaxOf('b'), 'mkdInlineURL'
+ AssertEqual SyntaxOf('>'), 'mkdDelimiter'
+ AssertNotEqual SyntaxOf('c'), 'mkdInlineURL'
+
+Given mkd;
+<HtTp://a>
+
+Execute (autolink with scheme case is insensitive):
+ AssertEqual SyntaxOf('a'), 'mkdInlineURL'
+
+Given mkd;
+<notascheme://a>
+
+Execute (autolink without known scheme is not a link):
+ AssertNotEqual SyntaxOf('n'), 'mkdInlineURL'
+
+Given mkd;
+<a>
+
+Execute (autolink without scheme is not a link):
+ AssertNotEqual SyntaxOf('a'), 'mkdInlineURL'
+
+Given mkd;
+< http://a >
+<http://b c>
+<http://d
+e>
+
+Execute (autolink with space is not a link):
+ AssertNotEqual SyntaxOf('a'), 'mkdInlineURL'
+ AssertNotEqual SyntaxOf('b'), 'mkdInlineURL'
+ AssertNotEqual SyntaxOf('c'), 'mkdInlineURL'
+ AssertNotEqual SyntaxOf('d'), 'mkdInlineURL'
+ AssertNotEqual SyntaxOf('e'), 'mkdInlineURL'
+
+Given mkd;
+\<http://a>
+
+Execute (autolinks can be backslash escaped):
+ AssertNotEqual SyntaxOf('<'), 'mkdDelimiter'
+
# Math
Given mkd;
AssertNotEqual SyntaxOf('a'), 'mkdMath'
AssertEqual SyntaxOf('b'), 'mkdMath'
AssertNotEqual SyntaxOf('c'), 'mkdMath'
+
+# YAML frontmatter
+
+Given mkd;
+---
+a: b
+---
+
+Execute (YAML frontmatter is controlled by the option):
+ AssertNotEqual SyntaxOf('a'), 'yamlBlockMappingKey'
+ let g:vim_markdown_frontmatter=1
+ syn off | syn on
+ AssertEqual SyntaxOf('a'), 'yamlBlockMappingKey'
+ let g:vim_markdown_frontmatter=0
+ syn off | syn on
+ AssertNotEqual SyntaxOf('a'), 'yamlBlockMappingKey'
+
+Given mkd;
+
+---
+a: b
+---
+
+Execute (YAML frontmatter only works if it's the first thing in the file):
+ let g:vim_markdown_frontmatter=1
+ syn off | syn on
+ AssertNotEqual SyntaxOf('a'), 'yamlBlockMappingKey'
+
+Given mkd;
+---
+a: b
+---
+
+---
+
+Execute (rules are not mistaken by YAML frontmatter delimiters):
+ let g:vim_markdown_frontmatter=1
+ syn off | syn on
+ AssertEqual SyntaxAt(5, 1), 'mkdRule'