最近突然發(fā)現(xiàn)Typora更新了, 新增了原生對(duì) PicGo-Core 的調(diào)用, 可以自動(dòng)上傳markdown內(nèi)的圖片, 于是趕緊嘗鮮一波. 使用過(guò)程中遇到了一點(diǎn)坑, 但還是摸索著解決了.
1. 安裝PicGo-Core
因?yàn)門ypora已經(jīng)原生支持PicGo-Core, 所以只需要在軟件內(nèi)下載一下就可以了(PS: 下面這張圖就是用的自動(dòng)上傳, 很方便)
首先點(diǎn)擊上面紅色1的位置, 選擇PicGo-Core, 再點(diǎn)3(不要問(wèn)我2去哪兒了....就當(dāng)他不存在), 并等待下載完成.
2. 安裝smms v2 API插件
這里是個(gè)大坑.
因?yàn)镻icGo-Core默認(rèn)的smms使用的是v1的api, 而目前smms已經(jīng)停用了該版本API, 所以導(dǎo)致PicGo-Core在默認(rèn)配置下, smms圖床完全不可用
翻了一下PicGo-Core的Github發(fā)現(xiàn)作者目前還沒(méi)有把內(nèi)置的smms api升級(jí)到v2, 但是有其他開(kāi)發(fā)者通過(guò)第三方插件的方式解決了這個(gè)問(wèn)題, 所以我們需要安裝這個(gè)v2版本的smms-user插件.
直接點(diǎn)擊紅色5的位置, 根據(jù)文本內(nèi)容找到PicGo-Core的程序目錄
注意, 因?yàn)槟J(rèn)的smms api已經(jīng)不可用, 這里肯定會(huì)上傳失敗, 不用管
找到目錄后我們在picgo的目錄下啟動(dòng)命令行, 執(zhí)行如下命令, 并等待安裝成功
.\picgo.exe install smms-user
3. 配置PicGo-Core
安裝完成之后點(diǎn)擊紅色4的位置(紅標(biāo)順序不代表點(diǎn)擊順序), 打開(kāi)PicGo-Core的配置文件, 按照下面的格式無(wú)腦全選替換就行
{
"picBed": {
"current": "smms-user",
"uploader": "smms-user",
"smms-user": {
"Authorization": "這里替換成你自己的"
},
"transformer": "path"
},
"picgoPlugins": {
"picgo-plugin-smms-user": true
}
}
沒(méi)有Authorization的自己去這里申請(qǐng)一個(gè): https://sm.ms/home/apitoken
申請(qǐng)前需要注冊(cè)一個(gè)賬號(hào), 這個(gè)沒(méi)啥難度, 就不細(xì)說(shuō)了.
4. 體驗(yàn)效果
保存配置之后再點(diǎn)紅標(biāo)5的位置應(yīng)該就可以正常上傳圖片了, 我們直接在Typora內(nèi)粘貼一張圖片, 就會(huì)有相應(yīng)的提示
或者在已有的本地圖片上面按右鍵, 也可以彈出上傳圖片的按鈕, 整個(gè)操作非常便捷, 上傳速度也挺快的.
5. 踩坑
總的來(lái)說(shuō)還是遇到了一些坑的, 接下來(lái)說(shuō)一下坑點(diǎn):
-
PicGo-Core并沒(méi)有編譯Windows的版本, 所以Typora的作者是fork原版之后重新打包的, 這也導(dǎo)致了版本不能及時(shí)的跟主體保持同步更新.
我之前遇到smms v1 api不可用的問(wèn)題時(shí), 看到PicGo-Core的作者說(shuō)會(huì)在新版本解決這個(gè)問(wèn)題, 目前PicGo-Core的最新版本是1.4.6, 而Typora fork的版本是1.4.4, 我一開(kāi)始還以為下載一個(gè)新版本就能解決, 特意跑去重新編譯, 然而弄完發(fā)現(xiàn)1.4.6還是存在該問(wèn)題, 于是遇到了第二個(gè)坑.
-
既然換版本不能解決, 我決定換一個(gè)圖床試試, 翻了半天文檔發(fā)現(xiàn)全是可視化配置, 然而我的PicGo-Core只有json文本文件配置, 最后發(fā)現(xiàn)原來(lái)picgo(PicGo-Core)和PicGo(PicGo-Electron)是不一樣的
-
調(diào)研了一下各個(gè)圖床, 發(fā)現(xiàn)還是smms免費(fèi)好用, 所以決定使用作者推薦的那個(gè)v2版本smms api插件.
然而安裝完之后不知道在哪填A(yù)uthorization, 去翻文檔發(fā)現(xiàn)這么一句繞口令:
如果你為picgo開(kāi)發(fā)了一個(gè)插件,如果這個(gè)插件本身需要一些配置項(xiàng)锌奴,那么這個(gè)插件對(duì)應(yīng)的配置應(yīng)該直接放置在配置文件下的同名配置里
? 思考了一下, 我以為是這樣
{ "picBed": { "current": "smms", "uploader": "smms", "transformer": "path" }, "picgoPlugins": { "picgo-plugin-smms-user": true }, "picgo-plugin-smms-user": { "Authorization": "xxxx" } }
? 然而測(cè)試上傳的時(shí)候發(fā)現(xiàn)安裝插件之后跟安裝之前沒(méi)有一點(diǎn)變化.
? 思考&測(cè)試一番之后, 我發(fā)現(xiàn)插件并不會(huì)自動(dòng)注入到smms圖床配置中.
? 大概要手動(dòng)修改圖床為插件名才能使用, 于是:
{ "picBed": { "current": "smms-user", "uploader": "smms-user", "transformer": "path" }, ....
? 再進(jìn)行測(cè)試又失敗了, 但是這次不是說(shuō)v1接口過(guò)時(shí), 而是說(shuō)找不到Authorization的配置項(xiàng)
- 開(kāi)始以為是我手動(dòng)寫的格式不對(duì), 所以又去翻了文檔, 發(fā)現(xiàn)了PicGo-Core提供了命令行參數(shù)設(shè)置
.\picgo.exe set plugin smms-user
? 根據(jù)提示填寫了Authorization, 結(jié)果自動(dòng)生成的配置文件和我剛才手動(dòng)寫的一模一樣, 但就是不行.
? 最后又思考了一下, 看了看其他圖床的配置方法, 決定仿照微博的配置, 試一下picBed.smms-user這種寫法, 最后終于成功了= =
6. 總結(jié)
雖然整個(gè)過(guò)程坑挺多的, 但畢竟這個(gè)功能也是新出的, 相信之后會(huì)越來(lái)越完善的
配置完之后用起來(lái)真的爽, 以后從Typora粘文章到博客上再也不用手動(dòng)上傳替換圖片了~