summaryrefslogtreecommitdiffstats
path: root/indent/rust.vim
diff options
context:
space:
mode:
Diffstat (limited to 'indent/rust.vim')
-rw-r--r--indent/rust.vim15
1 files changed, 11 insertions, 4 deletions
diff --git a/indent/rust.vim b/indent/rust.vim
index fec789de..042e2ab5 100644
--- a/indent/rust.vim
+++ b/indent/rust.vim
@@ -3,11 +3,12 @@ if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rust') == -1
" Vim indent file
" Language: Rust
" Author: Chris Morgan <me@chrismorgan.info>
-" Last Change: 2016 Jul 15
+" Last Change: 2017 Mar 21
+" For bugs, patches and license go to https://github.com/rust-lang/rust.vim
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
- finish
+ finish
endif
let b:did_indent = 1
@@ -15,7 +16,7 @@ setlocal cindent
setlocal cinoptions=L0,(0,Ws,J1,j1
setlocal cinkeys=0{,0},!^F,o,O,0[,0]
" Don't think cinwords will actually do anything at all... never mind
-setlocal cinwords=for,if,else,while,loop,impl,mod,unsafe,trait,struct,enum,fn,extern
+setlocal cinwords=for,if,else,while,loop,impl,mod,unsafe,trait,struct,enum,fn,extern,macro
" Some preliminary settings
setlocal nolisp " Make sure lisp indenting doesn't supersede us
@@ -27,9 +28,12 @@ setlocal indentexpr=GetRustIndent(v:lnum)
" Only define the function once.
if exists("*GetRustIndent")
- finish
+ finish
endif
+let s:save_cpo = &cpo
+set cpo&vim
+
" Come here when loading the script the first time.
function! s:get_line_trimmed(lnum)
@@ -207,4 +211,7 @@ function GetRustIndent(lnum)
return cindent(a:lnum)
endfunction
+let &cpo = s:save_cpo
+unlet s:save_cpo
+
endif