Mercurial
comparison .cms/lib/codemirror/mode/haml/test.js @ 0:78edf6b517a0 draft
24.10
author | Coffee CMS <info@coffee-cms.ru> |
---|---|
date | Fri, 11 Oct 2024 22:40:23 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:78edf6b517a0 |
---|---|
1 // CodeMirror, copyright (c) by Marijn Haverbeke and others | |
2 // Distributed under an MIT license: https://codemirror.net/5/LICENSE | |
3 | |
4 (function() { | |
5 var mode = CodeMirror.getMode({tabSize: 4, indentUnit: 2}, "haml"); | |
6 function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); } | |
7 | |
8 // Requires at least one media query | |
9 MT("elementName", | |
10 "[tag %h1] Hey There"); | |
11 | |
12 MT("oneElementPerLine", | |
13 "[tag %h1] Hey There %h2"); | |
14 | |
15 MT("idSelector", | |
16 "[tag %h1][attribute #test] Hey There"); | |
17 | |
18 MT("classSelector", | |
19 "[tag %h1][attribute .hello] Hey There"); | |
20 | |
21 MT("docType", | |
22 "[tag !!! XML]"); | |
23 | |
24 MT("comment", | |
25 "[comment / Hello WORLD]"); | |
26 | |
27 MT("notComment", | |
28 "[tag %h1] This is not a / comment "); | |
29 | |
30 MT("attributes", | |
31 "[tag %a]([variable title][operator =][string \"test\"]){[atom :title] [operator =>] [string \"test\"]}"); | |
32 | |
33 MT("htmlCode", | |
34 "[tag&bracket <][tag h1][tag&bracket >]Title[tag&bracket </][tag h1][tag&bracket >]"); | |
35 | |
36 MT("rubyBlock", | |
37 "[operator =][variable-2 @item]"); | |
38 | |
39 MT("selectorRubyBlock", | |
40 "[tag %a.selector=] [variable-2 @item]"); | |
41 | |
42 MT("nestedRubyBlock", | |
43 "[tag %a]", | |
44 " [operator =][variable puts] [string \"test\"]"); | |
45 | |
46 MT("multilinePlaintext", | |
47 "[tag %p]", | |
48 " Hello,", | |
49 " World"); | |
50 | |
51 MT("multilineRuby", | |
52 "[tag %p]", | |
53 " [comment -# this is a comment]", | |
54 " [comment and this is a comment too]", | |
55 " Date/Time", | |
56 " [operator -] [variable now] [operator =] [tag DateTime][operator .][property now]", | |
57 " [tag %strong=] [variable now]", | |
58 " [operator -] [keyword if] [variable now] [operator >] [tag DateTime][operator .][property parse]([string \"December 31, 2006\"])", | |
59 " [operator =][string \"Happy\"]", | |
60 " [operator =][string \"Belated\"]", | |
61 " [operator =][string \"Birthday\"]"); | |
62 | |
63 MT("multilineComment", | |
64 "[comment /]", | |
65 " [comment Multiline]", | |
66 " [comment Comment]"); | |
67 | |
68 MT("hamlComment", | |
69 "[comment -# this is a comment]"); | |
70 | |
71 MT("multilineHamlComment", | |
72 "[comment -# this is a comment]", | |
73 " [comment and this is a comment too]"); | |
74 | |
75 MT("multilineHTMLComment", | |
76 "[comment <!--]", | |
77 " [comment what a comment]", | |
78 " [comment -->]"); | |
79 | |
80 MT("hamlAfterRubyTag", | |
81 "[attribute .block]", | |
82 " [tag %strong=] [variable now]", | |
83 " [attribute .test]", | |
84 " [operator =][variable now]", | |
85 " [attribute .right]"); | |
86 | |
87 MT("stretchedRuby", | |
88 "[operator =] [variable puts] [string \"Hello\"],", | |
89 " [string \"World\"]"); | |
90 | |
91 MT("interpolationInHashAttribute", | |
92 //"[tag %div]{[atom :id] [operator =>] [string \"#{][variable test][string }_#{][variable ting][string }\"]} test"); | |
93 "[tag %div]{[atom :id] [operator =>] [string \"#{][variable test][string }_#{][variable ting][string }\"]} test"); | |
94 | |
95 MT("interpolationInHTMLAttribute", | |
96 "[tag %div]([variable title][operator =][string \"#{][variable test][string }_#{][variable ting]()[string }\"]) Test"); | |
97 })(); |