本文非常适合 Electron 入门选手,墙裂推荐!

本文作者:HelloGitHub-蔡文心

大家好!这里是 HelloGitHub 推出的《讲解开源项目》系列,今天给大家带来的一款基于 Electron 和 PHP 实现的桌面脑图工具开源项目——DesktopNaotu

不知道各位小伙伴有没有发现,现在许多工作岗位与图表制作的接触越来越多,时不时你就会接到个加急制作图表任务。市面上的多数图表制作软件要么收费,要么让充 VIP。充个月卡,很有可能只用 1 次,就没用了。这两件事加在一起就像渣 * 一边 PUA 你,一边还骗你钱!

如果你身边有这样的朋友,请介绍给我,我来负责。

如果你没有,那你现在有了,因为很不幸我就是被 PUA 的一个

好产品收费当然无可厚非,不过你可是 HG 的读者,而我们 HG 的背后是开源世界!今天带来的 DesktopNaotu 是一个开源项目,一个完全免费的脑图制作工具。话不多说,让我们来看看它的使用说明和功能吧!

一、介绍

DesktopNaotu 是基于百度脑图的本地化版本,能够帮助你在没有互联网环境的情况下,依然可以使用脑图工具。

官网:https://inaotu.org/

1.1 跨平台

DesktopNaotu 目前支持 macOS、Linux 和 Windows 7/10。

1.2 功能

  • 包含百度脑图的基本功能
  • 支持本地 .km 文件的操作
  • 支持拖拽打开 .km 文件
  • 支持关联打开 .km 文件
  • 支持自动保存文件功能
  • 支持导出多种格式文件
  • 提供 百度脑图 文件的下载方式
  • 提供 ProcessOn 思维导图的下载方式

二、安装

2.1 下载安装包

2.2 解压

将 DesktopNaotu-darwin-x64 文件夹解压至应用程序目录。

2.3 启动

好了,到这一步软件已经能够启动了,但是大家可能注意到了菜单怎么是英文的呢,官网示例明明是中文的呀。没错这里的确是有个 bug,不过我已经找到了解决方案,请看下一步:

2.4 解决语言问题

目前测试了 Windows10 和 macOS 两个较为常用的平台,发现在 Windows10 下安装后能够显示中文语言。所以如果是 Windows10 用户就可以跳过这块内容了。

像我一样想要使用中文菜单的 macOS 用户请放心,我已将帮你们趟过这个坑了。

2.4.1 语言设置

在终端输入以下命令:

 cd '~/Library/Application Support/desktopnaotu'
vi naotu.config.json

接下来会看到以下信息,将其中的 locale: en 改为 locale: zh_CN

{
"locale": "en",
"defSavePath": "/Users/caim014/Library/Application Support/desktopnaotu/backup",
"isAutoSave": true,
"recentMaxNum": 5,
"recently": [{
"time": "2021-01-21 18:07:58",
"path": "/Users/caim014/Library/Application Support/desktopnaotu/backup/Main Topic1.km"
}, {
"time": "2021-01-20 15:57:05",
"path": "/Users/caim014/Library/Application Support/desktopnaotu/backup/Main Topic.km"
}],
"version": "v0.1"
}

最后 Esc 并输入 :wq 后回车。重启 Desktopnaotu 程序就能看到效果了。

好啦,到这为止你就可以正常使用 Desktopnaotu 来绘制脑图了。

三、技术栈

前端:

  • Electron:使用了 Electron 实现跨平台应用开发
  • TypeScript

后端:PHP

四、最后

在今天的文章中比较有意思的是设置语言问题,由于官方也没有针对这个问题做解释,加上之前我也没有接触过 Electron 框架,对桌面程序的配置文件也没有太多了解。为了解决语言设置问题,也是费了很大一番功夫,当然也可能是我比较菜: )

  1. 查阅项目仓库的 issue,没有找到相关提问
  2. 加入官方群询问官方。官方开发手边没有 Mac,无法直接帮忙解决,但是给了重要线索—— naotu.config.json 文件
  3. 使用 asar 工具解压 app.asar 在根目录寻找 naotu.config.json 文件。绕了很大的圈子还没解决,因为不在根目录下

最后,克隆代码到本地在编译时在控制台输出发现了 naotu.config.json 文件的路径。过程中也想放弃推荐这个开源项目,虽然我也可以只拿 Win10 平台做演示,但我认为这就等于将《开源讲解》中的讲解抛弃了。

这也算是做这个系列的乐趣之一了,之后也会给官方提交 PR 在 Readme 中补充这一点。

我是 HelloGitHub 团队的文心,如果你喜欢这篇文章,请给我点个赞吧,这将是我继续坚持下去的最大动力!


关注 HelloGitHub 公众号 收到第一时间的更新。

还有更多开源项目的介绍和宝藏项目等待你的发掘。

被收费绘图工具 PUA 了怎么办?来看看这个老实工具吧的更多相关文章

  1. 4款BI工具功能大对比,这款BI工具你不能错过!

    在这个信息爆炸式增长的时代,挖掘数据的潜在价值显得尤为重要.越来越多的人将目光聚集于商业智能领域--BI(Business Intelligence),通过数据分析软件对来自不同的数据源进行统一的处理 ...

  2. arcengine中自定义工具和自带工具条(ICommand)点击后和其他工具使用的冲突

    自己系统中本身对于放大缩小等功能直接是单独重写的,但是如果在加一个工具条具有相同功能的话两者之间会有一些冲突,为解决该冲突可以重写工具条的OnItemClick事件 该工具条命名为axTool 我本身 ...

  3. Cocos开发中性能优化工具介绍之Visual Studio内存泄漏检测工具——Visual Leak Detector

    那么在Windows下有什么好的内存泄漏检测工具呢?微软提供Visual Studio开发工具本身没有什么太好的内存泄漏检测功能,我们可以使用第三方工具Visual Leak Detector(以下简 ...

  4. Linux工具XFTP、Xshell(centos配置java环境 工具篇 总结一)

    ♣Xmanager5是什么? ♣安装XFTP ♣安装Xshell 1.Xmanager5(官网:https://www.netsarang.com/download/software.html)是全新 ...

  5. c#中@标志的作用 C#通过序列化实现深表复制 细说并发编程-TPL 大数据量下DataTable To List效率对比 【转载】C#工具类:实现文件操作File的工具类 异步多线程 Async .net 多线程 Thread ThreadPool Task .Net 反射学习

    c#中@标志的作用   参考微软官方文档-特殊字符@,地址 https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/toke ...

  6. 用 nodejs 写一个命令行工具 :创建 react 组件的命令行工具

    用 nodejs 写一个命令行工具 :创建 react 组件的命令行工具 前言 上周,同事抱怨说 react 怎么不能像 angular 那样,使用命令行工具来生成一个组件.对呀,平时工作时,想要创建 ...

  7. win7自带录像工具怎么打开?win7自带录像工具的使用方法

    http://www.xitongcheng.com/jiaocheng/win7_article_28327.html 制作教程的好帮手 win7自带录像工具怎么打开?win7自带录像工具的使用方法 ...

  8. 性能分析之工具使用——cpu、io 、mem【工具分析】

    nmon nmon 是一种在aix 与各种 Linux 操作系统上广泛使 用的监控与与分析工具,他主要记录以下内容: • cpu 占用率 • 内存使用情况 • 磁盘I/O 速度.传输和读写比率 • 文 ...

  9. 8个实用的SVG工具,20 个有用的 SVG 工具,五款超实用的开源SVG工具

    8个实用的SVG工具 [导读] 你还在为没有好用的SVG工具而发愁吗?开发人员的福音来啦!小编为大家收集罗列了8款实用的SVG工具,让我们一起来看看吧! SVG可缩放矢量图形(Scalable Vec ...

随机推荐

  1. Linux下Too many open files问题排查与解决

    作者: Grey 原文地址: Github 语雀 博客园 Too many open files是Linux系统中常见的错误,从字面意思上看就是说程序打开的文件数过多,不过这里的files不单是文件的 ...

  2. 攻防世界 - Web(一)

    baby_web: 1.根据题目提示,初始页面即为index,将1.php改为index.php,发现依然跳转成1.php,尝试修改抓包,出现如下回显, 2.在header中获取flag, flag: ...

  3. Ubuntu16.04安装MySQL8.0

    1.Ubuntu换源(阿里云) sudo cp /etc/apt/sources.list /etc/apt/sources.list.baksudo vi /etc/apt/sources.list ...

  4. ctfhub技能树—信息泄露—备份文件下载—网站源码

    打开靶机 查看网页内容 使用dirsearch进行扫描 命令如下 python3 dirsearch.py -u http://challenge-91f1f5e6a791ab02.sandbox.c ...

  5. bash shell数组使用总结

    本文为原创博文,转发请注明原创链接:https://www.cnblogs.com/dingbj/p/10090583.html  数组的概念就不多说了,大家都懂! shell数组分为索引数组和关联数 ...

  6. [Poi2005]Piggy Banks小猪存钱罐

    题目描述 Byteazar有 N 个小猪存钱罐. 每个存钱罐只能用钥匙打开或者砸开. Byteazar已经把每个存钱罐的钥匙放到了某些存钱罐里. Byteazar 现在想买一台汽车于是要把所有的钱都取 ...

  7. uni-app通过canvas实现手写签名

    分享一个uni-app实现手写签名的方法 具体代码如下: <template> <view > <view class="title">请在下面 ...

  8. 通过电脑浏览器调试真机h5兼容问题

    前言 在h5开发过程中,起初我们使用PC浏览器的手机模式打开开发中的页面,并使用控制台进行调试,但实际真机兼容性问题无法调试到:在这种情况下,我们通常使用vConsole(即移动端的控制台)来调试,但 ...

  9. Certbot CA 证书 https

    certbot (base) a@test:~# certbot --help - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ...

  10. 前序遍历 排序 二叉搜索树 递归函数的数学定义 return 递归函数不能定义为内联函数 f(x0)由f(f(x0))决定

    遍历二叉树   traversing binary tree 线索二叉树 threaded binary tree 线索链表 线索化 1. 二叉树3个基本单元组成:根节点.左子树.右子树 以L.D.R ...