2013-05-30 23 views
5

Tôi đang cố gắng tìm một cách tốt để gỡ lỗi coffeescript của tôi trong Rails. thiết lập cấu hình của tôi đối với tài sản là:tìm số dòng của lỗi coffescript trong đường ray

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

Khi tôi có lỗi trong các tập tin coffeescript tôi như wepic.js.coffee.erb sau khi làm một nhiệm vụ rake assets:precompile, thông tin gỡ lỗi duy nhất tôi nhận được là loại lỗi và filename:

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

Đôi khi điều này là không đủ để phát hiện lỗi một cách nhanh chóng và tôi đã cố gắng để có được một dấu vết tốt hơn với có thể là số dòng/cột. Có ai biết cách để có được loại thông tin này không?

Trả lời

3

Nếu bạn đã cài đặt NPM/NodeJS (và npm install coffee-script -g), bạn có thể thử biên dịch với coffee -c <filename> để xem số dòng. Textmate/Sublime cũng có các plugin, nơi bạn có thể xem đầu ra đã biên dịch của tệp coffescript bằng tổ hợp phím, nhưng chúng cũng yêu cầu cài đặt NodeJS/NPM.

+0

Ok tôi sẽ thử điều đó. Bạn có biết bất kỳ đường ray gốc nào để làm như vậy không? Điều này có vẻ là một mối quan tâm phổ biến cho các nhà phát triển đường ray sử dụng coffeescript –

+0

Nó có hoạt động tốt mà không cần biên dịch trước không? Bạn có phần mở rộng .erb, điều đó có nghĩa là bạn đang đưa các biến ruby ​​vào tập lệnh và chúng có sẵn tại thời điểm biên dịch trước tài sản không? –

0

Lỗi SyntaxError: unexpected TERMINATOR thường xảy ra khi bạn có các ký tự TAB trong tệp nguồn CoffeeScript của bạn.

Bạn có thể tìm kiếm cho các ký tự tab trong terminal của bạn như thế này: $ grep $'\t' FILE_NAME

Khi bạn tìm ra file (s) với các ký tự TAB thay thế chúng với không gian.

Bạn cũng cần phải đặt tùy chọn của trình chỉnh sửa mã nguồn để sử dụng khoảng trống cho TABS.

Các vấn đề liên quan