StackEdit 是一款浏览器端运行的 Markdown 编辑器,主打实时预览、多平台同步和离线写作。v6.0.6 版本虽然版本号跳幅不大,但修掉了两个让人头疼的日常 BUG,同时把国内 Git 平台 AtomGit 和 GitCode 纳入了同步工作区——对在国内环境下写作的技术人来说,这个改动比功能列表看起来更实用。
同步预览:切出去再切回来,终于不卡了
StackEdit 最核心的交互是左侧编辑、右侧实时预览,两者滚动位置联动。之前存在一个 BUG:当你把预览模式从「同步滚动」切换到「非同步」,写了一会儿再切回同步模式时,左右两侧的滚动联动直接失效——编辑区滚到底,预览区还停在开头,必须手动刷新页面才能恢复。
这个 BUG 的根因是模式切换时内部 scroll-sync 监听器被移除后没有正确重新绑定。6.0.6 修复了状态恢复逻辑,切回同步模式时监听器会重新挂载,滚动位置也会基于当前编辑区光标重新对齐。
实际体验:写长文档时频繁在同步/非同步之间切换(比如非同步模式下专注码字,写完一段切回同步检查排版),现在不会再遇到预览区「冻住」的情况。
文档切换:滚动位置不再错乱
另一个修复针对多文档场景。StackEdit 支持在左侧文件树中打开多个文档,切换时理论上应该记住每个文档的滚动位置。但之前的实现有偏差——从文档 A 切到文档 B 再切回 A 时,A 的滚动位置会跳到错误的地方,甚至直接回到顶部。
6.0.6 对文档切换时的位置缓存做了修正,每个文档的 scroll offset 在离开时独立存储,回来时精确恢复。如果你习惯同时开几篇笔记来回跳转,这个修复直接减少了反复找位置的摩擦。
新增 AtomGit 与 GitCode 工作区
此前 StackEdit 的 Git 同步只支持 GitHub 和 GitLab。在国内网络环境下,这两个平台的连通性并不稳定,推送和拉取经常超时。6.0.6 新增了 AtomGit(开放原子开源基金会托管平台)和 GitCode(CSDN 旗下代码托管平台)作为可选工作区。
这意味着你可以把 Markdown 仓库直接托管在国内 Git 平台上,通过 StackEdit 的 Git Workspace 功能双向同步——编辑器内修改后一键推送,也能拉取远端更新。对于写技术博客、项目文档、内部 Wiki 的团队,网络延迟从「偶尔推不上」变成「秒级完成」。
实践:用 Docker 自建 StackEdit 并对接 GitCode 仓库
如果你不想依赖公共实例,可以在内网自建 StackEdit 并对接自己的 GitCode 仓库。以下是最小化部署步骤。
1. 用 Docker 跑起 StackEdit
# 拉取镜像并启动,映射到本地 8080 端口
docker run -d \
--name stackedit \
-p 8080:8080 \
-e STACKEDIT_DEFAULT_CONTENT='' \
mafgwo/stackedit:6.0.6
# 验证服务是否正常
curl -s -o /dev/null -w "%{http_code}" http://localhost:8080
# 期望返回 200
启动后浏览器访问 http://localhost:8080 即可进入编辑器。
2. 在 GitCode 创建仓库并配置同步
先在 GitCode 上创建一个用于存放文档的仓库,比如 my-team-wiki。然后在 StackEdit 中操作:
- 点击左侧 Workspace → Add a workspace
- 选择 GitCode(或 AtomGit),输入你的 GitCode 用户名和 Access Token
- 选择
my-team-wiki仓库,指定分支(默认main)和同步目录(如docs/) - 点击 Save,工作区即建立
之后在 StackEdit 中新建或编辑的文档,都可以通过顶部工具栏的 Sync 按钮一键推送到 GitCode 仓库。
3. 团队成员拉取远端更新
其他成员在自己的 StackEdit 实例中配置同一个 GitCode 工作区后,点击 Sync 即可拉取最新内容。冲突时 StackEdit 会提示合并,不会直接覆盖。
4. 用 GitCode Webhook 触发自动构建(可选进阶)
如果你的文档仓库需要自动发布(比如生成静态站点),可以在 GitCode 仓库设置中添加 Webhook,指向你的构建服务:
# 示例:GitCode Webhook 配置(在仓库 Settings → Webhooks 中填写)
url: https://your-build-server.example.com/hooks/docs-update
content_type: json
events:
- push
构建服务收到推送后拉取仓库、运行 Markdown 转 HTML 流程,完成自动发布。
日常使用的小建议
- 长文档优先用同步预览:修复后同步模式已经稳定,写技术文档时建议默认开启,排版问题能即时发现。
- 多文档切换时善用文件树:位置记忆修复后,多文档来回切换不再丢失上下文,适合同时维护多篇笔记的场景。
- 国内团队优先选 GitCode/AtomGit 工作区:网络延迟低、推送稳定,比走 GitHub 代理省心。如果仓库已有 GitHub 版本,也可以两个工作区同时配置,手动选择推送目标。
- Access Token 定期轮换:StackEdit 本地存储 Token,不会过期提醒。建议每 90 天在 GitCode 设置中重新生成并更新工作区配置,避免静默失效导致推送失败。
6.0.6 的改动集中在「修掉烦人的小问题」和「接入国内 Git 平台」两件事上,没有大功能重构,但对日常写作体验的提升是直接的。如果你之前因为同步预览 BUG 或文档位置错乱而放弃 StackEdit,这个版本值得重新试试。