想在 Markdown 预览里改两个字,最后补了一套块编辑

想在 Markdown 预览里改两个字,最后补了一套块编辑

读 Markdown 的时候,看见一个错字,切回源码找那一段,改完再回预览。这个过程不复杂,但一篇文档里来回几次,就会想直接在眼前改。

这轮先在 alpha.16 补阅读,再在 alpha.17 加就地编辑和常用格式操作。文件仍然是一份普通 Markdown。

先让源码和预览能一起读

"在侧边打开预览"会复用已经存在的预览,源码继续保留键盘焦点。滚动按源码块关联,不用为了让预览跟过去,顺便挪动源码光标和选区。

预览里补了 GitHub 提示块、标题锚点、按内容宽度排的表格和阅读时间估算,文字可以选择,代码块也有复制按钮。复制代码时保留原来的空白,不能拿屏幕上裁切或排版后的样子去拼。

会话恢复还会记住阅读位置和预览模式。这一轮做完,源码与预览才比较像同一份文档的两种看法。

我没有再存一份富文本

要在预览里编辑,可以另建块树,最后导出 Markdown;也可以在源码窗格里隐藏标记、改变字号。

前一种会带来格式往返问题:原来用什么列表符号、留了几个空行、混了哪些 HTML,导出时可能全变。后一种则会碰到砚现有的等宽格子布局和点击坐标。

这次选了小一点的切口:双击一个块,把这一块临时换成它的 Markdown 源码编辑框。改完回到排版,整份文档仍以原来的文本缓冲区为准。

段落、标题、列表项、引用、代码块、表格行都能这样改。单击和拖动继续选字,链接和复制按钮照常响应,不能让一个编辑入口接管所有点击。

每次输入,都写回同一个文档

编辑框里的变化直接写回文档,所以源码列、未保存标记、撤销、自动保存和 Git 都能看到,不需要再加一个"同步回源码"按钮。

写入时带着文档版本和源行范围。如果别的地方已经修改了文档,这次写入就拒绝并退出编辑,避免照着旧范围替换新内容。CRLF 也跟着原文保留。

按 Esc、平台修饰键加 Enter,或者点到别处,就回到渲染状态。这里退出的是编辑框,已经写进文档的字不会因此消失。

再补一点写文档的手感

有了编辑框以后,粗体、斜体、行内代码、删除线和链接就能顺势接上。再次按格式键会取消已有标记;没有选中文字时,插入成对标记,把光标留在中间。

列表里按 Enter 接下一项,空项再按 Enter 结束列表;Tab 和 Shift+Tab 调整嵌套。输入法还在组字时,这些处理先放行,别抢中文输入的按键。

行首输入 / 可以插入标题、列表、待办、引用、代码块、表格或分隔线,也能用英文或拼音筛选。粘贴图片会写到文档旁的 assets 目录,再插入链接;剪贴板同时有文字时,先按文字处理。

目前改的是一个块

它还不是任意拖动块、点单元格编辑表格的完整文档编辑器。块间插入、跨块方向键、任务框点击切换等仍在后续清单里。

对现在的用途,这一步已经能少掉不少切换:读到哪段需要改,就在那里改几句。打开终端版或交给其他工具时,拿到的还是原来的 Markdown 文件。

下载试用

阅读改进在 alpha.16,块编辑与格式键在 alpha.17;下面使用 alpha.17。

下载地址核对于 2026-10-19。安装包适用于 macOS 13+、Apple Silicon,目前尚未 Apple 公证,首次打开说明见发布页。


仓库留档

相关推荐
敲代码的玉米C2 小时前
不想每次都手动换 DMG,我给砚接了自动更新
go
敲代码的玉米C2 小时前
看完代码先留几条批注,再一起交给终端里的工具
go
云浪16 小时前
Go 并发实战:从零实现一个高并发安全的任务调度器
javascript·后端·go
敲代码的玉米C16 小时前
并排 diff、提交标签:砚的 Git 阅读体验又补了一轮
go
敲代码的玉米C16 小时前
给编辑器补拖拽:标签挪过去,状态也得跟过去
go
敲代码的玉米C16 小时前
写到这里,砚还要继续照着 IDE 加功能吗
go
敲代码的玉米C17 小时前
把终端拖进编辑区,别把正在跑的 shell 弄丢了
go
敲代码的玉米C17 小时前
给砚加一个「所有改动」页,提交前少来回点几次
go
我不会起名字3222 天前
微服务链路超时怎么设:逐层收敛的 4 条规则与 1 个反例
微服务·go·超时·熔断