annotate .cms/lib/codemirror/demo/sublime.html @ 0:78edf6b517a0 draft

24.10
author Coffee CMS <info@coffee-cms.ru>
date Fri, 11 Oct 2024 22:40:23 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
1 <!doctype html>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
2
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
3 <title>CodeMirror: Sublime Text bindings demo</title>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
4 <meta charset="utf-8"/>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
5 <link rel=stylesheet href="../doc/docs.css">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
6
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
7 <link rel="stylesheet" href="../lib/codemirror.css">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
8 <link rel="stylesheet" href="../addon/fold/foldgutter.css">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
9 <link rel="stylesheet" href="../addon/dialog/dialog.css">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
10 <link rel="stylesheet" href="../theme/monokai.css">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
11 <script src="../lib/codemirror.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
12 <script src="../addon/search/searchcursor.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
13 <script src="../addon/search/search.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
14 <script src="../addon/dialog/dialog.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
15 <script src="../addon/edit/matchbrackets.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
16 <script src="../addon/edit/closebrackets.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
17 <script src="../addon/comment/comment.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
18 <script src="../addon/wrap/hardwrap.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
19 <script src="../addon/fold/foldcode.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
20 <script src="../addon/fold/brace-fold.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
21 <script src="../mode/javascript/javascript.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
22 <script src="../keymap/sublime.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
23 <style>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
24 .CodeMirror {border-top: 1px solid #eee; border-bottom: 1px solid #eee; line-height: 1.3; height: 500px}
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
25 .CodeMirror-linenumbers { padding: 0 8px; }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
26 </style>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
27 <div id=nav>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
28 <a href="https://codemirror.net/5"><h1>CodeMirror</h1><img id=logo src="../doc/logo.png"></a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
29
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
30 <ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
31 <li><a href="../index.html">Home</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
32 <li><a href="../doc/manual.html">Manual</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
33 <li><a href="https://github.com/codemirror/codemirror5">Code</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
34 </ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
35 <ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
36 <li><a class=active href="#">Sublime bindings</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
37 </ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
38 </div>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
39
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
40 <article>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
41 <h2>Sublime Text bindings demo</h2>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
42
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
43 <p>The <code>sublime</code> keymap defines many Sublime Text-specific
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
44 bindings for CodeMirror. See the code below for an overview.</p>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
45
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
46 <p>Enable the keymap by
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
47 loading <a href="../keymap/sublime.js"><code>keymap/sublime.js</code></a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
48 and setting
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
49 the <a href="../doc/manual.html#option_keyMap"><code>keyMap</code></a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
50 option to <code>"sublime"</code>.</p>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
51
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
52 <p>(A lot of the search functionality is still missing.)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
53
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
54 <script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
55 var value = "// The bindings defined specifically in the Sublime Text mode\nvar bindings = {\n";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
56 var map = CodeMirror.keyMap.sublime;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
57 for (var key in map) {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
58 var val = map[key];
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
59 if (key != "fallthrough" && val != "..." && (!/find/.test(val) || /findUnder/.test(val)))
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
60 value += " \"" + key + "\": \"" + val + "\",\n";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
61 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
62 value += "}\n\n// The implementation of joinLines\n";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
63 value += CodeMirror.commands.joinLines.toString().replace(/^function\s*\(/, "function joinLines(").replace(/\n /g, "\n") + "\n";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
64 var editor = CodeMirror(document.body.getElementsByTagName("article")[0], {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
65 value: value,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
66 lineNumbers: true,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
67 mode: "javascript",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
68 keyMap: "sublime",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
69 autoCloseBrackets: true,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
70 matchBrackets: true,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
71 showCursorWhenSelecting: true,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
72 theme: "monokai",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
73 tabSize: 2
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
74 });
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
75 </script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
76
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
77 </article>