From c30b76d62dd07d3eae5bfd3db3d947929c254f65 Mon Sep 17 00:00:00 2001 From: Youwen Wu Date: Sat, 1 Feb 2025 14:25:16 -0800 Subject: [PATCH] feat: fennelize blink.cmp --- fnl/plugins/blink-cmp.fnl | 62 ++++++++++++++++++++++++++ lua/plugins/blink-cmp.lua | 92 +++++---------------------------------- 2 files changed, 72 insertions(+), 82 deletions(-) create mode 100644 fnl/plugins/blink-cmp.fnl diff --git a/fnl/plugins/blink-cmp.fnl b/fnl/plugins/blink-cmp.fnl new file mode 100644 index 0000000..b946154 --- /dev/null +++ b/fnl/plugins/blink-cmp.fnl @@ -0,0 +1,62 @@ +{1 :blink.cmp + :after (fn [] + ((. (require :lz.n) :trigger_load) :blink-ripgrep) + ((. (require :lz.n) :trigger_load) :blink.compat) + ((. (require :blink.cmp) :setup) {:appearance {:nerd_font_variant :normal + :use_nvim_cmp_as_default true} + :completion {:documentation {:auto_show true + :auto_show_delay_ms 500 + :treesitter_highlighting true + :update_delay_ms 50 + :window {:border :rounded}} + :menu {:border :rounded + :draw {:columns [[:kind_icon + :kind] + {1 :label + 2 :label_description + :gap 2}] + :treesitter [:lsp]}}} + :fuzzy {:prebuilt_binaries {:download false}} + :keymap {: [(fn [] + ((. (require :blink-cmp) + :show) {:providers [:ripgrep]}))] + : [:snippet_backward + :fallback] + : [:snippet_forward + :fallback] + : {} + : {} + :preset :default} + :signature {:enabled true + :window {:border :rounded}} + :sources {:default [:lsp + :path + :snippets + :buffer] + :per_filetype {:lua [:lazydev + :lsp + :path + :snippets + :buffer] + :markdown [:lsp + :snippets + :obsidian + :obsidian_new + :obsidian_tags + :path + :buffer + :markdown]} + :providers {:lazydev {:module :lazydev.integrations.blink + :name :LazyDev + :score_offset 100} + :markdown {:module :render-markdown.integ.blink + :name :RenderMarkdown} + :obsidian {:module :blink.compat.source + :name :obsidian} + :obsidian_new {:module :blink.compat.source + :name :obsidian_new} + :obsidian_tags {:module :blink.compat.source + :name :obsidian_tags} + :ripgrep {:module :blink-ripgrep + :name :Ripgrep}}}})) + :event :BufEnter} diff --git a/lua/plugins/blink-cmp.lua b/lua/plugins/blink-cmp.lua index b6f232c..fa1017e 100644 --- a/lua/plugins/blink-cmp.lua +++ b/lua/plugins/blink-cmp.lua @@ -1,82 +1,10 @@ -return { - "blink.cmp", - event = "BufEnter", - after = function() - require("lz.n").trigger_load("blink-ripgrep") - require("lz.n").trigger_load("blink.compat") - - require("blink.cmp").setup({ - keymap = { - preset = "default", - [""] = {}, - [""] = {}, - [""] = { - function() - require("blink-cmp").show({ providers = { "ripgrep" } }) - end, - }, - [""] = { "snippet_forward", "fallback" }, - [""] = { "snippet_backward", "fallback" }, - }, - appearance = { - use_nvim_cmp_as_default = true, - nerd_font_variant = "normal", - }, - sources = { - default = { "lsp", "path", "snippets", "buffer" }, - per_filetype = { - lua = { "lazydev", "lsp", "path", "snippets", "buffer" }, - markdown = { "lsp", "snippets", "obsidian", "obsidian_new", "obsidian_tags", "path", "buffer", "markdown" }, - }, - providers = { - ripgrep = { - module = "blink-ripgrep", - name = "Ripgrep", - }, - lazydev = { - name = "LazyDev", - module = "lazydev.integrations.blink", - score_offset = 100, - }, - markdown = { name = "RenderMarkdown", module = "render-markdown.integ.blink" }, - obsidian = { - name = "obsidian", - module = "blink.compat.source", - }, - obsidian_new = { - name = "obsidian_new", - module = "blink.compat.source", - }, - obsidian_tags = { - name = "obsidian_tags", - module = "blink.compat.source", - }, - }, - }, - completion = { - menu = { - border = "rounded", - draw = { - columns = { - { "kind_icon", "kind" }, - { "label", "label_description", gap = 2 }, - }, - treesitter = { "lsp" }, - }, - }, - documentation = { - auto_show = true, - auto_show_delay_ms = 500, - update_delay_ms = 50, - treesitter_highlighting = true, - window = { border = "rounded" }, - }, - }, - signature = { - window = { border = "rounded" }, - enabled = true, - }, - fuzzy = { prebuilt_binaries = { download = false } }, - }) - end, -} +-- [nfnl] Compiled from ./fnl/plugins/blink-cmp.fnl by https://github.com/Olical/nfnl, do not edit. +local function _1_() + require("lz.n").trigger_load("blink-ripgrep") + require("lz.n").trigger_load("blink.compat") + local function _2_() + return require("blink-cmp").show({providers = {"ripgrep"}}) + end + return require("blink.cmp").setup({appearance = {nerd_font_variant = "normal", use_nvim_cmp_as_default = true}, completion = {documentation = {auto_show = true, auto_show_delay_ms = 500, treesitter_highlighting = true, update_delay_ms = 50, window = {border = "rounded"}}, menu = {border = "rounded", draw = {columns = {{"kind_icon", "kind"}, {"label", "label_description", gap = 2}}, treesitter = {"lsp"}}}}, fuzzy = {prebuilt_binaries = {download = false}}, keymap = {[""] = {_2_}, [""] = {"snippet_backward", "fallback"}, [""] = {"snippet_forward", "fallback"}, [""] = {}, [""] = {}, preset = "default"}, signature = {enabled = true, window = {border = "rounded"}}, sources = {default = {"lsp", "path", "snippets", "buffer"}, per_filetype = {lua = {"lazydev", "lsp", "path", "snippets", "buffer"}, markdown = {"lsp", "snippets", "obsidian", "obsidian_new", "obsidian_tags", "path", "buffer", "markdown"}}, providers = {lazydev = {module = "lazydev.integrations.blink", name = "LazyDev", score_offset = 100}, markdown = {module = "render-markdown.integ.blink", name = "RenderMarkdown"}, obsidian = {module = "blink.compat.source", name = "obsidian"}, obsidian_new = {module = "blink.compat.source", name = "obsidian_new"}, obsidian_tags = {module = "blink.compat.source", name = "obsidian_tags"}, ripgrep = {module = "blink-ripgrep", name = "Ripgrep"}}}}) +end +return {"blink.cmp", after = _1_, event = "BufEnter"}