2013-05-30 14 views
5

Próbuję znaleźć dobry sposób na debugowanie mojego coffeescript w Railsach. Moje ustawienia konfiguracyjne dla aktywów są:znajdowanie numeru linii błędu coffescript w szynach

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

Kiedy mam błędy w moich coffeescript plików, takich jak wepic.js.coffee.erb po wykonaniu rake assets:precompile zadanie, tylko informacje debugowania otrzymuję jest rodzaj błędu i nazwa pliku:

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

Czasami to nie wystarczy, aby szybko wykryć błąd i próbowałem uzyskać lepszy ślad z może numerem linii/kolumny. Czy ktoś wie o sposobie uzyskania tego typu informacji?

Odpowiedz

3

Jeśli masz zainstalowany NPM/NodeJS (i npm install coffee-script -g), możesz spróbować skompilować pod numerem coffee -c <filename>, aby zobaczyć numer linii. Textmate/Sublime posiada również wtyczki, w których można zobaczyć skompilowane wyjście pliku coffescript za pomocą kombinacji klawiszy, ale wymagają również NodeJS/NPM.

+0

OK, spróbuję tego. Czy znasz jakieś natywne ścieżki do tego? Wydaje się to być powszechnym problemem dla programistów railsowych, którzy używają coffeescript –

+0

Czy to działa dobrze bez wstępnej kompilacji? Masz rozszerzenie .erb, to znaczy, że wstawiasz do skryptu zmienne ruby ​​i czy są one dostępne w momencie wstępnej kompilacji aktywów? –

0

Błąd SyntaxError: unexpected TERMINATOR występuje zwykle, gdy w źródłowym pliku CoffeeScript znajdują się znaki TAB.

Można szukać znaków kartę w terminalu tak: $ grep $'\t' FILE_NAME

Po znalezieniu pliku (ów) z znaki Tab zastąpić je spacjami.

Musisz również ustawić preferencje edytora kodu źródłowego, aby używać spacji dla TABS.

Powiązane problemy