ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

桌面版脑图 DesktopNaotu 版本演进与跨平台支持全解析

桌面版脑图 DesktopNaotu 版本演进与跨平台支持全解析 桌面应用前端【免费下载链接】DesktopNaotu桌面版脑图 (百度脑图离线版思维导图) 跨平台支持 Windows/Linux/Mac OS. (A cross-platform multilingual Mind Map Tool)项目地址https://gitcode.com/gh_mirrors/de/DesktopNaotu点击查看免费下载桌面版脑图DesktopNaotu是百度脑图的离线桌面实现让用户在没有互联网的环境下依然可以完成思维导图的创建、编辑与导出。本文以仓库内 doc/History.md 的项目介绍与更新记录为主线结合app/src下的 TypeScript 源码系统梳理其跨平台发行形态、多语言机制、配置文件体系、自动保存与备份、日志记录、最近文件与窗口状态记忆等核心能力的实现原理帮助你完整理解这一 Electron 应用从 0.0.1 到 3.2.3 的功能版图与工程化演进路径。项目定位百度脑图的离线桌面版DesktopNaotu 的核心价值在于离线可用它将百度脑图的编辑能力封装为本地桌面应用用户不再依赖浏览器与网络即可随时打开.km脑图文件进行编辑。项目自 2016 年 11 月发布 0.0.1 起持续迭代先后完成自动保存、文件类型关联、多格式导出、图片上传、多语言、窗口管理、日志与备份等能力并于 3.2.0-Beta 版本开始采用 TypeScript 重构核心代码显著提升稳定性——当前仓库源码即为 TypeScript 重构后的形态其主进程入口、配置、日志、国际化等模块均位于 app/src 目录。各版本对应的系统与发行文件History.md明确给出了不同操作系统、不同位数的发行文件命名规则与支持情况这是选择安装包时的第一手依据| 操作系统 | 位数 | 对应文件 | 大小 | 支持情况 | | -------- | ----: | ------: | :---- | -- | | MacOS | 64位 | DesktopNaotu-macOS-x64 | 50M | 支持全部功能 | | Linux | 64位 | DesktopNaotu-linux-x64 | 50M | 支持全部功能 | | Windows 7/10 | 64位 | DesktopNaotu-win32-x64 | 50M | 支持全部功能 | | Windows 7/10 | 32位 | DesktopNaotu-win32-ia32 | 50M | 支持全部功能 | | Windows XP | 32位 | DesktopNaotu-Windows-mini | 8M | 不支持调试 |从表格可以读出三条关键信息主发行线MacOS 与 Linux 各提供一个 64 位包Windows 7/10 同时提供 x64 与 ia32 两种位数的完整功能包Windows XP 特殊形态DesktopNaotu-Windows-mini体积被压缩到 8M 以内基于 miniblink 提供的 Chrome 精简版内核见 1.5.2018 更新记录代价是不支持调试功能体积控制完整功能包普遍控制在 50M 以内这与 0.1.5 更新记录中修改打包方式、减小打包尺寸、大大提高程序打开效率的优化方向一致。版本演进时间线从雏形到稳定版History.md完整记录了从 2016-11-9 的 0.0.1 到 2019-04-17 的 3.2.3 共 22 个版本的更新记录。按阶段归纳如下2016 年功能奠基0.0.1 ~ 0.0.20.0.12016-11-9实现基本功能项目正式成形0.0.22016-11-11加入百度在线脑图下载方法、可执行文件下载方法、另存为方法并补充快捷键说明。这一时期完成了从百度脑图取回文档到本地的闭环。2017 年基础体验打磨0.1.x0.1.02016-11-14支持导出多种格式文件版本号改为自动生成下载地址取消密码0.1.12017-8-10添加新建功能0.1.22017-10-9支持绑定.km文件类型双击文件直接打开程序添加自动保存功能0.1.32017-10-16自动保存可在菜单中修改默认开启自动保存0.1.42017-10-17修复检查更新异常升级 kityminder-editor 到最新版加入编辑菜单的剪切、复制、粘贴0.1.52017-10-19修改打包方式减小体积提升启动效率0.1.62017-10-31新增窗口小图标与 Linux 任务栏图标支持窗口最大化/最小化修复 Linux 下无法最大化的问题改为资源加载完成后再显示程序解决 macOS 上撤销、重做、复制、粘贴不可用的问题0.1.72018-1-25修复导出 Freemind 错误默认取消自动保存。2018 年功能大爆发1.x → 2.x → 3.x1.0.02018-5-28显示当前编辑文件名称解决 Windows 下图标锯齿隐藏上传图片功能将 kityminder-editor 依赖调整到自建分支以便深度定制开启默认保存功能保存到用户文件夹1.0.12018-8-14新增最近打开的文件列表与打开文件所在文件夹一般还会选中它替换系统提示框为内部消息提示修复 Mac/Linux 标题栏文件名显示为路径的问题1.0.22018-8-30新增图片双击放大1.0.32018-8-31修复导出文件不进入最近的文件、另存为默认文件名的问题新建文件提示由覆盖当前文件改为关闭当前文件导出默认采用根节点文字作为文件名称1.5.20182018-10-8优化高分辨率下菜单图标显示修复 MAC 版复制粘贴快捷键完善文档启用新的版本号规则新增基于 miniblink 的DesktopNaotu-Windows精简版2.0.20182018-10-22恢复图片上传功能通过 base64 方式存储到.km文件新增日志记录功能文件意外关闭或损坏时有迹可循新增自定义默认保存路径加入重选自动保存的目录菜单2.1.12018-11-22修复上传本地图片后无法导出 PNG、帮助地址出错的问题加入下载百度脑图到本地的介绍3.0.02018-11-28正式支持多语言鸣谢涛初版支持简体中文、繁体中文、英文语言默认基于系统语言设置也可通过修改配置文件强制改变3.1.02018-11-30新增新建窗口功能修复无法保存与默认英文界面的问题通过自动升级配置文件解决3.2.0-Beta2018-12-24采用 TypeScript 重构软件以提升稳定性支持 Mac 版 CmdQ 标准退出快捷键修复无法切换语言的问题通过配置文件完善备份功能加入关闭文件、创建副本功能新建文档改为在新窗口打开允许关闭默认保存功能且下次打开同样生效。2019 年稳定期修复3.2.x3.2.1-Beta2018-12-27新增记录内容日志修复关闭文件时产生新文件、开启自动保存后产生新文件、关闭文件时标题显示不正确等问题3.2.22019-02-27新增粘贴图片功能修复部分 Linux 打开空白的问题3.2.32019-04-17修复备注中出现超链接打开错误的问题。当前仓库源码版本号 app/src/version.ts 为[3, 2, 3, 552]与History.md的最新版本 3.2.3 完全对应说明这份历史文档与仓库代码处于同一快照。多语言机制系统语言自动识别与配置文件强制覆盖3.0.0 正式支持多语言且默认基于系统语言设置也可以通过修改配置文件强制改变。这一设计在源码中有清晰的实现语言类型在 app/src/define.ts 中定义为Languages en | zh-CN | zh-TW | de对应仓库 locale 目录下的en.json、zh_CN.json、zh_TW.json、de.json四份语言资源新建配置时app/src/core/conf.ts 的getTemplate()调用 Electron 的app.getLocale()读取系统语言作为默认locale实际渲染语言由 app/src/core/i18n.ts 的getLang()从配置文件读取locale未配置则回退en并将zh-CN风格的分隔符替换为zh_CN以匹配资源文件名__()翻译函数在找不到对应语言文件时回退到en.json翻译项缺失时直接返回原编码保证界面不会因缺词而报错。由此可见通过配置文件强制改变语言的本质修改naotu.config.json中的locale字段后重启即可覆盖系统语言且回退机制保证了任意取值下界面可用。配置文件体系naotu.config.json 的字段与默认值自 2.0.2018 起逐步引入自定义默认保存路径日志开关窗口大小记忆等能力这些全部沉淀在单一配置文件naotu.config.json中。源码 app/src/core/conf.ts 定义了完整的配置模型NaotuConfig字段类型默认值说明localeLanguages系统语言界面语言可强制覆盖defSavePathstring用户数据目录下/backup默认保存目录通过重选自动保存的目录修改isAutoSavebooleantrue是否自动保存1.0.0 起默认开启可在菜单切换并持久化recentMaxNumnumber5最近打开文件列表最大条数recentlyIRecentlyItem[][]最近文件记录每项含time与pathifSaveLogToDiskbooleanfalse是否把日志保存到磁盘editorWindowWidth/editorWindowHeightnumber1000/800编辑器窗口尺寸退出时自动记录versionstringv0.1.2定义于 app/src/define.ts 的sConfigVersion配置文件版本号用于升级判断配置文件位于 Electron 的userData目录路径计算见 app/src/core/path.ts与日志目录/logs、备份目录/backup并列。主进程启动时通过 app/src/main.ts 调用naotuConf.upgrade()完成配置的创建与升级当旧配置version与模板版本不一致时将旧配置中的isAutoSave、locale、defSavePath、recentMaxNum、ifSaveLogToDisk、窗口尺寸与recently逐项迁移到新模板并回写——这正是 3.1.0 更新记录中自动升级配置文件以修复默认英文界面的实现依据。自动保存、备份与关闭文件语义自动保存功能贯穿整个版本历史0.1.2 添加、0.1.3 默认开启、0.1.7 默认取消、1.0.0 重新开启并保存到用户文件夹。在菜单中切换自动保存状态由 app/src/lib/recently.ts 的autoSave()完成将菜单勾选状态写入confObj.isAutoSave并持久化从而保证下次打开同样生效。1.0.3 将新建文件提示从覆盖当前文件改为关闭当前文件并在 3.2.0-Beta 正式加入关闭文件创建副本新建文档在新窗口打开三项能力对应 app/src/lib/window.ts 中的closeFile、cloneFile、newDialog等实现以及 app/src/lib/menu.ts 中文件菜单的完整编排新建文件CmdOrCtrlN新建窗口CmdOrCtrlShiftN打开文件CmdOrCtrlO关闭文件CmdOrCtrlW生成副本、另存为、导出、最近打开文件列表、清除最近记录等。最近打开的文件通过 app/src/lib/recently.ts 的addRecentlyRecord()维护记录打开时间格式YYYY-MM-DD HH:mm:ss按路径去重后置顶写入配置菜单展示数量受recentMaxNum限制默认 5 条并可一键clearRecently()清空。日志记录从有迹可循到内容日志日志能力分两个阶段落地2.0.2018 引入日志记录功能解决文件意外关闭或损坏时有迹可循3.2.1-Beta 进一步新增记录内容日志。底层实现基于 winston见 app/src/core/logger.ts日志级别为info格式为时间戳 [平台,进程号] 级别: 消息是否落盘由配置ifSaveLogToDisk决定开启后写入用户数据目录/logs下的naotu.err.log仅 error 级与naotu.log单文件上限 100M、最多 50 个文件、tailable 轮转非production环境额外挂载控制台输出便于开发调试保存脑图时 app/src/lib/file.ts 的saveKm()会记录文件路径 序列化后的脑图内容即更新记录所说的内容日志为排查异常关闭或文件损坏提供完整线索。主进程启动、窗口尺寸记录、文件打开/保存、unhandledRejection等关键事件都会写入日志见 app/src/main.ts构成完整的事故追踪链。窗口状态记忆与跨平台退出行为3.2.0-Beta 支持 Mac 版标准退出快捷键 CmdQ这与 app/src/main.ts 的窗口生命周期处理直接相关关闭窗口时close事件程序先读取当前窗口尺寸写入配置editorWindowWidth/editorWindowHeight再通知渲染进程执行退出流程防止直接销毁窗口导致文件未保存启动时若配置中的宽或高小于 700低于minWidth/minHeight则回退到默认 1000×800保证窗口尺寸总是合法window-all-closed时遵循 macOS 惯例非 darwin 平台直接app.quit()darwin 平台保留应用常驻等待用户显式 CmdQ 退出开发模式下注册CmdOrCtrlShiftD全局快捷键切换 DevTools。这些实现与 3.1.0新增窗口新窗口功能、3.2.0-Beta新建文档改为在新窗口打开共同构成了多窗口管理能力。图片能力粘贴、上传与 base64 存储图片功能历经1.0.0 隐藏上传图片功能 → 2.0.2018 恢复图片上传并改用 base64 存储 → 3.2.2 新增粘贴图片的演进。base64 存储意味着图片以文本形式内嵌于.kmJSON 文件中不依赖外部资源路径天然适合离线场景——这也是修复上传本地图片后无法导出 PNG问题的关键图片数据随文件整体序列化导出时可直接还原。.km文件的打开与保存统一由 app/src/lib/file.ts 的openKm()/saveKm()承担同时支持通过拖拽.km文件直接打开非.km后缀会弹出加载错误提示。版本号规则与当前状态0.0.2 起版本号自动生成1.5.2018 启用新版本号规则。当前仓库 app/src/version.ts 为[3, 2, 3, 552]即 3.2.3 的第 552 次构建app/src/define.ts 中的sVersionUrl指向远端版本文件、sReleasesUrl指向发布页供检查更新功能使用。配置文件版本独立编号为v0.1.2与软件版本解耦保证配置升级逻辑upgrade()可以独立演进而不受软件主版本影响。小结通过History.md的更新记录与app/src源码的对照可以清晰看到 DesktopNaotu 的三条演进主线一是离线能力不断强化下载、导入、base64 图片、自动保存、备份二是桌面体验持续完善跨平台发行、文件关联、最近文件、窗口管理、多语言、日志三是工程化水平逐步提升TypeScript 重构、版本号自动化、配置升级机制。对于想要深入理解该项目的开发者建议按 app/src/core/conf.ts → app/src/main.ts → app/src/lib/menu.ts 的顺序阅读即可快速掌握配置驱动、主进程编排与菜单能力的完整脉络。赞分享桌面应用前端【免费下载链接】DesktopNaotu桌面版脑图 (百度脑图离线版思维导图) 跨平台支持 Windows/Linux/Mac OS. (A cross-platform multilingual Mind Map Tool)项目地址https://gitcode.com/gh_mirrors/de/DesktopNaotu点击查看免费下载相关推荐桌面版脑图(DesktopNaotu) 使用教程桌面版脑图 DesktopNaotu 使用教程 项目介绍 桌面版脑图 DesktopNaotu 是基于百度脑图的本地化版本旨在帮助用户在没有互联网环境的情况下桌面应用前端DesktopNaotu桌面脑图跨平台离线思维导图终极指南DesktopNaotu桌面脑图跨平台离线思维导图终极指南 DesktopNaotu是一款功能强大的桌面版脑图工具让你在没有网络连接的情况下也能高效创建和管桌面应用前端桌面版脑图DesktopNaotu用户技术手册桌面版脑图DesktopNaotu用户技术手册 欢迎使用桌面版脑图这是一个基于百度脑图的离线应用确保您在无网络环境下也能高效地创建和编辑思维导图。以下是桌面应用前端上一篇如何快速上手YOLOv7实时目标检测新标杆的完整指南下一篇Thorium浏览器为什么这个性能怪兽值得你立即尝试创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表