Typora + PicList 图床联动:写完文章图片自动上传

前言

2020 年我写过一篇 Typora 直传图片到 OSS 的教程,那时候需要装插件改源码、或者自己写 PHP 脚本调阿里云 SDK。费劲不说,还只能用阿里云 OSS。

后来我换到了 Cloudflare R2 做图床(免费额度大,没流量费),配合 PicList 做上传管理,顺带接 Sink 自动生成短链接。PicList 是 PicGo 的增强版,Typora 又原生支持 PicGo 协议。这三者串起来,体验比当年好太多了。

这篇更新一下:Typora 怎么跟 PicList 联动,实现粘贴图片自动上传。

安装 PicList

Terminal window
# macOS
brew install piclist --cask
# Windows
winget install Kuingsmile.PicList

装完启动,确认菜单栏 / 系统托盘有 PicList 图标,默认图床已设置为 R2。

配置 Typora

打开 Typora → 偏好设置 → 图像:

[图:Typora 图像偏好设置界面]

关键设置:

选项设置值
插入图片时上传图片
对本地位置的图片应用上述规则✅ 勾选
对网络位置的图片应用上述规则✅ 勾选
上传服务PicGo (app)
PicGo 路径选 PicList 的可执行文件路径

点击「验证图片上传选项」,Typora 会尝试上传一张测试图片。成功后弹出「上传成功」提示,并且返回图片 URL。

粘贴格式选择

PicList 支持多种输出格式。在 PicList 设置 → 常规设置 → 自定义链接格式:

格式示例适合
![$filename]($url)Markdown 图片Typora / Obsidian
$url纯 URL直接贴链接
<img src="$url">HTML网页

一般选 Markdown 格式就行,Typora 粘贴后自动生成 ![](url)

实际使用体验

配置好之后的工作流:

  1. 截图或复制图片 → 直接粘贴到 Typora
  2. Typora 自动调 PicList 上传到 R2
  3. PicList 自动生成短链接(如果你配了 Sink)
  4. 图片 URL 替换为短链接,继续写作

全程不需要离开 Typora 界面。跟 2020 年那个「先上传到图床网页、再把链接贴回来」的流程比,效率不在一个量级。

配合 Obsidian

如果你同时用 Obsidian,PicList 也支持 Obsidian 的图片上传。在 Obsidian 社区插件市场搜索安装 Image Auto Upload Plugin,然后在 PicList 设置里开启「监听端口」(默认 36677),Obsidian 插件会自动检测。

常见问题

上传失败:connection refused

PicList 没在运行,或者 Typora 路径配错了。确认 PicList 图标在系统托盘里,偏好设置里的 PicGo 路径指向正确。

上传成功但 Typora 里没替换链接

检查 Typora 的「插入图片时」是否设置为「上传图片」。如果选的是「复制到指定路径」,Typora 不会触发上传。

想用其他图床

PicList 支持 S3 兼容存储、GitHub、SM.MS、又拍云等一堆图床。在 PicList 里切默认图床即可,Typora 这边不用动。

图片想保留本地 + 上传

Typora 支持同时「复制到指定路径」和「上传」。在「插入图片时」下面勾选两个选项的规则即可 —— 图片既存本地目录、也上传到图床。

总结

从 2020 年手写 PHP 脚本上传 OSS,到现在 Typora + PicList 一键搞定,图床体验进步了很多。核心就是 PicGo 协议成了行业默认 ——Typora、Obsidian、VS Code 都能对接,PicList 又在这个协议上加了压缩、格式转换、短链接这些实用功能。

如果你还在手动往图床传图然后贴链接,试试这套组合。