@@ -1205,7 +1205,7 @@ function! s:make(bang, args, ...)
12051205  endif 
12061206endfunction 
12071207
1208- function !  s: Rakebang ,lnum,arg)
1208+ function !  s: Rakebang ,  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
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' 
1225-       let  mat  =  s: submat ,' \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: rquoteself .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: makea: bang
@@ -1326,16 +1315,17 @@ function! s:readable_default_rake_task(...) dict abort
13261315  let  app =  self .app ()
13271316  let  lnum =  a: 0a: 1 <  0  ? 0  : a: 10 
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