Merge pull request #90 from kyazdani42/fix/parser-names-as-filetypes

refacto/fix: filetype / parser name distinction
This commit is contained in:
Kiyan Yazdani 2020-06-21 17:32:37 +02:00 committed by GitHub
commit 2c81ec3918
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 311 additions and 277 deletions

View file

@ -2,6 +2,7 @@ local api = vim.api
local ts = vim.treesitter
local queries = require'nvim-treesitter.query'
local parsers = require'nvim-treesitter.parsers'
local M = {
highlighters = {}
@ -50,14 +51,14 @@ hlmap["type.builtin"] = "Type"
hlmap["structure"] = "Structure"
hlmap["include"] = "Include"
function M.attach(bufnr, ft)
local buf = bufnr or api.nvim_get_current_buf()
local ft = ft or api.nvim_buf_get_option(buf, 'ft')
function M.attach(bufnr, lang)
local bufnr = bufnr or api.nvim_get_current_buf()
local lang = lang or parsers.ft_to_lang(api.nvim_buf_get_option(bufnr, 'ft'))
local query = queries.get_query(ft, "highlights")
local query = queries.get_query(lang, "highlights")
if not query then return end
M.highlighters[buf] = ts.TSHighlighter.new(query, buf, ft)
M.highlighters[bufnr] = ts.TSHighlighter.new(query, bufnr, lang)
end
function M.detach(bufnr)