Python利用sphinx构建个人博客
一、基础概念
利用sphinx+pandoc+github+readthedocs构建个人博客
- Sphinx: 是一个基于ReStructuredText的文档生成工具,可以令人轻松的撰写出清晰且优美的文档, 由Georg Brandl在BSD许可证下开发。新版的Python文档就是由Sphinx生成的,并且它已成为Python项目首选的文档工具,同时它对C/C++项目也有很好的支持;并计划对其它开发语言添加特殊支持。
- Read the Docs是一个在线文档托管服务,可以从各种版本控制系统中导入文档。支持webhooks,当你提交代码时,文档将被自动构建。
- Pandoc:pandoc是一款开源转换工具,可以实现常见的格式转换。支持全平台操作,以命令行的方式进行转换。
二、流程
Sphinx + GitHub + ReadtheDocs 作为一个文档写作工具,利用pandoc文本转换, 用Sphinx生成文档,GitHub托管文档,再导入到 ReadtheDocs。我们可以使用这个工具写文档、记笔记等。
三、实施部署
3.1 安装环境
此处利用的centos7.4 系统默认python版本2.7
[root@xuel-server ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@xuel-server ~]# python --version
Python 2.7.5
需要安装git
3.2 pip 安装sphinx环境
pip install sphinx sphinx-autobuild sphinx_rtd_theme
3.3 初始化项目
mkdir /mywike && cd /mywiki
sphinx-quickstart # 执行初始化,以下为自己输入,其他可按照默认直接回车
> Separate source and build directories (y/n) [n]: y # 创建source目录
> Project name: KaliArch SHELL BLOG # 项目名称
> Author name(s): KaliArch # 作者名称
> Project release []: 1.0
3.4 目录结构
[root@xuel-server mywike]# tree
.
├── build #文件夹,当你执行make html的时候,生成的html静态文件都存放在这里
├── make.bat
├── Makefile #编译文件用 make 命令时,可以使用这些指令来构建文档输出
└── source #文件夹,文档源文件全部应全部放在source根目录下
├── conf.py #Sphinx 的配置文件
├── index.rst
├── _static
└── _templates
3.5 修改配置文件
开启sys和os模块
* 配置主题
html_theme = 'alabaster'
* 支持LaTeX
* 支持中文检索
extensions = ['chinese_search']
source_suffix = ['.rst', '.md']
由于修改模板较麻烦可以直接git clone我的模板进行简单修改即可
3.6 安装第三方模块
yum install python-devel
pip install -r requirements.txt -i https://pypi.douban.com/simple/
如果报错可能由于下载超时,重新执行即可。
3.7 利用pandoc安装
cd /usr/local
wget -c https://github.com/jgm/pandoc/releases/download/2.2.3.2/pandoc-2.2.3.2-linux.tar.gz
ln -sv pandoc-2.2.3.2 pandoc
echo "export PATH=\$PATH:/usr/local/pandoc/bin" >/etc/profile.d/pandoc.sh
source /etc/profile.d/pandoc.sh
3.8 利用pandoc转换文件
利用pandoc将之前的markdown格式的博客源文件转换成rst格式
pandoc -s -t rst --toc markdown.md -o index.rst
[root@xuel-server source]# pandoc -s -t rst --toc myshell-note.md -o myshell-note.rst
[root@xuel-server source]# ls
conf.py index.rst myshell-note.md myshell-note.rst _static _templates
编辑index.rst,进行引用文件
.. toctree::
:maxdepth: 2
:caption: Contents:
myshell-note
3.9 编译生成html文件
cd /mywiki
make html # 生成网页文件
[root@xuel-server build]# ls
doctrees html
3.10 将页面项目托管至github
如果不会github可以参考git笔记
3.11 关联github和read the docs
如果没有readthedocs账号可以通过github账号登陆
- 管理github
- 导入代码库
- 项目编译
- 可以通过连接地址查看博客
四、查看
链接地址:

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
Google Guice 4.2.2 发布,支持 Java 11
Guice 4.2.2 已发布了,Guice 是 Google 开发的一个基于 Java 6 以上的轻量级依赖注入框架,目标是使开发和调试更容易,更快速。 主要更新内容: 支持Java11 (updated cglib & asm). 下载地址: Guice:guice-4.2.2.jar Guice (No AOP):guice-4.2.2-no_aop.jar Guice: <dependency> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> <version>4.2.2</version> </dependency> Guice (No AOP): <dependency> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> <versio...
-
下一篇
linux下使用 boost.python 调用c++动态库
最近开始使用 robot framework 测试c++的动态库,robot framework 是跑在 windows 上面,c++动态库是跑在远程linux主机上面。测试办法是让 robot framework 通过 SSHLIbrary 库执行远程机器上面的 python 脚本,python 脚本调用 C++ 动态库。所以现在要解决的是如何让python调用c++动态库。python调用c++动态库的两种办法 在上网查资料和咨询同事之后,得到两种办法:第一种将C++动态库封装成C接口,让python调用C语言接口。由于python只能调用C接口,无法直接调用C++接口,所以需要一层封装。封装办法:使用extern “C”声明方式,在C++的接口之上,封装一层C语言接口。这种办法经过尝试,发现纯C调用可行,但是python调用不可行,下面会具体讲解原因。第二种办法是使用c++的boost库,生成供python调用的接口,经测试可行,但是过程很曲折,下文会具体讲解遇到的问题和解决办法。 理解extern “C”的本质 在讲述第一种办法之前,先简单介绍一下extern “C”方...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合Redis,开启缓存,提高访问速度
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Dcoker安装(在线仓库),最新的服务器搭配容器使用