function! zvim#tab() abort if getline('.')[col('.')-2] ==# '{'&& pumvisible() return "\" endif if neosnippet#expandable() && getline('.')[col('.')-2] ==# '(' && !pumvisible() return "\(neosnippet_expand)" elseif neosnippet#jumpable() && getline('.')[col('.')-2] ==# '(' && !pumvisible() && !neosnippet#expandable() return "\(neosnippet_jump)" elseif neosnippet#expandable_or_jumpable() && getline('.')[col('.')-2] !=#'(' return "\(neosnippet_expand_or_jump)" elseif pumvisible() return "\" else return "\" endif endfunction function! zvim#enter() abort if pumvisible() if getline('.')[col('.') - 2]==# '{' return "\" elseif g:settings.autocomplete_method ==# 'neocomplete'||g:settings.autocomplete_method ==# 'deoplete' return "\" else return "\a" endif elseif getline('.')[col('.') - 2]==#'{'&&getline('.')[col('.')-1]==#'}' return "\\ko" else return "\" endif endfunction function! zvim#format() abort let save_cursor = getcurpos() normal! gg=G call setpos('.', save_cursor) endfunction