Skip to content

feat(editor): add Vim mode support#447

Draft
murongg wants to merge 47 commits into
mainfrom
feature/vim-mode
Draft

feat(editor): add Vim mode support#447
murongg wants to merge 47 commits into
mainfrom
feature/vim-mode

Conversation

@murongg

@murongg murongg commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add a setting-backed Vim mode that applies to source, visual, split, and side document editors.
  • Use @replit/codemirror-vim for source mode.
  • Add a ProseMirror Vim-lite layer for visual editing with normal/insert modes, counts, core motions, delete/yank operators, paste, undo/redo, and a measured block caret.

Why

  • Gives keyboard-heavy users a Vim-shaped editing path without replacing the Markdown editor surface.
  • Keeps source mode backed by a mature CodeMirror Vim implementation while making visual mode feel closer to Vim than a few isolated shortcuts.

Validation

  • pnpm --filter @markra/editor test -- vim-mode.test.ts passed
  • pnpm --filter @markra/app test -- MarkdownPaper.test.tsx styles.test.ts MarkdownSourceEditor.test.tsx passed
  • pnpm --filter @markra/editor build passed
  • pnpm --filter @markra/editor typecheck:test passed
  • pnpm --filter @markra/app typecheck:test passed
  • pnpm --filter @markra/app build passed
  • pnpm --filter @markra/desktop build passed

Risk

  • Draft PR: visual Vim mode is intentionally Vim-lite and should get hands-on review for editing feel before it is marked ready.

@vercel

vercel Bot commented Jul 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
markra-web Ready Ready Preview, Comment Jul 7, 2026 8:55am

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