[[plugins]]
repo = 'Shougo/ddc.vim'
depends = ['denops.vim', 'lexima.vim', 'pum.vim']
lazy = true
on_event = 'InsertEnter'
hook_add = '''
nnoremap : <Cmd>call timer_start(10, { -> user#ddc#cmdline_pre(':') })<CR>:
xnoremap : <Cmd>call timer_start(10, { -> user#ddc#cmdline_pre(':') })<CR>:
cnoremap <expr> <C-n> pum#visible() ? '<Cmd>call pum#map#select_relative(+1)<CR>' : '<Down>'
cnoremap <expr> <C-p> pum#visible() ? '<Cmd>call pum#map#select_relative(-1)<CR>' : '<Up>'
cnoremap <expr> <BS>  pum#visible() ? '<Cmd>call pum#map#cancel()<CR>' : '<BS>'
'''
hook_source = '''
Runtime dein/settings/ddc.vim
'''

# UI

[[plugins]]
repo = 'Shougo/ddc-ui-pum'

# sources

[[plugins]]
repo = '4513echo/ddc-github'

[[plugins]]
repo = 'LumaKernel/ddc-source-file'

[[plugins]]
repo = 'Shougo/ddc-source-around'

[[plugins]]
repo = 'Shougo/ddc-source-cmdline'

[[plugins]]
repo = 'Shougo/ddc-source-line'

[[plugins]]
repo = 'Shougo/ddc-source-nextword'

[[plugins]]
repo = 'Shougo/ddc-source-omni'

[[plugins]]
repo = 'Shougo/ddc-source-zsh'

[[plugins]]
repo = 'Shougo/neco-vim'
lazy = true
on_ft = 'vim'

[[plugins]]
repo = 'delphinus/ddc-tmux'

[[plugins]]
repo = 'hrsh7th/vim-vsnip-integ'
depends = 'vim-vsnip'

[[plugins]]
repo = 'matsui54/ddc-buffer'

[[plugins]]
repo = 'shun/ddc-source-vim-lsp'

[[plugins]]
repo = 'vim-skk/skkeleton'
depends = 'denops.vim'
lazy = true
on_map = { ic = '<Plug>' }
hook_add = '''
noremap! <C-j> <Plug>(skkeleton-toggle)
'''
hook_source = '''
Runtime dein/settings/skkeleton.vim
'''

# filters

[[plugins]]
repo = 'Shougo/ddc-filter-converter_remove_overlap'

[[plugins]]
repo = 'matsui54/ddc-converter_truncate'

[[plugins]]
repo = 'tani/ddc-fuzzy'
hook_add = '''
autocmd vimrc ColorScheme * hi def link FuzzyAccent Number
'''

# popup windows

[[plugins]]
repo = 'Shougo/pum.vim'
hook_source = '''
call pum#set_option(#{
      \ highlight_columns: #{
      \   kind: 'Type',
      \ },
      \ max_width: 100,
      \ scrollbar_char: '█',
      \ use_complete: v:true,
      \ })
'''

[[plugins]]
repo = 'matsui54/denops-popup-preview.vim'
depends = 'denops.vim'
hook_add = '''
let g:popup_preview_config = #{
      \ maxWidth: 100,
      \ }
autocmd vimrc TextChangedI * ++once ++nested call popup_preview#enable()
'''

[[plugins]]
repo = 'matsui54/denops-signature_help'
depends = 'denops.vim'
hook_add = '''
let g:signature_help_config = #{
      \ maxWidth: 100,
      \ }
autocmd vimrc TextChangedI * ++once ++nested call signature_help#enable()
'''