Skip to content

Commit 3b37963

Browse files
committed
Fix parsing out of mods in s:findcmdfor()
Resolves: tpope#559
1 parent d556429 commit 3b37963

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

autoload/rails.vim

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3351,20 +3351,20 @@ function! s:findcmdfor(cmd) abort
33513351
let cmd = a:cmd
33523352
endif
33533353
let cmd = s:mods(cmd)
3354-
let num = matchstr(cmd, '.\{-\}\ze\a\+')
3355-
let cmd = matchstr(cmd, '\a\+.*')
3354+
let mods_num = matchstr(cmd, '^.\{-\}\ze\a\+\%(\s*+\d\+\)\=$')
3355+
let cmd = strpart(cmd, len(mods_num))
33563356
if cmd == '' || cmd == 'E' || cmd == 'F'
3357-
return num.'find'.bang
3357+
return mods_num.'find'.bang
33583358
elseif cmd == 'S'
3359-
return num.'sfind'.bang
3359+
return mods_num.'sfind'.bang
33603360
elseif cmd == 'V'
3361-
return 'vert '.num.'sfind'.bang
3361+
return 'vert '.mods_num.'sfind'.bang
33623362
elseif cmd == 'T'
3363-
return num.'tab sfind'.bang
3363+
return mods_num.'tab sfind'.bang
33643364
elseif cmd == 'D'
3365-
return num.'read'.bang
3365+
return mods_num.'read'.bang
33663366
else
3367-
return num.cmd.bang
3367+
return mods_num.cmd.bang
33683368
endif
33693369
endfunction
33703370

0 commit comments

Comments
 (0)