推荐一款可以上传文件的markdown工具

简介: 推荐一款可以上传文件的markdown工具

Typora

markdown语法可谓是编写文档的利器,简单,快速,好看。

而大部分编写markdown文档的工具都是如IDEA般一半源代码一半可视化

所以如果有一款所见即所得的markdown工具那再爽不过。

我目前在使用的软件是[Typora]: https://typora.io/ ,也将它推荐给了一些朋友使用

这个软件1.0之后是收费的,如果你想先体验一番,并不想那么早付费,可以下0.x的版本,地址如下:

https://typora.io/releases/all

选择【DEV/Beta Release】页, 在页面最下面选旧版本。

当然,这并不是本篇文章的重点,重点是介绍它的上传文件功能

上传文件

在我们编写文档时,很自然的会插入一些图片,让我们的文档更加饱满。

而当我们想要将文档发表到网上时,就不得不把先这些图片换成https链接,不然网站无法读取到这些图片。

这个过程是挺痛苦的,尤其是图片多了的时候。

而Typora就有个一键上传图片的功能

在偏好设置的图像一栏中,选择上传服务

如果你是mac用户,那么可以直接使用iPic。windows我还没用过,当然还可以自定义上传,这部分在文章后面给大家介绍。

配置好并验证成功后,便可右键文档中的图片,选择上传图片。iPic将上传到微博的匿名图床中。

上传完毕后typora将自动把上传完成的图片地址替换到文档中。

不仅如此,typora还能一键将文档中的所有图片上传。

点击工具栏中的格式 --> 图像 --> 上传所有本地图片

此时已经可以满足绝大部分需求了,美中不足的时,这样上传的图片会有点糊,但还可以接受。如果你不能接受,那可以像我一样,上传到自己的图床中。

自定义上传

typora在上传服务中支持自定义上传方式。

使用该方式相当于typora在你点击上传图片是会运行你在里面写的脚本,参数为文档中图片的绝对路径。

如你在命令中编写

/usr/bin/upload.sh

文档中的图片为

/opt/a.jpg

那么此时typora就会执行

/usr/bin/upload.sh /opt/a.jpg

并期望命令执行完毕之后输出

https://xxx.com/a.jpg

如果是一键上传文档中所有图片,那么执行的命令为

/usr/bin/upload.sh /opt/a.jpg /opt/b.jpg

a.jpg 和 b.jpg是文档中的两个图片

期望输出

https://xxx.com/a.jpg
https://xxx.com/b.jpg

只要是两个链接就可以,链接的数量和上传图片的数量一定要对应。

使用七牛云图床

我自己是使用的七牛云图床上传的图片,如果你用的是别的图床也可以。我这里只是提供案例给大家参考。

你可以把typora认为是个客户端,只要你编写的脚本能够接收typora给的参数,并把这些图片传到图床上,并且输出链接,就可以了。

七牛云本身提供上传图片的脚本。

将对应平台的脚本下载下来,然后查看七牛云文档:https://developer.qiniu.com/kodo/1302/qshell,看下如何上传文件。

鉴权部分我就直接略过了。

看完之后发现七牛云的脚本只能支持上传单个文件,但是没有关系,我们可以for循环处理这个问题。

由于typora只传递文件参数,所以我们需要把这个脚本再封装一次。

首先我们需要得到文件名,比如说上传的文件为:/opt/a.jpg, 我们需要得到a.jpg作为图床的文件路径

qshell fput if-pbl a.jpg  /opt/a.jpg

if-pbl为图床的bucket a.jpg为图片上传到图床的路径

为了上传的图片不会重复,我们可以在路径前缀加上日期,比如这样

qshell fput if-pbl 2022/05/29/a.jpg  /opt/a.jpg

明白了这些,我们现在就开始编写脚本

上传单个图片的脚本

首先是上传单个图片的脚本

vim upload.sh

#!/bin/bash
NOW=$(date +%Y/%m/%d)
str=$1
filename=${str##*/}
KEY=$NOW/$filename
qshell fput if-plb $KEY $1 > /dev/null
echo "https://notes.xxx.cn/$KEY"

NOW=$(date +%Y/%m/%d): 获取到当天的日期:2022/05/29

$1: 获取执行脚本传入的第一个参数,也就是文件名:/opt/a.jpg

filename=${str##*/} : 截取str中最后个/右侧的字符串:a.jpg

https://notes.xxx.cn/是图床地址

由于qshell脚本本身会输出一些内容,影响typora抓取结果,所以将 qshell的输出指定到/dev/null

将脚本赋权:chmod +x upload.sh

测试脚本:

upload.sh /opt/a.jpg
输出
https://notes.xxx.cn/2022/05/29/a.jpg

上传多个图片的脚本

这个就很简单了,只要for循环一遍参数就行了

vim multi_upload.sh

#!/bin/bash
for i in "$@"
do 
    upload.sh  $i
done

$@: 获取参数列表

赋权:chmod +x multi_upload.sh

测试脚本:

multi_upload.sh /opt/a.jpg /opt/b.jpg 
输出
https://notes.xxx.cn/2022/05/29/a.jpg
https://notes.xxx.cn/2022/05/29/b.jpg
目录
相关文章
|
2月前
|
XML 搜索推荐 开发工具
全面指南:技术写作与编辑工具 Markdown、Git 研究工具
在技术写作领域,“工具”是指技术写作者用于创建、管理和发布高质量技术文档的各种软件和应用程序。这包括文字处理器、桌面出版应用程序、XML 编辑器、内容管理系统等等。一些技术写作者常用的工具示例包括 Microsoft Word、WPS、Typora、Notion、印象笔记、GitHub、飞书云文档 和 VSCode 等。这些工具通过允许文档版本控制、启用协作、提供用于一致格式设置的模板、提供管理大量内容的功能,甚至提供将文档翻译成多种语言的功能,从而提高了生产力。工具的选择取决于技术写作者或其工作的组织的具体需求和工作流程。
201 4
|
11月前
|
容器
Markdown编辑器学习笔记丨简单好用的排版与记录工具
Markdown编辑器学习笔记丨简单好用的排版与记录工具
|
Python Windows
工具:语雀导出MarkDown文档后图片修复
工具:语雀导出MarkDown文档后图片修复
443 0
|
JavaScript 前端开发 数据可视化
再不用怕Markdown中的绘图了,GitHub官方支持Mermaid图表绘制工具
再不用怕Markdown中的绘图了,GitHub官方支持Mermaid图表绘制工具
173 0
|
JavaScript Linux 程序员
Typora收费了, 还有哪些好用的markdown工具
Typora收费了, 还有哪些好用的markdown工具
3519 0
Typora收费了, 还有哪些好用的markdown工具
|
前端开发 JavaScript 开发者
开发🐁尾汁Markdown转换工具 | 项目复盘
hzwz-markdown 是一款基于 Python 实现的,用于 将Markdown文件转换成带样式的公号文章HTML 的工具。
118 0
|
开发者
🤡公号文章排版利器 | 🐁尾汁Markdown转换工具来咯~(下)
从可定制和易用性两方面入手优化,这不第一个可用版本来咯~
157 0
|
前端开发 JavaScript 开发工具
🤡公号文章排版利器 | 🐁尾汁Markdown转换工具来咯~(上)
从可定制和易用性两方面入手优化,这不第一个可用版本来咯~
216 0
|
前端开发 JavaScript Python
🐭喂汁,用Python写个专属Markdown转换工具(下)
一直使用 Markdown 语法编写文章,然后用Markdown转换工具转换下
167 0
|
数据处理 Python
🐭喂汁,用Python写个专属Markdown转换工具(中)
一直使用 Markdown 语法编写文章,然后用Markdown转换工具转换下
173 0