vim.treesitter.language
Methods7
function M.get_filetypes(lang: string) -> filetypes string[]
Returns the filetypes for which a parser named {lang} is used.
The list includes {lang} itself plus all filetypes registered via |vim.treesitter.language.register()|.
langstringName of parser
filetypesstring[]
function M.get_lang(filetype: string) -> nil | string
Returns the language name to be used when loading a parser for {filetype}.
If no language has been explicitly registered via |vim.treesitter.language.register()|, default to {filetype}. For composite filetypes like html.glimmer, only the main filetype is returned.
function M.require_language(lang, path, silent, symbol_name) -> ...true | false | nil | boolean
Deprecated
function M.add(lang: string, opts: vim.treesitter.language.add.Opts | nil) -> (True nil | boolean, Error nil | string)
Load parser with name {lang}
Parsers are searched in the parser runtime directory, or the provided {path}. Can be used to check for available parsers before enabling treesitter features, e.g.,
if vim.treesitter.language.add('markdown') then
vim.treesitter.start(bufnr, 'markdown')
end
langstringName of the parser (alphanumerical and
_only)optsvim.treesitter.language.add.Opts | nilOptions:
Truenil | booleanif parser is loaded
Errornil | stringif parser cannot be loaded
function M.register(lang: string, filetype: string | string[]) -> nil
Register a parser named {lang} to be used for {filetype}(s).
Note: this adds or overrides the mapping for {filetype}, any existing mappings from other filetypes to {lang} will be preserved.
langstringName of parser
filetypestring | string[]Filetype(s) to associate with lang
- nil
function M.inspect(lang: string) -> TSLangInfo
Inspects the provided language.
Inspecting provides some useful information on the language like ABI version, parser state count (a measure of parser complexity), node and field names, and whether the language came from a WASM module.
Node names are returned in a table mapping each node name to a boolean indicating whether or not the node is named (i.e., not anonymous). Anonymous nodes are surrounded with double quotes (").
For ABI 15 parsers, also show parser metadata (major, minor, patch version) and a table of supertypes with their respective subtypes.
langstringLanguage
function M._complete() -> string[]
Returns available treesitter languages.