diff --git a/dot-config/vim/lsp/servers.vim b/dot-config/vim/lsp/servers.vim index a2fe2bd..c60e755 100644 --- a/dot-config/vim/lsp/servers.vim +++ b/dot-config/vim/lsp/servers.vim @@ -89,6 +89,16 @@ const lspServers = [ install: 'brew install typescript-language-server', }, + { + name: 'typst-lsp', + filetype: 'typst', + path: exepath('typst-lsp'), + initializationOptions: { + exportPdf: 'onType', + }, + install: 'cargo install typst-lsp', + }, + { name: 'vim-language-server', filetype: 'vim', diff --git a/dot-config/vim/plugin/vimtex.vim b/dot-config/vim/plugin/vimtex.vim new file mode 100644 index 0000000..fe346e6 --- /dev/null +++ b/dot-config/vim/plugin/vimtex.vim @@ -0,0 +1,2 @@ +vim9script +g:vimtex_view_method = 'skim' diff --git a/dot-config/vim/plugins.vim b/dot-config/vim/plugins.vim index 95c5751..a72d360 100644 --- a/dot-config/vim/plugins.vim +++ b/dot-config/vim/plugins.vim @@ -87,6 +87,9 @@ if !isdirectory($VIMRUNTIME .. '/pack/dist/opt/editorconfig') minpac#add('editorconfig/editorconfig-vim', {name: 'editorconfig', type: 'opt'}) endif +# Access Zoxide, a frecency-powered cd command, from inside Vim. +minpac#add('nanotee/zoxide.vim') + # skim is a standalone fuzzy finder, kinda like fzf or fzy or selecta, but # written in Rust. These two plugins teach Vim to integrate with it, so you # can use skim's high performance fuzzy finding to locate stuff (files, @@ -165,20 +168,25 @@ minpac#add('NoahTheDuke/vim-just') # kovidgoyal/kitty is my daily driver terminal emulator. Yay! minpac#add('fladson/vim-kitty') +# Really good support for LaTeX, including enhanced syntax highlighting but +# also auto-compilation and SyncTeX search support in both directions. +minpac#add('lervag/vimtex') + # Syntax highlighting for .neon files, like phpstan.neon. Nette is actually a # full-blown PHP web framework and this plugin provides other Nette tooling # too, but I don't use Nette so it's really just providing syntax for the # PHPStan config file in my case. minpac#add('fpob/nette.vim') +# Syntax highlighting and other minor niceties for Typst source. Nothing too +# exciting: we also rely on communicating with typst-lsp for full language +# support functionality. +minpac#add('kaarmu/typst.vim') + # Really good semantic folding for YAML and YAML-like files. If you're # curious: https://pedrohdz.com/posts/programming/yaml_vim_folds/ minpac#add('pedrohdz/vim-yaml-folds') -# Extend Vim's standard Zsh syntax highlighting with special support for -# Zinit's ice syntax, since that's what I use in dot/zsh. -minpac#add('zdharma-continuum/zinit-vim-syntax') - # An interactive mode for Taskwarrior, built as a Vim plugin. It's obviously # only useful if Taskwarrior is installed. if executable('task')