blob: b7c329a2bb99700775ba37af4519eaf3addad807 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
"=============================================================================
" FILE: deoplete.vim
" AUTHOR: Shougo Matsushita <Shougo.Matsu at gmail.com>
" License: MIT license
"=============================================================================
function! deoplete#initialize() abort
return deoplete#init#_initialize()
endfunction
function! deoplete#enable() abort
if deoplete#initialize()
return 1
endif
return deoplete#init#_enable()
endfunction
function! deoplete#disable() abort
return deoplete#init#_disable()
endfunction
function! deoplete#toggle() abort
return deoplete#init#_is_enabled() ?
\ deoplete#disable() : deoplete#enable()
endfunction
function! deoplete#enable_logging(level, logfile) abort
if !exists('g:deoplete#_channel_id')
" Enable to allow logging before completions start.
if deoplete#init#_channel()
return
endif
endif
call rpcnotify(g:deoplete#_channel_id,
\ 'deoplete_enable_logging', a:level, a:logfile)
endfunction
function! deoplete#manual_complete(...) abort
if deoplete#initialize()
return
endif
" Start complete.
return (pumvisible() ? "\<C-e>" : '')
\ . "\<C-r>=deoplete#mapping#_rpcnotify_wrapper("
\ . string(get(a:000, 0, [])) . ")\<CR>"
endfunction
function! deoplete#close_popup() abort
let g:deoplete#_context.position = getpos('.')
return pumvisible() ? "\<C-y>" : ''
endfunction
function! deoplete#smart_close_popup() abort
let g:deoplete#_context.position = getpos('.')
return pumvisible() ? "\<C-e>" : ''
endfunction
function! deoplete#cancel_popup() abort
let g:deoplete#_context.position = getpos('.')
return pumvisible() ? "\<C-e>" : ''
endfunction
function! deoplete#refresh() abort
let g:deoplete#_context.refresh = 1
if get(g:deoplete#_context, 'event', '') ==# 'Manual'
let g:deoplete#_context.event = 'Refresh'
endif
return pumvisible() ? "\<C-e>" : ''
endfunction
function! deoplete#undo_completion() abort
if !exists('v:completed_item') || empty(v:completed_item)
return ''
endif
let input = deoplete#util#get_input('')
if strridx(input, v:completed_item.word) !=
\ len(input) - len(v:completed_item.word)
return ''
endif
return deoplete#smart_close_popup() .
\ repeat("\<C-h>", strchars(v:completed_item.word))
endfunction
|