" hook_add {{{ nnoremap : :call ddc#enable_cmdline_completion() xnoremap : :call ddc#enable_cmdline_completion() autocmd vimrc User SearchxEnter call ddc#enable_cmdline_completion() " }}} " hook_source {{{ " based on https://github.com/kuuote/dotvim/blob/0e8dd6a4/conf/ddc.toml#L170 autocmd vimrc OptionSet buftype \ : if &buftype ==# 'acwrite' || bufname() ==# 'mininote' \ | call ddc#custom#patch_buffer('specialBufferCompletion', v:true) \ | endif " key mappings inoremap pum#visible() ? 'call pum#map#select_relative(+1)' : '' inoremap pum#visible() ? 'call pum#map#select_relative(-1)' : '' cnoremap pum#visible() ? 'call pum#map#select_relative(+1)' : '' cnoremap pum#visible() ? 'call pum#map#select_relative(-1)' : '' cnoremap pum#visible() ? 'call pum#map#select_relative(+1)' : ddc#map#manual_complete() inoremap pum#visible() ? 'call pum#map#cancel()' : user#is_at_end() ? '' : '' inoremap pum#visible() ? 'call pum#map#confirm()' : '"' cnoremap pum#visible() ? 'call pum#map#cancel()' : '' cnoremap pum#visible() ? 'call pum#map#confirm()' : '"' " emulate default mappings (see `:help ins-completion`) function! s:ddc_complete(...) abort return ddc#map#manual_complete(#{ sources: a:000 }) endfunction inoremap ddc_complete('line') inoremap ddc_complete('around') inoremap ddc_complete('file') inoremap ddc_complete('lsp') inoremap ddc_complete('cmdline') inoremap ddc_complete() inoremap ddc_complete('omni') inoremap ddc_complete('mocword') inoremap ddc_complete('tmux') if bufname() =~# '^/tmp/\d\+\.md$' inoremap ddc_complete('github_issue', 'github_pull_request') endif call ddc#custom#load_config(expand('$DEIN_DIR/settings/ddc.ts')) call ddc#enable(#{ \ context_filetype: has('nvim') ? 'treesitter': 'context_filetype', \ }) " }}} " hook_post_update {{{ call ddc#set_static_import_path() echomsg '[ddc] ddc#set_static_import_path() called' " }}}