开源富文本编辑器,支持用 React/Vue 或任何框架开发 Block/InlineBlock。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
sskyy
V2EX    分享创造

开源富文本编辑器,支持用 React/Vue 或任何框架开发 Block/InlineBlock。

  •  
  •   sskyy 2024-03-01 12:16:09 +08:00 3905 次点击
    这是一个创建于 642 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 已经提供了例如图片上传、markdown 命令等重要的组件和 Plugin ,并将由官方持续完善,目标默认就提供达到专业编辑工具的用户体验。
    • 支持 InlineBlock ,可在行内插入。
    • 可以用任何框架的组件来实现编辑器的 Block/InlineBlock 。
    • 除了常见的事件和 API 外,Plugin 系统还为开发者默认提供一系列重要的 reactive state ,让开发 Plugin 变得无比简单。

    官网首页 https://minditor.dev 就是用 Minditor 编辑和渲染的,可以体验所有功能。欢迎提 issue 和 feature request 。目标是成文一个默认体验就能和飞书、语雀一样开源编辑器。(实际上也是因为等了很久语雀开源结果一直没有,所以自己写了)。希望 V 友们能点个 star:)

    截图

    24 条回复    2024-03-04 19:04:15 +08:00
    rming
        1
    rming  
       2024-03-01 12:25:42 +08:00   2
    star +1
    sskyy
        2
    sskyy  
    OP
       2024-03-01 12:29:08 +08:00
    感谢
    ajan
        3
    ajan  
       2024-03-01 12:40:55 +08:00   2
    ctrl+z ctrl+y 不支持?
    june4
        4
    june4  
       2024-03-01 13:08:40 +08:00
    左边栏布局错位啊,负缩进这么多
    huihushijie1996
        5
    huihushijie1996  
       2024-03-01 13:21:39 +08:00
    @ajan 我也想说缺少了这个功能
    zhouyang163
        6
    zhouyang163  
       2024-03-01 14:54:01 +08:00
    支持 table 嵌套 table 吗
    zzbd
        7
    zzbd  
       2024-03-01 15:42:50 +08:00 via Android
    我比较好奇有没有类似项目呢?传输的是 markdown 格式的文本吗
    sskyy
        8
    sskyy  
    OP
       2024-03-01 15:43:33 +08:00
    @ajan 支持 ctrl+z 碰到和 ctrl+shift+z 作为 redo 。刚测了一下发现输入法 + undo 有 bug ,现已修复。输入法输入现在我用 playwright 没法写测试,只能碰到问题人工测试了。
    感谢。
    sskyy
        9
    sskyy  
    OP
       2024-03-01 15:44:27 +08:00
    @zhouyang163 支持,只是现在样式有点丑,之后会针对嵌套优化下。
    sskyy
        10
    sskyy  
    OP
       2024-03-01 15:46:23 +08:00
    @zzbd 保存的是 json 。类似的有 editor.js ,quilljs 。他们好像不支持 inlineBlock ,写复杂插件缺少了一些系统应该提供的 reactive state ,要自己注册各种事件监听。比较麻烦,所以我自己写了这个编辑器。
    nicoljiang
        11
    nicoljiang  
    PRO
       2024-03-01 16:06:52 +08:00   1
    那行有颜色的字,加粗其中任何一个单词,加粗和后面的部分都会失去颜色。
    Moyyyyyyyyyyye
        12
    Moyyyyyyyyyyye  
    PRO
       2024-03-01 17:02:32 +08:00
    hedwi
        13
    hedwi  
       2024-03-01 17:05:46 +08:00
    未来会支持 angular 吗
    Nosub
        14
    Nosub  
       2024-03-01 19:31:29 +08:00 via iPhone
    @hedwi 基于 ace editor 写一个,完全可以自己写。
    sskyy
        15
    sskyy  
    OP
       2024-03-01 20:01:59 +08:00
    @nicoljiang 感谢,已修复。
    luckyc
        16
    luckyc  
       2024-03-01 22:09:19 +08:00
    sskyy
        17
    sskyy  
    OP
       2024-03-02 13:33:29 +08:00
    @l4ever 很多基础编辑体验不一样,例如 Minditor 支持从一个 block 的中间选到另一个 block 的中间。editor.js 只能选整个选区。我也是之前再用 editor.js ,后来感觉在它的基础上怎样二次开发都打不到语雀、飞书的编辑体验,所以自己写了。
    nicoljiang
        18
    nicoljiang  
    PRO
       2024-03-02 14:44:30 +08:00
    其实我一直觉得 dropbox paper 的编辑器最优(不谈功能丰富性的话,我认为比 notion 的体验更好)。
    国内的飞书文档体验真是极致。
    nicoljiang
        19
    nicoljiang  
    PRO
       2024-03-02 14:53:03 +08:00   1
    markdown commands 下面的 ul 部分都没法全选一行
    而且找不到拖动整行上下移动的方法(并且不会自动让位置)
    如果从 headline 开始想通过上下拉选择多个段落,是选不了的。

    我感觉 tiptap 挺好的,基于这个做会不会小问题更少一点。比如: https://github.com/steven-tey/novel 整体就不错了。
    sskyy
        20
    sskyy  
    OP
       2024-03-02 16:47:29 +08:00
    @nicoljiang 修好了。我之前也没打算自己写,后来把市面上所有开源的富文本编辑器和框架都看了一遍。发现下面几个方面或多或者有不支持或者有坑的地方:
    1. 大部分 block based 的富文本编辑器不支持从一个 block 中间选到另一个 block 中间。也就是上面你说的问题。当时飞书和语雀是可以。说明技术上能做到。
    2. 有输入法时三大浏览器表现明显不一致。很多框架在 chrome 之外都有坑,且没以后统一行为。
    3. 插件/block 的开发太麻烦,大部分框架都是提供 api+event ,但开发有 ui 的 plugin/block 时最需要的其实是 reactive state 。
    codehz
        21
    codehz  
       2024-03-03 13:13:19 +08:00   1
    随便选个子标题,按三下 delete ,左侧列表就消失了
    sskyy
        22
    sskyy  
    OP
       2024-03-03 14:30:38 +08:00
    @codehz 请问你的操作系统和浏览器版本是?我 mac 上 chrome/firefox/safari 各种尝试没复现出来。
    codehz
        23
    codehz  
       2024-03-03 20:48:55 +08:00
    @sskyy 就是 mac 用 arc 浏览器,其他特征是点了一下删除后那个菜单不会消失,继续点几下就炸了
    sskyy
        24
    sskyy  
    OP
       2024-03-04 19:04:15 +08:00
    @codehz 已修复,感谢。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5169 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 07:33 PVG 15:33 LAX 23:33 JFK 02:33
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86