123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- <!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="../addon/fold/foldcode.js"></script>
- <script src="../addon/fold/brace-fold.js"></script>
- <script src="../addon/fold/xml-fold.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-foldmarker {
- color: blue;
- text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px;
- font-family: arial;
- line-height: .3;
- cursor: pointer;
- }
- </style>
- </head>
- <body>
- <h1>CodeMirror: Code Folding Demo</h1>
- <p>Demonstration of code folding using the code
- in <a href="../addon/fold/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,
- extraKeys: {"Ctrl-Q": function(cm){foldFunc(cm, cm.getCursor().line);}}
- });
- editor.on("gutterClick", foldFunc);
- foldFunc(editor, 9);
- var foldFunc_html = CodeMirror.newFoldFunction(CodeMirror.tagRangeFinder);
- window.editor_html = CodeMirror.fromTextArea(te_html, {
- mode: "text/html",
- lineNumbers: true,
- lineWrapping: true,
- extraKeys: {"Ctrl-Q": function(cm){foldFunc_html(cm, cm.getCursor().line);}}
- });
- editor_html.on("gutterClick", foldFunc_html);
- foldFunc_html(editor_html, 11);
- foldFunc_html(editor_html, 1);
- };
- </script>
- </body>
- </html>
|