aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/dot_config/nvim/lua/plugins/completion.lua
diff options
context:
space:
mode:
Diffstat (limited to 'dot_config/nvim/lua/plugins/completion.lua')
-rw-r--r--dot_config/nvim/lua/plugins/completion.lua86
1 files changed, 86 insertions, 0 deletions
diff --git a/dot_config/nvim/lua/plugins/completion.lua b/dot_config/nvim/lua/plugins/completion.lua
new file mode 100644
index 0000000..df24a5d
--- /dev/null
+++ b/dot_config/nvim/lua/plugins/completion.lua
@@ -0,0 +1,86 @@
+require("blink.compat").setup({})
+
+require("blink.cmp").setup({
+ keymap = {
+ preset = "cmdline",
+ ["<CR>"] = { "accept", "fallback" },
+ },
+ appearance = {
+ use_nvim_cmp_as_default = true,
+ },
+ completion = {
+ menu = {
+ draw = {
+ columns = { { "kind_icon" }, { "label", gap = 1 } },
+ components = {
+ label = {
+ text = function(ctx)
+ return require("colorful-menu").blink_components_text(ctx)
+ end,
+ highlight = function(ctx)
+ return require("colorful-menu").blink_components_highlight(ctx)
+ end,
+ },
+ },
+ },
+ },
+ list = {
+ selection = {
+ preselect = function()
+ return not require("blink.cmp").snippet_active({ direction = 1 })
+ end,
+ },
+ },
+ documentation = { auto_show = true },
+ },
+ signature = {
+ enabled = true,
+ trigger = {
+ enabled = true,
+ show_on_keyword = true,
+ show_on_insert = true,
+ },
+ },
+ sources = {
+ default = { "lazydev", "lsp", "copilot", "snippets", "path", "buffer" },
+ per_filetype = {
+ ["dap-repl"] = { "dap" },
+ },
+ providers = {
+ path = {
+ opts = {
+ get_cwd = vim.fn.getcwd,
+ },
+ },
+ copilot = {
+ name = "copilot",
+ module = "blink-copilot",
+ score_offset = 100,
+ async = true,
+ },
+ lazydev = {
+ name = "LazyDev",
+ module = "lazydev.integrations.blink",
+ score_offset = 100,
+ },
+ dap = { name = "dap", module = "blink.compat.source" },
+ },
+ },
+})
+
+require("blink.pairs").setup({
+ mappings = {
+ disabled_filetypes = {},
+ },
+ highlights = {
+ groups = {
+ "BlinkIndentOrange",
+ "BlinkIndentViolet",
+ "BlinkIndentBlue",
+ "BlinkIndentRed",
+ "BlinkIndentCyan",
+ "BlinkIndentYellow",
+ "BlinkIndentGreen",
+ },
+ },
+})