diff --git a/.scripts/docs.ts b/.scripts/docs.ts index 56de4e18..1d73ff84 100644 --- a/.scripts/docs.ts +++ b/.scripts/docs.ts @@ -6,7 +6,6 @@ * 4. 在相关项目中检查内容, 准确无误后分别执行 Commit.sh 提交 */ - export const docs: Record = { HTML: [ "HTML/DOCTYPE", @@ -256,34 +255,36 @@ export const docs: Record = { "Plugin/Nginx常用配置", "Plugin/Rollup的基本使用", "Plugin/Jest中Mock网络请求", - "Plugin/初探webpack之编写plugin", - "Plugin/初探webpack之搭建Vue开发环境", "Plugin/TS内置类型与拓展", - "Plugin/初探webpack之编写loader", "Plugin/竞态问题与RxJs", - "Plugin/基于slate构建文档编辑器", "Plugin/基于NoCode构建简历编辑器", - "Plugin/初探富文本之富文本概述", - "Plugin/初探富文本之编辑器引擎", - "Plugin/初探富文本之OT协同算法", - "Plugin/初探富文本之OT协同实例", - "Plugin/初探富文本之CRDT协同算法", - "Plugin/初探富文本之CRDT协同实例", "Plugin/基于drawio构建流程图编辑器", + "Plugin/初探webpack之编写plugin", + "Plugin/初探webpack之搭建Vue开发环境", + "Plugin/初探webpack之编写loader", + "Plugin/初探webpack之单应用多端构建", + "Plugin/初探webpack之解析器resolver", "Plugin/从零实现的Chrome扩展", - "Plugin/初探富文本之React实时预览", "Plugin/从零实现的浏览器Web脚本", - "Plugin/初探webpack之单应用多端构建", - "Plugin/基于WebRTC的局域网文件传输", - "Plugin/初探富文本之文档diff算法", - "Plugin/初探富文本之在线文档交付", - "Plugin/初探富文本之划词评论能力", - "Plugin/初探富文本之文档虚拟滚动", "Plugin/基于Chrome扩展的浏览器事件", - "Plugin/初探webpack之解析器resolver", + "Plugin/从脚本管理器的角度审视Chrome扩展", + "Plugin/基于WebRTC的局域网文件传输", "Plugin/基于ServiceWorker的文件传输方案", - "Plugin/初探富文本之搜索替换算法", - "Plugin/从脚本管理器的角度审视Chrome扩展" + ], + RichText: [ + "RichText/初探富文本之富文本概述", + "RichText/初探富文本之编辑器引擎", + "RichText/初探富文本之OT协同算法", + "RichText/初探富文本之OT协同实例", + "RichText/初探富文本之CRDT协同算法", + "RichText/初探富文本之CRDT协同实例", + "RichText/初探富文本之React实时预览", + "RichText/初探富文本之文档diff算法", + "RichText/初探富文本之在线文档交付", + "RichText/初探富文本之划词评论能力", + "RichText/初探富文本之文档虚拟滚动", + "RichText/初探富文本之搜索替换算法", + "RichText/基于slate构建文档编辑器", ], Patterns: [ "Patterns/简单工厂模式", @@ -326,8 +327,6 @@ export const docs: Record = { "Patterns/MVVM模式", ], Linux: [ - "Security/简单安全防护", - "Linux/Ubuntu16.04安装QQ机器人", "Linux/cat命令", "Linux/chmod命令", "Linux/chown命令", @@ -419,7 +418,7 @@ export const docs: Record = { Environment: [ "Environment/VScode配置CMD本地运行环境(2.0)", "Environment/Recover刷机简介", - "Linux/Ubuntu16.04安装QQ机器人", + "Environment/Ubuntu16.04安装QQ机器人", "Environment/将SublimeText加入右键菜单", "Environment/手机抓包HTTPS", "Environment/文本选中复制", diff --git a/.scripts/overview.ts b/.scripts/overview.ts index cfcd32bd..a1980c09 100644 --- a/.scripts/overview.ts +++ b/.scripts/overview.ts @@ -86,6 +86,7 @@ const root = path.resolve(__dirname, `..`); "Vue", "React", "Plugin", + "RichText", "Patterns", "Linux", "LeetCode", @@ -93,7 +94,6 @@ const root = path.resolve(__dirname, `..`); const LIMIT_MATCH = [ "Vue/Vue学习笔记.md", "Vue/Vue-Cli4笔记.md", - "Linux/Ubuntu16.04安装QQ机器人.md", ]; const matchedPaths: string[] = []; for (const file of all) { diff --git "a/Backup/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\272\217\345\210\227\345\214\226\344\270\216\345\217\215\345\272\217\345\210\227\345\214\226.md" "b/Backup/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\272\217\345\210\227\345\214\226\344\270\216\345\217\215\345\272\217\345\210\227\345\214\226.md" index 44951bf0..1eea66c5 100644 --- "a/Backup/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\272\217\345\210\227\345\214\226\344\270\216\345\217\215\345\272\217\345\210\227\345\214\226.md" +++ "b/Backup/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\272\217\345\210\227\345\214\226\344\270\216\345\217\215\345\272\217\345\210\227\345\214\226.md" @@ -118,7 +118,9 @@ navigator.clipboard.read().then(res => { 我们接下来需要设想下如何将内容写入到剪贴板,以及实际触发的场景。除了常见的`Ctrl+C`来触发复制行为外,用户还有可能希望通过按钮来触发复制行为,例如飞书就可以通过工具栏复制整个行/块结构,因此我们不能直接通过`OnCopy`事件的`clipboardData`来写数据,而是需要主动触发额外的`Copy`事件。 -前边也提到了`navigator.clipboard.write`同样可以写入剪贴板,调用这个`API`是不需要真正触发`Copy`事件的,但是当我们使用这个方法写入数据的时候,就会抛出异常。下面的例子中需要焦点在`document`上,需要在延迟时间内点击页面,否则会抛出`DOMException`。而当我们焦点在页面上时,同样会抛出`DOMException`,这是因为`application/x-doc-editor`类型不被支持。 +前边也提到了`navigator.clipboard.write`同样可以写入剪贴板,调用这个`API`是不需要真正触发`Copy`事件的,但是当我们使用这个方法写入数据的时候,可能会抛出异常。此外这个`API`必须要在`HTTPS`环境下才能使用,否则会完全没有这个函数的定义。 + +在下面的例子中需要焦点在`document`上,需要在延迟时间内点击页面,否则会抛出`DOMException`。而即使当我们焦点在页面上,执行后同样会抛出`DOMException`,从抛出的异常来看是因为`application/x-doc-editor`类型不被支持。 ```js (async () => { diff --git "a/Linux/Ubuntu16.04\345\256\211\350\243\205QQ\346\234\272\345\231\250\344\272\272.md" "b/Environment/Ubuntu16.04\345\256\211\350\243\205QQ\346\234\272\345\231\250\344\272\272.md" similarity index 100% rename from "Linux/Ubuntu16.04\345\256\211\350\243\205QQ\346\234\272\345\231\250\344\272\272.md" rename to "Environment/Ubuntu16.04\345\256\211\350\243\205QQ\346\234\272\345\231\250\344\272\272.md" diff --git "a/I18N/Linux/Ubuntu16.04\345\256\211\350\243\205QQ\346\234\272\345\231\250\344\272\272.md" "b/I18N/Environment/Ubuntu16.04\345\256\211\350\243\205QQ\346\234\272\345\231\250\344\272\272.md" similarity index 100% rename from "I18N/Linux/Ubuntu16.04\345\256\211\350\243\205QQ\346\234\272\345\231\250\344\272\272.md" rename to "I18N/Environment/Ubuntu16.04\345\256\211\350\243\205QQ\346\234\272\345\231\250\344\272\272.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\345\256\236\344\276\213.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\345\256\236\344\276\213.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\345\256\236\344\276\213.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\345\256\236\344\276\213.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\347\256\227\346\263\225.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\347\256\227\346\263\225.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\347\256\227\346\263\225.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\347\256\227\346\263\225.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\345\256\236\344\276\213.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\345\256\236\344\276\213.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\345\256\236\344\276\213.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\345\256\236\344\276\213.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\347\256\227\346\263\225.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\347\256\227\346\263\225.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\347\256\227\346\263\225.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\347\256\227\346\263\225.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213React\345\256\236\346\227\266\351\242\204\350\247\210.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213React\345\256\236\346\227\266\351\242\204\350\247\210.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213React\345\256\236\346\227\266\351\242\204\350\247\210.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213React\345\256\236\346\227\266\351\242\204\350\247\210.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\210\222\350\257\215\350\257\204\350\256\272\350\203\275\345\212\233.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\210\222\350\257\215\350\257\204\350\256\272\350\203\275\345\212\233.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\210\222\350\257\215\350\257\204\350\256\272\350\203\275\345\212\233.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\210\222\350\257\215\350\257\204\350\256\272\350\203\275\345\212\233.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\234\250\347\272\277\346\226\207\346\241\243\344\272\244\344\273\230.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\234\250\347\272\277\346\226\207\346\241\243\344\272\244\344\273\230.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\234\250\347\272\277\346\226\207\346\241\243\344\272\244\344\273\230.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\234\250\347\272\277\346\226\207\346\241\243\344\272\244\344\273\230.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\257\214\346\226\207\346\234\254\346\246\202\350\277\260.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\257\214\346\226\207\346\234\254\346\246\202\350\277\260.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\257\214\346\226\207\346\234\254\346\246\202\350\277\260.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\257\214\346\226\207\346\234\254\346\246\202\350\277\260.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\220\234\347\264\242\346\233\277\346\215\242\347\256\227\346\263\225.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\220\234\347\264\242\346\233\277\346\215\242\347\256\227\346\263\225.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\220\234\347\264\242\346\233\277\346\215\242\347\256\227\346\263\225.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\220\234\347\264\242\346\233\277\346\215\242\347\256\227\346\263\225.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243diff\347\256\227\346\263\225.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243diff\347\256\227\346\263\225.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243diff\347\256\227\346\263\225.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243diff\347\256\227\346\263\225.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243\350\231\232\346\213\237\346\273\232\345\212\250.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243\350\231\232\346\213\237\346\273\232\345\212\250.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243\350\231\232\346\213\237\346\273\232\345\212\250.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243\350\231\232\346\213\237\346\273\232\345\212\250.md" diff --git "a/I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\347\274\226\350\276\221\345\231\250\345\274\225\346\223\216.md" "b/I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\347\274\226\350\276\221\345\231\250\345\274\225\346\223\216.md" similarity index 100% rename from "I18N/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\347\274\226\350\276\221\345\231\250\345\274\225\346\223\216.md" rename to "I18N/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\347\274\226\350\276\221\345\231\250\345\274\225\346\223\216.md" diff --git "a/I18N/Plugin/\345\237\272\344\272\216slate\346\236\204\345\273\272\346\226\207\346\241\243\347\274\226\350\276\221\345\231\250.md" "b/I18N/RichText/\345\237\272\344\272\216slate\346\236\204\345\273\272\346\226\207\346\241\243\347\274\226\350\276\221\345\231\250.md" similarity index 100% rename from "I18N/Plugin/\345\237\272\344\272\216slate\346\236\204\345\273\272\346\226\207\346\241\243\347\274\226\350\276\221\345\231\250.md" rename to "I18N/RichText/\345\237\272\344\272\216slate\346\236\204\345\273\272\346\226\207\346\241\243\347\274\226\350\276\221\345\231\250.md" diff --git "a/Linux/journalctl\345\221\275\344\273\244.md" "b/Linux/journalctl\345\221\275\344\273\244.md" index b97008ba..10bc6020 100644 --- "a/Linux/journalctl\345\221\275\344\273\244.md" +++ "b/Linux/journalctl\345\221\275\344\273\244.md" @@ -113,10 +113,11 @@ journalctl --since=today journalctl -f ``` -查看指定`Unit`的日志。 +查看指定`Unit`的日志,`-r`可以反转输出,优先显示最新的日志。 ```shell journalctl -u nginx.service +journalctl -r -u nginx.service --since=-1h ``` 查看日志占用的磁盘空间。 diff --git a/README.md b/README.md index 27f3b3b8..8608f1bb 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ 如果觉得还不错,点个`star`吧 😁 -版本库中共有`489`篇文章,总计`92184`行,`1086842`字,`3030350`字符。 +版本库中共有`489`篇文章,总计`92185`行,`1086866`字,`3030415`字符。 这是一个前端小白的学习历程,如果只学习而不记录点什么那基本就等于白学了。这个版本库的名字`EveryDay`就是希望激励我能够每天学习,下面的文章就是从`2020.02.25`开始积累的文章,都是参考众多文章归纳整理学习而写的,文章包括了`HTML`基础、`CSS`基础、`JavaScript`基础与拓展、`Browser`浏览器相关、`Vue`使用与分析、`React`使用与分析、`Plugin`插件相关、`Patterns`设计模式、`Linux`命令、`LeetCode`题解等类别,内容都是比较基础的,毕竟我也还是个小。此外基本上每个示例都是本着能够即时运行为目标的,新建一个`HTML`文件复制之后即可在浏览器运行或者直接可以在`console`中运行。 @@ -272,34 +272,36 @@ * [Nginx常用配置](Plugin/Nginx常用配置.md) * [Rollup的基本使用](Plugin/Rollup的基本使用.md) * [Jest中Mock网络请求](Plugin/Jest中Mock网络请求.md) -* [初探webpack之编写plugin](Plugin/初探webpack之编写plugin.md) -* [初探webpack之搭建Vue开发环境](Plugin/初探webpack之搭建Vue开发环境.md) * [TS内置类型与拓展](Plugin/TS内置类型与拓展.md) -* [初探webpack之编写loader](Plugin/初探webpack之编写loader.md) * [竞态问题与RxJs](Plugin/竞态问题与RxJs.md) -* [基于slate构建文档编辑器](Plugin/基于slate构建文档编辑器.md) * [基于NoCode构建简历编辑器](Plugin/基于NoCode构建简历编辑器.md) -* [初探富文本之富文本概述](Plugin/初探富文本之富文本概述.md) -* [初探富文本之编辑器引擎](Plugin/初探富文本之编辑器引擎.md) -* [初探富文本之OT协同算法](Plugin/初探富文本之OT协同算法.md) -* [初探富文本之OT协同实例](Plugin/初探富文本之OT协同实例.md) -* [初探富文本之CRDT协同算法](Plugin/初探富文本之CRDT协同算法.md) -* [初探富文本之CRDT协同实例](Plugin/初探富文本之CRDT协同实例.md) * [基于drawio构建流程图编辑器](Plugin/基于drawio构建流程图编辑器.md) +* [初探webpack之编写plugin](Plugin/初探webpack之编写plugin.md) +* [初探webpack之搭建Vue开发环境](Plugin/初探webpack之搭建Vue开发环境.md) +* [初探webpack之编写loader](Plugin/初探webpack之编写loader.md) +* [初探webpack之单应用多端构建](Plugin/初探webpack之单应用多端构建.md) +* [初探webpack之解析器resolver](Plugin/初探webpack之解析器resolver.md) * [从零实现的Chrome扩展](Plugin/从零实现的Chrome扩展.md) -* [初探富文本之React实时预览](Plugin/初探富文本之React实时预览.md) * [从零实现的浏览器Web脚本](Plugin/从零实现的浏览器Web脚本.md) -* [初探webpack之单应用多端构建](Plugin/初探webpack之单应用多端构建.md) -* [基于WebRTC的局域网文件传输](Plugin/基于WebRTC的局域网文件传输.md) -* [初探富文本之文档diff算法](Plugin/初探富文本之文档diff算法.md) -* [初探富文本之在线文档交付](Plugin/初探富文本之在线文档交付.md) -* [初探富文本之划词评论能力](Plugin/初探富文本之划词评论能力.md) -* [初探富文本之文档虚拟滚动](Plugin/初探富文本之文档虚拟滚动.md) * [基于Chrome扩展的浏览器事件](Plugin/基于Chrome扩展的浏览器事件.md) -* [初探webpack之解析器resolver](Plugin/初探webpack之解析器resolver.md) -* [基于ServiceWorker的文件传输方案](Plugin/基于ServiceWorker的文件传输方案.md) -* [初探富文本之搜索替换算法](Plugin/初探富文本之搜索替换算法.md) * [从脚本管理器的角度审视Chrome扩展](Plugin/从脚本管理器的角度审视Chrome扩展.md) +* [基于WebRTC的局域网文件传输](Plugin/基于WebRTC的局域网文件传输.md) +* [基于ServiceWorker的文件传输方案](Plugin/基于ServiceWorker的文件传输方案.md) + +## RichText +* [初探富文本之富文本概述](RichText/初探富文本之富文本概述.md) +* [初探富文本之编辑器引擎](RichText/初探富文本之编辑器引擎.md) +* [初探富文本之OT协同算法](RichText/初探富文本之OT协同算法.md) +* [初探富文本之OT协同实例](RichText/初探富文本之OT协同实例.md) +* [初探富文本之CRDT协同算法](RichText/初探富文本之CRDT协同算法.md) +* [初探富文本之CRDT协同实例](RichText/初探富文本之CRDT协同实例.md) +* [初探富文本之React实时预览](RichText/初探富文本之React实时预览.md) +* [初探富文本之文档diff算法](RichText/初探富文本之文档diff算法.md) +* [初探富文本之在线文档交付](RichText/初探富文本之在线文档交付.md) +* [初探富文本之划词评论能力](RichText/初探富文本之划词评论能力.md) +* [初探富文本之文档虚拟滚动](RichText/初探富文本之文档虚拟滚动.md) +* [初探富文本之搜索替换算法](RichText/初探富文本之搜索替换算法.md) +* [基于slate构建文档编辑器](RichText/基于slate构建文档编辑器.md) ## Patterns * [简单工厂模式](Patterns/简单工厂模式.md) @@ -342,8 +344,6 @@ * [MVVM模式](Patterns/MVVM模式.md) ## Linux -* [简单安全防护](Security/简单安全防护.md) -* [Ubuntu16.04安装QQ机器人](Linux/Ubuntu16.04安装QQ机器人.md) * [cat命令](Linux/cat命令.md) * [chmod命令](Linux/chmod命令.md) * [chown命令](Linux/chown命令.md) @@ -442,7 +442,7 @@ ## Environment * [VScode配置CMD本地运行环境(2.0)](Environment/VScode配置CMD本地运行环境(2.0).md) * [Recover刷机简介](Environment/Recover刷机简介.md) -* [Ubuntu16.04安装QQ机器人](Linux/Ubuntu16.04安装QQ机器人.md) +* [Ubuntu16.04安装QQ机器人](Environment/Ubuntu16.04安装QQ机器人.md) * [将SublimeText加入右键菜单](Environment/将SublimeText加入右键菜单.md) * [手机抓包HTTPS](Environment/手机抓包HTTPS.md) * [文本选中复制](Environment/文本选中复制.md) diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\345\256\236\344\276\213.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\345\256\236\344\276\213.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\345\256\236\344\276\213.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\345\256\236\344\276\213.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\347\256\227\346\263\225.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\347\256\227\346\263\225.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\347\256\227\346\263\225.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213CRDT\345\215\217\345\220\214\347\256\227\346\263\225.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\345\256\236\344\276\213.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\345\256\236\344\276\213.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\345\256\236\344\276\213.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\345\256\236\344\276\213.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\347\256\227\346\263\225.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\347\256\227\346\263\225.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\347\256\227\346\263\225.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213OT\345\215\217\345\220\214\347\256\227\346\263\225.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213React\345\256\236\346\227\266\351\242\204\350\247\210.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213React\345\256\236\346\227\266\351\242\204\350\247\210.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213React\345\256\236\346\227\266\351\242\204\350\247\210.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213React\345\256\236\346\227\266\351\242\204\350\247\210.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\210\222\350\257\215\350\257\204\350\256\272\350\203\275\345\212\233.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\210\222\350\257\215\350\257\204\350\256\272\350\203\275\345\212\233.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\210\222\350\257\215\350\257\204\350\256\272\350\203\275\345\212\233.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\210\222\350\257\215\350\257\204\350\256\272\350\203\275\345\212\233.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\234\250\347\272\277\346\226\207\346\241\243\344\272\244\344\273\230.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\234\250\347\272\277\346\226\207\346\241\243\344\272\244\344\273\230.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\234\250\347\272\277\346\226\207\346\241\243\344\272\244\344\273\230.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\234\250\347\272\277\346\226\207\346\241\243\344\272\244\344\273\230.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\257\214\346\226\207\346\234\254\346\246\202\350\277\260.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\257\214\346\226\207\346\234\254\346\246\202\350\277\260.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\257\214\346\226\207\346\234\254\346\246\202\350\277\260.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\345\257\214\346\226\207\346\234\254\346\246\202\350\277\260.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\220\234\347\264\242\346\233\277\346\215\242\347\256\227\346\263\225.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\220\234\347\264\242\346\233\277\346\215\242\347\256\227\346\263\225.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\220\234\347\264\242\346\233\277\346\215\242\347\256\227\346\263\225.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\220\234\347\264\242\346\233\277\346\215\242\347\256\227\346\263\225.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243diff\347\256\227\346\263\225.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243diff\347\256\227\346\263\225.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243diff\347\256\227\346\263\225.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243diff\347\256\227\346\263\225.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243\350\231\232\346\213\237\346\273\232\345\212\250.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243\350\231\232\346\213\237\346\273\232\345\212\250.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243\350\231\232\346\213\237\346\273\232\345\212\250.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\346\226\207\346\241\243\350\231\232\346\213\237\346\273\232\345\212\250.md" diff --git "a/Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\347\274\226\350\276\221\345\231\250\345\274\225\346\223\216.md" "b/RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\347\274\226\350\276\221\345\231\250\345\274\225\346\223\216.md" similarity index 100% rename from "Plugin/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\347\274\226\350\276\221\345\231\250\345\274\225\346\223\216.md" rename to "RichText/\345\210\235\346\216\242\345\257\214\346\226\207\346\234\254\344\271\213\347\274\226\350\276\221\345\231\250\345\274\225\346\223\216.md" diff --git "a/Plugin/\345\237\272\344\272\216slate\346\236\204\345\273\272\346\226\207\346\241\243\347\274\226\350\276\221\345\231\250.md" "b/RichText/\345\237\272\344\272\216slate\346\236\204\345\273\272\346\226\207\346\241\243\347\274\226\350\276\221\345\231\250.md" similarity index 100% rename from "Plugin/\345\237\272\344\272\216slate\346\236\204\345\273\272\346\226\207\346\241\243\347\274\226\350\276\221\345\231\250.md" rename to "RichText/\345\237\272\344\272\216slate\346\236\204\345\273\272\346\226\207\346\241\243\347\274\226\350\276\221\345\231\250.md" diff --git a/Timeline.md b/Timeline.md index df0f33fc..b546c1a8 100644 --- a/Timeline.md +++ b/Timeline.md @@ -1,6 +1,6 @@ # Timeline -前端笔记系列共有 419 篇文章,总计 74512 行, 847468 字, 2357810 字符。 +前端笔记系列共有 419 篇文章,总计 74513 行, 847492 字, 2357875 字符。 ### 2024-12-15 第 419 题:[从脚本管理器的角度审视Chrome扩展](Plugin/从脚本管理器的角度审视Chrome扩展.md) @@ -9,7 +9,7 @@ 第 418 题:[基于fetch的SSE方案](Browser/基于fetch的SSE方案.md) ### 2024-10-31 -第 417 题:[初探富文本之搜索替换算法](Plugin/初探富文本之搜索替换算法.md) +第 417 题:[初探富文本之搜索替换算法](RichText/初探富文本之搜索替换算法.md) ### 2024-09-09 第 416 题:[基于ServiceWorker的文件传输方案](Plugin/基于ServiceWorker的文件传输方案.md) @@ -24,16 +24,16 @@ 第 413 题:[基于React的SSG渲染方案](React/基于React的SSG渲染方案.md) ### 2024-05-14 -第 412 题:[初探富文本之文档虚拟滚动](Plugin/初探富文本之文档虚拟滚动.md) +第 412 题:[初探富文本之文档虚拟滚动](RichText/初探富文本之文档虚拟滚动.md) ### 2024-04-10 -第 411 题:[初探富文本之划词评论能力](Plugin/初探富文本之划词评论能力.md) +第 411 题:[初探富文本之划词评论能力](RichText/初探富文本之划词评论能力.md) ### 2024-03-30 -第 410 题:[初探富文本之在线文档交付](Plugin/初探富文本之在线文档交付.md) +第 410 题:[初探富文本之在线文档交付](RichText/初探富文本之在线文档交付.md) ### 2024-02-20 -第 409 题:[初探富文本之文档diff算法](Plugin/初探富文本之文档diff算法.md) +第 409 题:[初探富文本之文档diff算法](RichText/初探富文本之文档diff算法.md) ### 2024-01-01 第 408 题:[基于WebRTC的局域网文件传输](Plugin/基于WebRTC的局域网文件传输.md) @@ -45,7 +45,7 @@ 第 406 题:[从零实现的浏览器Web脚本](Plugin/从零实现的浏览器Web脚本.md) ### 2023-10-15 -第 405 题:[初探富文本之React实时预览](Plugin/初探富文本之React实时预览.md) +第 405 题:[初探富文本之React实时预览](RichText/初探富文本之React实时预览.md) ### 2023-09-09 第 404 题:[ReactPortals传送门](React/ReactPortals传送门.md) @@ -66,22 +66,22 @@ 第 399 题:[Hooks与事件绑定](React/Hooks与事件绑定.md) ### 2023-03-05 -第 398 题:[初探富文本之CRDT协同实例](Plugin/初探富文本之CRDT协同实例.md) +第 398 题:[初探富文本之CRDT协同实例](RichText/初探富文本之CRDT协同实例.md) ### 2023-02-12 -第 397 题:[初探富文本之CRDT协同算法](Plugin/初探富文本之CRDT协同算法.md) +第 397 题:[初探富文本之CRDT协同算法](RichText/初探富文本之CRDT协同算法.md) ### 2023-01-27 -第 396 题:[初探富文本之OT协同实例](Plugin/初探富文本之OT协同实例.md) +第 396 题:[初探富文本之OT协同实例](RichText/初探富文本之OT协同实例.md) ### 2023-01-08 -第 395 题:[初探富文本之OT协同算法](Plugin/初探富文本之OT协同算法.md) +第 395 题:[初探富文本之OT协同算法](RichText/初探富文本之OT协同算法.md) ### 2022-12-18 -第 394 题:[初探富文本之编辑器引擎](Plugin/初探富文本之编辑器引擎.md) +第 394 题:[初探富文本之编辑器引擎](RichText/初探富文本之编辑器引擎.md) ### 2022-11-19 -第 393 题:[初探富文本之富文本概述](Plugin/初探富文本之富文本概述.md) +第 393 题:[初探富文本之富文本概述](RichText/初探富文本之富文本概述.md) ### 2022-10-16 第 392 题:[Hooks与普通函数的区别](React/Hooks与普通函数的区别.md) @@ -96,7 +96,7 @@ 第 389 题:[基于NoCode构建简历编辑器](Plugin/基于NoCode构建简历编辑器.md) ### 2022-06-26 -第 388 题:[基于slate构建文档编辑器](Plugin/基于slate构建文档编辑器.md) +第 388 题:[基于slate构建文档编辑器](RichText/基于slate构建文档编辑器.md) ### 2022-06-03 第 387 题:[竞态问题与RxJs](Plugin/竞态问题与RxJs.md) diff --git a/Vue/screenshots/2023-04-14-21-09-50.png b/Vue/screenshots/2023-04-14-21-09-50.png new file mode 100644 index 00000000..4dcec930 Binary files /dev/null and b/Vue/screenshots/2023-04-14-21-09-50.png differ