diff options
Diffstat (limited to 'autoload/cargo.vim')
-rw-r--r-- | autoload/cargo.vim | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/autoload/cargo.vim b/autoload/cargo.vim index f24db923..ffa946da 100644 --- a/autoload/cargo.vim +++ b/autoload/cargo.vim @@ -5,7 +5,17 @@ function! cargo#Load() endfunction function! cargo#cmd(args) - execute "! cargo" a:args + " Trim trailing spaces. This is necessary since :terminal command parses + " trailing spaces as an empty argument. + let args = substitute(a:args, '\s\+$', '', '') + if has('terminal') + let cmd = 'terminal' + elseif has('nvim') + let cmd = 'noautocmd new | terminal' + else + let cmd = '!' + endif + execute cmd 'cargo' args endfunction function! s:nearest_cargo(...) abort |