Typora + GitHub = 效率
Java后端技术
共 4973字,需浏览 10分钟
·
2021-01-28 20:16
1、《往期精选优秀博文都在这里了!》 2、女朋友为我写了一个防猝死插件 3、请谨慎使用Arrays.asList、ArrayList的subList 4、全球顶级的14位程序员!膜拜! 5、为什么我不建议你用去 “ ! = null " 做判空?
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 ,或者安装在其他目录
安装步骤
//注册token的尽量不要跟其他应用共用,同时授予最小权限
//免费+无需自己搭建服务器,是一种不错的方式
$.image.init({
target:'github',
quality:1, //图片压缩开关,1表示原图上传 取值为:0
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.php
$.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" //自己定义好,并在接口里面检查避免坏人利用你接口
}
}
});
//为了你腾讯云的安全,强烈建议你为这个操作添加一个单独的子账号,并只开启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', // 可以把上传的图片都放到这个指定的文件夹下
},
});
//为了你阿里云账号的安全,强烈建议你为这个操作添加一个单独的子账号,并只开启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就好
}
});
https://sm.ms/home/apitoken3.
3. 配置 token
{
"picBed": {
"uploader": "smms", 传图床为 SM.MS,
"smms": {
"token": "xxxxxxxxxxxxxxxxxxxxx" //这里面的token换成刚刚生成的 sm.ms 的token
}
},
"picgoPlugins": {}
}
往期热门文章:
1、《历史文章分类导读列表!精选优秀博文都在这里了!》
2、万亿级数据应该怎么迁移? 3、从应用到底层 36张图带你进入Redis世界 4、写代码有这16个好习惯,可以减少80%非业务的bug 5、顺丰快递:请签收MySQL灵魂十连
6、一个基于SpringBoot + MyBatis + Vue的代码生成器 7、Redis 分布式锁使用不当,超卖了100瓶飞天茅台!!! 8、如何设计订单系统?这篇写得太好了! 9、如果MySQL磁盘满了,会发生什么?还真被我遇到了! 10、阿里开源的27个项目,值得收藏!
评论