40 lines
1.3 KiB
VimL
40 lines
1.3 KiB
VimL
scriptencoding utf-8
|
|
|
|
if !exists('autocommands_loaded') && has('autocmd')
|
|
let autocommands_loaded = 1
|
|
let ftToIgnore = ['markdown', 'html', 'text']
|
|
let statusline_blacklist = ['terminal', 'fugitive', 'vista', 'diagnostics', 'qf']
|
|
|
|
aug OnInsert
|
|
au InsertLeave * if &paste | setlocal nopaste | endif
|
|
au InsertLeave * set nocursorline
|
|
au InsertEnter * set cursorline
|
|
au InsertLeave,CompleteDone * if pumvisible() == 0 | pclose | endif
|
|
aug END
|
|
|
|
aug Miscs
|
|
au TextYankPost * silent! lua vim.highlight.on_yank{timeout = 80, on_visual=true}
|
|
au BufEnter * set fo-=c fo-=r fo-=o
|
|
au CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focusable=false, header=""})
|
|
aug END
|
|
|
|
aug OnSave
|
|
au BufWritePre * if index(ftToIgnore, &ft) < 0 | :%s/\s\+$//e
|
|
au BufWritePost init.lua source <afile> | PackerSync
|
|
au QuitPre * if empty(&buftype) | lclose | endif
|
|
aug END
|
|
|
|
aug StatusLine
|
|
au WinEnter,BufEnter * if index(statusline_blacklist, &ft) < 0 | setlocal statusline=%!v:lua.StatusLine()
|
|
au WinLeave,BufLeave * if index(statusline_blacklist, &ft) < 0 | setlocal statusline=%!v:lua.StatusLineInactive()
|
|
aug END
|
|
|
|
aug OpenTerm
|
|
au TermOpen * set laststatus=0
|
|
au TermOpen * setlocal nonumber wrap signcolumn=no
|
|
au BufEnter term://* startinsert!
|
|
au TermClose * set laststatus=2
|
|
au BufLeave term://* stopinsert
|
|
aug END
|
|
endif
|