如何在EmberJS(Javascript)的VIM中捕获拼写错误

时间:2014-07-06 11:46:12

标签: javascript vim ember.js

我开始学习EmberJS / JS / VIM。我正在浏览EmberJS的官方ToDoMVC指南,我遇到了错误的错误,用“眼睛”真的很难察觉,浏览器在这种情况下根本没有帮助。那么,您能否建议我使用哪些工具或技术来检测这些类型的拼写错误?

例如:

### todo_controller should've been todos_controller
<script src="js/todo_controller.js"></script>

### catching the end of { } closed scoping

### typo within a model js "property"
inflection: function() {
  var remaining = this.get('remaining');
  return remaining === 1 ? 'todo' : 'todos';
}.proprety('remaining')

EDIT;

是的,我在发布之前做过搜索。第一个是这个网站,这里的评论基本上建议DreamWeaver Frustration with Typos

我搜索SO本身(通过谷歌),有Is there a way to catch typos。我确实发现有一种叫LINT的东西,但它处理的是coffeescript。

我确实发现了ember.vim,正如您之前所指出的那样,但正如您在github配置文件中看到README一样,我相信它严格要求您遵循规定的布局。这可能是一件好事,但是现在,我想坚持官方ToDoMVC的方式。我刚刚开始对hjkl感兴趣,所以我认为我不能对它进行修改以适应我的方式。另外,第二点,它支持的布局格式是Ember-AppKit,已被弃用。所以我怀疑我是否应该遵循布局模式本身。

所有这些都没有特别解决我的问题。在上面的todo_controller错误中,浏览器没有抛出任何类型的错误。我正在使用FF / Firebug,在控制台上,它只显示有关Ember加载的消息,并且根本没有错误。我花了一段时间才看到这个错字。第二个确实抛出错误,但在VIM中发现拼写错误很难。第三个,花了一点时间,还有其他人。这些根本不会抛出错误。我已经习惯了PHP,虽然Android中没有直接显示错误,但我发现Javascript拼写错误非常难。

2 个答案:

答案 0 :(得分:1)

在我看到你的拼写错误之前,它让我看起来像3个样子。

将浏览器设置为暂停异常(有时会暂停捕获异常)。这是我发现追踪一个奇怪的错误的最快方法之一。在这种情况下,我确定你得到Uncaught TypeError: undefined is not a function...

答案 1 :(得分:0)

不要错误地采取这种做法,但是你在询问之前是否尝试过搜索?很长一段时间以来,Vim的插件已经有了语法高亮的改进。

https://github.com/dsawardekar/ember.vim

除了该插件,您可以尝试编写自己的解决方案。我没有尝试过,但我怀疑那里会有任何东西可以解决Ember的拼写错误......

我使用JSLint作为SublimeText 3,它在您编码时发布,因此您可以获得任何潜在错误的实时更新。有点儿好这里有类似于Vim的内容:https://github.com/hallettj/jslint.vim

正如@ kingpin2k建议的那样,您应该真正学习如何使用浏览器工具。三巨头充满了开发和调试工具。 10次​​中的9次为您提供错误的行和列,您可以在代码中设置断点以观察它在上下文中执行。而且,就浏览器内部调试的详细程度而言,这实际上只是冰山一角。