We have added maintainers to GitHub since 2025-01-09:
- @SylvanFranklin has become a maintainer of the "Editor integration" and "Document Previewing" feature in #1091
After a super long time of development, we have finished an usable typst grammar for VS Code and GitHub. The grammar can now successfully parse all code, markup and math syntax of source files from typst/packages (1200k LoCs) and typst/typst (17k LoCs) without failure. A failure means the grammar produces any visible parse error but the official parser doesn't complain. However, it can still only parse a subset of typst syntax correctly:
- For example, all braces in
#if {}=={}{}{}(without spaces) are identified as code braces. - For example, It hasn't identified the ";" syntax in math calls.
But I believe it will not affect us much:).
Most importantly, ideally GitHub will use the grammar to highlight typst code on GitHub in next season. It would be appreciated if people could check and test the grammar before GitHub's integration. the grammar and two ways to test it:
-
The grammar: https://github.com/michidk/typst-grammar/blob/main/grammars/typst.tmLanguage.json
-
Run Grammar's snapshot tests and GitHub's integration tests.
-
Install tinymist and check syntax highlight of typst/packages in VS Code Web.
2025-01-08.14-48-20.mp4
Editor
Code Analysis
- (Fix) Corrected
InterpretModeof arguments of math calls fromCodetoMathin #1137 - Matching names of parameters for completion in #1113
- Matching a text node as identifier in math mode if it can be a valid identifier in #1138
Completion
- Completing parameters by capture information in #1114
- (Fix) Corrected order to insert definitions in scope in #1116
Hover
- Rearranged hover providers in #1108
- Definitions, (sampled) possible values, periscope, docs, actions are provided in order at the same time.
Syntax Highlighting
- (Fix) terminate heading on newline in #1136
- Adding experimental math syntax highlighting in #1096, #1106, #1112, #1117, #1123, and #1124
- Enabled experimental math syntax highlighting in #1107
- Parsing name identifier of parameters or arguments in #1118
- Changing names of string, constant, and keyword scopes in #1119
- Matching special identifiers in calls in #1125
- Added scripts to test syntax highlight in #1121
- Added more termination rules about FIRST tokens in #1122 and #1129
- Parsing arrow functions like binary expr in #1128
- Conditionally satisfying PCRE regex features in #1126 and #1130
- Documenting textmate grammar in #1131
- Handling minus and asterisk marker confidently in #1134
Misc
- Changed name in package.json files by @Freed-Wu and @Myriad-Dreamin in #1097 and #1102
- Ignoring vscode workspace configuration in #1120
Full Changelog: v0.12.16...v0.12.18
Download Binary
Install tinymist 0.12.18
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/Myriad-Dreamin/tinymist/releases/download/v0.12.18/tinymist-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy ByPass -c "irm https://github.com/Myriad-Dreamin/tinymist/releases/download/v0.12.18/tinymist-installer.ps1 | iex"Download tinymist 0.12.18
File
Platform
Checksum
tinymist-aarch64-apple-darwin.tar.gz
Apple Silicon macOS
checksum
tinymist-x86_64-apple-darwin.tar.gz
Intel macOS
checksum
tinymist-aarch64-pc-windows-msvc.zip
ARM64 Windows
checksum
tinymist-x86_64-pc-windows-msvc.zip
x64 Windows
checksum
tinymist-aarch64-unknown-linux-gnu.tar.gz
ARM64 Linux
checksum
tinymist-loongarch64-unknown-linux-gnu.tar.gz
LOONGARCH64 Linux
checksum
tinymist-x86_64-unknown-linux-gnu.tar.gz
x64 Linux
checksum
tinymist-armv7-unknown-linux-gnueabihf.tar.gz
ARMv7 Linux
checksum
tinymist-aarch64-unknown-linux-musl.tar.gz
ARM64 MUSL Linux
checksum
tinymist-loongarch64-unknown-linux-musl.tar.gz
LOONGARCH64 MUSL Linux
checksum
tinymist-riscv64gc-unknown-linux-musl.tar.gz
RISCV MUSL Linux
checksum
tinymist-x86_64-unknown-linux-musl.tar.gz
x64 MUSL Linux
checksum
tinymist-arm-unknown-linux-musleabihf.tar.gz
ARMv6 MUSL Linux (Hardfloat)
checksum
tinymist-armv7-unknown-linux-musleabihf.tar.gz
ARMv7 MUSL Linux
checksum
Download VS Code Extension
Download tinymist VS Code Extension 0.12.18
File
Platform
Assets
tinymist-win32-x64.vsix
x64 Windows
Binary, Debug Symbols
tinymist-win32-arm64.vsix
ARM64 Windows
Binary, Debug Symbols
tinymist-linux-x64.vsix
x64 Linux
Binary, Debug Symbols
tinymist-linux-arm64.vsix
ARM64 Linux
Binary, Debug Symbols
tinymist-linux-armhf.vsix
ARMv7 Linux
Binary, Debug Symbols
tinymist-darwin-x64.vsix
Intel macOS
Binary, Debug Symbols
tinymist-darwin-arm64.vsix
Apple Silicon macOS
Binary, Debug Symbols
tinymist-alpine-x64.vsix
x64 Alpine Linux
Binary, Debug Symbols
tinymist-alpine-arm64.vsix
ARM64 Alpine Linux
Binary, Debug Symbols
tinymist-web.vsix
Browser (Web)
tinymist-universal.vsix
Other Platforms (Universal)