Find file
Fetching contributors…
Cannot retrieve contributors at this time
93 lines (78 sloc) 3.25 KB
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>Esprima: Full Source Rewrite Demo</title>
<script src="../test/3rdparty/platform.js"></script>
<script src="../test/3rdparty/escodegen.js"></script>
<script src="checkenv.js"></script>
<script src="rewrite.js"></script>
<script src="../esprima.js"></script>
<script src="../assets/codemirror/codemirror.js"></script>
<script src="../assets/codemirror/javascript.js"></script>
<link rel="stylesheet" type="text/css" href="../assets/codemirror/codemirror.css"/>
<link rel="stylesheet" type="text/css" href="../assets/style.css"/>
.CodeMirror-scroll {
height: 300px;
<div class="container">
<div class="topbar">
<ul class="nav">
<li><a href="../index.html">&larr; Home</a></li>
<li><a href="">Code</a></li>
<li><a href="../doc/index.html">Documentation</a></li>
<li><a href="">Issues</a></li>
<h1>Source Rewrite <small>cleans up and reformats everything</small></h1>
<p>Type ECMAScript code in the editor. Press <b>Rewrite</b> button to get the code
rewritten using <a href="">Escodegen project</a>.</p>
<p><textarea id="code" autofocus="autofocus" cols="70" rows="25" spellcheck="false">
// Example of messy code with confusing and inconsistent indentations
function bubbleSort (list) {
var items = list.slice(0), swapped =false,
p, q;
for ( p= 1;p &lt; items.length; ++p) {
for (q=0; q &lt; items.length - p; ++q) {
if (items[q + 1 ] &lt; items[q]) {
swapped =true;
let temp = items[q];
items[q] = items[ q+1]; items[q+1] = temp;
if (!swapped)
return items; alert("Finish");
<p>Indent with:
<label><input type="radio" name="indent" id="onetab" value="onetab"> tab</label>
<label><input type="radio" name="indent" id="twospaces" value="twospaces"> 2 spaces</label>
<label><input checked type="radio" name="indent" id="fourspaces" value="fourspaces"> 4 spaces</label>
<p>String literal quotes:
<label><input checked type="radio" name="quotes" id="singlequotes" value="singlequotes"> single (')</label>
<label><input type="radio" name="quotes" id="doublequotes" value="doublequotes"> double (")</label>
<label><input type="radio" name="quotes" id="autoquotes" value="autoquotes"> automatic (minimize literal length)</label>
<p><input type="button" value="Rewrite" id="rewrite"></p>
<p id="codemirror" align="right"><small>The above code editor is based on <a href="" target="_blank">CodeMirror</a>.</small></p>
<p id="error"></p>
<li>Only valid syntax is accepted.</li>
<li>Comments are <em>not yet</em> preserved (see <a href="">issue #197</a>).</li>
<p style="margin-top: 50px;" id="version"></p>
<div class="footer"><strong>Esprima</strong> is created by
<a href="" target="_blank">Ariya Hidayat</a>. Follow <a href="">@ariyahidayat</a> on Twitter.
<p id="testbox" style="visibility: hidden;"><textarea id="test"></textarea></p>