annotate .cms/lib/codemirror/demo/lint.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: Linter 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/lint/lint.css">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
9 <script src="../lib/codemirror.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
10 <script src="../mode/javascript/javascript.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
11 <script src="../mode/css/css.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
12 <script src="https://unpkg.com/jshint@2.13.2/dist/jshint.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
13 <script src="https://unpkg.com/jsonlint@1.6.3/web/jsonlint.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
14 <script src="https://unpkg.com/csslint@1.0.5/dist/csslint.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
15 <script src="../addon/lint/lint.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
16 <script src="../addon/lint/javascript-lint.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
17 <script src="../addon/lint/json-lint.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
18 <script src="../addon/lint/css-lint.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
19 <style>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
20 .CodeMirror {border: 1px solid black;}
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
21 </style>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
22 <div id=nav>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
23 <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
24
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
25 <ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
26 <li><a href="../index.html">Home</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
27 <li><a href="../doc/manual.html">Manual</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
28 <li><a href="https://github.com/codemirror/codemirror5">Code</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
29 </ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
30 <ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
31 <li><a class=active href="#">Linter</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
32 </ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
33 </div>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
34
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
35 <article>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
36 <h2>Linter Demo</h2>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
37
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
38
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
39 <p><textarea id="code-js">var widgets = []
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
40 function updateHints() {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
41 editor.operation(function(){
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
42 for (var i = 0; i < widgets.length.; ++i)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
43 editor.removeLineWidget(widgets[i]);
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
44 widgets.length = 0;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
45
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
46 JSHINT(editor.getValue());
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
47 for (var i = 0; i < JSHINT.errors.length; ++i) {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
48 var err = JSHINT.errors[i];
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
49 if (!err) continue;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
50 var msg = document.createElement("div");
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
51 var icon = msg.appendChild(document.createElement("span"));
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
52 icon.innerHTML = "!!";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
53 icon.className = "lint-error-icon";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
54 msg.appendChild(document.createTextNode(err.reason));
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
55 msg.className = "lint-error";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
56 widgets.push(editor.addLineWidget(err.line - 1, msg, {coverGutter: false, noHScroll: true}));
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
57 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
58 });
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
59 var info = editor.getScrollInfo();
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
60 var after = editor.charCoords({line: editor.getCursor().line + 1, ch: 0}, "local").top;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
61 if (info.top + info.clientHeight < after)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
62 editor.scrollTo(null, after - info.clientHeight + 3);
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
63 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
64 </textarea></p>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
65
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
66 <p><textarea id="code-json">[
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
67 {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
68 _id: "post 1",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
69 "author": "Bob",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
70 "content": "...",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
71 "page_views": 5
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
72 },
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
73 {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
74 "_id": "post 2",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
75 "author": "Bob",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
76 "content": "...",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
77 "page_views": 9
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
78 },
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
79 {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
80 "_id": "post 3",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
81 "author": "Bob",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
82 "content": "...",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
83 "page_views": 8
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
84 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
85 ]
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
86 </textarea></p>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
87
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
88 <p><textarea id="code-css">@charset "UTF-8";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
89
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
90 @import url("booya.css") print, screen;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
91 @import "whatup.css" screen;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
92 @import "wicked.css";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
93
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
94 /*Error*/
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
95 @charset "UTF-8";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
96
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
97
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
98 @namespace "http://www.w3.org/1999/xhtml";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
99 @namespace svg "http://www.w3.org/2000/svg";
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
100
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
101 /*Warning: empty ruleset */
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
102 .foo {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
103 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
104
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
105 h1 {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
106 font-weight: bold;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
107 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
108
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
109 /*Warning: qualified heading */
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
110 .foo h1 {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
111 font-weight: bold;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
112 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
113
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
114 /*Warning: adjoining classes */
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
115 .foo.bar {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
116 zoom: 1;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
117 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
118
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
119 li.inline {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
120 width: 100%; /*Warning: 100% can be problematic*/
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
121 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
122
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
123 li.last {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
124 display: inline;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
125 padding-left: 3px !important;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
126 padding-right: 3px;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
127 border-right: 0px;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
128 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
129
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
130 @media print {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
131 li.inline {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
132 color: black;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
133 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
134 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
135
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
136 @page {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
137 margin: 10%;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
138 counter-increment: page;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
139
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
140 @top-center {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
141 font-family: sans-serif;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
142 font-weight: bold;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
143 font-size: 2em;
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
144 content: counter(page);
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
145 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
146 }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
147 </textarea></p>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
148 <script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
149 var editor = CodeMirror.fromTextArea(document.getElementById("code-js"), {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
150 lineNumbers: true,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
151 mode: "javascript",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
152 gutters: ["CodeMirror-lint-markers"],
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
153 lint: {options: {esversion: 2021}},
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
154 });
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
155
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
156 var editor_json = CodeMirror.fromTextArea(document.getElementById("code-json"), {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
157 lineNumbers: true,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
158 mode: "application/json",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
159 gutters: ["CodeMirror-lint-markers"],
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
160 lint: true
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
161 });
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
162
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
163 var editor_css = CodeMirror.fromTextArea(document.getElementById("code-css"), {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
164 lineNumbers: true,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
165 mode: "css",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
166 gutters: ["CodeMirror-lint-markers"],
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
167 lint: true
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
168 });
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
169 </script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
170
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
171 </article>