Typora + GitHub = 效率

Typora 是一款簡單、高效並且優雅的 Markdown 編輯器,它提供了一種所見即所得的全新的 Markdown 寫做體驗。它把源碼編輯和效果預覽二者合二爲一,在輸入 Markdown 代碼的時候即時生成預覽效果。Typora 的一切都圍繞純粹的生產效率而設計。
Typora一直是老逛最喜歡的 markdown 編輯器,寫博客、記筆記的首選軟件。相信大部分朋友也在使用 Typora 這款軟件。
可是 Typora 以前是不支持圖牀功能的,只能經過第三方插件實現圖片自動上傳的功能。不過最近 Typora 有了更新,終於支持圖牀功能了,接下來我會分別介紹藉助插件上傳圖片和 Typora 自身的圖牀功能。老逛親身體驗,Typora 軟件自帶的圖片上傳功能很慢,不如本身寫的插件好用。
1. 藉助插件實現自動上傳
以前老逛也是使用第三方插件進行圖片的上傳,該插件安裝後的使用效果以下:

把圖片拖進 md 編輯器,圖片會自動上傳到圖牀,上傳成功圖片頂部會出現綠色背景的白字進行提醒。該插件支持、GitHub、七牛雲、阿里雲、碼雲等。
該插件是 Thobian 同窗開源的插件,僅支持 Windows 系統。
2. 插件安裝
安裝環境
Typora 版本:0.9.68 (Windows x86)
下載地址:https://typora.io/windows/typora-update-ia32-0320.exe
Typora安裝目錄:D:\Program Files\Typora ,或者安裝在其餘目錄
安裝步驟

1. 下載插件代碼,公衆號「逛逛GitHub 」後臺回覆「md插件」下載php

2. 複製插件相關代碼文件:window.html、pluginshtml

3. 將複製的插件代碼文件,粘貼到 Typora 安裝目錄下的 resources\app 文件夾下git

4. 安裝完成,重啓 Typoragithub

插件配置
接下來能夠配置將圖片上傳到哪一個圖牀,打開 plugins/image/upload.js 文件,拉到最下面 將最後一行的 $.image.init(); 按照下面的說明進行配置:
上傳到Github - 推薦
免費且無需本身搭建服務器,是一種不錯的方式,配置中須要填寫token,添加 token 可登錄 GitHub後訪問此連接:https://github.com/settings/tokens
僅給 typora 使用的 token 授予最小的權限(repo.public_repo) 便可。
//註冊token的儘可能不要跟其餘應用共用,同時授予最小權限
//免費+無需本身搭建服務器,是一種不錯的方式
$.image.init({
    target:'github',
    quality:1, //圖片壓縮開關,1表示原圖上傳 取值爲:0<quality<=1,若是要壓縮推薦 0.7
    github:{
        Token : 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', // 添加一個僅給typora使用的token 授予最小的權限(repo.public_repo) ,添加token:https://github.com/settings/tokens
        CommitterName : 'nickname', // 提交人暱稱,寫你github的暱稱
        CommitterEmail : 'email@mail.com', // 提交人郵箱,寫你github的郵箱
        Repository : 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', // github項目名,好比你的項目地址是:https://github.com/Thobian/typora-plugins-win-img 那就是後面的「Thobian/typora-plugins-win-img」
        Filepath : 'typora', // 圖片在項目中的保存目錄,能夠不用提早建立目錄,github提交時發現沒有會自動建立
        // 【注意:開啓CDN後會將原github的文件地址換成 jsDelivr 的地址,如出現鏡像出現國內沒法訪問,或者再也不繼續運營你的圖片也將不能訪問到,請謹慎開啓該功能】
        jsDelivrCND : false, // 是否開啓GitHub圖片走鏡像,國內有時候訪問不太方便,如要打開設置爲:true
    }
});
上傳到自建服務器
將圖片上傳地址換成你本身的後端接口,因爲調用時不帶登陸態,請注意接口安全別被壞人利用。
爲了防止壞人利用你服務器接口,插件支持設置請求頭,可必定程度避免被利用

接口協議:編程

  • 請求方式:POST
  • 請求參數:data:image/png;base64,xxxxxx (圖片原轉換成base64後的值)
  • 成功響應:{‘code’:0, ‘message’:‘成功’, ‘data’:{‘url’=>‘imageURL’}}
  • 失敗響應:{‘code’:x, ‘message’:‘錯誤緣由’, ‘data’:null} 失敗時,code必須未非0

後端接口代碼能夠參考代碼文件:upload.phpwindows

$.image.init({
    target:'self',
    self:{
        //默認上傳地址 https://jiebianjia.com/typora-plugins/upload.html
        url:"https://you-server/the-image-upload-path",
        headers:{
            //默認: token:B40289FC92ED660F433BF0DB01577FDE
            token:"value"  //本身定義好,並在接口裏面檢查避免壞人利用你接口
        }
    }
});
上傳到騰訊雲OSS
//爲了你騰訊雲的安全,強烈建議你爲這個操做添加一個單獨的子帳號,並只開啓API訪問權限
//添加子帳號:https://console.cloud.tencent.com/cam
//更多關於騰訊雲子帳號(CAM)說明:https://cloud.tencent.com/document/product/598/13665
$.image.init({
    target:'tencent',
    tencent : {
        Bucket: 'bucket-name', // 對象存儲->存儲桶列表(存儲桶名稱就是Bucket)
        SecretId: 'SecretId', // 訪問控制->用戶->用戶列表->用戶詳情->API密鑰 下查看
        SecretKey: 'SecretKey', // 訪問控制->用戶->用戶列表->用戶詳情->API密鑰 下查看
        Region: 'Region', // 對象存儲->存儲桶列表(所屬地域中的英文就是Region)
        folder: 'typora', // 能夠把上傳的圖片都放到這個指定的文件夾下
    },
});
上傳到阿里雲OSS
//爲了你阿里雲帳號的安全,強烈建議你爲這個操做添加一個單獨的子帳號,並只開啓API訪問權限
//添加子帳號:https://ram.console.aliyun.com/users
//給子帳號受權:https://ram.console.aliyun.com/permissions
//更多關於阿里雲子帳號(RAM)說明:https://help.aliyun.com/product/28625.html
//SecretId 就是阿里雲的:AccessKey ID
//SecretKey 就是阿里雲的:AccessKey Secret,這個值只能在你建立 AccessKey 時看到,因此要保管好,不然只能從新生成
$.image.init({
    target:'aliyun',
    aliyun : {
        // 我的以爲阿里雲的這個 AccessKey 沒有騰訊雲的好用
        SecretId: 'xxxx', // 須要先建立 RAM 用戶,同時訪問方式選擇「編程訪問」
        SecretKey: 'xxxx', // 最好是子帳號的key,僅授予oss讀寫權限(不包括刪除)
        Folder: 'typora', // 能夠把上傳的圖片都放到這個指定的文件夾下
        BucketDomain : 'http://xxx.com/', // 存儲空間下有個:Bucket 域名 挑一個就行了
    }
});


上傳到七牛雲
//「密鑰管理」頁面地址:https://portal.qiniu.com/user/key
$.image.init({
    target:'qiniu',
    qiniu: {
        UploadDomain: 'https://xxx.com', // 上傳地址,須要根據你存儲空間所在位置選擇對應「客戶端上傳」地址 詳細說明:https://developer.qiniu.com/kodo/manual/1671/region-endpoint
        AccessDomain: 'http://xxx.com/', // 上傳後默認只會返回相對訪問路徑,須要設置好存儲空間的訪問地址。進入「文件管理」下面能夠看到個「外鏈域名」就是你的地址了,複製過來替換掉 xxx 就能夠了。
        AccessKey : 'xxxx', // AK經過「密鑰管理」頁面能夠獲取到
        SecretKey: 'xxxx', // SK經過「密鑰管理」頁面能夠獲取到
        Folder: 'typora', // 能夠把上傳的圖片都放到這個指定的文件夾下
            
        policyText: {
            scope: "xxx", // 對象存儲->空間名稱,訪問控制記得設置成公開
            deadline: 225093916800, // 寫死了:9102-12-12日,動態的好像偶爾會簽名要不過
        },
    }
});
上傳到碼雲
// !!!注意當圖片大於1M時, gitee 必須登陸後才能查看!!!
$.image.init({
    target:'gitee',
    gitee: {
            message: "From:https://github.com/Thobian", // 必須參數,提交消息(默認爲:add image)
            branch: "master", // 要提交到的分支(默認爲:master)
            token: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', // 碼雲token申請地址 https://gitee.com/profile/personal_access_tokens
            userName: 'userName', // 用戶名 好比你的gitee我的主頁地址是:https://gitee.com/thobian ,那userName就是:thobian
            repositorie: 'repositorie', // 倉庫名 好比你的gitee圖片倉庫地址是:https://gitee.com/thobian/typora,那麼repositorie就是 typora
            Folder: 'image', // 能夠把上傳的圖片都放到這個指定的文件夾下
            BucketDomain: 'https://gitee.com/api/v5/repos/',// 這個是不用變的,直接copy就好
    }
});

若是在設置插件時遇到任何問題能夠取 issue 中尋找解決方案:後端

https://github.com/Thobian/typora-plugins-win-img/issuesapi

3. Typora 自動上傳功能
雖然插件支持多種圖庫,但僅僅支持 Windows 系統。不過 Typora 已經支持圖片上傳功能了,在配置以前,要確保軟件的版本更新到最新,老版本是不支持圖片上傳功能,配置中沒有上傳圖片該選項:

更新軟件
下載最新的軟件 https://www.typora.io/#windows,本文中阿改使用的版本是 0.9.86,升級後打開 文件 -> 偏好設置 -> 圖片插入 ,就會發現有圖片上傳這個選項了,以下圖所示,選擇我勾選的配置。

緊接着點擊上圖中的「下載或更新」按鈕,下載 PicGo-Core 核心支持。下載完畢後進行配置。
配置 Token
選擇 sm.ms 做爲圖牀,官網地址:https://sm.ms
特色:永久存儲免註冊,圖片連接支持https,能夠刪除上傳的圖片,提供多種圖片連接格式,創建於2015年,目前免費用戶沒法使用香港節點所以速度比較慢
圖片上傳限制:每一個圖片最大5M,每次最多上傳10張

1. 註冊或登錄 sm.ms緩存

https://sm.ms/login安全

2. 生成 token

3. 配置 token

https://sm.ms/home/apitoken3.
在 Typora 配置中,圖像 -> 打開配置文件,將下面代碼 copy 進去,而後 token 改爲本身的就能夠了。

注意修改後重啓軟件:
{
  "picBed": {
    "uploader": "smms", 傳圖牀爲 SM.MS,
    "smms": {
      "token": "xxxxxxxxxxxxxxxxxxxxx" //這裏面的token換成剛剛生成的 sm.ms 的token
    }
  },
  "picgoPlugins": {}
}


效果預覽
感受上傳的速度不如第三方插件上傳的速度快,可是第三方插件僅僅支持 Windows 系統,而且拖進去的圖像須要在點擊一下才能上傳至圖牀,而自帶的上傳功能拖進去便可,並由動畫緩存反饋。各有優點吧,此外你們能夠嘗試其它圖牀,七牛雲等等。
對於 Mac 用戶使用該軟件實現圖牀功能仍是很簡單的,直接 Typora + iPic 就好了,本文就不介紹了。

最後,喜歡本文章的能夠轉發、在看。如下平臺都有老逛的身影,歡迎你們關注我在其餘平臺的同名帳號。

           

本文分享自微信公衆號 - 逛逛GitHub(ggGithub)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索