mirror of
https://github.com/mattn/emmet-vim.git
synced 2025-12-06 10:44:24 +08:00
Compare commits
6 Commits
4c7d28ca7d
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e983971449 | ||
|
|
56199c129a | ||
|
|
6c511a8d7d | ||
|
|
033476412e | ||
|
|
8f1581550d | ||
|
|
c5c5188a0b |
@@ -379,8 +379,12 @@ function! emmet#getFileType(...) abort
|
||||
endif
|
||||
endif
|
||||
|
||||
if get(g:, 'loaded_nvim_treesitter', 0)
|
||||
let type = luaeval('require"emmet_utils".get_node_at_cursor()')
|
||||
else
|
||||
let pos = emmet#util#getcurpos()
|
||||
let type = synIDattr(synID(max([pos[1], 1]), max([pos[2], 1]), 1), 'name')
|
||||
endif
|
||||
|
||||
" ignore htmlTagName as it seems to occur too often
|
||||
if type == 'htmlTagName'
|
||||
@@ -426,7 +430,7 @@ function! emmet#getFileType(...) abort
|
||||
endfor
|
||||
endif
|
||||
|
||||
return len(type) == 0 ? 'html' : type
|
||||
return empty(type) ? 'html' : type
|
||||
endfunction
|
||||
|
||||
function! emmet#getDollarExprs(expand) abort
|
||||
|
||||
25
lua/emmet_utils.lua
Normal file
25
lua/emmet_utils.lua
Normal file
@@ -0,0 +1,25 @@
|
||||
local M = {}
|
||||
|
||||
M.get_node_at_cursor = function()
|
||||
local ts_utils = require("nvim-treesitter.ts_utils")
|
||||
local node = ts_utils.get_node_at_cursor()
|
||||
if not node then
|
||||
return nil
|
||||
end
|
||||
|
||||
while node do
|
||||
local node_type = node:type()
|
||||
|
||||
if node_type == "element" then
|
||||
return "html"
|
||||
elseif node_type == "stylesheet" then
|
||||
return "css"
|
||||
end
|
||||
|
||||
node = node:parent()
|
||||
end
|
||||
|
||||
return ""
|
||||
end
|
||||
|
||||
return M
|
||||
Reference in New Issue
Block a user