Alfred?+?Gitee搭建免費(fèi)圖床的使用實(shí)例詳解
環(huán)境
系統(tǒng): Mac 工具: Alfred, git, homebrew, pngpaste. 語(yǔ)言: perl 其他: Gitee
工具下載
思路
使用Gitee倉(cāng)庫(kù)作為圖床, 使用Alfred工作流簡(jiǎn)化上傳圖片流程, 并將上傳圖片地址轉(zhuǎn)換為markdown格式輸出到剪切板中.
使用
復(fù)制一張圖片, 然后使用快捷鍵CMD + shift + u或者喚出Alfred命令行輸入pp. 上傳成功后會(huì)發(fā)送通知提示上傳成功.
依賴(lài)
使用pngpaste工具實(shí)現(xiàn)剪切板相關(guān)功能
brew install pngpaste
使用ImageMagick實(shí)現(xiàn)圖片壓縮
brew install imagemagick
實(shí)現(xiàn)
創(chuàng)建Gitee圖床環(huán)境
注冊(cè)賬號(hào), 創(chuàng)建倉(cāng)庫(kù), 注意修改為公共倉(cāng)庫(kù), 把倉(cāng)庫(kù)拉到本地, 以后會(huì)將目標(biāo)圖片復(fù)制到倉(cāng)庫(kù)中. 其他沒(méi)什么說(shuō)的.
配置Alfred workflow
下載并將工具拖進(jìn)Alfred中, 由于依賴(lài)了第三方軟件, 在執(zhí)行腳本時(shí)需要指定工具目錄, 所以需要在workflow中配置對(duì)應(yīng)路徑如下:

GIT_DIR git倉(cāng)庫(kù)本地路徑, 圖片會(huì)直接復(fù)制到這里.
GIT_DOMAIN git圖床路徑, 比如我配置的是 https://gitee.com/serpmelon/pictures/raw/master.
IMAGE_MAGICK_DIR ImageMagick工具安裝的路徑.
PASTE_DIR pngpaste工具安裝的路徑.
對(duì)于homebrew下載的工具可以通過(guò)如下命令查看
brew list pngpaste 返回: /usr/local/Cellar/pngpaste/0.2.3/bin/pngpaste 則配置路徑: /usr/local/Cellar/pngpaste/0.2.3/bin brew list imagemagick 返回: /usr/local/Cellar/imagemagick/7.1.0-16/bin/Magick++-config /usr/local/Cellar/imagemagick/7.1.0-16/bin/MagickCore-config /usr/local/Cellar/imagemagick/7.1.0-16/bin/MagickWand-config /usr/local/Cellar/imagemagick/7.1.0-16/bin/animate /usr/local/Cellar/imagemagick/7.1.0-16/bin/compare /usr/local/Cellar/imagemagick/7.1.0-16/bin/composite ... 配置路徑: /usr/local/Cellar/imagemagick/7.1.0-16/bin
復(fù)制剪切板中的圖片到指定路徑
遇到的第一個(gè)難題, 如何將剪切板中的圖片復(fù)制到指定目錄下呢(git目錄)? pbcopy和pbpaste命令只能操作文本, 所以第一個(gè)想法, 復(fù)制圖片的路徑, 這樣就可以通過(guò)操作文本進(jìn)行賦值操作.
對(duì)圖片使用cmd+option+c會(huì)復(fù)制其路徑, 然后通過(guò)執(zhí)行cp命令將文件復(fù)制到指定目錄中.
system("cp $source $target");
但是, 這樣很不方便, 而且通常情況下都是截一個(gè)圖片沾到自己的文章中, 如果只能通過(guò)路徑復(fù)制, 那么每次截圖還需要下載到本地. 所以需要實(shí)現(xiàn)將剪切板中的圖片文件復(fù)制到目錄的功能.
使用pngpaste工具實(shí)現(xiàn)上述功能, 使用homebrew下載
brew install pngpaste
使用簡(jiǎn)單
pngpaste hooray.png # 目標(biāo)文件
本地運(yùn)行正常, 但是在Alfred中運(yùn)行異常, 排查發(fā)現(xiàn)是找不到pngpaste命令. Alfred運(yùn)行腳本不會(huì)使用用戶(hù)的運(yùn)行環(huán)境, 所以找不到第三方命令, 解決辦法就是我們幫它找到命令, 使用全路徑就可以拉, 路徑配置到Alfred變量中.
system("$PASTE_DIC/pngpaste $target");
git命令提交圖片
圖片已經(jīng)復(fù)制到git本地倉(cāng)庫(kù)了, 然后只需要push上去就好了. 由于在不同目錄執(zhí)行, 執(zhí)行會(huì)報(bào)提示"fatal: not a git repository", 使用類(lèi)似如下命令即可
git --git-dir=/x/y/.git --work-tree=/x/y add .
圖片壓縮
Gitee限制圖片大小, 對(duì)于大于1MB的圖片會(huì)打不開(kāi).

所以對(duì)于大的圖片需要進(jìn)行壓縮處理, 這里依賴(lài)ImageMagick, 使用brew下載.
brew install imagemagick
拼接圖片地址
瀏覽下Gitee上圖片的地址, 類(lèi)似這樣 gitee.com/serpmelon/p… 將blob換成raw就可以訪問(wèn)了,
修改后:
https://p3-jb51.byteimg.com/tos-cn-i-k3u1fbpfcp/ba10ca414b2b4a5d87904573434f3493~tplv-k3u1fbpfcp-zoom-1.image

然后按照markdown格式拼接地址后:

問(wèn)題
目前依賴(lài)了pngpaste和ImageMagick工具, 后面自己簡(jiǎn)單實(shí)現(xiàn)下, 這樣用戶(hù)就不需要自己再單獨(dú)下載依賴(lài)了.
以上就是Alfred + Gitee搭建免費(fèi)圖床的使用實(shí)例詳解的詳細(xì)內(nèi)容,更多關(guān)于Alfred + Gitee搭建免費(fèi)圖床的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
關(guān)于VSCode 裝好ESLint 插件 import 報(bào)黃線的問(wèn)題
這篇文章主要介紹了VSCode 裝好ESLint 插件 import 報(bào)黃線的問(wèn)題,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11
設(shè)計(jì)高可用和高負(fù)載的網(wǎng)站系統(tǒng)的幾個(gè)注意事項(xiàng)
隨著網(wǎng)站的運(yùn)營(yíng),用戶(hù)訪問(wèn)量和數(shù)據(jù)存儲(chǔ)量會(huì)隨著時(shí)間發(fā)生幾何級(jí)變化,很快整個(gè)系統(tǒng)不堪重負(fù),頻繁出現(xiàn)問(wèn)題。2011-06-06
ElasticSearch寫(xiě)入流程實(shí)例解析
這篇文章主要為大家介紹了ElasticSearch寫(xiě)入流程實(shí)例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
textarea 在IE和FF下?lián)Q行無(wú)法正常顯示的解決方法
今天在做項(xiàng)目時(shí)用到textarea 用戶(hù)輸入信息后顯示不換行在IE下測(cè)試成功在FF沒(méi)反應(yīng)2010-07-07

