嘿,朋友,做了个 Markdown 编辑器,想请你来试试

129 阅读4分钟

大家好,我是小盒子。

写了快二十年代码,从当年的 Dreamweaver、FrontPage 一路玩到现在的 VS Code、JetBrains 全家桶。工具换了一茬又一茬,但有件事一直没变:我们总得写东西。写文档、写博客、写笔记,而 Markdown,就是我们这群人的“笔”。

说实话,市面上的 Markdown 编辑器,我用过的没有一百也有八十。但用着用着,总有点别扭。就像一把用了很久的锤子,总感觉重心不太对,握着也不够舒服。

不知道你有没有同感:

  • 有些编辑器,功能强大,但打开它就像启动了一艘星际战舰,吃内存、慢吞吞,打个字都感觉有延迟,写长文更是煎熬。
  • 有些呢,又太“极简”了,干净是干净,可连个基本的字体、行间距都不能调,总感觉是在将就,而不是享受。
  • 最关键的是,它们都是“别人”的工具。我们开发者,总有点小小的控制欲,总想让工具能完完全全地贴合自己的习惯。

就因为这些“别扭”,前段时间,我干脆撸起袖子,决定给自己、也给和我有同样困扰的朋友们,做一把“趁手的兵器”。

于是,mdeditor 就这么诞生了。

它没啥宏大的目标,初心很简单:做一款快、好用,而且能让你觉得“这是我的编辑器”的工具。

代码都在这儿了,开诚布公,欢迎随时来坐坐: GitHub: github.com/xiaobox/mde… (要是觉得还行,顺手点个 Star,就是对我最大的肯定。)


这把“锤子”,我花了些心思去打磨

我不想只做个“能用”的工具,我希望它能“好用”,甚至让你“爱用”。所以,我在几个自己最看重的地方下了点功夫。

1. 首先,它得听你的话:真正意义上的“深度定制”

我始终觉得,工具应该适应人,而不是人去适应工具。所以,我给了 mdeditor 一套非常彻底的定制系统。

你可以像装修自己家一样,去“装修”你的编辑器。从整体的界面风格,到每一个按钮、每一行代码的颜色,再到你习惯的字体和阅读排版……所有这些,都由你掌控。你完全可以把它调校成你最舒服、最高效的样子。对我来说,这是一种底层的安全感。

2. 其次,性能是基本功:绝不拖泥带水

一个编辑器,快,是本分。为了这个“快”字,我放弃了几个现成的轮子,自己写了 Markdown 解析的核心。这么做的好处是,mdeditor 的响应速度非常跟手,无论是打字、滚动还是处理几万字的大文件,都能保持流畅。写东西就该行云流水,不应该被工具打断思路。

3. 最后,是给开发者朋友的“彩蛋”:一个干净的架构

mdeditor 是用 Vite + Vue 3 写的,代码组织上遵循了最朴素的“高内聚、低耦合”原则。如果你也玩 Vue,可以看看源码。我把很多功能逻辑都抽离成了独立的 Composables,整个项目的结构清晰明了,很适合拿来做二次开发,或者作为学习 Vue 3 Composition API 的一个实践参考。


这只是个开始,想邀请你一起来添砖加瓦

现在 mdeditor 已经有了一个不错的底子,但它离“完美”还差得很远。一个人的力量终究有限,一个好的开源项目,生命力在于社区。

所以,我诚心地邀请你,无论你是谁,都可以来参与这件事:

  • 如果你只是想找个好用的工具:欢迎你下载使用。你的使用本身,就是对它最好的检验。如果能顺手在 GitHub 上点个 Star,我会非常开心。
  • 如果你和我一样,是个爱折腾的开发者:欢迎你来读它的源码,给我提 Issue,或者直接甩个 PR 过来。无论是发现一个 Bug,还是有个绝妙的点子,都请不要吝啬。
  • 如果你是位设计师,对 UI/UX 有自己的见解:欢迎你来设计新的主题,或者对现有的交互提出建议。你的审美,能让它变得更美。

一个优秀的开源项目,就像一场漫长的篝火晚会,需要不断有人添柴,才能一直燃烧下去。

mdeditor 就是我点起的第一根火柴。


好了,就说这么多。感谢你耐心听我这个老家伙唠叨。

如果你对 mdeditor 有一点点兴趣,就去 GitHub 看看吧。期待在那里,看到你的身影。

GitHub传送门:github.com/xiaobox/mde…