如何允许网页中的编辑器访问剪切板_Vditor下一代的 Markdown 编辑器,为未来而构建...

Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得(富文本)、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React、Angular,提供桌面版

f57b9f195a0dfbdf70789047478c7a7c.png
Markdown

背景

随着 Markdown 排版方式的普及,越来越多的应用开始集成 Markdown 编辑器。目前主流可集成的 Markdown 编辑器现状如下:

  • 有的仅支持分屏预览,即编辑区和预览区分离
  • 有的同时支持所见即所得和分屏预览,但所见即所得模式下不能完整支持 Markdown 语法排版
  • 几乎没有类似 Typora 的即时渲染

而这三点恰好对应了三种应用场景:

  • 分屏预览:适配传统的 Markdown 使用场景,适合大屏下编辑排版
  • 所见即所得:对不熟悉 Markdown 的用户友好,熟悉 Markdown 的用户也可以无缝使用
  • 即时渲染:理论上这是最为优雅的 Markdown 编辑方式,让熟悉 Markdown 的用户能够更专注于内容创作

所以,一个能够适配应用场景的 Markdown 编辑器至关重要,它需要考虑到:

  • 传统 Markdown 用户的使用场景,提供分屏预览
  • 富文本编辑用户的使用场景,提供所见即所得
  • 高阶 Markdown 用户的使用场景,提供即时渲染

Vditor 在这些方面做了努力,希望能为现代化的通用 Markdown 编辑领域做出一些贡献

特性

  • 支持三种编辑模式:所见即所得(wysiwyg)、即时渲染(ir)、分屏预览(sv)
  • 支持大纲、数学公式、脑图、图表、流程图、甘特图、时序图、五线谱、多媒体、语音阅读、标题锚点、代码高亮及复制、graphviz 渲染
  • 内置安全过滤、导出、图片懒加载、任务列表、at、多平台预览、多主题切换、复制到微信公众号功能
  • 实现 CommonMark 和 GFM 规范,可对 Markdown 进行格式化和语法树查看,并支持 10+ 项配置
  • 工具栏包含 36+ 项操作,除支持扩展外还可对每一项中的快捷键、提示、提示位置、图标、点击事件、类名、子工具栏进行自定义
  • 表情自动补全,设置常用表情,支持表情自定义
  • 可使用拖拽、剪切板粘贴上传,显示实时上传进度,支持 CORS 跨域上传
  • 实时保存内容,防止意外丢失
  • 录音支持,用户可直接发布语音
  • 粘贴 HTML 自动转换为 Markdown,如粘贴中包含外链图片可通过指定接口上传到服务器
  • 支持主窗口大小拖拽、字符计数
  • 多主题支持,内置黑白绿三套主题
  • 多语言支持,内置中、英、韩文本地化
  • 支持主流浏览器,对移动端友好

? 使用场景

  • 完整示例
  • 如何在 React 中使用
  • 如何在 Vue 中使用
  • 如何在 Angular 中使用

? 页面渲染

  • 完整示例
  • 自定义渲染
  • 功能渲染 - Markdown2HTML/大纲/数学公式/脑图/图表/流程图/甘特图/时序图/五线谱/多媒体/代码高亮/代码复制/graphviz
  • 渲染配置 - 锚点/语音阅读/图片懒加载/渲染前回调/渲染后回调

⚙️️ 基本配置

  • 编辑模式 - wysiwyg/ir/sv
  • 大小及自适应
  • 多语言
  • CDN 配置
  • 回调事件 - 渲染完成/用户输入/聚焦/失焦/选择文字/ESC/Ctrl+Enter
  • 实用小特性 - tab/打字机模式/默认展现大纲/内容为空的提示

? 高级配置

  • Markdown 配置 - 自动空格/段落开头空两格/矫正术语/矫正标点/启用目录/禁用脚注/wysiwyg & ir 模式不渲染代码块/解析 settext/不过滤 XSS/主题/为列表添加标记
  • 工具栏 - 自定义按钮/新增按钮/固定/隐藏
  • 文件上传
  • 预览 - 延迟解析/HTML 字符串处理/DOM 处理/预览请求
  • 自动提示 - 自定义表情/表情图片地址/表情提示/@ 及其 debounce
  • 字数统计 - Markdown/文本/最大字数提示
  • 拖拽调整编辑器高度 - 启用/位于底部/位于顶部/拖拽结束回调
  • 代码块高亮 - 启用高亮/代码块块样式/行号
  • 数学公式 - KaTeX,MathJax 引擎切换/设置 MathJax 宏定义/允许 $ 后出现数字
  • 本地缓存 - 设置默认值/设置缓存 ID/清除缓存/禁用缓存/启用缓存/缓存回调

? 基本方法

  • 主题修改 - 编辑器/内容/代码块渲染/自定义主题
  • 文本操作 - 更新内容/插入内容/选中指定内容/更新选中内容/删除选中内容/设置预览区域内容
  • 获取 - Markdown/HTML/选中的文本/编辑器模式/光标位置/HTML->Markdown
  • 其他方法 - 设置为只读/聚焦/失焦/消息提示

? 暖心示例

  • 移动端最佳配置
  • 多个编辑器共存
  • 在 sv 模式下点击工具栏上的格式化可对 Markdwon 原文进行格式化
  • 点击工具栏上的开发者工具可查看 Markdown 语法树

渲染图

b6280ee346480ac84fca646f542a58b2.png
UXlTi.png

地址

地址:https://www.itnavs.com/navdet/1393.html

be10d59e1c47833db79de310476cad11.png
vipbic

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551371.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mpython掌控板作品_第1课 Arduino micro:bit 掌控板 创客教育常用的3类主控板

有很多朋友想学习创客,问我怎么学习。我建议他先百度一下“创客”,看看有什么感觉。结果还是很懵,五花八门,什么都有,找不到核心。简单理解,就是以前讲的DIY,自己动手,制作一个东西。…

redis启动没反应_Promethues如何针对Redis进行监控

需求:采用redis_exporter 收集数据,promethus采集redis_exporter数据,granfana展示数据一、简易安装redisyum install -y redisrpm -qa |grep redislsof -i :6379rpm -ql redissystemctl start redis找到配置文件/etc/redis.conf,修改 requir…

springboot整合rocketmq_面试官:简单说一下RocketMQ整合SpringBoot吧

前言在使用SpringBoot的starter集成包时,要特别注意版本。因为SpringBoot集成RocketMQ的starter依赖是由Spring社区提供的,目前正在快速迭代的过程当中,不同版本之间的差距非常大,甚至基础的底层对象都会经常有改动。例如如果使用…

java面试常考_JAVA面试常考系列十

JAVA面试常考系列十题目一Servlet是什么?Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,是用Java编写的服务器端程序,主要的作用是处理客户端请求并生成动态Web内容。一般情况下,Servlet主要…

的ui在vs中显示没有成员_在电脑桌面使用敬业签团队便签怎么设置新增内容在上面显示?...

实时跟进小组成员的各项任务的完成情况,及时将工作任务安排下去,是提高团队工作效率的较为有效的方法。在监督小组成员任务状况以及及时安排工作方面,选择一款支持多人同步在线协作的软件是非常有必要的。敬业签团队便签是一款不受系统、设备…

多表关联查询_【函数007】 EXCEL多表关联查询实战

继续函数实战系列教程,今天要分享的案例是根据填写的表名自动提取对应表中的数据数据准备:需求说明:我们希望实现,我们选择不同月份,显示对应月份表中的数据!处理方案:1、构建下拉列表(菜单)数据…

管理动物园动物c++_《过山车大亨》开发商公开新作 建立自己的动物园

知名模拟经营游戏开发商Frontier Developments近日宣布,旗下游戏《动物园之星》(Planet Zoo)即将在不久后发售,登录Steam平台。本座是一款模拟经营游戏,玩家在游戏中将会从零开始,建立一个属于自己的动物园世界。游戏中有多种不同…

安费诺amphenol连接器_安费诺的Ellison谈信号完整性职业和他的免费开源PCB设计软??件...

Amphenol的信号完整性工程师杰森埃里森(Jason Ellison )Amphenol(安费诺) ICC的高级职员信号完整性工程师杰森埃里森(Jason Ellison )深入了解了网络,给予EE(电子)社区以及他的开源信号完整性项目的重要性。信号完整性工程与其他EE(电子)领域相比如何?他…

mysql的contains_mysql中json_contains、json_extract等json查询方法的使用

新版 Mysql 中加入了对 JSON Document 的支持,可以创建 JSON 类型的字段,并有一套函数支持对JSON的查询、修改等操作。JSON是一种轻量级的数据交换格式,采用了独立于语言的文本格式,类似XML,但是比XML简单,…

260多媒体语言如何调节_260马力配9.7米货厢,实拍柳汽H5小三轴载货车

【卡车之家 原创】高速公路按轴的收费实施让9米6大单桥载货车火了起来,能够满足快递快运、电商物流等以方量为主的轻型货物运输。但这种大单桥18吨的限重对于不少卡友来说或许不太够用,而8x4载货车又有些大材小用了。这时,处于中间位置的三轴…

linux php 如何上传webshell,linux+apache+php的一次拿webshell的心得

首先俺先声明俺是个菜鸟,俺虽然是菜鸟但俺不会一直是菜鸟的(一旁兄弟喊到:别俺,俺,俺的,说普通话!)。俺,不对,我一直遵照着实践是检验真理的唯一标准这句话学习技术,这不…

织梦php重新安装教程,织梦CMS系统后台重装的操作教程

原标题:织梦CMS系统后台重装的操作教程网站在线运行,不可能一点问题都不存在,或者当初的网站设计、架构、功能已经不能满足现在用户的需求,所以我们会对网站做出相应的改动。网站除了前端的改版,还会有后台系统重装、服…

mpu9250姿态融合算法_基于投票方式的机器人装配姿态估计

作者:仲夏夜之星来源:公众号 3D视觉工坊链接:基于投票方式的机器人装配姿态估计论文题目:《Voting-Based Pose Estimation for Robotic Assembly Using a 3D Sensor》这篇文章被发表在2012年的IEEE International Conference on R…

skywalking原理_微服务链路追踪原理

作者:平也来源:关爱程序员社区背景介绍在微服务横行的时代,服务化思维逐渐成为了程序员的基本思维模式,但是,由于绝大部分项目只是一味地增加服务,并没有对其妥善管理,当接口出现问题时&#xf…

文本分析软件_读书笔记:伍多库卡茨质性文本分析:方法、实践与软件使用指南...

读书笔记:伍多库卡茨《质性文本分析:方法、实践与软件使用指南》一、这篇文章、这本书或这篇论文的中心思想、核心观点是什么?核心观点:质性数据如何系统化分析?三大主要方法:主题分析、评估分析和类型建构…

matlab两轮自平衡小车,两轮自平衡小车(全部设计资料+设计分析)

自己做的自平衡小车,基本达到预期效果。制作资料在压缩包里面,供参考。该两轮自平衡小车硬件设计概述:控制器:ATmega16;8MHz;加速度传感器:MMA2260;陀螺仪:EWTS82&#x…

异步fifo_【推荐】数字芯片异步FIFO设计经典论文

之前有一篇文章我已经推荐过了数字芯片跨时钟域设计的经典论文 (【推荐】数字芯片跨时钟域设计经典论文 ),希望看过的读者都有一定的收获。不过有点遗憾的是那片论文中虽然提到了异步FIFO,却没有讲具体的原理和设计细节。本篇文章…

php fuzzy,模糊C均值聚类算法(Fuzzy C-means)

模糊c均值聚类与k均值聚类区别k均值聚类k均值聚类的实现中,把每个样本划分到单一的类别中,亦即是每个样本只能属于一种类别,不能属于多种类别。这样的划分,称为硬划分。模糊c均值均类为了解决硬划分所带来的问题,因此有…

dw新建php文件自动生成html,dw如何新建css规则

1、在菜单中单击“文件”选择“新建”2、在新建文档窗口,选择“空白页”—“HTML”,文档类型选择“XHTML1.0 transitional”,单击“创建”按钮3、将插入点放在文档中,然后在菜单栏单击“格式”,在弹出的下拉菜单中选择“CSS样式”…

oracle获取登录名,oracle如何获取当前登录的用户名

Microsoft Windows [版本 5.2.3790](C) 版权所有 1985-2003 Microsoft Corp.C:/>sqlplusSQL*Plus: Release 9.2.0.1.0 - Production on 星期三 5月 30 00:04:26 2007Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.请输入用户名: scott请输入口令:连…