Skip to content

Latest commit

 

History

History
35 lines (23 loc) · 1.24 KB

README.md

File metadata and controls

35 lines (23 loc) · 1.24 KB

typst.nvim

WIP. Goals: Tree-sitter highlighting, snippets, and a smooth integration with neovim.

For the past week, I've been thinking what I want for Neovim and typst.

I now believe that typst will big, and I want to fully support everything the best way I can.

So here is what I want:

  • Treesitter support:
    • Conceal!
    • Code blocks
    • Highlighting
    • Folding
    • The issue is Typst is a big language, that I needed a break from this project for a bit.
  • Rendering math typst blocks
    • To get this to work properly, I need to contribute to neovim's anticonceal feature.
    • Plus get image rendering to work as expected
  • Snippets. Basically, port all the snippets I use from latex to typst.
  • External PDF viewers. This is not so hard, but I need to a PR for this to work.

It's going to be a lot of work, but I'll get it done.


Currently working on the tree-sitter parser: https://github.com/SeniorMars/tree-sitter-typst

Language spec(?): https://github.com/typst/typst/blob/main/tools/support/typst.tmLanguage.json

This plugin will take much inspiration from VimTeX and silicon.nvim :)

Note: since the language I'm most familiar with is rust, this project will probably be written in Rust.