一款功能超强的在线编辑器,完全开源了!

boyanx4个月前技术教程20

Etherpad 是一个基于 nodejs 的在线文档编辑器,服务端性能可以得到保证,多个客户端的操作是即时同步的,而且对文档数据提供了存储的支持。

「软件介绍」

Etherpad 是一个开源的,基于 Web 的在线文本编辑器,支持多人在线同时编辑、协同办公,具有版本历史记录和在线聊天功能,以及自定义使用插件。

目前,Etherpad 在全球拥有数百万活跃用户,被广泛用于教育、工作、研究等领域。

利用Etherpad,你完全可以在5分钟之内搭建出一款在线编辑器软件,并且可以直接部署到你自己的服务器上。

「软件特色」

  • 实时协作编辑:支持多人同时编辑一个文档,多人协同办公变得非常容易。无论是在校园项目中还是在企业团队中,都能高效地实现多人协同编辑。
  • 版本历史记录:Etherpad具有版本历史记录功能,能够记录编辑过程的每一步变化。这意味着你可以回溯到文档的之前的任何一个版本,查看修改的详细信息。这对于团队协作和审核修改非常有用。
  • 在线聊天:内置了聊天功能,可以方便地与小伙伴们进行交流和讨论。只需点击界面上的聊天图标,你就能和团队成员尽情交流啦!聊天功能非常方便,可以帮助团队更好地协作。
  • 自定义界面风格:Etherpad还支持自定义界面风格,让你的编辑器与众不同。你可以通过访问特定的链接来设置编辑器的风格,包括顶部菜单、背景区和编辑区的背景。你可以根据个人喜好选择不同的风格,让编辑器更符合你的口味。
  • 自定义插件:Etherpad有一个丰富的插件库,为你提供更多的功能扩展。目前已经有超过290个插件可以选择。无论是图片上传、Markdown语法支持、修改字体颜色还是评论功能,Etherpad的插件库应有尽有,可以满足你的各种需求。

「安装」

首先,我们准备一台CentOS 7的虚拟机,因为我在公有云的轻量云主机也是这个系统。在开始之前,我们先更新一下系统和软件。

运行Etherpad需要Node.js环境,更新好系统之后,我们安装较新版本的Node.js和npm(Node Package Manager,用于JavaScript编程语言的包管理器)。

Etherpad默认使用文件系统级的数据库(dirtyDB),但这不适用于生产环境。对于生产环境,推荐使用MySQL或PostgreSQL,我们就使用MySQL吧。

安装完MySQL之后,需要启动数据库并进行基本配置。

接下来,我们运行一个脚本,完成新MySQL实例的基本配置,包括修改一些不安全的默认设置,帮助保护数据库免受一些基本的攻击。我们可以视情况设置 root 用户密码、移除匿名用户、禁止 root 用户远程登录、移除测试数据库等,最后刷新权限表,确保所有的更改立即生效。

然后,我们就可以从Etherpad官方网站下载Etherpad的最新版本。

安装包还是很小的,只有4.6 MB,我们解压一下,视情况将解压后文件夹移动到指定目录,因为是测试,我就不动了。

接下来开始配置Etherpad,首先复制一份settings.json.template得到配置文件settings.json,这个文件控制着Etherpad的许多重要配置选项。

确认是否需要调整IP和端口配置,找到以下字段。

ip用于设置Etherpad监听的IP地址,默认值为0.0.0.0,即监听所有接口。port用于设置Etherpad监听的端口,默认值为9001。

因为我们使用的不是默认数据库,所以需要找到以下字段,调整数据库配置。

将dirty部分注释掉,取消mysql部分的注释,并按需调整数据库的连接配置信息,包括数据库地址、用户名、密码等。为了方便,我就直接用这套配置创建数据库好了。

先登录MySQL,使用以下命令并输入MySQL的root用户的密码:

创建一个新的数据库,名称为etherpad_lite_db,字符集类型为utf8mb4:

创建一个新用户etherpaduser,密码设置为PASSWORD,并授予访问刚创建的数据库的权限。

最后刷新权限表,并退出MySQL命令行。

我们还可以在users部分添加用户名和密码,用来设置一个访问Etherpad管理员界面的管理员账户。

完成这些调整之后,我们还要让程序自己去安装必要的Node.js依赖,安装文件在bin文件夹下面。

等待安装完成之后,Etherpad基本上就可以使用了,我们找到src/node/路径下的server.js,用以下命令启动Etherpad。

查看端口9001是否开放。

然后打开Etherpad的管理页面。


「丰富的插件库」

几百种的插件支持,非常丰富。


如上传图片插件,默认的编辑器是只能写文字的。加载这个插件,就可以实现图片上传功能。



还有支持 MarkDown 语法的插件


修改字体颜色插件


评论相关的插件


Etherpad本身主要是一个实时协作的文本编辑器,它的核心功能集中在文本的协作编辑上。它的标准安装主要支持基本的文本编辑功能,如文字输入、格式设置、颜色标记等。至于对表格、图片或更复杂文档格式的支持,Etherpad 的核心版本并不直接提供这些功能。但是,Etherpad 拥有一个活跃的插件生态系统,我们后续可以通过安装特定的插件来扩展其功能,包括对表格、图片等的支持。

相关文章

uniapp中使用ace在网页上做代码编辑器

A、安装npm install ace-buildsB、在uniapp中使用<template> <view class="content"> <...

JavaScript 中文周刊 #196 -(javascript中文网)

本期看点:你对 JavaScript 日期了解多少?来试试这个测验吧,Next.js v15.4 发布并预告 v16 新特性,2025 年如何创建一个 NPM 包,WebAssembly 应用场景讨...

五个流行的SVG在线编辑器(svg 在线编辑器)

随着响应网络的发展,越来越多的高质量的SVG在线编辑器被公众所熟知。SVG矢量图形也越来越受欢迎,以便在任何设备上呈现图像,甚至一些易于使用的SVG在线编辑器,可以替代PS,本文总结了五种流行的SVG...

安卓最有名的网页编辑器(安卓网页设计工具)

安卓平台上有几款较为知名的网页编辑器,如Quoda、DroidEdit等,它们凭借丰富的功能和良好的用户体验受到广泛关注,以下是具体介绍 :- Quoda:是一款强大的免费多语言代码编辑器,支持HTM...

代码也需“美颜”?JS美化工具大揭秘

你有没有想过,我们每天都在用的软件、网页,它们背后的代码是什么样子的?如果把代码比作文章,那它也有“字迹”工整和潦草之分。今天,我们就来揭秘一个让代码“颜值”飙升的魔法工具——前端JS代码美化工具。#...

几大开源免费的 JavaScript 富文本编辑器测评

MarkDown 编辑器用的时间长了,发现发现富文本编辑器用起来是真的舒服。一直以来写博客都是用的 MarkDown 编辑器,MarkDown 文档简单方便,使用几个简单的符号就可以定义出样式统一的富...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。