Skip to content

Commit c96ed72

Browse files
committed
Unify handling of default rake task comment declarations
1 parent 3971cb7 commit c96ed72

File tree

1 file changed

+8
-18
lines changed

1 file changed

+8
-18
lines changed

autoload/rails.vim

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1205,7 +1205,7 @@ function! s:make(bang, args, ...)
12051205
endif
12061206
endfunction
12071207

1208-
function! s:Rake(bang,lnum,arg)
1208+
function! s:Rake(bang, lnum, arg) abort
12091209
let self = rails#app()
12101210
let lnum = a:lnum < 0 ? 0 : a:lnum
12111211
let old_makeprg = &l:makeprg
@@ -1217,16 +1217,6 @@ function! s:Rake(bang,lnum,arg)
12171217
let &l:makeprg = rails#app().rake_command()
12181218
let &l:errorformat .= ',chdir '.escape(self.path(), ',')
12191219
let arg = a:arg
1220-
if &filetype =~# '^ruby\>' && arg == ''
1221-
let mnum = s:lastmethodline(lnum)
1222-
let str = getline(mnum)."\n".getline(mnum+1)."\n".getline(mnum+2)."\n"
1223-
let pat = '\s\+\zs.\{-\}\ze\%(\n\|\s\s\|#{\@!\|$\)'
1224-
let mat = matchstr(str,'#\s*rake'.pat)
1225-
let mat = s:sub(mat,'\s+$','')
1226-
if mat != ""
1227-
let arg = mat
1228-
endif
1229-
endif
12301220
if arg == ''
12311221
let arg = rails#buffer().default_rake_task(lnum)
12321222
endif
@@ -1235,7 +1225,6 @@ function! s:Rake(bang,lnum,arg)
12351225
let arg = get(self.options,'last_rake_task','')
12361226
endif
12371227
let self.options['last_rake_task'] = arg
1238-
let withrubyargs = '-r ./config/boot -r '.s:rquote(self.path('config/environment')).' -e "puts \%((in \#{Dir.getwd}))" '
12391228
if arg =~# '^notes\>'
12401229
let &l:errorformat = '%-P%f:,\ \ *\ [%\ %#%l]\ [%t%*[^]]] %m,\ \ *\ [%[\ ]%#%l] %m,%-Q'
12411230
call s:make(a:bang, arg)
@@ -1326,16 +1315,17 @@ function! s:readable_default_rake_task(...) dict abort
13261315
let app = self.app()
13271316
let lnum = a:0 ? (a:1 < 0 ? 0 : a:1) : 0
13281317

1318+
let taskpat = '\C# rake\s\+\zs.\{-\}\ze\%(\s\s\|#\|$\)'
13291319
if self.getvar('&buftype') == 'quickfix'
13301320
return '-'
13311321
elseif self.getline(lnum) =~# '# rake \S'
13321322
return matchstr(self.getline(lnum),'\C# rake \zs.*')
1333-
elseif self.getline(self.last_method_line(lnum)-1) =~# '# rake '
1334-
return matchstr(self.getline(self.last_method_line(lnum)-1),'\C# rake \zs.*')
1335-
elseif self.getline(self.last_method_line(lnum)) =~# '# rake '
1336-
return matchstr(self.getline(self.last_method_line(lnum)),'\C# rake \zs.*')
1337-
elseif self.getline(1) =~# '# rake \S' && !lnum
1338-
return matchstr(self.getline(1),'\C# rake \zs.*')
1323+
elseif self.getline(self.last_method_line(lnum)-1) =~# taskpat
1324+
return matchstr(self.getline(self.last_method_line(lnum)-1), taskpat)
1325+
elseif self.getline(self.last_method_line(lnum)) =~# taskpat
1326+
return matchstr(self.getline(self.last_method_line(lnum)), taskpat)
1327+
elseif self.getline(1) =~# taskpat && !lnum
1328+
return matchstr(self.getline(1), taskpat)
13391329
endif
13401330

13411331
let placeholders = {}

0 commit comments

Comments
 (0)