summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ftplugin/rust.vim15
1 files changed, 13 insertions, 2 deletions
diff --git a/ftplugin/rust.vim b/ftplugin/rust.vim
index 7443f9d..90cf440 100644
--- a/ftplugin/rust.vim
+++ b/ftplugin/rust.vim
@@ -23,7 +23,18 @@ endfunction
23 23
24nnoremap <leader>r :call RustMake() <bar> silent! redraw <bar> cwindow<cr> 24nnoremap <leader>r :call RustMake() <bar> silent! redraw <bar> cwindow<cr>
25 25
26augroup RustFmt 26if exists('*RustFmtSimple')
27 finish
28endif
29
30function! RustFmtSimple() abort
31 let winview = winsaveview()
32 silent exec "!cargo fmt"
33 bufdo edit
34 call winrestview(winview)
35endfunction
36
37augroup SimpleRustFmt
27 autocmd! 38 autocmd!
28 autocmd BufWritePost *.rs | silent exec "!cargo fmt" | bufdo edit | silent! redraw 39 autocmd BufWritePost *.rs call RustFmtSimple()
29augroup END 40augroup END