工具介绍

工具由来

对于程序员等常常需要写文档的人来说,将本地markdown文档同步到云端博客平台,是一件比较繁琐的事情,首当其冲的是,大量的本地图片需要"互联网"化,即使网络上不乏有些工具能做到将图片自动上传到某些图床来解决这个问题,但是还是需要自己手动复制文档到对应的博客平台,无法一步到位,总是有些"不美"

功能简述

本工具的目的就是希望能做到一键上传所有的图片以及包含转换后图片的markdown本身博客园

生态组合

本工具基于Java,针对windows平台(笔者所用为 windows 10),markdown编写工具为"所见即所得"的Typora,博客云端平台为博客园

工具获取

github:https://github.com/Cmy-art/md-uploader

release:https://github.com/Cmy-art/md-uploader/releases/tag/V1.0.0

可下载下图的release包

配置说明

Typora配置

依次点击文件-偏好设置-图像-选择如下图的复制图片到./${filename}.asserts文件夹

目的是插入图片时,会自动在同级目录下生成文档名称.assets的文件夹来统一管理本地图片

配置项说明

首先将release包固定存放到某个盘符路径,视为工作目录,工作目录修改需要重新执行步骤右键集成

打开release包,修改配置文件conf.txt

文件中有四个配置项

  • url => MetaWeblog访问地址
  • username => MetaWeblog登录名
  • token => MetaWeblog访问令牌

前三个在博客园后台的,设置-博客设置-设置-其他设置中获取,如下图

  • publish

    表示是否发布,0表示不发布,1表示直接发布,默认是0,按需修改

配置好后保存即可

右键集成

一键上传的实现方式是将脚本命令通过修改注册表集成到windows右键菜单

管理员身份运行release包中的init.bat命令,注意!该批处理命令中有修改注册表的操作,建议创建系统还原点或者备份注册表之后再操作(一般没啥问题)

执行成功后,右键点击markdown文件,菜单中出现Upload Markdown文件

使用示例

注意事项

  • 该工具基于Java,如果您的电脑存在Java环境(配置了JAVA_HOME)就会默认使用您自己的Jre,否则会直接使用release包中的jre

  • 文档移动位置

    务必文档和其.asserts文件一起移动

  • 文件名修改

    文档名称请慎重决定(最好确定了就不在修改文档名称了)

    如果修改了可能导致

    会导致生成多个.assert文件

    图片会重复上传

  • 文档内容可以正常变更

  • 大量图片的上传

    由于速度受限于接口的响应速度,所以如果文档中有大量图片可能需要一定时间才能上送完成

  • 关于文档的分类和tag等更细粒度的配置请到博客园管理页面配置

  • 图片暂时不支持缩放

  • 修改文档时,优先使用博客园定义的名称,如果博客园定义的名称为空则使用本地的文档名称

  • 接口变更,如果博客园的接口变更可能导致上传失败

markdown 一键上传发布的更多相关文章

  1. Vscode+Picgo+github+Markdown Preview Enhanced实现Markdown一键上传图床以及导出pdf文件

    目录 安装Vscode 安装及配置Picgo插件 安装Markdown Preview Enhance 安装Vscode 安装Vscode(不解释了) 安装及配置Picgo插件 在github中新建仓 ...

  2. Python 一键上传下载&一键提交文件到SVN入基线工具

    一键上传下载&一键提交文件到SVN入基线工具   by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用说明 1   注: 根据我司项目规则订制的一套工具,集成以下功能,源码 ...

  3. 使用ocupload和POI一键上传Excel并解析导入数据库

    使用的工具如下:  JQuery ocupload jquery.ocupload-1.1.2.js Apache POI poi-3.9.jar 如果是Maven项目添加依赖如下: <depe ...

  4. webstrom一键上传github及使用

    对于webstrom是我参加it修真园时就推荐使用的,其他编辑器我也没什么使用过.读大学的时候还是比较喜欢 Notepad++. 现在说一下webstrom主要的关键点吧! 一.实现一键上传githu ...

  5. jquery ocupload一键上传文件应用

    直接上栗子 这是官方文档栗子 var myUpload = $(element).upload({ name: 'file', action: '', enctype: 'multipart/form ...

  6. 文件一键上传、汉字转拼音、excel文件上传下载功能模块的实现

    ----------------------------------------------------------------------------------------------[版权申明: ...

  7. HTML中简单实现文件的一键上传的操作

    在html中实现文件上传的方式为form表单中使用input type="file"控件,但是这个控件往往显示不是美观,影响页面效果,这时候,一般就通过一键上传的操作,来实现点击一 ...

  8. Jquery学习---一键上传

    一键上传 jar包下载 jquery代码 $(function () { $(".uploadfile").upload({ action: 'CourseXMLFileUploa ...

  9. jQuery OCUpload ——> 一键上传插件

    OCUpload为jQuery的插件(One Click Upload),意思为一键上传,封装了对于文件上传的一些方法,只需几行代码,文件上传优雅而简洁.      对于传统的文件上传,只是通过inp ...

  10. 本地Markdown文件上传到博客

    本地Markdown文件上传到博客 参考:https://www.cnblogs.com/ccylhw/p/13954153.html 1.Typora 最漂亮的写作APPhttps://www.ty ...

随机推荐

  1. python快速入门【六】----真题测试

    python入门合集: python快速入门[一]-----基础语法 python快速入门[二]----常见的数据结构 python快速入门[三]-----For 循环.While 循环 python ...

  2. 7.0 Python 面向对象编程

    python是一种面向对象的编程语言,面向对象编程(Object-Oriented Programming,OOP)是一种编程思想,其核心概念是"对象".对象是指一个具有特定属性和 ...

  3. Bootstrap Table 动态修改行的颜色

    Bootstrap Table 官网地址 https://bootstrap-table.com/百度搜了大量资料 还是找不 动态改变行的颜色,一般搜索到的都是 初始化的时候  使用 rowStyle ...

  4. 微服务保护-Sentinel

    1.初识Sentinel 1.1.雪崩问题及解决方案 1.1.1.雪崩问题 微服务中,服务间调用关系错综复杂,一个微服务往往依赖于多个其它微服务. 如图,如果服务提供者I发生了故障,当前的应用的部分业 ...

  5. SpringCloud之Ribbon负载均衡

    上述案例中,我们启动了一个msg-service,然后通过DiscoveryClient来获取服务实例信息,然后获取ip和端口来访问. 但是实际环境中,我们往往会开启很多个user-service的集 ...

  6. Redis有哪些潜在的慢操作?

    Redis作为内存数据库,访问速度快是最大的特点,那么,什么情况下,Redis也会变慢呢? Redis底层数据结构 Redis有5种基本数据类型:String,List,Hash,Set,ZSet 有 ...

  7. jackson、objectMapper 、JsonAlias、JsonProperty、json。序列化和反序列化研究。

    总结: @JsonAlias:序列化出来是一定是真名,反序列化时可以传真名(驼峰)Json也可以传别名(下划线)Json @JsonProperty:序列化出来一定是别名,反序列化时也只能传别名Jso ...

  8. Word-批量导出Word中的图片

    当我们需要把Word文件中的图片保存起来,你是如何导出Word图片呢?右键一张张保存图片吗?这效率太低了.如果文档中有大量的图片,这个方法会浪费很多时间. 下面给大家分享word如何批量导出图片的技巧 ...

  9. MySQL-生成随机数字、字符串、日期、验证码及 UUID的方法

    一.生成随机数字 1. 生成 0 到 1 之间的随机数 MySQL 中的 RAND 函数可以用于生成一个大于等于 0 小于 1 的随机数字.例如: SELECT rand(); 该函数返回的数据类型为 ...

  10. 从零开始的react入门教程(二),从react组件说到props/state的联系与区别

    壹 ❀ 引 在从零开始的react入门教程(一)一文中,我们搭建了第一个属于自己的react应用,并简单学习了jsx语法.jsx写法上与dom标签高度一致,当然我们也知道,本质上这些react元素都是 ...