Skip to content

Migrate from org-mode to markdown-mode#19

Merged
dnouri merged 3 commits intomasterfrom
feature/markdown-mode-migration
Jan 6, 2026
Merged

Migrate from org-mode to markdown-mode#19
dnouri merged 3 commits intomasterfrom
feature/markdown-mode-migration

Conversation

@dnouri
Copy link
Owner

@dnouri dnouri commented Jan 5, 2026

Simplify the rendering pipeline from:

Agent → Markdown → [pandoc] → Org → Display

to:

Agent → Markdown → Display

Key changes:

  • Derive pi-chat-mode from gfm-mode instead of org-mode
  • Replace pandoc conversion with native markdown rendering
  • Replace drawer syntax (:BASH:...:END:) with overlay-based tool blocks
  • Tool blocks use background colors matching CLI (pending/success/error)
  • Align markdown tables after streaming completes
  • Update thinking block regexp for markdown fence syntax

Dependencies:

  • Add: markdown-mode (pure Elisp, from MELPA)
  • Remove: pandoc (external binary)

Net result: -16 lines of code, simpler architecture, no external tools.

@dnouri dnouri force-pushed the feature/markdown-mode-migration branch from 98a78ab to 3ef755b Compare January 5, 2026 21:41
Simplify the rendering pipeline from:
  Agent → Markdown → [pandoc] → Org → Display
to:
  Agent → Markdown → Display

Key changes:
- Derive pi-chat-mode from gfm-mode instead of org-mode
- Replace pandoc conversion with native markdown rendering
- Replace drawer syntax (:BASH:...:END:) with overlay-based tool blocks
- Tool blocks use background colors matching CLI (pending/success/error)
- Align markdown tables after streaming completes
- Update thinking block regexp for markdown fence syntax

Dependencies:
- Add: markdown-mode (pure Elisp, from MELPA)
- Remove: pandoc (external binary)

Net result: -16 lines of code, simpler architecture, no external tools.
@dnouri dnouri force-pushed the feature/markdown-mode-migration branch from 3ef755b to 3b2306c Compare January 5, 2026 21:49
pi-gui-test-streaming-p was only checking for 'streaming' status,
but after pi-send the status is 'sending' (waiting for response).
This caused a race condition where tests would complete before
the LLM response arrived.
@dnouri dnouri force-pushed the feature/markdown-mode-migration branch from 5e6281a to 99fce68 Compare January 5, 2026 23:18
Small LLMs like qwen3:1.7b sometimes skip tool calls unless
explicitly instructed. Changed prompt from 'Read the file' to
'Use the read tool to show the contents of' for reliability.
@dnouri dnouri merged commit afa9a98 into master Jan 6, 2026
5 of 6 checks passed
@dnouri dnouri deleted the feature/markdown-mode-migration branch January 6, 2026 13:12
dnouri added a commit that referenced this pull request Feb 25, 2026
Migrate from org-mode to markdown-mode

Simplify the rendering pipeline from:
  Agent → Markdown → [pandoc] → Org → Display
to:
  Agent → Markdown → Display

Key changes:
- Derive pi-chat-mode from gfm-mode instead of org-mode
- Replace pandoc conversion with native markdown rendering
- Replace drawer syntax (:BASH:...:END:) with overlay-based tool blocks
- Tool blocks use background colors matching CLI (pending/success/error)
- Align markdown tables after streaming completes
- Update thinking block regexp for markdown fence syntax

Dependencies:
- Add: markdown-mode (pure Elisp, from MELPA)
- Remove: pandoc (external binary)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant