MD 使用 i5ting_toc 转换成 HTML


本文作者:天析

作者邮箱:2200475850@qq.com

发布时间: Wed, 10 Jul 2019 13:59:00 +0800

前言

md 转换成 html 使用 i5ting_toc 来转换算是一个比较折中的办法吧,但是平常接触的太多,导致我时不时的记不住转换的命令,于是用我这半吊子的 Python 写了个脚本来组合命令

做好后的效果是这样的:

转换前的准备

首先要安装好 node.js,完成后在在 cmd 中执行如下命令:

npm install -g i5ting_toc

然后你需要创建一个名为:zhml 的文件夹,在这个文件夹下放置一篇 md 文章,并将如下代码保存为:zh.py (文件名随意)

代码

# -*- coding: utf-8 -*-
import os
text1='''
预置:
你的 Windows 必须先装好了 node.js 才能安装依赖环境
你也可以使用命令方式安装依赖:npm install -g i5ting_toc
说明:
1. 本脚本一次只能转换一个 MD 文件(转换目录: zhml 下每次只允许放置一篇文章)
2. 转换成功后会在转换目录文件夹外生成一个 preview 文件夹(该文件夹即转换后的HTML文件存放位置)
3. preview 文件夹下的内容包含 CSS + JavaScript 文件
4. 转换完成后程序会自动退出并打开网页进行预览
5. 博客地址:tianxi.20191005.tech
'''
print(text1)
os.system('pause')
print(' 开始转换!若失败请检查是否安装好了 i5ting_toc !')
names=os.listdir('zhml') #遍历文件目录
wj=str(names) #处理成字符串
a=wj[2:-2] #取范围
b='i5ting_toc -f 转换目录/'
c=' -o'
d=b+a+c #组合命令
os.system(d) #执行构造的命令
print(' MD 转换 HTML 完成!若失败请检查是否安装好了 i5ting_toc !')

开始转换

使用 python3 在 cmd 窗口下运行脚本,完成后会直接打开生成的网页,下面是完整的运行过程

Microsoft Windows [版本 10.0.18917.1000]
(c) 2019 Microsoft Corporation。保留所有权利。 D:\转换>python3 zh.py
预置:
你的 Windows 必须先装好了 node.js 才能安装依赖环境
你也可以使用命令方式安装依赖:npm install -g i5ting_toc
说明:
1. 本脚本一次只能转换一个 MD 文件(转换目录: zhml 下每次只允许放置一篇文章)
2. 转换成功后会在转换目录文件夹外生成一个 preview 文件夹(该文件夹即转换后的HTML文件存放位置)
3. preview 文件夹下的内容包含 CSS + JavaScript 文件
4. 转换完成后程序会自动退出并打开网页进行预览
5. 博客地址:tianxi.20191005.tech
请按任意键继续. . .

接着回车就会生成好html了,这个时候你完全可以抛弃自带的 preview 文件夹下的部分 js 或 css ,自己写好一个模板,然后不断往里丢 html 文件就好了!

我的博客就是采用的这种方法,但自带的 css + js 我没怎么去做修改,我觉得还是挺不错的,于是也就懒得改了!

编译成 EXE

这个没啥说的,用 pyinstaller 的 -F 参数生成个EXE单文件就好了

pyinstaller -F zh.py

在 dist 目录下便是生成好的单文件

我这代码水平算是炸到一种水平了,py脚本中透出出一种草率,3中透出2的影子,我也很无奈啊!

MD 使用 i5ting_toc 转换成 HTML的更多相关文章

  1. Sublime下MarkDown插件实现编辑和实时预览并转换成HTML格式

    最近在使用markdown做笔记,编辑器Sublime Text3用起来很轻巧,现在让他支持markdown的语法并且可以实时预览. 安装准备——安装Package Control Package C ...

  2. 自制 Python小工具 将markdown文件转换成Html文件

    今天看到了一个Python库,名为markdown.瞬间就给了我一个灵感,那就是制作一个将markdown文件转换成html文件的小工具. 我的实验环境 操作系统: Windows 7 64位 旗舰版 ...

  3. 【Python】使用Python将Shellcode转换成汇编

    1.介绍 需要多少行代码转换hex成反汇编呢? 多亏了Python的Capstone库,做这件事只需要五行. 在二进制分析中,进行Exploit开发或逆向工程时,需要快速将十六进制的Shellcode ...

  4. 如何将hdf5文件转换成tflite文件

    我们用keras训练模型后,通常保存的模型格式类型为hdf5格式,也就是.h5文件. 但如果我们想要移植到移动端,特别是基于tensorflow支持的移动端,那就需要转换成tflite格式. 如何转换 ...

  5. iOS swift HandyJSON组合Alamofire发起网络请求并转换成模型

    在swift开发中,发起网络请求大部分开发者应该都是使用Alamofire发起的网络请求,至于请求完成后JSON解析这一块有很多解决方案,我们今天这里使用HandyJSON来解析请求返回的数据并转化成 ...

  6. 使用atom 将 markdown 转换成pdf

    atom 下载 atom 可以直接下载 : https://atom.io/ 打开下面链接 下载上面图中绿色版本的 atom 下载完成之后,解压,可以直接打开.这样可以避免 windows 下用安装包 ...

  7. DataTable 转换成 Json的3种方法

    在web开发中,我们可能会有这样的需求,为了便于前台的JS的处理,我们需要将查询出的数据源格式比如:List<T>.DataTable转换为Json格式.特别在使用Extjs框架的时候,A ...

  8. 微信小程序中利用时间选择器和js无计算实现定时器(将字符串或秒数转换成倒计时)

    转载注明出处 改成了一个单独的js文件,并修改代码增加了通用性,点击这里查看 今天写小程序,有一个需求就是用户选择时间,然后我这边就要开始倒计时. 因为小程序的限制,所以直接选用时间选择器作为选择定时 ...

  9. C#将Word转换成PDF方法总结(基于Office和WPS两种方案)

    有时候,我们需要在线上预览word文档,当然我们可以用NPOI抽出Word中的文字和表格,然后显示到网页上面,但是这样会丢失掉Word中原有的格式和图片.一个比较好的办法就是将word转换成pdf,然 ...

随机推荐

  1. 从0开始学爬虫10之urllib和requests库与github/api的交互

    urllib库的使用 # coding=utf-8 import urllib2 import urllib # htpbin模拟的环境 URL_IP="http://10.11.0.215 ...

  2. C++17 std::shared_mutex的替代方案boost::shared_mutex

    C++17 std::shared_mutex的替代方案boost::shared_mutex C++17boost  std::shared_mutex http://en.cppreference ...

  3. 004-行为型-06-命令模式(Command)

    一.概述 是一种数据驱动的设计模式 请求以命令的形式包裹在对象中,并传给调用对象.调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令. 将请求封装成对象,以便使用不同的请 ...

  4. python链接mysql pymysql

    python链接mysql import pymysql conn = pymysql.connect(user=', database='gbt2019', charset='utf8') curs ...

  5. LeetCode_367. Valid Perfect Square

    367. Valid Perfect Square Easy Given a positive integer num, write a function which returns True if  ...

  6. [ kvm ] 学习笔记 2:虚拟化基础

    1. 虚拟化概念 什么是虚拟化 虚拟化是使用所谓虚拟机管理程序从一台物理机上创建若干个虚拟机的过程.虚拟机的行为和运转方式与物理机一样,但它们会使用物理机的计算资源,如 CPU .内存和存储.虚拟机管 ...

  7. axios发了两次请求

    一.问题描述 用axios发post请求,却出现了options请求和post请求,options请求哪里来的? 二.问题分析 1.先温习一下跨域的知识 2.axios默认类型是Content-Typ ...

  8. 【Leetcode_easy】925. Long Pressed Name

    problem 925. Long Pressed Name solution1: class Solution { public: bool isLongPressedName(string nam ...

  9. Python文件的读取写入操作

    一.打开文件.关闭文件操作 想要读取文件或是写入文件,第一步便是打开文件,最后一步便是关闭文件.这里介绍两种打开(关闭)文件的方式: 1.open()方法 f=open(file_name[,acce ...

  10. 避免复制引用程序集的XML文件

    VS在编译时,默认会复制所有引用程序集对应的XML文件到输出目录. 在项目中设置AllowedReferenceRelatedFileExtensions可以避免复制操作. <PropertyG ...