From ffc0a822e4fe8e61eef703b59a8abbe06ca5a06c Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 3 Apr 2022 21:22:20 +0200 Subject: feat(cmp): add fnl config --- fnl/config/cmp.fnl | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 fnl/config/cmp.fnl (limited to 'fnl/config/cmp.fnl') diff --git a/fnl/config/cmp.fnl b/fnl/config/cmp.fnl new file mode 100644 index 0000000..a9163a1 --- /dev/null +++ b/fnl/config/cmp.fnl @@ -0,0 +1,47 @@ +;; Configuration for completion plugin. +(module config.cmp + {autoload {nvim aniseed.nvim + util util}}) + +(local luasnip (let [(ok? luasnip) util.load-plugin :luasnip] + (when ok? + ((require :luasnip/loaders/from_vscode).lazy_load) + luasnip))) + +(local lspkind (let [(ok? lspkind) util.load-plugin :lspkind] + (when ok? + lspkind))) + +(lspkind.init) + +(defn- snip [args] + (luasnip.lsp_expand args.body) + +(let [(ok? cmp) util.load-plugin :cmp] + (when ok? + (cmp.setup { + :snippet { + :expand snip} + :mapping { + "" (cmp.mapping.select_prev_item) + "" (cmp.mapping.select_next_item)} + :sources [ + {:name "nvim_lsp"} + {:name "nvim_lua"} + {:name "luasnip"} + {:name "buffer" :keyword_length 4} + {:name "path" :keyword_length 6}] + :formatting {:format (lspkind.cmp_format { + :with_text true + :menu { + :buffer "[Buf]" + :nvim_lsp "[LSP]" + :nvim_lua "[api]" + :path "[path]" + :luasnip "[Snip]" + }})} + :documentation { + :border [ "╭" "─" "╮" "│" "╯" "─" "╰" "│" ]} + :experimental { + :ghost_text false + :native_menu false}}))) -- cgit v1.2.3-70-g09d2