2013-05-30 2 views
5

레일에서 내 coffeescript를 디버깅하는 좋은 방법을 찾으려고합니다. 자산에 대한 내 구성 설정은 다음과 같습니다레일에서 coffescript 오류의 행 번호를 찾으십시오.

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

나는 그런 rake assets:precompile 작업을 수행 한 후 wepic.js.coffee.erb 나의 커피 스크립트 파일에 오류가
# Do not compress assets 
config.assets.compress = false 
# Expands the lines which load the assets 
config.assets.debug = true 

, 내가 얻을 수있는 유일한 디버깅 정보는 오류 유형 및 파일 이름입니다

때로는이 오류를 신속하게 파악하기에 충분하지 않고 줄/열 번호로 더 나은 추적을 얻으려고했습니다. 누구든지 이런 유형의 정보를 얻을 수있는 방법을 알고 있습니까? 당신이 NPM/설치 NodeJS (및 npm install coffee-script -g)가있는 경우

답변

3

, 당신은 줄 번호를보고 coffee -c <filename> 컴파일 시도 할 수 있습니다. Textmate/Sublime에는 키 조합을 사용하여 coffescript 파일의 컴파일 된 출력을 볼 수있는 플러그인이 있지만 NodeJS/NPM도 설치해야합니다.

+0

나는 그것을 시도 할 것이다. 그렇게 할 네이티브 레일 방법을 알고 있습니까? 이것은 coffeescript를 사용하는 레일 개발자에게 공통적 인 관심사 인 것 같습니다. –

+0

사전 컴파일없이 잘 작동합니까? .erb 확장자를 가지고 있습니다. 즉, 스크립트에 루비 변수를 주입하고 있으며 자산 미리 컴파일 할 때 사용할 수 있습니까? –

0

일반적으로 SyntaxError: unexpected TERMINATOR 오류는 CoffeeScript 소스 파일에 Tab 문자가있을 때 발생합니다.

이 같은 터미널에 탭 문자를 검색 할 수 $ grep $'\t' FILE_NAME

당신이 공백으로 대체 TAB 문자를 가진 파일을 찾으면.

TABS 용 공백을 사용하도록 소스 코드 편집기의 기본 설정을 지정해야합니다.

관련 문제