MacDownApp / MacDownApp/macdown

Proposal: live PTY terminal pane with Cmd+Return fenced-code execution

Open
#1,378 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rich Text Format
Stars
9.8k
Forks
1.2k
PR merge metrics
No merged PRs in 30d

Description

## What

Terminal pane in the editor window (⌘⌥T), backed by SwiftTerm (MIT). Real PTY, bottom split, resizable/closable.

Cmd+Return with cursor in a ```bash/sh/zsh/shell``` fence runs that block directly in the pane (auto-opens if closed). Other languages/no tag: no-op.

Also: bundled MesloLGS NF font (Apache 2.0) + Paper/Dark ANSI themes, switchable in Preferences.

## Why

I read a lot of markdown docs with embedded shell snippets (setup steps, quick test commands) and kept alt-tabbing to a terminal to run them. Wanted to run the snippet where I'm already reading it, no context switch.

Prototype: `https://github.com/VinhTieuGit/macdown/tree/feature/terminal-pane`

## Tradeoffs

- New dependency: SwiftTerm.
- Bundled font adds binary size (few hundred KB).
- macOS only, no plans beyond that.

## Ask

Would love feedback on whether this fits the project's direction. Happy to open it as one PR, or split into smaller pieces (pane / font+theme / fence-exec) if that's easier to review. No worries either way if it's not a fit — just wanted to check before polishing further.

Contributor guide

Open the contributing guide

Research direction

Review the linked feature/terminal-pane prototype first, then inspect MacDown’s editor and preference entry points to determine whether the pane, fenced-code execution, and font/theme work should be separate changes. Done would mean an agreed scope and maintainer decision before implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
desktop, devtools
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.