Skip to content

Commit a8a4a10

Browse files
author
Darrick Wiebe
committed
Added support for app/javascripts path used by sprockets.
1 parent 73d9cbd commit a8a4a10

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

autoload/rails.vim

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2002,7 +2002,7 @@ function! s:stylesheetList(A,L,P)
20022002
endfunction
20032003

20042004
function! s:javascriptList(A,L,P)
2005-
return s:completion_filter(rails#app().relglob("public/javascripts/","**/*",".js"),a:A)
2005+
return s:completion_filter(rails#app().relglob("public/javascripts/","**/*",".js")+rails#app().relglob("app/javascripts/","**/*",".js"),a:A)
20062006
endfunction
20072007

20082008
function! s:metalList(A,L,P)
@@ -2406,7 +2406,12 @@ function! s:stylesheetEdit(bang,cmd,...)
24062406
endfunction
24072407

24082408
function! s:javascriptEdit(bang,cmd,...)
2409-
return s:EditSimpleRb(a:bang,a:cmd,"javascript",a:0? a:1 : "application","public/javascripts/",".js",1)
2409+
let file = a:0? a:1 : "application"
2410+
let prefix = "app/javascripts/"
2411+
if !rails#app().has_file(prefix.file.".js")
2412+
prefix = "public/javascripts/"
2413+
endif
2414+
return s:EditSimpleRb(a:bang,a:cmd,"javascript",file,prefix,".js",1)
24102415
endfunction
24112416

24122417
function! s:unittestEdit(bang,cmd,...)
@@ -2673,7 +2678,13 @@ function! s:AlternateFile()
26732678
elseif f =~ '\<application\.js$'
26742679
return "app/helpers/application_helper.rb"
26752680
elseif t =~ '^js\>'
2676-
return "public/javascripts/application.js"
2681+
let sprockets = "app/javascripts/application.js"
2682+
let rails = "public/javascripts/application.js"
2683+
if filereadable(sprockets)
2684+
return sprockets
2685+
else
2686+
return rails
2687+
endif
26772688
elseif f =~ '\<db/schema\.rb$'
26782689
return rails#app().migration('')
26792690
elseif t =~ '^view\>'
@@ -2822,7 +2833,13 @@ function! s:RelatedFile()
28222833
elseif f =~ '\<application\.js$'
28232834
return "app/helpers/application_helper.rb"
28242835
elseif t =~ '^js\>'
2825-
return "public/javascripts/application.js"
2836+
let sprockets = "app/javascripts/application.js"
2837+
let rails = "public/javascripts/application.js"
2838+
if filereadable(sprockets)
2839+
return sprockets
2840+
else
2841+
return rails
2842+
endif
28262843
elseif t =~ '^view-layout\>'
28272844
return s:sub(s:sub(s:sub(f,'/views/','/controllers/'),'/layouts/(\k+)\..*$','/\1_controller.rb'),'<application_controller\.rb$','application.rb')
28282845
elseif t =~ '^view\>'

0 commit comments

Comments
 (0)