# CerebroMark **Repository Path**: fir01/cerebro-mark ## Basic Information - **Project Name**: CerebroMark - **Description**: Markdown document management and viewing tool designed for self-editing, storing/archiving MD documents, generating PDF/HTML files, and future API-driven internet distribution. - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-03-24 - **Last Updated**: 2025-04-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CerebroMarkdown #### Description marktext的中文版,是基于开源的MarkText进行二次开发,从文件管理角度进行很多优化,添加了一些个人喜好,以及解决了一些bug,并且将其中一些过时组件进行了替换。非常感谢MarkText的开发团队提供了这么一个优秀的软件。 ####开发环境:python 3.10,node 18.20, visual studio 2022 安装开发环境注意事项: 1)python的版本和node-gyp的版本要在官网确认是项匹配的 node-gypv11.1.0要求Python >= v3.12 requires node-gyp >= v10 但是官网是错误的:实际是Python = v3.10 和 node= v18.20 和node-gypv11.1.0 https://github.com/nodejs/node-gyp/tree/v11.1.0 2)要求vs 2022的MSBuild.exe。使用工具visual studio installer管理工具安装,并确认MSBuild.exe在path环境变量 3)进入对应python环境再进行安装npm install 4)终极环境版本:使用conda管理python版本和nvm管理nodejs版本.注意node-gyp是不受nvm管理的。 conda env list conda activate py310 nvm use 18.20 5)python安装 # 1. 设置环境变量(需管理员权限) setx CONDA_ENVS_PATH "D:\conda_space;%CONDA_ENVS_PATH%" # 2. 重启 PowerShell,创建环境时会自动存放到 D:\conda_space conda create --name py312 python=3.12 # 3. 激活验证 conda activate py312 6)如上需要弄一堆python都是ced导致,由于此库不更新了,替换方案如下: 将 ced 替换为 chardet #### Software Architecture 7)snabbdom的官方库是一个实验半成品。它有自己既定规则,例如比较时,比较的元素首先必须有唯一根节点,只有 根节点相同才继续比较子节点。新增了以下五种模式: a、为0时,保持目前的算法。 b、模式1:完全使用新节点替换旧节点 c、模式2:根节点相同时vnode更新oldVnode有的,保留oldVnode有vnode没有的,保留vnode有oldVnode没有的。如果此时根节点不同,控制台提示使用模式4. d、模式3:根节点相同时取vnode和oldVnode交集,保留vnode和oldVnode都有的,并且vnode更新oldVnode有的;删除oldVnode中有vnode中没有的,删除vnode中有oldVnode中没有的。如果此时根节点不同,控制台提示使用模式3. e、模式4:根节点不同时将新的vnode,添加到oldVnode的根节点下,并和oldVnode下的同级进行更新操作,即vnode更新oldVnode有的,保留oldVnode有vnode没有的,保留vnode有oldVnode没有的。根节点相同时不处理,而是控制台提示使用模式2。 f、模式5,不比较直接将vnode作为oldVnode根节点的子节点添加,使用系统的已有规则为每个html的element生成新的唯一标识。 Software architecture description npm install --global --production windows-build-tools 未解决错误: 15:01:45.379 > TypeError: Cannot read properties of null (reading 'nodeType') at getNodeAndOffset (webpack-internal:///./src/muya/lib/selection/index.js:393:16) at Selection.setCursorRange (webpack-internal:///./src/muya/lib/selection/index.js:460:9) at ContentState.setCursor (webpack-internal:///./src/muya/lib/contentState/index.js:224:56) at ContentState.render (webpack-internal:///./src/muya/lib/contentState/index.js:261:12) at ContentState.clickHandler (webpack-internal:///./src/muya/lib/contentState/clickCtrl.js:61:23) at HTMLDivElement.handler (webpack-internal:///./src/muya/lib/eventHandler/clickEvent.js:239:20) ┗ ----------------------------s # MarkText

MarkText

:high_brightness: 下一代 Markdown 编辑器 :crescent_moon:
一款简洁优雅的开源 Markdown 编辑器,专注于速度与易用性。
适用于 Linux、macOS 和 Windows。
LICENSE build build total download latest download sponsors

网站 | 功能 | 下载与安装 | 开发 | 贡献

翻译: :cn:
这款 Markdown 编辑器,由 Jocs贡献者 用❤︎打造。

支持 MarkText

MarkText 是一个 MIT 许可的开源项目,最新版本始终可从 GitHub 发布页面免费下载。MarkText 仍在开发中,其开发离不开所有赞助商的支持。希望您加入他们: - [在 Patreon 上成为支持者或赞助商](https://www.patreon.com/ranluo) 或 [一次性捐赠](https://github.com/Jocs/sponsor.me) - [在 Open Collective 上成为支持者或赞助商](https://opencollective.com/marktext) ##### Patreon 和 Open Collective 有什么区别? Patreon:资金将直接赞助给创建并持续维护 MarkText 的 Luo Ran (@jocs)。 Open Collective:所有费用都是透明的。资金将用于 MarkText 的开发和维护、资助线上和线下活动以及获取其他必要资源。 所有赞助商(来自 Patreon 和 Open Collective)的名称和公司徽标将出现在 MarkText 的官方网站和 README.md 文件中。 ‌**特别赞助商**‌