summary refs log tree commit diff
path: root/.vim/lua/plugins/_completion.lua
blob: 59773a288ecff9fc1039dfccd4892a71cd79dbbc (plain) (blame)
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
local g = vim.g
local u = require('utils')
local inoremap = require('astronauta.keymap').inoremap

g.completion_enable_auto_popup = true
g.completion_enable_auto_signature = true
g.completion_enable_auto_paren = false
g.completion_enable_auto_hover = true
g.completion_trigger_on_delete = true
g.completion_confirm_key = '<cr>'
g.completion_enable_snippet = 'UltiSnips'
-- g.completion_matching_ignore_case = false
g.completion_matching_smart_case = true
g.completion_matching_strategy_list = {'exact', 'substring', 'fuzzy', 'all'}
g.completion_sorting = 'length' -- or: alphabet, none

g.completion_auto_change_source = true
g.completion_chain_complete_list = {
  {complete_items = {'lsp', 'snippet', 'path', 'buffers', 'ts'}},
  -- {mode = '<c-p>'},
  -- {mode = '<c-n>'},
  {mode = 'file'},
  {mode = 'spel'},
}

u.augroup2 {
  completion_user = {{'BufEnter', '*', 'lua require("completion").on_attach()'}}
}

inoremap { '<tab>', function() require('completion').smart_tab() end }
inoremap { '<s-tab>', function() require('completion').smart_s_tab() end }
inoremap { '<c-j>', function() require('completion.source').nextCompletion() end }
inoremap { '<c-k>', function() require('completion.source').prevCompletion() end }

-- inoremap { '<c-n>', function()
--   if vim.fn.pumvisible() == 1 then
--     vim.api.nvim_feedkeys('<c-n>')
--   else
--     require('completion').triggerCompletion()
--   end
-- end }

-- inoremap { '<c-p>', function()
--   if vim.fn.pumvisible() == 1 then
--     vim.api.nvim_feedkeys('<c-p>')
--   else
--     require('completion').triggerCompletion()
--   end
-- end }

-- require('utils').map('i', '<C-n>', 'pumvisible() ? "\\<C-n>" : completion#trigger_completion()', { expr = true })
-- require('utils').map('i', '<C-p>', 'pumvisible() ? "\\<C-p>" : completion#trigger_completion()', { expr = true })