diff --git a/programs/kakoune.nix b/programs/kakoune.nix index 7883f96..c3062f6 100644 --- a/programs/kakoune.nix +++ b/programs/kakoune.nix @@ -18,12 +18,22 @@ commands = "kakboard-enable"; option = ".*"; } + { + name = "BufCreate"; + commands = "set buffer filetype typst"; + option = ".*\.typ"; + } { # When the filetype=latex option is set in a buffer context (automatically), add a new hook to build the latex file on write name = "BufSetOption"; option = "filetype=latex"; commands = "hook buffer BufWritePost .* %{ texlab-build }"; } + { + name = "BufSetOption"; + option = "filetype=typst"; + commands = "hook buffer BufWritePost .* %{ nop %sh{ typst compile $kak_buffile } }"; + } { # When the filetype=markdown option is set (automatically), set word wrap on name = "WinSetOption"; diff --git a/programs/kakoune/kak-lsp.toml b/programs/kakoune/kak-lsp.toml index cc959b6..61f5a5a 100644 --- a/programs/kakoune/kak-lsp.toml +++ b/programs/kakoune/kak-lsp.toml @@ -411,6 +411,18 @@ forwardSearch.args = [ """, ] +[language_server.tinymist] +filetypes = ["typst"] +command = "tinymist" +roots = [".git", ".hg"] +args = ["lsp"] +settings_section = "_" +[language_server.tinymist.settings._] +# See https://myriad-dreamin.github.io/tinymist/configurations.html +exportPdf = "onDocumentHasTitle" +formatterMode = "typstyle" +previewFeature = "disable" + [language_server.typescript-language-server] filetypes = ["javascript", "typescript"] roots = ["package.json", "tsconfig.json", "jsconfig.json", ".git", ".hg"]