Markdown插入圖片的便捷方式

Markdown

1. 前言

最近一直在使用 Markdown 寫文檔涨椒,但是其中貼圖真是太麻煩了摊鸡,于是就想著能不能有什么好的方法來解決,Google蚕冬,發(fā)現了網上已經有一些前輩寫好的教程了免猾,我主要參考了這兩篇博客的內容:

但是在直接使用時并不是那么一帆風順,遇到了各種不成功的情況囤热,然后我就自己調試猎提,摸索了一下,終于成功了∮遥現在將大概的過程記錄一下忧侧,希望能提供一下參考價值,不至于他人遇到同樣的坑牌芋。

2. 前期準備工具

1. python

推薦使用 python3.x

本人的python水平為初級入門蚓炬,在爬坑的過程中發(fā)現在Windows環(huán)境下 python2.x 對圖片路徑中含有中文的情況會報錯,還需要特別處理一下編碼問題躺屁。我Google了半天肯夏,沒有搞定(水平太次,請勿嘲笑)犀暑。然后使用 python3.x 版本發(fā)現可以很好的解決中文 路徑錯誤的問題驯击,所以就果斷使用了python3.x版本。

我本地的python版本為: python2.7.10python 3.5.3

2. AutoHotKey + AutoHotKey.dll

AutoHotkey.dll是用來實現其他腳本語言對AutoHotkey的調用耐亏,你需要下載對應于AutoHotKey版本的dll文件徊都,然后將它放到windows/System32文件夾中,AutoHotkey.dll的下載地址為:https://github.com/xzonepiece/markdown-img-upload-windows/tree/master/Autohotkey.dll

注意:這里AutoHotKey要選擇和自己操作系統(tǒng)相匹配的版本广辰。

3. 七牛云賬號

實名認證后該平臺提供注冊用戶免費的10G空間暇矫;如果沒有認證,則有1G的免費空間可以使用择吊。

3. 具體實現

  1. 注冊七牛云賬號李根,獲得自己的AKSK几睛、空間名稱以及域名地址.

說明:

  1. AKSK 在七牛云的 個人中心 --> 密鑰管理 中可以看到

  2. 資源主頁 --> 七牛官方資源 --> 對象存儲 --> 立即添加 就可以添加存儲空間

  3. 完成空間添加后房轿,空間名稱 就是你填寫的空間的名稱

  4. 域名地址在你創(chuàng)建空間的 內容管理 可以看到外鏈默認域名

  5. 安裝七牛云的python SDK,參考七牛云的 Python SDK 使用指南

    可以通過 pip 或者 easy_install 直接安裝所森,也可以 使用源碼安裝囱持。

    這里我使用的是源碼安裝,這樣可以安裝到不同的python版本必峰,另一個原因是我本地沒有pip(又要被嘲笑了)洪唐。

  6. 編寫 Python 腳本文件 upload_qiniu.py
    這里修改上面兩篇參考文獻中的內容,略有不同吼蚁。凭需。
    ps: 下面Python的對其格式有問題,如果直接復制肝匆,請調整一下格式粒蜈。

         #! /usr/bin/python
         #-*- coding: utf-8 -*-
    
         from qiniu import Auth, put_file, etag, urlsafe_base64_encode
         import qiniu.config
         from qiniu import BucketManager
         import sys,time
         import os
         import time
    
         # you need get yours msg here
         access_key = "xxx"    # 填入你的 AK
         secret_key =  "xxx"  # 填入你的 SK
         bucket_name =  "xxx"    # 填入你的七牛空間名稱
         bucket_url =  "xxx"   # 填入你的域名地址
    
         img_suffix = ["jpg", "jpeg", "png", "bmp", "gif"]   # 支持多種圖片格式
    
        def upload_img(bucket_name,file_name,file_path):
            # generate token
            token = q.upload_token(bucket_name, file_name, 3600)
            info = put_file(token, file_name, file_path)
            # delete local imgFile
            # os.remove(file_path)
            return
    
        def get_img_url(bucket_url,file_name):
            # ?imageMogr2/thumbnail/!65p
            # file_names = file_name + '?imageMogr2/thumbnail/!75p'
            file_names = file_name + '?'+ time.strftime('%Y-%m-%d-%H-%M-%S',time.localtime(time.time()))
            img_url = 'http://%s/%s' % (bucket_url,file_names)
            # generate md_url
            md_url = "![](%s)\n" % (file_name, img_url)
            return md_url
    
        # save to clipboard
       def addToClipBoard(bucket_url,file_name):
           text = get_img_url(bucket_url,file_name)
           command = 'echo ' + text.strip() + '| clip'
           os.system(command)
    
     if __name__ == '__main__':
           q = Auth(access_key, secret_key)
           bucket = BucketManager(q)
           img = sys.argv[1]
    
           # name for img with local time
           up_filename = os.path.split(img)[1]
           upload_img(bucket_name,up_filename,img)
           addToClipBoard(bucket_url,up_filename)
    
  7. 編寫 AutoHotKey腳本文件 markdown_picture.ahk

    ;將圖片上傳至七牛云旗国,并獲得圖片地址
    ^!c::
    send, ^c
    clipwait
    Run %comspec%  /k "python *替換成upload_qiniu.py文件的地址* %Clipboard%"
    

    為了防止疑惑枯怖,這里給出一個 Windows 環(huán)境下示例:

    ;將圖片上傳至七牛云,并獲得圖片地址
    ^!c::
    send, ^c
    clipwait
    Run %comspec%  /c "python D:\program\qiniu-python-sdk\upload_qiniu.py %Clipboard%"
    

    這里也稍微修改了參考文獻中的內容能曾,因為在我本地運行時原來的腳本執(zhí)行不成功度硝。

    其中肿轨,第五行的“/k” 表示命令執(zhí)行完成之后,cmd窗口不消失蕊程,這樣可以方便調試椒袍,如果出錯了可以看到錯誤信息;如果希望窗口自動關閉藻茂,可以將這個參數設置為“/c”驹暑。

  8. 啟動markdown_picture.ahk 后,我們就可以使用 ctrl + alt + c --> ctrl + v 來插入圖片了辨赐。

    選中一個圖片文件优俘,按下ctrl + alt + c,這時候會跳出cmd窗口掀序,如果沒有錯誤帆焕,你就可以使用ctr + v來插入圖片的七牛云的網絡鏈接,就這么簡單!!!


[參考文獻]

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末不恭,一起剝皮案震驚了整個濱河市视搏,隨后出現的幾起案子,更是在濱河造成了極大的恐慌县袱,老刑警劉巖浑娜,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異式散,居然都是意外死亡筋遭,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進店門暴拄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來漓滔,“玉大人,你說我怎么就攤上這事乖篷∠炻浚” “怎么了?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵撕蔼,是天一觀的道長豁鲤。 經常有香客問我,道長鲸沮,這世上最難降的妖魔是什么琳骡? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮讼溺,結果婚禮上楣号,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好炫狱,可當我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布藻懒。 她就那樣靜靜地躺著,像睡著了一般视译。 火紅的嫁衣襯著肌膚如雪束析。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天憎亚,我揣著相機與錄音,去河邊找鬼弄慰。 笑死第美,一個胖子當著我的面吹牛,可吹牛的內容都是我干的陆爽。 我是一名探鬼主播什往,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼慌闭!你這毒婦竟也來了别威?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤驴剔,失蹤者是張志新(化名)和其女友劉穎省古,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體丧失,經...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡豺妓,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了布讹。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片琳拭。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖描验,靈堂內的尸體忽然破棺而出白嘁,到底是詐尸還是另有隱情,我是刑警寧澤膘流,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布絮缅,位于F島的核電站,受9級特大地震影響呼股,放射性物質發(fā)生泄漏盟蚣。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一卖怜、第九天 我趴在偏房一處隱蔽的房頂上張望屎开。 院中可真熱鬧,春花似錦、人聲如沸奄抽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽逞度。三九已至额划,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間档泽,已是汗流浹背俊戳。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留馆匿,地道東北人抑胎。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像渐北,于是被迫代替她去往敵國和親阿逃。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內容