63 lines
2.2 KiB
HTML
63 lines
2.2 KiB
HTML
|
<!doctype html>
|
||
|
<html>
|
||
|
<head>
|
||
|
<meta charset="utf-8">
|
||
|
<title>CodeMirror: Code Folding Demo</title>
|
||
|
<link rel="stylesheet" href="../lib/codemirror.css">
|
||
|
<script src="../lib/codemirror.js"></script>
|
||
|
<script src="../lib/util/foldcode.js"></script>
|
||
|
<script src="../mode/javascript/javascript.js"></script>
|
||
|
<script src="../mode/xml/xml.js"></script>
|
||
|
<link rel="stylesheet" href="../doc/docs.css">
|
||
|
|
||
|
<style type="text/css">
|
||
|
.CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}
|
||
|
.CodeMirror-gutter {min-width: 2.6em; cursor: pointer;}
|
||
|
</style>
|
||
|
</head>
|
||
|
<body>
|
||
|
<h1>CodeMirror: Code Folding Demo</h1>
|
||
|
|
||
|
<p>Demonstration of code folding using the code
|
||
|
in <a href="../lib/util/foldcode.js"><code>foldcode.js</code></a>.
|
||
|
Press ctrl-q or click on the gutter to fold a block, again
|
||
|
to unfold.</p>
|
||
|
<form>
|
||
|
<div style="max-width: 50em; margin-bottom: 1em">JavaScript:<br><textarea id="code" name="code"></textarea></div>
|
||
|
<div style="max-width: 50em">HTML:<br><textarea id="code-html" name="code-html"></textarea></div>
|
||
|
</form>
|
||
|
<script id="script">
|
||
|
window.onload = function() {
|
||
|
var te = document.getElementById("code");
|
||
|
var sc = document.getElementById("script");
|
||
|
te.value = (sc.textContent || sc.innerText || sc.innerHTML).replace(/^\s*/, "");
|
||
|
sc.innerHTML = "";
|
||
|
var te_html = document.getElementById("code-html");
|
||
|
te_html.value = "<html>\n " + document.documentElement.innerHTML + "\n</html>";
|
||
|
|
||
|
var foldFunc = CodeMirror.newFoldFunction(CodeMirror.braceRangeFinder);
|
||
|
window.editor = CodeMirror.fromTextArea(te, {
|
||
|
mode: "javascript",
|
||
|
lineNumbers: true,
|
||
|
lineWrapping: true,
|
||
|
onGutterClick: foldFunc,
|
||
|
extraKeys: {"Ctrl-Q": function(cm){foldFunc(cm, cm.getCursor().line);}}
|
||
|
});
|
||
|
foldFunc(editor, 9);
|
||
|
foldFunc(editor, 20);
|
||
|
|
||
|
var foldFunc_html = CodeMirror.newFoldFunction(CodeMirror.tagRangeFinder);
|
||
|
window.editor_html = CodeMirror.fromTextArea(te_html, {
|
||
|
mode: "text/html",
|
||
|
lineNumbers: true,
|
||
|
lineWrapping: true,
|
||
|
onGutterClick: foldFunc_html,
|
||
|
extraKeys: {"Ctrl-Q": function(cm){foldFunc_html(cm, cm.getCursor().line);}}
|
||
|
})
|
||
|
foldFunc_html(editor_html, 1);
|
||
|
foldFunc_html(editor_html, 15);
|
||
|
};
|
||
|
</script>
|
||
|
</body>
|
||
|
</html>
|