• 主页
  • 搞机
  • 留言
  • 关于
  • 笔记
  • 时光
所有文章 友链 关于本站

  • 主页
  • 搞机
  • 留言
  • 关于
  • 笔记
  • 时光

增加一个MarkDown文件下载功能

2018-02-03

昨天给博客加了一个下载MarkDown文件的功能,原本是很简单的一件事,但是中间涉及到了很多麻烦东西,所以就决定简单记录以下。

起因➴

这件事的起因是前两天我写的一篇文章意外火了一遍,引来了一大波PV,又有很多人转了这篇文章,还有人问我要MarkDown源文件。受到Jerry Qu的小站的启发,决定做一个MarkDown文件下载的功能。

捋一下过程➴

Hexo修改部分➴

本文介绍修改方法仅使用于Yilia主题,其他主题请参考原理,自行寻找食用方法

修改\layout_partial\post\nav.ejs,我找了好久才发现加在这里最合适,由于技术比较渣,暂时只能做到这样了,以后会继续进步的。

在<% if (post.next){ %> … <% } %>和</nav>之间添加

1
2
3
4
<% if (theme.mdhost){ %>
<br>
<a href="<%- url_for(theme.mdhost) %><%- url_for(post.path) %>.txt" target="_blank">获取文章MarkDown文件</a>
<% } %>

在Yilia主题的_config.yml中添加

1
mdhost:  #MarkDown文件下载地址,如:http://md.xxwhite.com/

这样点击下面的按钮的时候,就会调到同名的txt文件了。

比如这篇文章,点击获取MarkDown文件,就会跳转到页面http://md.xxwhite.xom/2018/add-download-markdown.txt

MarkDown文件➴

MarkDown文件我是传到了网易云的对象存储服务中,如果要是把文件传到相同位置,那就更简单了(我接下来就是打算要这么做的,不闲着蛋疼去薅羊毛了)

首先是要把MarKDown文件转码为ANSI,UTF-8会乱码,不是自己搭的服务,请求头没办法改,接下来要改后缀为.txt,.md默认Content-Type为application/octet-stream,会自动变成下载。

我使用一个批处理自动化完成这个东西

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
cd D:\MonoLogueChi\Documents\Hexo\blog-md\
del /S /Q .\*

Xcopy /Y /S D:\MonoLogueChi\Documents\Hexo\blog\source\_posts\* D:\MonoLogueChi\Documents\Hexo\blog-md

for %%i in (*.md) do (
iconv -f UTF-8 -t GBK %%i > %%i.b
if exist %%i.b (
del %%i
ren %%i.b %%~nxi
)
)
ren *.md *.txt

cd .\2017\
for %%i in (*.md) do (
iconv -f UTF-8 -t GBK %%i > %%i.b
if exist %%i.b (
del %%i
ren %%i.b %%~nxi
)
)
ren *.md *.txt

cd ..\2018\
for %%i in (*.md) do (
iconv -f UTF-8 -t GBK %%i > %%i.b
if exist %%i.b (
del %%i
ren %%i.b %%~nxi
)
)
ren *.md *.txt

cd /d %~dp0
pause

这个用到了iconv.exe这个东西,可以在这里下载 iconv.7z

后面再加上自动上传就可以啦,很简单的一步式操作。

1
tool.bat -putfile D:\MonoLogueChi\Documents\Hexo\blog-md <你的桶名称> -replace true

写在后面的➴

目前技术比较渣,暂时只能写到这样了,如果有什么更好的想法发话,欢迎在下面的评论区一起讨论。

赏

请作者吃辣条

支付宝
微信
  • 本文作者: MonoLogueChi
  • 本文链接: https://blog.xxwhite.com/2018/add-download-markdown.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!
  • 建站笔记
使用又拍云托管静态网站
一点微小的改动

获取文章MarkDown文件 本文阅读量 8848
  1. 1. 起因
  2. 2. 捋一下过程
    1. 2.1. Hexo修改部分
    2. 2.2. MarkDown文件
  3. 3. 写在后面的
© 2015-2021 MonoLogueChi
蒙ICP备17004911号-1
Hexo Theme Yilia by Litten
本站由 提供CDN加速/云存储服务
  • 所有文章
  • 友链
  • 关于本站

tag:

  • 搞机
  • 建站笔记
  • Unity
  • 测试
  • 随便水水
  • C#
  • 涨姿势
  • 软件
  • 炎黄幼儿园
  • 小工具
  • 香橙派
  • 服务器
  • 个人电脑
  • dotnet
  • Linux
  • 硬件
  • 软路由
  • NAS
  • OMV
  • timeline
  • 叉叉白
  • 大姐姐的博客Minemine
  • 酷安基佬
  • Se7en
  • 姬长信
  • staunchkai
  • 随遇而安
  • 2401的晚秋咖啡
  • CareyQ
  • Junzhou Liu
  • Yi-Yun
  • LmCjl在线工具
  • Freetao’s Blog
叉叉白 一个小白搞机的记事本