在Codemirror上显示CoffeeScript Lint

Show CoffeeScript Lint on Codemirror

本文关键字:CoffeeScript Lint 显示 Codemirror      更新时间:2023-09-28

我之前在Codemirror上玩CoffeeScript,我不知道为什么,但linting无法使用Codemirror。即使是Codemirror包提供的棉绒也不适合我。

我做错了什么?我该如何解决这个问题?

// Initialize CodeMirror editor
var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
  mode: "text/x-coffeescript",
  tabMode: "indent",
  styleActiveLine: true,
  lineNumbers: true,
  lineWrapping: true,
  autoCloseTags: true,
  foldGutter: true,
  dragDrop: true,
  lint: true,
  gutters: ["CodeMirror-lint-markers", "CodeMirror-linenumbers", "CodeMirror-foldgutter"]
})
.CodeMirror {
  width: 100%;
  height: auto;
}
<link rel="stylesheet" href="https://necolas.github.io/normalize.css/4.0.0/normalize.css">
<link rel="stylesheet" href="http://codemirror.net/lib/codemirror.css">
<link rel="stylesheet" href="http://codemirror.net/addon/fold/foldgutter.css">
<link rel="stylesheet" href="http://codemirror.net/addon/hint/show-hint.css">
<link rel="stylesheet" href="http://codemirror.net/addon/lint/lint.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://codemirror.net/lib/codemirror.js"></script>
<script src="http://codemirror.net/mode/javascript/javascript.js"></script>
<script src="http://codemirror.net/mode/xml/xml.js"></script>
<script src="http://codemirror.net/mode/css/css.js"></script>
<script src="http://codemirror.net/mode/htmlmixed/htmlmixed.js"></script>
<script src="http://codemirror.net/addon/edit/closetag.js"></script>
<script src="http://codemirror.net/addon/edit/matchbrackets.js"></script>
<script src="http://codemirror.net/addon/selection/active-line.js"></script>
<script src="http://codemirror.net/addon/fold/foldcode.js"></script>
<script src="http://codemirror.net/addon/fold/foldgutter.js"></script>
<script src="http://codemirror.net/addon/fold/brace-fold.js"></script>
<script src="http://codemirror.net/addon/fold/xml-fold.js"></script>
<script src="http://codemirror.net/addon/fold/comment-fold.js"></script>
<script src="http://coffeescript.org/extras/coffee-script.js"></script>
<script src="http://coffeelint.org/js/coffeelint.js"></script>
<script src="http://codemirror.net/mode/coffeescript/coffeescript.js"></script>
<script src="http://codemirror.net/addon/lint/coffeescript-lint.js"></script>
<textarea id="code">function () {}</textarea>

http://kodeweave.sourceforge.net/editor/#362e030f5d37beb17766999e92ef4e88

哈哈,有趣的错误。我忘记添加lint.js

<script src="http://codemirror.net/addon/lint/lint.js"></script>

这是给任何使用它的人的一个快速提示。我尝试用editor.refresh()刷新lint来刷新CodeMirror实例,以在编辑器中获得CoffeeScript lints而不是JavaScript lints,但我能让它工作的唯一方法是禁用lints并用重新启用。。。

editor.setOption("lint", false)
editor.setOption("lint", true)

这是片段!

// Initialize CodeMirror editor
var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
  mode: "text/x-coffeescript",
  tabMode: "indent",
  styleActiveLine: true,
  lineNumbers: true,
  lineWrapping: true,
  autoCloseTags: true,
  foldGutter: true,
  dragDrop: true,
  lint: true,
  gutters: ["CodeMirror-lint-markers", "CodeMirror-linenumbers", "CodeMirror-foldgutter"]
})
.CodeMirror {
  width: 100%;
  height: auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://necolas.github.io/normalize.css/4.0.0/normalize.css">
<link rel="stylesheet" href="http://codemirror.net/lib/codemirror.css">
<link rel="stylesheet" href="http://codemirror.net/addon/lint/lint.css">
<script src="http://codemirror.net/lib/codemirror.js"></script>
<script src="http://codemirror.net/addon/lint/lint.js"></script>
<script src="http://codemirror.net/mode/coffeescript/coffeescript.js"></script>
<script src="http://coffeescript.org/extras/coffee-script.js"></script>
<script src="http://coffeelint.org/js/coffeelint.js"></script>
<script src="http://codemirror.net/addon/lint/coffeescript-lint.js"></script>
<textarea id="code">function () {}
  
# Initialize CodeMirror editor
editor = CodeMirror.fromTextArea(document.getElementById('code'),
  mode: 'text/x-coffeescript'
  tabMode: 'indent'
  styleActiveLine: true
  lineNumbers: true
  lineWrapping: true
  autoCloseTags: true
  foldGutter: true
  dragDrop: true
  lint: true
  gutters: [
    'CodeMirror-lint-markers'
    'CodeMirror-linenumbers'
    'CodeMirror-foldgutter'
  ])</textarea>