LazyVim.LazyVim/lua/lazyvim/plugins/extras/lang/typst.lua

81 lines
1.6 KiB
Lua
Raw Normal View History

2024-07-15 10:43:37 +07:00
return {
recommended = function()
return LazyVim.extras.wants({
ft = { "typst" },
})
end,
{
"nvim-treesitter/nvim-treesitter",
opts = {
ensure_installed = { "typst" },
},
},
{
"neovim/nvim-lspconfig",
opts = {
servers = {
2024-10-29 08:31:02 +07:00
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
2024-10-29 08:31:02 +07:00
settings = {
formatterMode = "typstyle",
},
},
2024-07-15 10:43:37 +07:00
},
},
},
{
"stevearc/conform.nvim",
optional = true,
opts = {
formatters_by_ft = {
typst = { "typstyle", lsp_format = "prefer" },
},
},
},
2024-07-15 10:43:37 +07:00
{
"chomosuke/typst-preview.nvim",
2024-10-29 08:31:02 +07:00
cmd = { "TypstPreview", "TypstPreviewToggle", "TypstPreviewUpdate" },
keys = {
{
"<leader>cp",
ft = "typst",
"<cmd>TypstPreviewToggle<cr>",
desc = "Toggle Typst Preview",
},
},
2024-07-15 10:43:37 +07:00
opts = {
dependencies_bin = {
2024-10-29 08:31:02 +07:00
tinymist = "tinymist",
2024-07-15 10:43:37 +07:00
},
},
},
2024-12-09 08:42:32 +07:00
{
"folke/ts-comments.nvim",
opts = {
lang = {
typst = { "// %s", "/* %s */" },
},
},
2024-12-09 08:42:32 +07:00
},
2024-07-15 10:43:37 +07:00
}