mirror of
https://github.com/windwp/nvim-ts-autotag.git
synced 2024-12-28 21:19:16 -06:00
chore: move text node filtering to utils function
This commit is contained in:
parent
0782035107
commit
7f9f55b285
@ -287,20 +287,8 @@ local function validate_tag_regex(node, start_regex, end_regex)
|
||||
if node == nil then
|
||||
return false
|
||||
end
|
||||
|
||||
local texts = utils.get_node_text(node)
|
||||
local filtered = {}
|
||||
|
||||
-- For some nodes (tsx) 'vim.treesitter.get_node_text' can return empty lines or lines with spaces
|
||||
-- We have to exclude them
|
||||
for i = 1, #texts do
|
||||
local text = texts[i]:gsub("^%s*(.-)%s*$", "%1")
|
||||
if text ~= "" then
|
||||
filtered[#filtered + 1] = text
|
||||
end
|
||||
end
|
||||
|
||||
if string.match(filtered[1], start_regex) and string.match(filtered[#filtered], end_regex) then
|
||||
if string.match(texts[1], start_regex) and string.match(texts[#texts], end_regex) then
|
||||
return true
|
||||
end
|
||||
return false
|
||||
|
@ -63,7 +63,20 @@ end
|
||||
|
||||
M.get_node_text = function(node)
|
||||
local _, txt = pcall(get_node_text, node, vim.api.nvim_get_current_buf())
|
||||
return vim.split(txt, "\n") or {}
|
||||
|
||||
local texts = vim.split(txt, "\n")
|
||||
local filtered = {}
|
||||
|
||||
-- For some nodes (tsx) 'vim.treesitter.get_node_text' can return empty lines or lines with spaces
|
||||
-- We have to exclude them
|
||||
for i = 1, #texts do
|
||||
local text = texts[i]:gsub("^%s*(.-)%s*$", "%1")
|
||||
if text ~= "" then
|
||||
filtered[#filtered + 1] = text
|
||||
end
|
||||
end
|
||||
|
||||
return filtered or {}
|
||||
end
|
||||
|
||||
-- Stolen from nvim `0.10.0` for `0.9.5` users
|
||||
|
Loading…
Reference in New Issue
Block a user