Skip to content

v0.12.18-rc2

Pre-release
Pre-release
Compare
Choose a tag to compare
@Myriad-Dreamin Myriad-Dreamin released this 09 Jan 13:24

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:

Editor

  • Building tinymist targeting web in #1102
  • Bootstrapping lsp-free features in web in #1105

Code Analysis

  • Matching param names for completion in #1113

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

  • 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

Misc

Full Changelog: v0.12.16...v0.12.18-rc2

Download Binary

Install tinymist 0.12.18-rc2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/Myriad-Dreamin/tinymist/releases/download/v0.12.18-rc2/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-rc2/tinymist-installer.ps1 | iex"

Download tinymist 0.12.18-rc2

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-rc2

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)