# terminal-print > Print iTerm2 terminal output to HP network printer. Strips ANSI escape codes, wraps in monospace code block, generates PDF via pandoc/xelatex, previews, and prints. Invoke on - print terminal, terminal to printer, print session, lpr output, print command output, terminal PDF. - Author: semantic-release-bot - Repository: terrylica/cc-skills - Version: 20260122003203 - Stars: 15 - Forks: 0 - Last Updated: 2026-02-06 - Source: https://github.com/terrylica/cc-skills - Web: https://mule.run/skillshub/@@terrylica/cc-skills~terminal-print:20260122003203 --- --- name: terminal-print description: Print iTerm2 terminal output to HP network printer. Strips ANSI escape codes, wraps in monospace code block, generates PDF via pandoc/xelatex, previews, and prints. Invoke on - print terminal, terminal to printer, print session, lpr output, print command output, terminal PDF. --- # Terminal Print Print terminal output from iTerm2 to your HP network printer with a single command. ## Quick Start 1. **Copy** terminal output in iTerm2 (Cmd+C) 2. **Invoke** this skill 3. **Review** PDF preview, press Enter to print ## How It Works ``` Clipboard → Strip ANSI → Markdown code block → pandoc/xelatex → PDF → Preview → Print ``` - **ANSI codes stripped**: Colors and escape sequences removed for clean B&W output - **Monospace font**: DejaVu Sans Mono for proper character alignment - **Landscape orientation**: Fits ~120 characters per line - **US Letter paper**: Auto-detected from printer settings ## Execution ```bash /usr/bin/env bash << 'PRINT_EOF' SKILL_DIR="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/plugins/marketplaces/cc-skills/plugins/doc-tools}/skills/terminal-print" bash "$SKILL_DIR/assets/print-terminal.sh" PRINT_EOF ``` ## Options Run with arguments by modifying the execution block: ```bash /usr/bin/env bash << 'PRINT_EOF' SKILL_DIR="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/plugins/marketplaces/cc-skills/plugins/doc-tools}/skills/terminal-print" bash "$SKILL_DIR/assets/print-terminal.sh" --no-preview PRINT_EOF ``` | Flag | Description | | -------------- | ---------------------------------------- | | `--file FILE` | Read from file instead of clipboard | | `--no-preview` | Skip PDF preview, print directly | | `--no-print` | Generate PDF only, don't send to printer | | `-h, --help` | Show help message | ## Examples ### Print from clipboard (default) ```bash # Copy terminal output in iTerm2, then: /usr/bin/env bash << 'EOF' bash "${CLAUDE_PLUGIN_ROOT}/skills/terminal-print/assets/print-terminal.sh" EOF ``` ### Print from file ```bash /usr/bin/env bash << 'EOF' bash "${CLAUDE_PLUGIN_ROOT}/skills/terminal-print/assets/print-terminal.sh" --file ~/session.log EOF ``` ### Generate PDF only (no print) ```bash /usr/bin/env bash << 'EOF' bash "${CLAUDE_PLUGIN_ROOT}/skills/terminal-print/assets/print-terminal.sh" --no-print EOF ``` ## Prerequisites All dependencies are already available on macOS with MacTeX: | Tool | Purpose | Status | | --------- | ---------------- | ----------------- | | `pandoc` | Markdown to PDF | Required | | `xelatex` | PDF engine | Required (MacTeX) | | `pbpaste` | Clipboard access | Built-in | | `lpr` | CUPS printing | Built-in | ## Output - **PDF location**: `/tmp/terminal-output-YYYYMMDD_HHMMSS.pdf` - **Markdown source**: `/tmp/terminal-YYYYMMDD_HHMMSS.md` - **Cleanup**: macOS automatically cleans `/tmp` periodically ## Troubleshooting ### "No text in clipboard" Copy terminal output first using Cmd+C in iTerm2. ### "Missing pandoc" or "Missing xelatex" Install MacTeX: `brew install --cask mactex` ### Printer not found Check printer status: `lpstat -p -d` The default printer is `HP_LaserJet_Pro_MFP_3101_3108`. Edit the script to change. ## Related Skills - [pandoc-pdf-generation](../pandoc-pdf-generation/SKILL.md) - General Markdown to PDF conversion - [asciinema-converter](../../../asciinema-tools/skills/asciinema-converter/SKILL.md) - Convert terminal recordings