Tim_e
Tim_e
本次pr修正了hooksconfig以及preview中的两个bug,详见commit 并且在cherry.js中初步实现简单的所见即所得 主要流程: 1.为previewer提供contenteditable,并且禁用所有链接的contenteditable防止修改 2.通过mutation来对于preview模块下的html标签下的可修改content进行监控 当内容发生修改时,利用oldvalue与walkdom的历遍,匹配在html树中出现的位置,即第index次出现oldvalue 3.通过对于md源码修正,修改第index处的oldvalue为newvalue,完成基本所见即所得 TODO: 1.现在长文件下,修改preview区偶尔会产生错乱位移,重定位到开头,对应源码尚未查看,暂未修 2.增加新行或者在空行中增加新内容的功能尚未实现,与实现时原理有关,waiting for add
**查看其定义** const hooksConfig = [ // 段落级 Hook // 引擎会按当前排序顺序执行beforeMake、makeHtml方法 // 引擎会按当前排序逆序执行afterMake方法 // 行内Hook // 引擎会按当前顺序执行makeHtml方法 ] 但是实际执行时,Transfer由于未更改HOOK_TYPE,现有的设置中实际表现为['sentence''] 附带现在的结构 const hooksConfig = [ // 段落级 Hook // 引擎会按当前排序顺序执行beforeMake、makeHtml方法 // 引擎会按当前排序逆序执行afterMake方法...
### 所见即所得 首先,相比于现在主流的md编辑器以及vscode中最流行的office view,现在版本的cherry最大问题是预览模式(包括edit&preview以及previewOnly)情况下没有所见即所得的功能,这无疑是重要的,在直接能查看结果的预览下编辑无疑是一个重要功能 因此图片编辑(拖动)等等功能还是没能真正做到所见即所得 而网页端莫得导入功能(因为可以复制粘贴?),我觉得在日常中使用的vscode版本或许可以解决一些导入打开等的必要性.而文件在本地,保存管理什么的也可以交由用户自身.编排和打开上我觉得可以向office view的markdown editor贴近 ### vscode方面问题 本地图片的不识别(因为本身是作为html开发?),以及默认打开模式挺不贴合习惯,现在的vscodePlugin像一个测试版,很多东西(行内公式以及排版)甚至没有和主版本同步,甚至还有开关等问题 作为md模式的编辑器,从个人角度来说使用vscode是最多的一个场景,希望针对其版本开发以及update能和主版本同步
 而且逻辑上,初始化时this.options.previewerCache.layout==={} 根据下面描述修改逻辑如下 if (Object.keys(this.options.previewerCache.layout).length !== 0) { 则初始化化时不进此分支,导致previewer渲染失败