forked from jquery/esprima
/
autocomplete.html
156 lines (134 loc) · 5.81 KB
/
autocomplete.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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
<!DOCTYPE html>
<!--[if IE 8]> <html class="no-js lt-ie9" lang="en"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
<head>
<meta charset="utf-8" />
<title>Esprima: Editing Autocomplete</title>
<meta name="viewport" content="width=device-width" />
<link rel="stylesheet" type="text/css" href="../assets/orion/built-editor.css"/>
<link rel="stylesheet" type="text/css" href="../assets/style.css"/>
<link rel="stylesheet" href="../assets/foundation/foundation.min.css">
</head>
<body>
<!-- Navigation bar -->
<div class="row">
<div class="twelve columns">
<nav class="top-bar">
<ul>
<li class="name">
<h1><a href="../index.html">Esprima</a></h1>
</li>
</ul>
<section>
<ul class="right">
<li class="divider show-for-medium-and-up"></li>
<li class="has-dropdown">
<a href="../demo/index.html">Demo</a>
<ul class="dropdown">
<li><label>Static Analysis</label></li>
<li><a href="../demo/parse.html">Online Parsing</a></li>
<li><a href="../demo/validate.html">Syntax Validator</a></li>
<li><a href="../demo/precedence.html">Operator Precedence</a></li>
<li><a href="../demo/collector.html">Regex Collector</a></li>
<li><label>Dynamic Tracing</label></li>
<li><a href="../demo/functiontrace.html">Function Instrumentation</a></li>
<li><label>Code Transformation</label></li>
<li><a href="../demo/rewrite.html">Source Rewrite</a></li>
<li><a href="../demo/minify.html">Minifiy & Obfuscate</a></li>
<li><label>Editing Tools</label></li>
<li><a href="../demo/highlight.html">Identifier Highlight</a></li>
<li><a href="../demo/rename.html">Rename Refactoring</a></li>
<li><a href="../demo/autocomplete.html">Autocomplete</a></li>
</ul>
</li>
<li class="has-dropdown">
<a href="#">Project</a>
<ul class="dropdown">
<li><a href="http://github.com/jquery/esprima">Git Repository</a></li>
<li><a href="https://travis-ci.org/jquery/esprima">Continuous Integration</a></li>
<li><a href="http://groups.google.com/group/esprima">Mailing List</a></li>
<li><a href="https://github.com/jquery/esprima/issues">Issue Tracker</a></li>
<li class="divider"></li>
<li><label>QA</label></li>
<li><a href="../test/index.html">Unit Tests</a></li>
<li><a href="../test/benchmarks.html">Benchmarks Suite</a></li>
<li><a href="../test/compare.html">Speed Comparison</a></li>
<li><a href="../test/module.html">Module Loading</a></li>
<li><a href="https://coveralls.io/r/jquery/esprima">Coverage Analysis</a></li>
</ul>
</li>
<li><a href="../doc/index.html">Documentation</a></li>
</ul>
</section>
</nav>
</div>
</div>
<!-- Title and subtitle -->
<div class="row">
<div class="twelve columns">
<h3 class="subheader"><strong>Autocomplete</strong> makes coding tasks fun again</h3>
</div>
</div>
<!-- Main content -->
<div class="row">
<div class="eight columns">
<pre id="editor" style="height: 500px">var capitalDb = {
Indonesia: 'Jakarta',
Germany: 'Berlin',
Norway: 'Oslo'
};
var constants = [3.1415926535, 2.7182818284];
// Property completion: type "capitalDb." and press Ctrl+Space.
// Array inferencing: type "constants[0]." and press Ctrl+Space
// to list possible number conversion (e.g "toFixed").
/**
* Find the greatest common divisor of two numbers.
* @param {number} a
* @param {number} b
* @return {number}
*/
function gcd(a, b) {
return (b === 0) ? a : gcd(b, a % b);
}
// Function signature: type "gc" and press Ctrl+Space
</pre>
</div>
<div class="four columns">
<div class="panel">
<p>Autocompletion (press <tt>Ctrl+Space</tt>) is provided via a
<a href="https://github.com/scripted-editor/scripted/wiki/Architecture#wiki-Inferencing">type inferencer</a>,
part of <em>Content Assist</em> module of
<a href="https://github.com/scripted-editor/scripted/blob/master/README.md">Scripted</a>,
hooked into the editor based on <a href="http://wiki.eclipse.org/Orion">Eclipse Orion</a>.</p>
<p>The type inferencer supports both <strong>static code analysis</strong> and JSDoc-style <strong>type annotation</strong>.</p>
</div>
</div>
</div>
<!-- Footer -->
<div class="row copyright">
<div class="six columns">
<p>Esprima is created and maintained by <a href="http://ariya.ofilabs.com/about">Ariya Hidayat</a>.</p>
</div>
<div class="six columns">
<ul class="link-list right">
<li><a href="http://twitter.com/esprima">@Esprima</a></li>
<li><a href="https://github.com/jquery/esprima">GitHub</a></li>
</ul>
</div>
</div>
<script src="../assets/orion/built-editor.min.js"></script>
<script src="../assets/orion/contentassist/doctrine.js"></script>
<script src="../assets/orion/contentassist/esprima.js"></script>
<script src="../assets/orion/contentassist/types.js"></script>
<script src="../assets/orion/contentassist/esprimaJsContentAssist.js"></script>
<script src="../assets/orion/contentassist/esprimaVisitor.js"></script>
<script src="../assets/orion/contentassist/proposalUtils.js"></script>
<script src="../assets/orion/customeditor.js"></script>
<script>
require(['custom/editor'], function (editor) {
var e = editor({ parent: 'editor', lang: 'js', contentassist: true });
e.onGotoLine(9, 0);
});
</script>
</body>
</html>