思否开源项目推介丨ZebraEditorCore:基础、纯粹的富文本编辑器

ZebraEditorCore

开源项目名称:ZebraEditorCore
开源项目负责人:aco
开源项目简介:最基础、纯粹的富文本编辑器
开源项目类型:个人开源
项目创建时间:2020.05
GitHub 数据:211 star 11 fork
GitHub 地址:https://github.com/acccco/zebra-editor-core

项目介绍

目前,市面上流行的富文本编辑器主要有三大类:

1、Markdown 编辑器,功能有限,并不富文本,不能轻易的给文字加颜色,设置段落的样式等等。
2、基于 contenteditable 的 html 富文本编辑器,如 ckeditor 。生成的 html 过于混乱,不能提取大纲,掌控不了文章内容,虽能获取 html ,但却控制不了 html 的结构,不能直接生成 Markdown,或是别的结构,局限性很大。
3、基于 contenteditable 的 js 富文本编辑器,与第二类的区别主要在于:它的内容是保存在 js 中的,html 的呈现只是它内容的映射,所有的编辑行为实际操作的是 js 内存中的模型,比如 DraftJs 等,但是目前这一类的编辑器,功能简单,可操作性太差。

该项目为第 3 类的富文本编辑器,但相对于别的第三类富文本编辑器来说,它功能丰富,理论上支持所有的 css 属性,支持 Markdown 中所有的类型,包括但不限于标题、表格、列表、引用、图片等,同时表格、列表、支持多层级嵌套,由于内容由 JS 表示,还可生成别的类型:如 Markdown。

可扩展性方面:

  1. 项目提供了一整套的类组件,如果想添加新的内容,只需要继承响应的类,并实现方法即可。
  2. 项目提供一个抽象生成器,只要实现该类,并设置自定义的生成器,可轻松替换文章生成的内容,比如 Markdown。
  3. 真的很富文本,在 Markdown 里缺失的一切都可以在这得到补充。

思否推荐

编辑器的设计难度在前端中可谓是困难模式,所以很少能够在开源项目中看到编辑器的开源,特别是富文本编辑器的开源。

ZebraEditorCore 作为一款编辑器的核心,有着丰富的功能支持,理论上支持所有的 css 属性,支持 Markdown 中所有的类型,包括但不限于标题、表格、列表、引用、图片等,同时表格、列表、支持多层级嵌套,由于内容由 JS 表示,还可生成别的类型:如 Markdown。

该项目已入选「SFOSSP - 思否开源项目支持计划」,我们希望借助社区的资源对开源项目进行相关的宣传推广,并作为一个长期项目助力开源事业的发展,与广大开发者共建开源新生态。
有意向的开源项目负责人或团队成员,可通过邮箱(pr@segmentfault.com)提供相应的信息(开源项目地址、项目介绍、团队介绍、联系方式等),以便提升交流的效率。

clipboard.png


SegmentFault_行业快讯
第一时间为开发者提供行业相关的实时热点资讯

思否编辑部官方账号,欢迎私信投稿、提供线索、沟通反馈。

3.9k 声望
116.9k 粉丝
0 条评论
推荐阅读
抖音私域:三域互通后的流量新生态
在这个「后流量时代」,只浪费一半似乎都已经成为极具性价比的操作,无论是平台还是 B 端企业,都急需颠覆传统的流量模型,打造一种可以健康流转的流量新生态。

阿遂6阅读 14.3k评论 1

JVS低代码多账号统一登录介绍
功能需求来源于企业的日常工作过程中,有太多的账号与密码需要记录,因互联网的使用习惯所致,很多客户提出了通过扫码认证登陆的形式,在便捷登陆的同时要保障信息安全的要求,也就是外部的账号 仅仅用于扫码登陆...

软件部长阅读 1.4k

【JVS低代码】一分钟学会如何快速创建应用
应用中心功能介绍在JVS角色中有“应用管理员”的角色,如果赋予该角色,则用户为应用管理员,应用管理员有进入应用配置中心的权限。创建空白应用:从模板创建应用:应用中心入口具备应用管理员权限的用户,进入系统...

软件部长阅读 1.3k

JVS低代码首页功能介绍
应用快捷导航是将登录用户有权限使用的应用展示出来,鼠标点击后,系统展示可见的应用于对应的操作应用展示包括,应用的名称以及介绍,应用的目录以及子页面等,点击对应目录或者页面可以直接进入对应的 系统页面...

软件部长阅读 1.3k

无忧·企业文档,为企业客户的场景而思考
作为无忧企业文档的设计者,常常被问到一个问题,这个和腾X文档有什么区别?其实这个问题我口头回答了很多次,这次,我将这个问题做个记录与分析。主要是有以下几个方面不同:1、客户定位不同2、核心功能不同3、...

软件部长阅读 1.3k

数据智仓功能介绍(四)
对数据类型的转换,主要用户复杂数据的处理的情况下 ,例如某个字段是JSON ,那么通过数据抽取的加工情况下 ,扩展出来的数据是一个字符串,如果其表达的意义是数值,那么就需要用到类型转换。

软件部长阅读 1.2k

「JVS低代码开发平台」表单的打印配置
在表单引擎中,对于非新增表单,都是可以配置对应的打印模板的,我们常见的形态有如下这些,可以是出入库的记录,也可能是公文文件等形态。     

软件部长阅读 1.2k

思否编辑部官方账号,欢迎私信投稿、提供线索、沟通反馈。

3.9k 声望
116.9k 粉丝
宣传栏