-
Notifications
You must be signed in to change notification settings - Fork 8
/
grammar-js.html
63 lines (51 loc) · 1.84 KB
/
grammar-js.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="ace/ace.js" type="text/javascript" data-ace-base="ace" charset="utf-8"></script>
<script src="../build/ace_grammar.js"></script>
<script src="grammars/javascript.js"></script>
<script src="grammars/json.js"></script>
<script src="demo.js"></script>
<style type="text/css">
body {
position: relative;
}
#editor {
margin: 0;
position: relative;
width: 100%;
height: 100%;
min-width:500px;
min-height:500px;
}
</style>
<title>ACE: Dynamic JavaScript Grammar Demo</title>
</head>
<body>
<h3>ACE (v.<span id="editor-version">0</span>) Grammar (v.<span id="grammar-version">0</span>): Dynamic JavaScript Grammar</h3>
<pre id="editor"></pre>
<textarea id="code" style="display:none">// this is part of the AceGrammar code itself
getMode = function(grammar, DEFAULT) {
var LOCALS = {
// default return code for skipped or not-styled tokens
// 'text' should be used in most cases
DEFAULT: DEFAULT || DEFAULTSTYLE,
ERROR: DEFAULTERROR
}
;
// build the grammar
grammar = parseGrammar( grammar );
//console.log(grammar);
return getAceMode( getParser( grammar, LOCALS ) );
}</textarea>
<p></p>
<script>
// <![CDATA[
ace_grammar_demo("editor", document.getElementById("code").value, [
/\?json\b/.test(document.location.href) ? {language : "json", grammar : json_grammar} : {language : "javascript", grammar : js_grammar}
]);
// ]]>
</script>
</body>
</html>