# 【开发者自荐】MarcDown - 极简，上下分栏的md编辑器

**URL:** <https://meta.appinn.net/t/topic/88293>\
**Category:** 发现频道\
**Created:** [2026 年7 月 16 日 03:40 UTC](https://meta.appinn.net/t/topic/88293 "2026-07-16T03:40:59Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

作者： ![heroisuseless](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/h/b5a626/32.png) [@heroisuseless](https://meta.appinn.net/u/heroisuseless)\
发布日期： [2026 年7 月 16 日 03:40 UTC](https://meta.appinn.net/t/topic/88293/1 "2026-07-16T03:40:59Z")

</div>

## 软件名称

MarcDown - 上下分栏的md编辑器

## 应用平台

- Windows
- MacOS
- Linux

## 是否收费

开源免费

## 软件截图

 ![1](https://h2cdn.appinn.me/original/3X/5/0/509034e234650e272d5bf54ebd4e5af3c7320ff3.png)  
 ![2](https://h2cdn.appinn.me/original/3X/9/1/912e99542228fe51c04feec12e9efc18b4115cd0.jpeg)

## 应用简介

MarcDown是一款独特的上下分栏的Markdown编辑器，所谓上下分栏，就是源码在上面，渲染结果放在下面，支持表格，图片，公式，流程图，HTML的上源码下渲染，源码还可以一键折叠，从而使整个页面尽可能的“所见即所得”，同时也能很方便地查看/修改源码。

MarcDown并不是纯粹的“所见即所得”，而是将样式与源码渲染在一起的“实时渲染”，例如“—”分割线，其背景是一整条编辑器宽度的线，但仔细看分割线的左端仍然还有“—”的源码。

MarcDown的目标就是作为系统默认的md查看器，点击md文件，然后触发MarcDown，在替换掉默认的txt记事本的同时，有着跟txt记事本一样的简洁/快速，而且还有txt记事本没有的实时渲染能力，可以在同一个上下文中方便浏览图片，公式，流程图等渲染结果。

MarcDown的所有功能都是手工实现的，理论上实现一个md编辑器挺简单，只需要以CodeMirror库之类的为核心包一层即可。但MarcDown这里相当于实现了一遍CodeMirror，MarcDown的主打特性是上下分栏，对页面高度的控制有更精细的要求，用CodeMirror不太能满足需求，因此我手撕了从源码解析到排版渲染的整体流程，当然我在开发过程中大量使用了AI，AI确实提高了我的能力上限。

我借鉴React的原理，将MarcDown的排版渲染分为reconcile调和过程和commit提交过程，调和过程只处理js逻辑，将新旧虚拟节点进行diff，在commit提交过程根据diff做真实Dom的最小改动，听起来性能不错，但实际上目前仍有不少逻辑还未做性能优化，普通的readme.md文件可以轻松打开，md文件超过一万行编辑就比较卡了。如果把可优化项做完的话，实时编辑一万行的md文件应该能达到流畅水准。

官网：[MarcDown](https://marcdown-page.vercel.app)

github: [Github](https://github.com/xopenbeta/marc-down)

跪求star！

---

<div class="post-metadata">

作者： ![Qingwa](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/qingwa/32/58632_2.png) [@Qingwa](https://meta.appinn.net/u/Qingwa)\
发布日期： [2026 年7 月 16 日 03:42 UTC](https://meta.appinn.net/t/topic/88293/2 "2026-07-16T03:42:36Z")

</div>

我有一问：上下分类比左右分栏更适合电脑屏幕么

---

<div class="post-metadata">

作者： ![heroisuseless](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/h/b5a626/32.png) [@heroisuseless](https://meta.appinn.net/u/heroisuseless)\
发布日期： [2026 年7 月 16 日 03:52 UTC](https://meta.appinn.net/t/topic/88293/3 "2026-07-16T03:52:54Z")

</div>

官网打错了，应该是 [https://macrdown-page.vercel.app](https://macrdown-page.vercel.app)

---

<div class="post-metadata">

作者： ![heroisuseless](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/h/b5a626/32.png) [@heroisuseless](https://meta.appinn.net/u/heroisuseless)\
发布日期： [2026 年7 月 16 日 03:58 UTC](https://meta.appinn.net/t/topic/88293/4 "2026-07-16T03:58:43Z")

</div>

目标人群大概就是

- 不喜欢左右分栏
- 更想看到/编辑源码
- 同时也想看到渲染结果

这样的目标用户吧

---

<div class="post-metadata">

作者： ![CWord](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/cword/32/16455_2.png) [@CWord](https://meta.appinn.net/u/CWord)\
发布日期： [2026 年7 月 16 日 05:45 UTC](https://meta.appinn.net/t/topic/88293/5 "2026-07-16T05:45:26Z")

</div>

省流：Tauri+react，代码无注释，有针对代码文件的md解释，无i18n。

注：此评论不代表任何立场，仅省流

---

<div class="post-metadata">

作者： ![heroisuseless](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/h/b5a626/32.png) [@heroisuseless](https://meta.appinn.net/u/heroisuseless)\
发布日期： [2026 年7 月 18 日 02:15 UTC](https://meta.appinn.net/t/topic/88293/6 "2026-07-18T02:15:07Z")

</div>

发布了一个新版本，修复了一些bug，优化了性能。  
我发现了一个解析速度超快的md解析器satteri，rust写的，运行速度比js写的解析器快十倍：

测试文件大小 937.8 KB（960256 bytes，约3万行）

| 指标 | mdast (老牌md解析器) | satteri (用Rust写的md解析器) |
| --- | --- | --- |
| 平均耗时 | 1003.37 ms | 9.43 ms |
| 节点数 | 54785 | 64001 |

MacrDown接入了satteri，现在编辑上万行的md文件也挺流畅的了

---

<div class="post-metadata">

作者： ![VictoryRoad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/victoryroad/32/58964_2.png) [@VictoryRoad](https://meta.appinn.net/u/VictoryRoad)\
发布日期： [2026 年7 月 18 日 02:34 UTC](https://meta.appinn.net/t/topic/88293/7 "2026-07-18T02:34:18Z")

</div>

> [@heroisuseless](#):
>
> 上下分栏

> [@Qingwa](#):
>
> 上下分类比左右分栏更适合电脑屏幕么

其实对于查看文档，尤其是在电脑这种宽屏显示器上，这种上下分栏并不合理。

1. 上下分栏会使得每个页面的高度减小。遇到列表等 **每行不长，但有很多行** 的文本，需要频繁滚动，增加额外操作。
2. 上下分栏也会导致文本显示区过长，看一段文本可能需要左右转头，而且过长的文本看起来也不方便，容易串行。
3. 对于源代码和预览分开的编辑器，传统的左右分栏的一个优势是：如果想看某端代码的渲染效果，只需看另一栏中相同高度的地方即可。而如果是上下分栏，找起来就没那么方便。

---

<div class="post-metadata">

作者： ![heroisuseless](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/h/b5a626/32.png) [@heroisuseless](https://meta.appinn.net/u/heroisuseless)\
发布日期： [2026 年7 月 18 日 03:01 UTC](https://meta.appinn.net/t/topic/88293/8 "2026-07-18T03:01:06Z")

</div>

我感觉还好吧，一般理想的用法是这样的：

 ![屏幕截图 2026-07-18 104703](https://h2cdn.appinn.me/original/3X/f/7/f77047789491f8bea2d4f8888a99f52d20be871c.png)

例如这里的块级公式，所见即所得类md编辑器点击公式直接变成源码，看不到渲染结果了；左右分栏则其他地方的源码和渲染结果重复展示，浪费了空间。

所以我想解决的问题其实是：希望有些内容按照所见即所得的方式展示，例如标题行，普通文本行；有些内容按照分栏展示，例如块级公式，表格，流程图。所以采用了上下分栏的方式，这是我的一个解法。

也不是单纯的上下分栏，而是将渲染结果混排进了源码里，源码也可以一键折叠，对于太长的表格，建议直接折叠源码看表格渲染结果，如果需要编辑，那就只能展开源码当一个纯源码编辑器用了。

---

<div class="post-metadata">

作者： ![VictoryRoad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/victoryroad/32/58964_2.png) [@VictoryRoad](https://meta.appinn.net/u/VictoryRoad)\
发布日期： [2026 年7 月 18 日 03:31 UTC](https://meta.appinn.net/t/topic/88293/9 "2026-07-18T03:31:53Z")

</div>

原来如此。不过这种不应该叫 “上下分栏”，因为严格意义上，您的软件中并没有出现分栏。

> [@heroisuseless](#):
>
> 不是单纯的上下分栏，而是将渲染结果混排进了源码里，源码也可以一键折叠

为避免歧义，可以考虑叫 “就地预览”。

另外，您的编辑器中，表格的源代码和渲染后的表格都会显示。遇到长表格时，其实也是非常浪费空间的：

 ![图片](https://h2cdn.appinn.me/original/3X/2/4/24ae4ce8642c5c07695b6885c8cc98f6df1a3636.png)

---

<div class="post-metadata">

作者： ![VictoryRoad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/victoryroad/32/58964_2.png) [@VictoryRoad](https://meta.appinn.net/u/VictoryRoad)\
发布日期： [2026 年7 月 18 日 03:45 UTC](https://meta.appinn.net/t/topic/88293/10 "2026-07-18T03:45:06Z")

</div>

找了个文档测试了一下，情况如下：

- 测试版本是 v0.1.0，amd64，deb 版。
- 打开一个测试文档，占用内存 161.7 MB。

 ![1](https://h2cdn.appinn.me/original/3X/b/1/b107f493d08f84b473049a3f732ad0f263be088c.png)  
 ![2](https://h2cdn.appinn.me/original/3X/a/f/af96df5a997179d9878f56e98a3c0ae1f4791346.png)  
 ![3](https://h2cdn.appinn.me/original/3X/e/d/edbcf952addd7bb5968f9adf501f2c980676e3ef.png)

发现的问题：

1. 汉字看起来特别粗，不知道是不是软件调用字体，或渲染文字时，出了什么问题。
2. 不支持 HTML 标签。（有些 HTML 标签还是很有用的，比如上下标）。
3. 点击标题时，会跳转到该标题的下一行。  
比如我点击 “CommonMark”，会跳转到：  
 ![4](https://h2cdn.appinn.me/original/3X/0/8/08b71ab11c875ff5a02fe2b26c385a5479ca3fa7.png)  
可在其他编辑器中，一般是跳转到标题那个位置，比如 VNote中：  
 ![5](https://h2cdn.appinn.me/original/3X/d/9/d9432e148f2c46d65e4e3c38c005d8d516c9190b.png)

此外，这个 deb 版本的打包也有一些问题：

1. 启动器文件（`/usr/share/applications/MarcDown.desktop`），没填 `Categories=`，这样可能导致软件图标无法显示在主菜单中。建议改成 `Categories=Office;`，这样该软件的图标可出现在主菜单的 “办公” 类别中。
2. 软件包的 “维护者” 写成了软件名称，而且软件描述没有写。建议修改、补充一下，不然显得太 “不专业” 了。

 ![图片](https://h2cdn.appinn.me/original/3X/7/b/7b6bfabf7b1bfd279fb5ca1590ebc9b982f661d6.png)

---

<div class="post-metadata">

作者： ![heroisuseless](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/h/b5a626/32.png) [@heroisuseless](https://meta.appinn.net/u/heroisuseless)\
发布日期： [2026 年7 月 23 日 02:22 UTC](https://meta.appinn.net/t/topic/88293/11 "2026-07-23T02:22:14Z")

</div>

![iShot_2026-07-23_10.21.26](https://h2cdn.appinn.me/original/3X/e/e/ee5dc28a0faf69c3c8c7ccb1671eb26b82c00798.webp)

实现了一个小丑牌的背景，是动态的，好有意思啊哈哈

---

<div class="post-metadata">

作者： ![heroisuseless](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/h/b5a626/32.png) [@heroisuseless](https://meta.appinn.net/u/heroisuseless)\
发布日期： [2026 年10 月 26 日 07:06 UTC](https://meta.appinn.net/t/topic/88293/12 "2026-10-26T07:06:22Z")

</div>

10.26更新了一小波，现在打开软件即可编辑，对标windows记事本，更方便了一些

 ![image](https://h2cdn.appinn.me/original/3X/3/5/35f4746299003d48cc94718cb1eb29e212a9f8e3.png)
