diff options
| author | Stephan Seitz <stephan.seitz@fau.de> | 2020-07-10 21:47:50 +0200 |
|---|---|---|
| committer | Thomas Vigouroux <39092278+vigoux@users.noreply.github.com> | 2020-07-16 09:34:31 +0200 |
| commit | a4e2692c7b9fb562eca39ce0bb10ec2544bc7ccb (patch) | |
| tree | b370b426c299b0b9358f9722d0a9af3355237b7c /lua/nvim-treesitter/parsers.lua | |
| parent | 1849f30bb5d7f78ad0c3b129456917f170e4acf4 (diff) | |
Refactor: Add parsers.get_buf_lang
Diffstat (limited to 'lua/nvim-treesitter/parsers.lua')
| -rw-r--r-- | lua/nvim-treesitter/parsers.lua | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua index 6405af9c..dd4f14c7 100644 --- a/lua/nvim-treesitter/parsers.lua +++ b/lua/nvim-treesitter/parsers.lua @@ -257,14 +257,14 @@ end function M.has_parser(lang) local buf = api.nvim_get_current_buf() - local lang = lang or M.ft_to_lang(api.nvim_buf_get_option(buf, 'ft')) + local lang = M.get_buf_lang(buf) or lang if not lang or #lang == 0 then return false end return #api.nvim_get_runtime_file('parser/' .. lang .. '.*', false) > 0 end function M.get_parser(bufnr, lang) local buf = bufnr or api.nvim_get_current_buf() - local lang = lang or M.ft_to_lang(api.nvim_buf_get_option(buf, 'ft')) + local lang = lang or M.get_buf_lang(buf) if M.has_parser(lang) then if not M[buf] then @@ -277,4 +277,12 @@ function M.get_parser(bufnr, lang) end end +-- get language of given buffer +-- @param optional buffer number or current buffer +-- @returns language string of buffer +function M.get_buf_lang(bufnr) + bufnr = bufnr or api.nvim_get_current_buf() + return M.ft_to_lang(api.nvim_buf_get_option(bufnr, "ft")) +end + return M |
