Skip to content

tinymachines/shelldown

Repository files navigation

Shelldown

A terminal-friendly Markdown renderer with syntax highlighting and interactive viewing.

Installation

pip install shelldown

Usage

# Render a markdown file with color formatting
shelldown README.md

# Use interactive ncurses mode for navigation
shelldown README.md --interactive

# Use specific theme
shelldown README.md --theme dark

# Pipe input
cat README.md | shelldown

# Output raw text (useful in pipes)
shelldown README.md --raw | grep "Installation"

Features

  • Renders Markdown with terminal-friendly formatting
  • Supports syntax highlighting for code blocks
  • Interactive ncurses interface for viewing and navigating documents
  • Multiple color themes
  • Handles standard Markdown elements
  • Works with Unix pipes and standard input/output

Command Line Options

--interactive, -i   Use interactive ncurses interface
--theme THEME       Select color theme (default, dark, monochrome)
--width WIDTH       Set output width (auto by default)
--raw               Output raw markdown without formatting

Interactive Controls

When using the interactive mode (--interactive or -i):

  • ↑/↓: Scroll up/down
  • Page Up/Page Down: Scroll by page
  • q: Quit the viewer

Showcase and Examples

Shelldown comes with several showcase scripts to demonstrate its features:

# Run the showcase menu
./scripts/showcase.sh

# Run the full demo
./scripts/demo.sh

# Run the interactive ncurses showcase
./scripts/ncurses_showcase.py

# Run the pipeline examples
./scripts/pipe_examples.sh

These scripts demonstrate the various features of Shelldown and provide examples of how to use it in different scenarios.

Development

# Clone the repository
git clone https://github.com/yourusername/shelldown.git
cd shelldown

# Create a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -e .
pip install -r requirements.txt

# Run tests
pytest

About

Quick and easy Markdown -> ncurses output

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors