Skip to content
This repository was archived by the owner on Oct 13, 2021. It is now read-only.

Commit 84ef386

Browse files
authored
Merge pull request #190 from Xuyuanp/master
Made completion_syntax_at_point option do work
2 parents e05de28 + c3ba481 commit 84ef386

1 file changed

Lines changed: 8 additions & 9 deletions

File tree

lua/completion/chain_completion.lua

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -40,20 +40,19 @@ end
4040

4141
local function getScopedChain(ft_subtree)
4242

43-
local function syntaxGroupAtPoint()
43+
local syntax_getter = function()
4444
local pos = api.nvim_win_get_cursor(0)
4545
return vim.fn.synIDattr(vim.fn.synID(pos[1], pos[2]-1, 1), "name")
4646
end
4747

48-
local VAR_NAME = "completion_syntax_at_point"
49-
50-
local syntax_getter
51-
5248
-- If this option is effectively a function, use it to determine syntax group at point
53-
if vim.fn.exists("g:" .. VAR_NAME) > 0 and vim.is_callable(api.nvim_get_var(VAR_NAME)) > 0 then
54-
syntax_getter = api.nvim_get_var(VAR_NAME)
55-
else
56-
syntax_getter = syntaxGroupAtPoint
49+
local syntax_at_point = opt.get_option("syntax_at_point")
50+
if syntax_at_point then
51+
if vim.is_callable(syntax_at_point) then
52+
syntax_getter = syntax_at_point
53+
elseif type(syntax_at_point) == "string" and vim.fn.exists("*" .. syntax_at_point) then
54+
syntax_getter = vim.fn[syntax_at_point]
55+
end
5756
end
5857

5958
local atPoint = syntax_getter():lower()

0 commit comments

Comments
 (0)