typimg: typora中一鍵上傳圖片到博客園(工具開源)

来源:https://www.cnblogs.com/iorson/archive/2022/11/26/16928227.html
-Advertisement-
Play Games

typimg是一款為typora編輯器提供圖像自定義上傳服務的工具,該工具將在typora中輸入的網路圖片、本地圖片、剪貼板圖片/截圖上傳到博客園,支持在MacOS、Windiws、Linux三個平臺上運行。 ...


項目介紹

iShot2022-11-26 20.18.01

項目背景
個人經常使用Typora這一軟體,在編寫md文檔時,圖片可以暫存本地,文章中可以使用本地圖片的絕對路徑或相對路徑,痛點就是不利於以後文檔的遷移和平臺的變化,因此需要將文檔的圖片存放在雲端並提供遠程訪問的url,個人搭建圖床或使用OSS成本有點高(殺雞焉用牛刀!),無意間看到了 metaweblog 的文檔,發現博客園是遵循這一規範的博客系統,加上本人也需要在博客園上發表一些東西,能用平臺提供的原生圖床服務支持是最好不過啦,之後又發現網上針對Typora開發的博客園圖片上傳工具很少,且質量參差不齊,無奈就自己用python實現了最初的版本供自己日常使用(依賴本機python環境),隨著golang學習的深入,於是就想著用golang實現一版無需依賴特定編程環境、可跨平臺使用的圖片上傳工具,typimg工具由此誕生啦!


項目地址
點擊訪問github:typimg項目
點擊下載typimg工具1.0版本

命令介紹

image.png

主要使用的有以下兩個

typimg init

typimg init:初始化項目,在正式使用前必須執行該命令

image.png

typimg upload

typimg upload:上傳圖片的命令,返回上傳後的博客園圖片鏈接

網路圖片、本地圖片、截圖等可直接被Typora識別並調用該命令,返回的圖片鏈接將插入到typora文檔中

image.png

typimg使用流程

進入 https://i.cnblogs.com/settings 頁面,滑到頁面最下方,點開其他設置。

  1. 需要選中允許 MetaWeblog 博客客戶端訪問
  2. 登錄名、訪問令牌、訪問地址和typimg工具提示的一致,按順序輸入即可
  3. 最後點擊保存退出,然後再用typimg工具登錄

image.png

關於MeatWeblog訪問令牌,點擊查看後複製即可:

image.png

如果沒有的,點擊訪問令牌彈窗右下角 **創建令牌** 按鈕,生成後再複製:

image.png

最後將給出的圖片上傳命令複製並粘貼到typora即可:

image.png

Typora配置

image.png

可以點擊驗證圖片上傳選項測試一下:

image.png

問題 & 解決方案

提示permission denied

chmod命令授權即可。

image.png


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 摘要:在競爭如此激烈的當下,作為一名IT新人,怎麼才能讓HR眼前一亮,從萬千簡歷中脫穎而出成為最亮的那個崽呢? 本文分享自華為雲社區《【一行代碼秒上雲】連夜自建網站背刺我的求職對手們 !》,作者:AppCloud小助手。 前言 在競爭如此激烈的當下,作為一名IT新人,怎麼才能讓HR眼前一亮,從萬千簡 ...
  • Apache-Commons-* 字元串 判斷字元串是否為空白字元串 以前判斷字元串是否為空: if ((name == null) || (name.isEmpty())){} 使用 apache-common-lang3 的 StringUtils: void testIsBlank() { / ...
  • 伺服器端渲染技術02 11.EL表達式 11.1EL表達式介紹 EL表達式全稱:Expression Language,是表達式語言 EL表達式主要是代替jsp頁面的表達式腳本 EL表達式輸出數據時,比jsp的表達式腳本簡潔 EL表達式基本語法:${key} 底層其實走的還是jsp表達式腳本,可以理 ...
  • Lambda 表達式(Lambda Expression),相信大家對 Lambda 肯定是很熟悉的,畢竟我們數學上經常用到它,即 λ 。不過,感覺數學中的 Lambda 和編程語言中的 Lambda 表達式沒啥關係,要說有關係就是都有 Lambda 這個詞,噢!當然還有一個關係就是 Lambda ... ...
  • 1.匿名函數 # 1.匿名函數lambda # 簡化代碼 減少占用的記憶體 print('1.匿名函數lambda') def func(): print(10) func() func = lambda: print(10) # 出現警告的原因是: # 因為你把lambda表達式賦給了另一個變數。 ...
  • Matplotlib初相識 認識matplotlib Matplotlib是一個Python 2D繪圖庫,能夠以多種硬拷貝格式和跨平臺的互動式環境生成出版物質量的圖形,用來繪製各種靜態,動態,互動式的圖表 一個最簡單的繪圖例子 matplotlib的圖像都是畫在對應的figure上,可以認為是一個繪 ...
  • 好家伙,前端出了點bug 我們來搞定後端先: 後端我們用的框架是Spring boot 資料庫:MySQl 代碼已開源,連接在最後 新建項目: 只點Java Web 項目目錄如下: 1.首先,我們在pom.xml文件中導入第三方包: web服務,mysql連接驅動等一系列包 pom.xml文件: < ...
  • 大小端的原理 對於一個由2個位元組組成的16位整數,在記憶體中存儲這兩個位元組有兩種方法:一種是將低序位元組存儲在起始地址,這稱為小端位元組序;另一種方法是將高序位元組存儲在起始地址,這稱為大端位元組序。即 大端是高位元組存放到記憶體的低地址 小端是高位元組存放到記憶體的高地址 假如現有一32位int型數0x123456 ...
一周排行
    -Advertisement-
    Play Games
  • Timer是什麼 Timer 是一種用於創建定期粒度行為的機制。 與標準的 .NET System.Threading.Timer 類相似,Orleans 的 Timer 允許在一段時間後執行特定的操作,或者在特定的時間間隔內重覆執行操作。 它在分散式系統中具有重要作用,特別是在處理需要周期性執行的 ...
  • 前言 相信很多做WPF開發的小伙伴都遇到過表格類的需求,雖然現有的Grid控制項也能實現,但是使用起來的體驗感並不好,比如要實現一個Excel中的表格效果,估計你能想到的第一個方法就是套Border控制項,用這種方法你需要控制每個Border的邊框,並且在一堆Bordr中找到Grid.Row,Grid. ...
  • .NET C#程式啟動閃退,目錄導致的問題 這是第2次踩這個坑了,很小的編程細節,容易忽略,所以寫個博客,分享給大家。 1.第一次坑:是windows 系統把程式運行成服務,找不到配置文件,原因是以服務運行它的工作目錄是在C:\Windows\System32 2.本次坑:WPF桌面程式通過註冊表設 ...
  • 在分散式系統中,數據的持久化是至關重要的一環。 Orleans 7 引入了強大的持久化功能,使得在分散式環境下管理數據變得更加輕鬆和可靠。 本文將介紹什麼是 Orleans 7 的持久化,如何設置它以及相應的代碼示例。 什麼是 Orleans 7 的持久化? Orleans 7 的持久化是指將 Or ...
  • 前言 .NET Feature Management 是一個用於管理應用程式功能的庫,它可以幫助開發人員在應用程式中輕鬆地添加、移除和管理功能。使用 Feature Management,開發人員可以根據不同用戶、環境或其他條件來動態地控制應用程式中的功能。這使得開發人員可以更靈活地管理應用程式的功 ...
  • 在 WPF 應用程式中,拖放操作是實現用戶交互的重要組成部分。通過拖放操作,用戶可以輕鬆地將數據從一個位置移動到另一個位置,或者將控制項從一個容器移動到另一個容器。然而,WPF 中預設的拖放操作可能並不是那麼好用。為瞭解決這個問題,我們可以自定義一個 Panel 來實現更簡單的拖拽操作。 自定義 Pa ...
  • 在實際使用中,由於涉及到不同編程語言之間互相調用,導致C++ 中的OpenCV與C#中的OpenCvSharp 圖像數據在不同編程語言之間難以有效傳遞。在本文中我們將結合OpenCvSharp源碼實現原理,探究兩種數據之間的通信方式。 ...
  • 一、前言 這是一篇搭建許可權管理系統的系列文章。 隨著網路的發展,信息安全對應任何企業來說都越發的重要,而本系列文章將和大家一起一步一步搭建一個全新的許可權管理系統。 說明:由於搭建一個全新的項目過於繁瑣,所有作者將挑選核心代碼和核心思路進行分享。 二、技術選擇 三、開始設計 1、自主搭建vue前端和. ...
  • Csharper中的表達式樹 這節課來瞭解一下表示式樹是什麼? 在C#中,表達式樹是一種數據結構,它可以表示一些代碼塊,如Lambda表達式或查詢表達式。表達式樹使你能夠查看和操作數據,就像你可以查看和操作代碼一樣。它們通常用於創建動態查詢和解析表達式。 一、認識表達式樹 為什麼要這樣說?它和委托有 ...
  • 在使用Django等框架來操作MySQL時,實際上底層還是通過Python來操作的,首先需要安裝一個驅動程式,在Python3中,驅動程式有多種選擇,比如有pymysql以及mysqlclient等。使用pip命令安裝mysqlclient失敗應如何解決? 安裝的python版本說明 機器同時安裝了 ...