jasper的技术小窝

关注DevOps、运维监控、Python、Golang、开源、大数据、web开发、互联网

终于把博客后台改为Markdown了

作者:jasper | 分类:python | 标签:     | 阅读 1776 次 | 发布:2015-04-03 12:28 a.m.

经过两个晚上的努力,终于把本博的后台改为Markdown格式的了,并用pygments装饰了一下之前丑陋的代码。还把之前的都重新改了一遍,累死我了,得将之记录下来。

之前写博客的方式简直太不方便了,还得在其中添加html代码,只是在代码出做了一些处理,这样显然不能是长久之计,更偏向于“所见即所得”的书写方式。所以,最近开始寻觅一些改造方法,之前是想用富文本的方式来的。因为看到有人用百度的ueditor来实现的,看着很强大的,而且也有了支持django的开源项目https://github.com/zhangfisher/DjangoUeditor,想着要支持国产嘛。结果按着文档做下来,好像暂时对xadmin的支持不是很好,我是在template里面手动加了ueditor的js文件才显示出来的:

看着不错,但是不能编辑,而且随便点了几个按钮console里面都会有报错,感觉是不是有bug,所以就去github上面提了个issue,被告知去官方咨询。囧,,,好吧,于是我又去官方的github上提了,结果到现在还没有回复。

想了想还是用Markdown吧,之前看到有人说Markdown是每个程序员都必须要要掌握的一门技巧。幸好,在python中就有相应的模块可以做转化。
adminx.py中的save_models用法如下:

import markdown

#核心代码
obj.content_html = markdown.markdown(obj.content,['fenced_code', 'codehilite'])

只需要一句代码就能完成转化了,而且对于代码的书写,它不需要指定是什么语言,因为python-markdown可以靠“猜”来识别代码语言,但我发现他也主要是看开头的一些关键字来的,如果你代码里面没有明显的关键字,那么也是猜不出来的。

接下来就用pygments来高亮代码啦,网上有很多教程说要安装pygments模块,然后用命令自己生成相应的CSS,其实大可不必如此,只需要从https://github.com/icco/pygments-cs下载你所需要的样式,再在博客里面include即可,本人是比较亲睐monokai的,因为我用pycharm也是这个风格的。

好了,接下来下载一个Markdown的编辑器就可以“所见即所得”了,建议不要用在线的编辑器,因为使用本地的,可以很方便地保存在电脑上,这样就很方便对文章进行备份了,以防服务器挂掉造成文章的丢失。我上次就是vps挂掉了,结果花了很大的功夫才把文件找回来。

这样这个blog算是比较完善而正规了,但是美中不足的是不支持图片的直接上传,这段代码我之后会加上去的。本blog的代码已经同步更新在了GitHub上了,有兴趣的可以看看。


转载请注明出处:http://www.opscoder.info/blog_markdown.html

【上一篇】 浅谈storm的监控和告警
【下一篇】 storm笔记本
其他分类: