Typora设置图片自动上传Github

环境

系统 : Windows 10

NodeJS : 14.21.3

概述

在使用 Typora 编辑Markdown笔记时需要将复制的截图上传到图床,并能够自动将上传后的路径替换掉图片粘贴时自动生成的路径。这样操作方便笔记查看和迁移。

这里使用Github做图床,优点:免费&没有容量的限制,缺点:国内网络访问很慢。

图片上传使用 PicGo-Core 插件,需要使用 npm 安装该插件。

一、安装PicGo-Core

1. 修改Typora图像上传设置

打开Typora,依次点击:文件 –> 偏好设置 –> 图像

勾选配置如下:

选择 上传图片 –> 勾选上传图片配置(2、3、4) –> 选择 PicGo-Core(command line) –> 点击 下载或更新

image-20231120205458979

PicGo-Core 安装成功

image-20231120210101191

2. 修改PicGo-Core配置文件

PicGo-Core 插件安装成功后,点击 打开配置文件 修改 PicGo-Core 配置文件。

默认路径:C:\Users\用户名\.picgo\config.json

配置文件内容如下:

{
  "picBed": {
    "github": {
      "repo": "github仓库名",
      "token": "github Token配置",
      "path": "img/",
      "customPath": "",
      "customUrl": "",
      "branch": "master"
    },
    "current": "github",
    "uploader": "github"
  },
  // 插件设置
  "picgoPlugins": {
  }
}

2.1 Github图床配置

在Github创建一个仓库作为 PicGo 上传图片的图床,并为 PicGo 创建 github token

2.1.1 新建图床仓库

image-20231120211152544

注意:图床仓库必须为 Public 权限。

图床仓库创建成功后,PicGo 配置文件(config.json)中 picBed.github.repo 的值就确定了,应该改为:GeorgeChan95/picgo-img

2.1.2 配置Token

打开Github –> 点击头像 –> Settings –> Developer settings –> 点击 Personal access tokens –> 点击 Tokens(classic) –> 选择 Generate new token –> 填写Note(token名称)\选择过期时间\选择token权限 –> 点击 Generate token 保存token

image-20231120212115905

image-20231120212234100

image-20231120212413138

image-20231120212946870

image-20231120213319506

复制token,填写到 PicGo 配置文件(config.json)的 picBed.github.token 中。

2.1.3 修改PicGo配置文件

配置文件(config.json)内容修改如下:

{
  "picBed": {
    "github": {
      "repo": "GeorgeChan95/picgo-img",
      "token": "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",
      "path": "img/",
      "customPath": "",
      "customUrl": "",
      "branch": "master"
    },
    "current": "github",
    "uploader": "github"
  },
  // 插件设置
  "picgoPlugins": {
  }
}

保存!!

2.1.4 验证PicGo图片上传

在Typora偏好设置里,点击 验证图片选项

image-20231120213939604

验证成功!

image-20231120214113620

二、为Picgo安装插件

到上一步已实现了图片的自动上传和替换markdown图片url的功能,但默认的图片上传其实有一些问题。

  • 问题1:默认会把所有图片上传到配置文件指定的 picBed.github.path 路径下,不会创建子文件夹,图片不好管理。

  • 问题2:默认不会给文件重命名,如果两个文件重名,粘贴上传就会出错。

所以需要为 Picgo 安装 super-prefix 插件,实现文件自动重命名和按日期创建文件夹存储文件。

1. 安装super-prefix插件

建议使用npm进行安装

npm install picgo-plugin-super-prefix

image-20231120215635966

2. 修改Picgo配置文件

添加 super-prefix 插件相关配置

默认路径:C:\Users\用户名\.picgo\config.json

{
  "picBed": {
    "github": {
      "repo": "GeorgeChan95/picgo-img",
      "token": "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",
      "path": "img/",
      "customPath": "",
      "customUrl": "",
      "branch": "master"
    },
    "current": "github",
    "uploader": "github"
  },
  // 插件设置
  "picgoPlugins": {
    "picgo-plugin-super-prefix": true
  },
  "picgo-plugin-super-prefix": {
    "prefixFormat": "YYYY/MM/DD/",
    "fileFormat": "YYYYMMDD-HHmmss"
  }
}

保存!!重启Typora!

2.1 配置解析

  • “prefixFormat”: “YYYY/MM/DD/“
    • 图片上传到仓库中会自动在 picBed.github.path 路径下,根据当前时间创建 年/月/日 文件夹,并将文件上传到改路径下
  • “fileFormat”: “YYYYMMDD-HHmmss”
    • 文件上传后按照上传时间重命名,格式为:YYYYMMDD-HHmmss

参考链接

https://www.cnblogs.com/yongdaimi/p/16300462.html


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 george_95@126.com