Skip to content

Typstry v0.1.2

Pre-release
Pre-release

Choose a tag to compare

@Sovichea Sovichea released this 01 Jul 05:21

Typstry v0.1.2 Release Notes

Welcome to Typstry v0.1.2—a lightweight, local-first Typst editor built with Tauri v2, Bun, and CodeMirror 6.

Typstry follows a Unicode-First Philosophy, ensuring complex scripts such as Khmer, Arabic, and Lao align, and wrap correctly alongside code without cursor-offset issues.


What’s New in v0.1.2

Tab & Workspace Management

  • Temporary (Preview) Tabs: Opening files from the explorer now opens a temporary tab (shown with an italic name). Double-clicking, editing, or jumping to its outline headings will promote it to a permanent tab.
  • Exit Protection for Unsaved Changes: If you have unsaved changes in any tabs, closing the window (via the titlebar, Alt+F4, or menu) will prompt for confirmation before exiting to prevent data loss.
  • Tab Context Menus: Added right-click context menu options to Close and Close Others on editor tabs.
  • Restart Workspace: Added a "Restart Workspace" action to the File menu to reload the compiler context on demand.

Advanced Code Navigation (LSP)

  • Ctrl+Click Jump to Definition: Hold Ctrl (or Cmd on macOS) to underline variables, references, or functions and click to jump directly to their definitions.
  • Fallback to References: If no direct definition is found, Ctrl+Click automatically jumps to the first usage reference.
  • Robust LocationLink Parsing: Standardized the LSP client to handle both Location and LocationLink specifications, preventing crashes when jumping across files.

Outline & Preview Enhancements

  • Recursive Outline Propagation: Outlines from #include or #import documents now recursively propagate to the main document outline, allowing cross-file navigation from the sidebar.
  • Smart Preview Hiding: Hides rather than destroys persistent live-preview iframes when switching to temporary tabs (which use fast-path SVG preview). This fixes layout overlap and split-screen bugs.

Typography & Writable Examples

  • Document Typography Rules: Added toolbar toggles to enable or disable Latin and complex-script typography rules independently.
  • Consent-based Font Recommendations: Recommends installing compatible fonts only after script-detection and user consent.
  • Bundled Writable Examples: Added an "Open Examples" welcome item that installs a writable playground of Unicode-focused documents and templates under the user's Documents directory.

Key Features

Unicode-Aligned Editing and Rendering

  • Unified Font Fallback Engine: Detects Unicode scripts and recommends compatible MiSans or Noto Sans families with explicit user consent.
  • Precise Cursor and Wrap Alignment: Prevents cursor offsets and broken wrapping when Latin and non-Latin scripts appear together.
  • System Font Discovery: Lists installed monospace fonts for code and other installed families for Unicode fallback.
  • Bundled Core Fonts: Includes MiSans Latin for the interface and Fira Mono for code editing.

IDE-Grade Editor Experience

  • LSP-Powered Autocompletion: Context-aware completion powered by Tinymist.
  • Ctrl+Click Navigation: Hold Ctrl (Cmd) to underline and click variables, references, or functions to jump to definition.
  • Smart Bracket Colorizer: Applies rainbow bracket matching to code punctuation while ignoring strings and comments.
  • Escaped Symbol Protection: Prevents automatic closing when symbols are preceded by a backslash, such as \$.
  • Typst Syntax Highlighting: Supports functions, variables, numbers, headings, labels, code expressions, and scientific notation.
  • Interactive Document Outline: Displays collapsible headings and navigates to their editor and preview locations.

Native Workspace and Layout Management

  • Persistent Tab State: Remembers open files, selections, scroll positions, folds, and split ratios.
  • Temporary (Preview) Tabs: peeks files in italics without cluttering the tab bar.
  • Scrollable Tab Bar: Provides VS Code-style navigation when open tabs overflow.
  • Dynamic File Explorer: Uses lazy directory loading and updates when workspace files change externally.
  • Lucide Icon Set: Provides consistent icons throughout the application.
  • Custom Frameless Title Bar: Offers a compact native desktop layout.
  • Exit Confirmation: Safeguards unsaved document changes during exit.
  • Integrated Log Console: Displays diagnostics, preview errors, and toolchain status.

Managed Toolchain and Live Preview

  • Managed Tinymist Toolchain: Downloads and manages stable Tinymist releases without requiring a separate Typst installation.
  • Live Tinymist Preview: Updates documents while typing and supports editor-to-preview synchronization.
  • Imported Document Policy: Imported files update on save by default. Add //@allow-preview as the first line to enable independent live preview.
  • Cached Preview Sessions: Preserves mounted preview sessions when switching between tabs.
  • PDF Export: Uses Tinymist’s embedded Typst compiler.

Keyboard Shortcuts

  • Ctrl + N: New file
  • Ctrl + K, Ctrl + O: Open workspace
  • Ctrl + B: Toggle explorer sidebar
  • Ctrl + ,: Open settings
  • Alt + Z: Toggle word wrap
  • Ctrl + ~: Toggle log console
  • Ctrl + S: Save file
  • Ctrl + E: Export PDF
  • Ctrl + Click / Cmd + Click: Go to definition/reference