1. Introduction
  2. Editor Integration
  3. Common Configurations
  4. 1. Editor Frontends
    1. 1.1. VS Cod(e,ium)
    2. 1.2. Neovim
    3. 1.3. Emacs
    4. 1.4. Sublime Text
    5. 1.5. Helix
    6. 1.6. Zed
  5. Features
  6. 2. Command line interface
  7. 3. Code Documentation
  8. 4. Code Completion
  9. 5. Exporting Documents
  10. 6. Document Preview
  11. 7. Testing
  12. 8. Linting
  13. 9. Other Features
  14. Service Overview
  15. Overview of Service
  16. 10. Principles
  17. 11. Commands System
  18. 12. LSP Inputs
  19. 13. Type System
  20. Service Development
  21. 14. Crate Docs
  22. 15. LSP and CLI
  23. 16. Language Queries
  24. 17. Document Preview

Tinymist Docs

Language service (LSP) features:

  • Semantic highlighting

    • The "semantic highlighting" is supplementary to "syntax highlighting".
  • Code actions

    • Also known as "quick fixes" or "refactorings".
  • Formatting (Reformatting)

    • Provide the user with support for formatting whole documents, using typstfmt or typstyle.
  • Document highlight

    • Highlight all break points in a loop context.
    • (Todo) Highlight all exit points in a function context.
    • (Todo) Highlight all captures in a closure context.
    • (Todo) Highlight all occurrences of a symbol in a document.
  • Document links

    • Renders path or link references in the document, such as image("path.png") or bibliography(style: "path.csl").
  • Document symbols

    • Also known as "document outline" or "table of contents" in Typst.
  • Folding ranges

    • You can collapse code/content blocks and headings.
  • Goto definitions

    • Right-click on a symbol and select "Go to Definition".
    • Or ctrl+click on a symbol.
  • References

    • Right-click on a symbol and select "Go to References" or "Find References".
    • Or ctrl+click on a symbol.
  • Hover tips

    • Also known as "hovering tooltip".
    • Render docs according to tidy style.
  • Inlay hints

    • Inlay hints are special markers that appear in the editor and provide you with additional information about your code, like the names of the parameters that a called method expects.
  • Color Provider

    • View all inlay colorful label for color literals in your document.
    • Change the color literal's value by a color picker or its code presentation.
  • Code Lens

    • Should give contextual buttons along with code. For example, a button for exporting your document to various formats at the start of the document.
  • Rename symbols and embedded paths
  • Help with function and method signatures
  • Workspace Symbols
  • Code Action

    • Increasing/Decreasing heading levels.
    • Turn equation into "inline", "block" or "multiple-line block" styles.
  • experimental/onEnter

    • Enter inside triple-slash comments automatically inserts ///
    • Enter in the middle or after a trailing space in // inserts //
    • Enter inside //! doc comments automatically inserts //!
    • Enter inside equation markups automatically inserts indents.

Extra features:

  • Compiles to PDF on save (configurable to as-you-type, or other options). Check Docs: Exporting Documents.
  • Also compiles to SVG, PNG, HTML, Markdown, Text, and other formats by commands, vscode tasks, or code lenses.
  • Provides test, benchmark, coverage collecting on documents and modules. Check Docs: Testing Features.
  • Provides builtin linting. Check Docs: Linting Features.
  • Provides a status bar item to show the current document's compilation status and words count.
  • Editor tools:

    • View a list of templates in template gallery. (tinymist.showTemplateGallery)
    • Click a button in template gallery to initialize a new project with a template. (tinymist.initTemplate and tinymist.initTemplateInPlace)
    • Trace execution in current document (tinymist.profileCurrentFile).