在rails中查找coffeescript错误的行号

时间:2013-05-30 18:25:03

标签: ruby-on-rails debugging coffeescript

我正在尝试找到一种在Rails中调试我的coffeescript的好方法。我的资产配置设置为:

# Do not compress assets
config.assets.compress = false
# Expands the lines which load the assets
config.assets.debug = true

执行wepic.js.coffee.erb任务后,当我的coffeescript文件(例如rake assets:precompile)出错时,我得到的唯一调试信息是错误类型和文件名:

rake aborted!
SyntaxError: unexpected TERMINATOR
(in /home/jtestard/projects/git/webdamsystem/app/assets/javascripts/wepic.js.coffee.erb)

有时这还不足以快速发现错误,我试图通过行/列号获得更好的跟踪。有谁知道获得此类信息的方法?

2 个答案:

答案 0 :(得分:3)

如果您安装了NPM / NodeJS(以及npm install coffee-script -g),则可以尝试使用coffee -c <filename>进行编译以查看行号。 Textmate / Sublime也有插件,您可以在其中看到带有组合键的coffescript文件的编译输出,但它们也需要安装NodeJS / NPM。

答案 1 :(得分:0)

当您在CoffeeScript源文件中有TAB字符时,通常会发生SyntaxError: unexpected TERMINATOR错误。

您可以在终端中搜索制表符,如下所示:$ grep $'\t' FILE_NAME

一旦找到带有TAB字符的文件,请用空格替换它们。

您还需要设置源代码编辑器的首选项,以便为TABS使用空格。