summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
authorThePrimeagen <the.primeagen@gmail.com>2026-02-16 14:39:18 -0700
committerGitHub <noreply@github.com>2026-02-16 14:39:18 -0700
commit82e5573f753793e89ab614429e3a390c808b1048 (patch)
tree15697e557f013f64dbf5dea893c3cfbeb108fb8f /lua
parenta5130c1ec63c4b6bbceedbc61906cd9803bfabf8 (diff)
parent7ef8f0cd1685c9f88090348e1cc9c0918682a725 (diff)
downloada4-82e5573f753793e89ab614429e3a390c808b1048.tar.xz
a4-82e5573f753793e89ab614429e3a390c808b1048.zip
Merge pull request #83 from jellydn/feature/blink-cmp
feat: add blink.cmp as completion source option
Diffstat (limited to 'lua')
-rw-r--r--lua/99/extensions/init.lua28
-rw-r--r--lua/99/init.lua2
2 files changed, 28 insertions, 2 deletions
diff --git a/lua/99/extensions/init.lua b/lua/99/extensions/init.lua
index 95629a2..6aae2bb 100644
--- a/lua/99/extensions/init.lua
+++ b/lua/99/extensions/init.lua
@@ -13,7 +13,33 @@ local function get_source(completion)
end
local source = completion.source
if source == "cmp" then
- local cmp = require("99.extensions.cmp")
+ local ok, cmp = pcall(require, "99.extensions.cmp")
+ if not ok then
+ vim.notify(
+ '[99] nvim-cmp is not installed. Install hrsh7th/nvim-cmp or use source = "blink"',
+ vim.log.levels.WARN
+ )
+ return
+ end
+ return cmp
+ end
+ if source == "blink" then
+ local ok, _ = pcall(require, "blink.compat")
+ if not ok then
+ vim.notify(
+ "[99] blink.compat is required for blink source. Install: { 'saghen/blink.compat', version = '2.*' }",
+ vim.log.levels.ERROR
+ )
+ return
+ end
+ local cmp_ok, cmp = pcall(require, "99.extensions.cmp")
+ if not cmp_ok then
+ vim.notify(
+ "[99] 99 completion module failed to load",
+ vim.log.levels.ERROR
+ )
+ return
+ end
return cmp
end
end
diff --git a/lua/99/init.lua b/lua/99/init.lua
index 35b1444..d5d74d1 100644
--- a/lua/99/init.lua
+++ b/lua/99/init.lua
@@ -101,7 +101,7 @@ local function create_99_state()
end
--- @class _99.Completion
---- @field source "cmp" | nil
+--- @field source "cmp" | "blink" | nil
--- @field custom_rules string[]
--- @field files _99.Files.Config?