mirror of
https://github.com/LazyVim/LazyVim.git
synced 2025-12-25 12:14:19 +01:00
## Description Currently we don't ensure the latex treesitter is installed for latex. Although it is not used for highlighting, it is used by default plugins like flash, so this adds it to the list ## Related Issue(s) https://github.com/LazyVim/LazyVim/pull/1156 Co-authored-by: Frankie Robertson <frankie@robertson.name>
52 lines
1.4 KiB
Lua
52 lines
1.4 KiB
Lua
return {
|
|
recommended = function()
|
|
return LazyVim.extras.wants({
|
|
ft = { "tex", "plaintex", "bib" },
|
|
root = { ".latexmkrc", ".texlabroot", "texlabroot", "Tectonic.toml" },
|
|
})
|
|
end,
|
|
|
|
-- Add BibTeX/LaTeX to treesitter
|
|
{
|
|
"nvim-treesitter/nvim-treesitter",
|
|
opts = function(_, opts)
|
|
opts.highlight = opts.highlight or {}
|
|
if type(opts.ensure_installed) == "table" then
|
|
vim.list_extend(opts.ensure_installed, { "bibtex", "latex" })
|
|
end
|
|
if type(opts.highlight.disable) == "table" then
|
|
vim.list_extend(opts.highlight.disable, { "latex" })
|
|
else
|
|
opts.highlight.disable = { "latex" }
|
|
end
|
|
end,
|
|
},
|
|
|
|
{
|
|
"lervag/vimtex",
|
|
lazy = false, -- lazy-loading will disable inverse search
|
|
config = function()
|
|
vim.g.vimtex_mappings_disable = { ["n"] = { "K" } } -- disable `K` as it conflicts with LSP hover
|
|
vim.g.vimtex_quickfix_method = vim.fn.executable("pplatex") == 1 and "pplatex" or "latexlog"
|
|
end,
|
|
keys = {
|
|
{ "<localLeader>l", "", desc = "+vimtex", ft = "tex" },
|
|
},
|
|
},
|
|
|
|
-- Correctly setup lspconfig for LaTeX 🚀
|
|
{
|
|
"neovim/nvim-lspconfig",
|
|
optional = true,
|
|
opts = {
|
|
servers = {
|
|
texlab = {
|
|
keys = {
|
|
{ "<Leader>K", "<plug>(vimtex-doc-package)", desc = "Vimtex Docs", silent = true },
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
}
|