]> git.madduck.net Git - etc/vim.git/blob - test/syntax.vader

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

Merge pull request #121 from cirosantilli/autolink
[etc/vim.git] / test / syntax.vader
1 Given mkd;
2 a **b** c
3
4 Execute (bold):
5   AssertNotEqual SyntaxOf('a'), 'htmlBold'
6   AssertEqual SyntaxOf('b'), 'htmlBold'
7   AssertNotEqual SyntaxOf('c'), 'htmlBold'
8
9 Given mkd;
10 a *b* c
11
12 Execute (italic):
13   AssertNotEqual SyntaxOf('a'), 'htmlItalic'
14   AssertEqual SyntaxOf('b'), 'htmlItalic'
15   AssertNotEqual SyntaxOf('c'), 'htmlItalic'
16
17 # Links
18
19 Given mkd;
20 [a](b)
21
22 Execute (link with title):
23   AssertEqual SyntaxOf('a'), 'mkdLink'
24   AssertEqual SyntaxOf('b'), 'mkdURL'
25
26 Given mkd;
27 (a)
28
29 Execute (parenthesis not in link):
30   AssertNotEqual SyntaxOf('a'), 'mkdLink'
31
32 Given mkd;
33 [a](b) c [d](e)
34
35 Execute (multiple links on a line):
36   AssertEqual SyntaxOf('c'), ''
37
38 # Autolinks
39
40 Given mkd;
41 a <http://b> c
42
43 Execute (autolink):
44   AssertNotEqual SyntaxOf('a'), 'mkdInlineURL'
45   AssertEqual SyntaxOf('<'), 'mkdDelimiter'
46   AssertEqual SyntaxOf('b'), 'mkdInlineURL'
47   AssertEqual SyntaxOf('>'), 'mkdDelimiter'
48   AssertNotEqual SyntaxOf('c'), 'mkdInlineURL'
49
50 Given mkd;
51 <HtTp://a>
52
53 Execute (autolink with scheme case is insensitive):
54   AssertEqual SyntaxOf('a'), 'mkdInlineURL'
55
56 Given mkd;
57 <notascheme://a>
58
59 Execute (autolink without known scheme is not a link):
60   AssertNotEqual SyntaxOf('n'), 'mkdInlineURL'
61
62 Given mkd;
63 <a>
64
65 Execute (autolink without scheme is not a link):
66   AssertNotEqual SyntaxOf('a'), 'mkdInlineURL'
67
68 Given mkd;
69 < http://a >
70 <http://b c>
71 <http://d
72 e>
73
74 Execute (autolink with space is not a link):
75   AssertNotEqual SyntaxOf('a'), 'mkdInlineURL'
76   AssertNotEqual SyntaxOf('b'), 'mkdInlineURL'
77   AssertNotEqual SyntaxOf('c'), 'mkdInlineURL'
78   AssertNotEqual SyntaxOf('d'), 'mkdInlineURL'
79   AssertNotEqual SyntaxOf('e'), 'mkdInlineURL'
80
81 Given mkd;
82 \<http://a>
83
84 Execute (autolinks can be backslash escaped):
85   AssertNotEqual SyntaxOf('<'), 'mkdDelimiter'
86
87 # Math
88
89 Given mkd;
90 a $x$ b
91 c $$y$$ d
92 \$e\$
93 \$\$f\$\$
94
95 Execute (math):
96   AssertNotEqual SyntaxOf('x'), 'mkdMath'
97   AssertNotEqual SyntaxOf('y'), 'mkdMath'
98   let g:vim_markdown_math=1
99   syn off | syn on
100   AssertNotEqual SyntaxOf('a'), 'mkdMath'
101   AssertNotEqual SyntaxOf('b'), 'mkdMath'
102   AssertNotEqual SyntaxOf('c'), 'mkdMath'
103   AssertNotEqual SyntaxOf('d'), 'mkdMath'
104   AssertNotEqual SyntaxOf('e'), 'mkdMath'
105   AssertNotEqual SyntaxOf('f'), 'mkdMath'
106   AssertEqual SyntaxOf('x'), 'mkdMath'
107   AssertEqual SyntaxOf('y'), 'mkdMath'
108   let g:vim_markdown_math=0
109   syn off | syn on
110   AssertNotEqual SyntaxOf('x'), 'mkdMath'
111   AssertNotEqual SyntaxOf('y'), 'mkdMath'
112
113 Given mkd;
114 a
115
116 $
117 b
118 $
119
120 c
121
122 Execute (multiline math):
123   let g:vim_markdown_math=1
124   syn off | syn on
125   AssertNotEqual SyntaxOf('a'), 'mkdMath'
126   AssertEqual SyntaxOf('b'), 'mkdMath'
127   AssertNotEqual SyntaxOf('c'), 'mkdMath'
128
129 # YAML frontmatter
130
131 Given mkd;
132 ---
133 a: b
134 ---
135
136 Execute (YAML frontmatter is controlled by the option):
137   AssertNotEqual SyntaxOf('a'), 'yamlBlockMappingKey'
138   let g:vim_markdown_frontmatter=1
139   syn off | syn on
140   AssertEqual SyntaxOf('a'), 'yamlBlockMappingKey'
141   let g:vim_markdown_frontmatter=0
142   syn off | syn on
143   AssertNotEqual SyntaxOf('a'), 'yamlBlockMappingKey'
144
145 Given mkd;
146
147 ---
148 a: b
149 ---
150
151 Execute (YAML frontmatter only works if it's the first thing in the file):
152   let g:vim_markdown_frontmatter=1
153   syn off | syn on
154   AssertNotEqual SyntaxOf('a'), 'yamlBlockMappingKey'
155
156 Given mkd;
157 ---
158 a: b
159 ---
160
161 ---
162
163 Execute (rules are not mistaken by YAML frontmatter delimiters):
164   let g:vim_markdown_frontmatter=1
165   syn off | syn on
166   AssertEqual SyntaxAt(5, 1), 'mkdRule'