1. 背景
今天寫Linux操作的博客,涉及到很多操作過程的截圖,本人使用windows下Typora作為本地Markdown軟件,經常在Windows用Typora的小伙一定遇到過一個問題:不管是用截圖工具截圖后直接粘貼,還是通過選擇文件夾選擇圖片的方式,在typora下都會是圖片的本地鏈接,並不會給你上傳到遠程服務器。
這樣就會導致個尷尬的問題,你辛辛苦苦寫的圖文並茂內容發送給其他小伙伴時,對方卻完全看不到那些圖片。然后得找個地方把圖片上傳上去后,一張張替換成網絡圖片,實在麻煩。
我就在網絡上到處找,功夫不負有心人,終於找到了有位大佬寫的一個小插件:typora-plugins-win-img,插件的github地址: https://github.com/Thobian/typora-plugins-win-img
ps:MacOS下,Typora官方支持iPic插件,使用蘋果本的小伙伴請自行了解。
2. 在Typora中使用
typora-plugins-win-img 插件在編輯時,跟之前沒有任何差別。不論是直接粘貼QQ、微信等工具的截圖,還是通過“編輯->圖片工具->插入本地圖片”,都會自動幫你將圖片上傳到網絡服務器,並替換文件中的圖片地址為網絡圖片地址。
注意的小細節:
- 如圖片原本就是網絡圖片地址,插件將保持原鏈接不處理(正則匹配:
/^(https?:)?\/\//i
); - 如發現圖片鏈接還是本地文件地址,沒有被正常上傳,可以點擊下對應的圖片將再次觸發上傳操作;
- 不論圖片上傳成功或者失敗,編輯器頂部都會有提醒;
3. 安裝
3.1 安裝教程環境說明
- 作者推薦typora版本:0.9.68 (Windows x86) (去下載)
- 本人使用typora版本為0.9.83,在安裝過程中出現問題,詳情見安裝布置具體說明。
- typora安裝目錄:
C:\Program Files (x86)\Typora
,可以安裝在其他目錄
3.2 安裝步驟
-
下載插件代碼;
-
備份typora安裝目錄下的
resources\app
文件夾下window.html
文件,如果重啟后Typora中的偏好設置打不開,可以把備份下來的window.html
文件恢復回去。 -
復制插件相關代碼文件:
window.html
、plugins
; -
將復制的插件代碼文件,粘貼到typora安裝目錄下的
resources\app
文件夾下; -
安裝完成,重啟typora
-
如果重啟后Typora中的偏好設置打不開,把備份下來的
window.html
文件恢復,在恢復回去的文件中,搜索<script src="./app/window/frame.js" defer="defer"></script>
在其后面加上一行:<script src="./plugins/image/upload.js" defer="defer"></script>
然后再試試是否能恢復正常。 -
覆蓋安裝的方式在某些特定版本下會觸發bug,如果還有其他BUG,建議按照這個 issue 中的方法修改
window.html
文件而不是直接覆蓋它,plugins
是新增目錄不存在覆蓋的問題。
3.3 配置圖床
我首先根據作者建議配置了github作為圖床,發現不能上傳,然后根據CSDN zlj1217 的方法配置了阿里雲,發現只能上傳不能讀取,做后無奈自己去搞了騰訊雲,配置完發現能用了,這里將騰訊雲的配置總結一下,如果有人搞出github與阿里雲,歡迎@我一下,哈哈。
3.3.1 插件配置
更換圖片上傳接口地址,打開 plugins/image/upload.js
文件,按照下面的說明進行配置:
(function($){
// 配置信息
var setting = {
target:'tencent', // 要配置的服務器,其他服務器名稱見文件中備注信息
//target=tencent 時涉及的配置參數
tencent : {
// 添加子用戶鏈接:https://console.cloud.tencent.com/cam
// 必須參數,使用自己的騰訊雲COS改成自己的配置
Bucket: 'youbiger-1300715409', // 對象存儲->存儲桶列表(存儲桶名稱就是Bucket)
SecretId: '12345', // 訪問控制->用戶->用戶列表->用戶詳情->API密鑰 下查看
SecretKey: '123456789', // 訪問控制->用戶->用戶列表->用戶詳情->API密鑰 下查看
Region: 'ap-shanghai', // 對象存儲->存儲桶列表(所屬地域中的英文就是Region)
Folder: 'typora', // 可以把上傳的圖片都放到這個指定的文件夾下
// 可選參數
FileParallelLimit: 3, // 控制文件上傳並發數
ChunkParallelLimit: 3, // 控制單個文件下分片上傳並發數
ChunkSize: 1024 * 1024, // 控制分片大小,單位 B
ProgressInterval: 1, // 控制 onProgress 回調的間隔
ChunkRetryTimes: 3, // 控制文件切片后單片上傳失敗后重試次數
UploadCheckContentMd5: true, // 上傳過程計算 Content-MD5
},
// 其他配置
}
3.3.2 騰訊雲參數獲取
3.3.2.1 新建子用戶,獲取SecretId和SecretKey
如果有子用戶,直接查詢子用戶API中SecretId和SecretKey填寫,如果沒有按一下步驟進行。
- 騰訊雲控制台 --> 訪問控制 --> 用戶列表 --> 新建用戶 --> 自定義創建 --> 可訪問資源並接受消息
- 輸入創建用戶信息,訪問方式選 編程訪問 --> 掃碼確認
- 搜索存儲桶,勾選圖中的選項 --> 完成,下載安全憑證txt文件,安全憑證文件中包含SecretId和SecretKey
3.3.2.2 創建存儲桶,獲取Bucket及Region
- 騰訊雲控制台 --> 對象存儲 --> 創建存儲桶
- 填寫存儲桶配置信息
- 完成后到基礎配置中找到空間名稱和所屬地域,對應Bucket和Region
- 配置子用戶及權限
在權限管理中,增加子賬號(子賬號首頁訪問管理中找),權限設置為讀,寫就可以了。
到這里就完成了,重啟Typora,新建文件並插入圖片(本地,粘貼均可),上傳成功軟件上方會有提示信息,點擊圖片可以發現鏈接變為騰訊雲鏈接了,然后就可以快樂的使用了。