asterism 0.1.0

Hyperbolic navigation for tree data
Documentation

⁂ asterism

crates.io documentation MIT licensed pre-commit.ci status

Hyperbolic navigation for tree data

vim-like document section editor

asterism uses ratatui to give a hierarchical tree navigator for markdown documents, and edtui to emulate a vim editor in which to edit section content.

Features

  • Tree-sitter based markdown parsing
  • Hierarchical section navigation with parent/child relationships
  • Visual line wrapping with configurable width
  • Multi-file support with directory tree display
  • Edit sections without modifying heading markup
  • Vim-like keybindings for efficient editing

Installation

Regular cargo install or (recommended) install the pre-built binary with:

cargo install asterism

Usage

Edit markdown files in the current directory:

asterism

Edit specific files:

asterism file1.md file2.md

Specify file extensions to match:

asterism -e md -e markdown

Configuration

Create an asterism.toml file in your project directory:

wrap_width = 100
file_extensions = ["md", "markdown"]

Keybindings

List View

  • /: Navigate sections
  • h: Jump to parent section
  • l: Jump to first child section
  • Enter: Edit section
  • q: Quit (or return to file list in multi-file mode)

Editor View

  • :w: Save
  • :x: Save and exit
  • :q: Quit (warns if unsaved)
  • :q!: Force quit
  • :wn: Save and next undocumented
  • :wp: Save and previous undocumented
  • Standard vim editing commands

Licensing

Asterism is MIT licensed, a permissive open source license.