使用Typora+gitee+坚果云实现文档同步

1,538 阅读3分钟

[toc]

背景

最近想开始写一些文章,一个是作为业余消遣(游戏的替代品),另外也是自己的工作、生活和学习的一个记录。工欲善其事,必先利其器,我需要选择一款适合我的笔记软件。主要有以下需求:

  • 跨平台,多终端,打开任何一台机器,都能够继续写
  • 实时同步
  • 支持Markdown

最开始我使用的是印象笔记,印象笔记的专业版能够支持我的这些需求,但是印象笔记的Markdown编辑器使用起来并不是那么舒服。并且md文件中添加的图片如果想要上传到博客,就得一张一张的上传。从功能来看,印象笔记功能很齐全,比如网页截取和微信、微博转存笔记等功能都很好用,但是仅从写Markdown笔记的角度,印象笔记并不是那么的完美。

image-20211014195133539

选择Markdown编辑器——Typora

基于上述原因,我想选择一款更加专业的Markdown编辑器。基于我的需求,最终选择了Typaro这个软件。

选择它的原因有以下几点:

  • 免费

  • 美观,这个编辑器真的很和我的口味

  • 实时预览,支持多种模式

    • 源代码模式
    • 打字机模式
    • 专注模式
  • 人性化,偏好设置中有很丰富的Markdown配置项,可根据自己的喜好进行修改配置。

  • 支持导出各种格式。typora+pandoc可以支持Markdown导出多种格式。

  • 配合PicGo,可以同步上传图床,这一点是我最喜欢的,可以大大的提升写笔记的效率。本文便介绍Typora+PicGo+Gitee来同步上传图床

Typora图像偏好设置

打开 Typora 的偏好设置窗口,点击左侧的**「图像」选项卡,在「插入图片时…」**下面有一个下拉框,里面有这样几个选项,如下图所示。

image-20211014201853484

  • **「无特殊操作」**是默认选项。
  • **「复制图片到当前文件夹(./)」**意思是你在插入图片时,将图片复制到你正在编辑的 Markdown 文件所在的目录下。
  • **「复制图片到 ./filename.assets文件夹」意思是,在你插入图片时,会在当前目录下创建一个名为{filename}.assets 文件夹」**意思是,在你插入图片时,会在当前目录下创建一个名为`{filename}.asset的文件夹,然后把图片保存在这个文件夹下,其中${filename}`指的是当前你正在编辑的Markdown文件的文件名。
  • **「上传图片」**就是在你插入图片时,使用图片上传服务将图片上传到服务器。这个具体的设置请参考下一节「上传图片」。
  • **「复制到指定路径」**当你选择这个选项后,会出现一个输入框让你输入保存图片的路径,这里也可以使用${filename}来指代当前编辑的Markdown文件的文件名。也可以点击右边的文件夹按钮在弹出的对话框中选择一个路径。

我使用的配置如下:

image-20211014202146361

​ 因为我对YAML不了解,因此没有勾选。

因为如果你在Markdown文件中使用了图片,那说明这张图片和你写的东西是有关联的,那最好把图片和 Markdown 文件放在一起,这样也便于以后查找。还要注意的是,如果你选择了 「复制图片到当前文件夹(./)」,那么要把下面的 「优先使用相对路径」 选项勾选上,这样,Typora 在引用图片时就会使用相对路径,以后即使你移动 Markdown 文件到别的目录下,只要图片随着 Markdown 文件一起移动, Typora 就永远都能找到这张图片。再配合接下来要讲的 「上传图片」,就能使 Markdown 文件的维护成本最小化。

此时插入图片,就会自动的把该图片保存到${filename}.asset目录中,markdown笔记中的图片路径也会是asset目录中图片的路径。如下图:

![image-20211014215607368 - 副本](gitee.com/zyfzjuer/fi… - 副本.png)

PicGo+Gitee上传图片

Gitee创建图床仓库

Gitee是开源中国(OSChina)推出的基于Git的代码托管服务,他是目前中国最大的代码托管的工具,实际上,除了代码,它还支持图片存储。

使用Gitee的优点是比较方便,稳定,且速度较快。缺点是上传图床最大大小为1M,不过目前我使用图床的需求也就是写笔记。Gitee应该也够用。

步骤一:新建仓库

按照下图进行配置,需要注意的是仓库需要选择为开源。另外,需要留意仓库的归属和路径,这个是后续我们需要在PicGo的配置文件中进行配置的。

image-20211014203804605

创建私人令牌

仓库创建好后,我们要在[个人设置]->[私人令牌]中创建私人令牌(Token),该令牌的权限可以按照下图进行配置,需要记录生成的Token。进行到这里,Gitee基本已经配置好了。

image-20211014204152892

安装并配置PicGo

安装PicGo

PicGo是一个用于快速上传图片并获取图片 URL 链接的工具,支持多种图库。Topora已经原生支持PicGo插件,我们直接在软件内安装即可。

image-20211014204815996

这里的下拉选单有PicGo-Core(command line)PicGo(app)Custom Command

image-20211014204928683

PicGo.app 和 PicGo-Core 的区别
  • 目前 PicGo.app 仅有中文版。
  • PicGo.app 提供了图形用户界面,因此与命令行界面的 PicGo-Core 相比,前者更加容易使用。
  • 使用 PicGo-Core 上传图片耗费的计算机资源更少,因为只有在上传图片的时候 PicGo-Core 的进程才会运行,上传结束后(不管成功还是失败),进程便会退出。但是如果使用 PicGo.app 上传,PicGo.app 会一直保持运行,无法自动退出。并且,PicGo.app 是一个电子应用程序,它会消耗更多计算资源。
  • PicGo.app 和 PicGo-Core 使用不同的配置文件,但是你可以把 PicGo.app de 配置文件中的picBed下面的 json 对象复制到 PicGo-Core 的配置文件中。
  • PicGo.app 还提供了其他的特性,比如上传历史、自动重命名等。
自定义命令

还可以通过自定义命令去上传图片,在自定义的命令中,可以使用上面没有列出的工具或者甚至是你自己写一个工具或者脚本。Typora 会自动将所有需要上传的图片追加到你填写的命令后面。你自定义的命令必须在标准输出中输出图片的 URL,一个占一行,Typora 会根据上传图片的数量从标准输出的最后 N 行中读取图片的 URL。

我在这里没有使用自定义命令,因此就没有去了解如何使用,不再展开。

安装插件

需要安装gitee-uploader插件来使PicGo支持Gitee图床上传。

找到PicGo的路径

首先,我们需要找到picgo的路径,可以通过点击上传服务中的验证图片上传选项找到picgo的路径。

image-20211014210221680

安装Node.js

我们在命令行窗口中切换到该目录中,输入以下命令:

.\picgo.exe install gitee-uploader

需要注意的是,安装该插件需要使用到npm,因此我们需要安装node.js环境。否则则会有以下报错:

image-20211014210510386

我们可以在下载 | Node.js 中文网 (nodejs.cn)中下载node.js,安装即可。

安装Gitee插件

安装完成后,重新执行以下命令,即可安装成功。

.\picgo.exe install gitee-uploader

image-20211014211133205

配置PicGo

在【偏好设置】->【上传服务设定】中打开配置文件,按照以下代码进行配置

{
  "picBed": {
    "current": "gitee",
    "uploader": "gitee",
    "gitee": {
      "branch": "master",
      "customPath": "yearMonth",
      "customUrl": "",
      "path": "img/",
      "repo": "zyfzjuer/figurebed1",  # "repo": "gitee用户名/gitee仓库名"
      "token": "e07d82fcc03eee77a924c266ac1f8297"  # "token": "自己的token"
    }
  },
  "picgoPlugins": {
    "picgo-plugin-gitee-uploader": true
  }
}

配置好后,再点击验证图片上传,即可查看是否配置成功。

image-20211014212413059

图片上传成功,可以在Gitee的仓库中查看到图片已经上传。

image-20211014212302491

上传图片

我们新建一个test.md文档,插入一个图片,按照之前的配置,该图片会被保存在./test/asset文件夹中,如下图:

![image-20211014213031090 - 副本](gitee.com/zyfzjuer/fi… - 副本.png)

我们在图片上点击右键,下拉菜单中会有上传图片的选项,点击它,我们的图片就会上传到Gitee图床中,并且该图片的链接及变成了图床中图片的链接。

![image-20211014213423941 - 副本](gitee.com/zyfzjuer/fi… - 副本.png)

除了这种方法,我们还可以在【格式】>【图像】中上传所有本地图片。如下图:

image-20211014213524601

需要注意的是,如果图片所在中存在中文字符,那么直接上传所有本地图片就会失败,需要一个个上传。这个是比较麻烦的地方

使用坚果云实现文档同步

坚果云的免费账户每个月可以有1G的免费上传流量和3G的免费下载流量

image-20211014213914494

使用坚果云的方法不再赘述,坚果云的官方指导手册说的很清楚。

image-20211014213933195

总结

  • 使用Typora进行Markdown文档撰写,美观!舒适!😍

  • 配置**「复制图片到 ./${filename}.assets 文件夹」**,便于文档迁移。✔

  • 使用PicGo+Gitee,自动同步图片至图床!👏

  • 搭配使用坚果云,实时同步,多终端编辑~😊

参考

Typora使用技巧之插入图片及图片上传 - 知乎 (zhihu.com)