mirror of
https://github.com/LazyVim/LazyVim.git
synced 2025-08-02 09:05:00 +02:00
80 lines
1.6 KiB
Lua
80 lines
1.6 KiB
Lua
return {
|
|
recommended = function()
|
|
return LazyVim.extras.wants({
|
|
ft = { "typst" },
|
|
})
|
|
end,
|
|
|
|
{
|
|
"nvim-treesitter/nvim-treesitter",
|
|
opts = {
|
|
ensure_installed = { "typst" },
|
|
},
|
|
},
|
|
|
|
{
|
|
"neovim/nvim-lspconfig",
|
|
opts = {
|
|
servers = {
|
|
tinymist = {
|
|
keys = {
|
|
{
|
|
"<leader>cP",
|
|
function()
|
|
local buf_name = vim.api.nvim_buf_get_name(0)
|
|
local file_name = vim.fn.fnamemodify(buf_name, ":t")
|
|
LazyVim.lsp.execute({
|
|
command = "tinymist.pinMain",
|
|
arguments = { buf_name },
|
|
})
|
|
LazyVim.info("Tinymist: Pinned " .. file_name)
|
|
end,
|
|
desc = "Pin main file",
|
|
},
|
|
},
|
|
single_file_support = true, -- Fixes LSP attachment in non-Git directories
|
|
settings = {
|
|
formatterMode = "typstyle",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
|
|
{
|
|
"stevearc/conform.nvim",
|
|
optional = true,
|
|
opts = {
|
|
formatters_by_ft = {
|
|
typst = { "typstyle", lsp_format = "prefer" },
|
|
},
|
|
},
|
|
},
|
|
|
|
{
|
|
"chomosuke/typst-preview.nvim",
|
|
cmd = { "TypstPreview", "TypstPreviewToggle", "TypstPreviewUpdate" },
|
|
keys = {
|
|
{
|
|
"<leader>cp",
|
|
ft = "typst",
|
|
"<cmd>TypstPreviewToggle<cr>",
|
|
desc = "Toggle Typst Preview",
|
|
},
|
|
},
|
|
opts = {
|
|
dependencies_bin = {
|
|
tinymist = "tinymist",
|
|
},
|
|
},
|
|
},
|
|
|
|
{
|
|
"folke/ts-comments.nvim",
|
|
opts = {
|
|
lang = {
|
|
typst = { "// %s", "/* %s */" },
|
|
},
|
|
},
|
|
},
|
|
}
|