summaryrefslogtreecommitdiffstats
path: root/autoload
diff options
context:
space:
mode:
Diffstat (limited to 'autoload')
-rw-r--r--autoload/rust.vim13
-rw-r--r--autoload/rust/tags.vim3
-rw-r--r--autoload/rustfmt.vim16
-rw-r--r--autoload/terraform.vim53
4 files changed, 49 insertions, 36 deletions
diff --git a/autoload/rust.vim b/autoload/rust.vim
index e8a675f3..b6ab1c68 100644
--- a/autoload/rust.vim
+++ b/autoload/rust.vim
@@ -398,10 +398,19 @@ function! s:RmDir(path)
echoerr 'Attempted to delete empty path'
return 0
elseif a:path ==# '/' || a:path ==# $HOME
- echoerr 'Attempted to delete protected path: ' . a:path
+ let l:path = expand(a:path)
+ if l:path ==# '/' || l:path ==# $HOME
+ echoerr 'Attempted to delete protected path: ' . a:path
+ return 0
+ endif
+ endif
+
+ if !isdirectory(a:path)
return 0
endif
- return system("rm -rf " . shellescape(a:path))
+
+ " delete() returns 0 when removing file successfully
+ return delete(a:path, 'rf') == 0
endfunction
" Executes {cmd} with the cwd set to {pwd}, without changing Vim's cwd.
diff --git a/autoload/rust/tags.vim b/autoload/rust/tags.vim
index 21faaabb..e75fb208 100644
--- a/autoload/rust/tags.vim
+++ b/autoload/rust/tags.vim
@@ -8,7 +8,8 @@ let s:checked_ctags = 0
function! rust#tags#IsUCtags() abort
if s:checked_ctags == 0
- if system('ctags --version') =~? 'universal ctags'
+ let l:ctags_bin = get(g:, 'tagbar_ctags_bin', 'ctags')
+ if system(l:ctags_bin.' --version') =~? 'universal ctags'
let s:ctags_is_uctags = 1
endif
let s:checked_ctags = 1
diff --git a/autoload/rustfmt.vim b/autoload/rustfmt.vim
index 151ac82d..53ea9b28 100644
--- a/autoload/rustfmt.vim
+++ b/autoload/rustfmt.vim
@@ -112,7 +112,7 @@ function! s:DeleteLines(start, end) abort
silent! execute a:start . ',' . a:end . 'delete _'
endfunction
-function! s:RunRustfmt(command, tmpname, fail_silently)
+function! s:RunRustfmt(command, tmpname, from_writepre)
mkview!
let l:stderr_tmpname = tempname()
@@ -149,8 +149,10 @@ function! s:RunRustfmt(command, tmpname, fail_silently)
let l:open_lwindow = 0
if v:shell_error == 0
- " remove undo point caused via BufWritePre
- try | silent undojoin | catch | endtry
+ if a:from_writepre
+ " remove undo point caused via BufWritePre
+ try | silent undojoin | catch | endtry
+ endif
if a:tmpname ==# ''
let l:content = l:out
@@ -170,7 +172,7 @@ function! s:RunRustfmt(command, tmpname, fail_silently)
call setloclist(0, [])
let l:open_lwindow = 1
endif
- elseif g:rustfmt_fail_silently == 0 && a:fail_silently == 0
+ elseif g:rustfmt_fail_silently == 0 && !a:from_writepre
" otherwise get the errors and put them in the location list
let l:errors = []
@@ -224,12 +226,12 @@ function! rustfmt#FormatRange(line1, line2)
let l:tmpname = tempname()
call writefile(getline(1, '$'), l:tmpname)
let command = s:RustfmtCommandRange(l:tmpname, a:line1, a:line2)
- call s:RunRustfmt(command, l:tmpname, 0)
+ call s:RunRustfmt(command, l:tmpname, v:false)
call delete(l:tmpname)
endfunction
function! rustfmt#Format()
- call s:RunRustfmt(s:RustfmtCommand(), '', 0)
+ call s:RunRustfmt(s:RustfmtCommand(), '', v:false)
endfunction
function! rustfmt#Cmd()
@@ -257,7 +259,7 @@ function! rustfmt#PreWrite()
return
endif
- call s:RunRustfmt(s:RustfmtCommand(), '', 1)
+ call s:RunRustfmt(s:RustfmtCommand(), '', v:true)
endfunction
diff --git a/autoload/terraform.vim b/autoload/terraform.vim
index da36751e..b156b6b9 100644
--- a/autoload/terraform.vim
+++ b/autoload/terraform.vim
@@ -31,33 +31,34 @@ function! terraform#align()
endif
endfunction
-function! terraform#commands(A, L, P)
- return [
- \ 'apply',
- \ 'console',
- \ 'destroy',
- \ 'env',
- \ 'fmt',
- \ 'get',
- \ 'graph',
- \ 'import',
- \ 'init',
- \ 'output',
- \ 'plan',
- \ 'providers',
- \ 'refresh',
- \ 'show',
- \ 'taint',
- \ 'untaint',
- \ 'validate',
- \ 'version',
- \ 'workspace',
- \ '0.12upgrade',
- \ 'debug',
- \ 'force-unlock',
- \ 'push',
- \ 'state'
+function! terraform#commands(ArgLead, CmdLine, CursorPos)
+ let l:commands = [
+ \ 'apply',
+ \ 'console',
+ \ 'destroy',
+ \ 'env',
+ \ 'fmt',
+ \ 'get',
+ \ 'graph',
+ \ 'import',
+ \ 'init',
+ \ 'output',
+ \ 'plan',
+ \ 'providers',
+ \ 'refresh',
+ \ 'show',
+ \ 'taint',
+ \ 'untaint',
+ \ 'validate',
+ \ 'version',
+ \ 'workspace',
+ \ '0.12upgrade',
+ \ 'debug',
+ \ 'force-unlock',
+ \ 'push',
+ \ 'state'
\ ]
+ return join(l:commands, "\n")
endfunction
endif