Hello World!!!!!!!!!!!!!!!!!!
经过一个礼拜的努力,终于把搞好了,看起来还真的很不错呢!`(*∩_∩*)′
这次采用的是pelican + gitcafe建的博客,不得不说,pelican和gitcafe实在是强大!下面我会讲一讲如何通过它们建站!
其实,在这之前我不会html,不会css,不会js,不会python,不会markdown,不知道什么是git,反正就是什么都不会,都不知道。但是建这个博客却是异常的简单,所以请大家不要被前面所提到的高端的东西吓到……其实还是蛮简单的。
好了,步入正题吧。
我的blog史
回顾一下我的blog历史,发现还是蛮纠结的。
-
最开始我用的是百度空间和QQ空间作为blog。
-
后来同学推荐我用GAE建博客,然后就照着教程,以及在同学帮助下随便搞了一个,那个站现在还在,只是被墙了……点这里
-
然后他又推荐了一个免费空间,恰巧我有一个域名,于是就又建了一个站,用wordpress。不幸的是那个空间好像挂了(说不定是我被封号了o(╯□╰)o)
-
之后就选择了国内免费的blog: 博客园(着实捉鸡- -),然后又换了到了http://www.is-programmer.com/。这两个博客都还在:http://cnblogs.com/lazycal, http://lazycal.is-programmer.com/
-
最后,abcdabcd987建议我用git管理做静态博客。于是我采纳了他的意见,并挂在了gitcafe上面。
为什么选择pelican与gitcafe
做静态博客有很多选择,我最先用了jekyll,但是发现传上去中文会乱码,而且不够简单。
后来我又发现了pelican,照着教程做,很快就建出了一个漂亮的博客,操作比jekyll来得简便,而且用的是python(相对于ruby来讲,至少我听说过= =)。
接下来就是寻找托管平台了。现在的主流是github。但是由于那是国外的,多少会收到点“污染”。于是我就用了国内的一个类似的平台: gitcafe
如何做?
网上有几个比较好的教程: http://riku.gitcafe.com/pelican-gitcafe.html 和 http://x-wei.github.io/pelican_github_blog.html 还有 http://www.linuxzen.com/shi-yong-pelicanda-zao-jing-tai-bo-ke.html
我是windows用户,所以首先就需要按照这篇windows-pelican教程做,然后再看ubuntu-pelican教程 这一步我找他所说的软件还是找了一会。主要是setuptools没找到对应的python 2.7版本,于是我直接去搜了。哦,对了,这里的setuptools是python的一个拓展包,里面有很多有用的东西,比如easy_install
安装完后,新建一个文件夹,在那个文件夹下面调用 pelican-quickstart 命令,他会问你一些问题,照着回答就是了,看不懂的直接回车,使用默认配置。
然后会生成一个pelicanconf.py的文件,可以在这里面调参数。
生成博客:
pelican -s pelicanconf.py content -o blogpath
其中的blogpath是你的博客路径。比如我的:../lazycal (我的blogpath和pelicanconf.py所在的文件夹是在同一个目录下的,所以要用“..”)
当然,你也可以直接在pelicanconf.py里面设置:
OUTPUT_PATH = '../lazycal'
这样就不用“-o”后面那些了
然后将blogpath这个文件夹上传到Gitcafe。
这边的操作我就不多讲了,直接看教程
为了方便发布,我也做了一个publish.sh脚本(其中-t是主题所在位置,我后面会讲):
pelican -s pelicanconf.py content -t notmyidea-cms
cd ~/lazycal
git add .
git commit -a -m "Update"
git push origin gitcafe-pages
我的pelicanconf.py(其中的sitemap是插件,我后面会讲)
#!/usr/bin/env python
# -*- coding: utf-8 -*- #
from __future__ import unicode_literals
AUTHOR = 'Lazycal'
SITENAME = "Lazycal's Blog"
SITEURL = 'http://lazycal.gitcafe.com'
ARCHIVES_URL = 'archives.html'
TIMEZONE = 'Asia/Shanghai'
DEFAULT_LANG = 'zhs'
TAG_CLOUD_STEPS = 1
TAG_CLOUD_MAX_ITEMS = 100
# Feed generation is usually not desired when developing
FEED_ALL_ATOM = None
CATEGORY_FEED_ATOM = None
TRANSLATION_FEED_ATOM = None
GOOGLE_ANALYTICS = 'UA-45952574-1'
OUTPUT_PATH = '../lazycal'
# Blogroll
LINKS = (('Pelican', 'http://getpelican.com/'),
('Python.org', 'http://python.org/'),
('Jinja2', 'http://jinja.pocoo.org/'),
('abcdabcd987\'s blog', 'http://quartergeek.com'),)
# Social widget
SOCIAL = (('You can add links in your config file', '#'),
('Another social link', '#'),)
DISQUS_SITENAME = u"lazycal"
DEFAULT_PAGINATION = 10
# Uncomment following line if you want document-relative URLs when developing
#RELATIVE_URLS = True
PLUGIN_PATH = u"pelican-plugins"
PLUGINS = ["sitemap"]
## 配置sitemap 插件
SITEMAP = {
"format": "xml",
"priorities": {
"articles": 0.7,
"indexes": 0.5,
"pages": 0.3,
},
"changefreqs": {
"articles": "monthly",
"indexes": "daily",
"pages": "monthly",
}
}
#GOOGLE_CUSTOM_SEARCH_SIDEBAR = "002380779614969891647:3veknkwk_lm"
如何撰写教程里面也讲了,更详细的看官方帮助文档
如果你想要用markdown的话,要先pip install Markdown才行。
接下来的任务就是各种选主题,以及各种自定制了。
主题可以用git clone https://github.com/farseerfc/pelican-themes下载
使用就看我的publish.sh
我选的是notmyidea-cms主题。但是这个主题实在是bug多多……于是就开始乱改了。
改主题
改主题要么就是改css文件,要么就是改templates里面的文件。
css的话可以通过chrome的帮助来修改,而templates里面的文件语法我还不是很懂,不过琢磨一下也能稍作修改。可以通过对照来猜测各个变量的用处,然后就能改了:P(谁叫我是蒟蒻呢?)
添加Tag
我发现原来的主题没有tag,于是去官方帮助文档找了一下,还真有教你怎么加tag的:http://docs.getpelican.com/en/3.3.0/settings.html#tag-cloud
其中第一段代码加在你想放tag的地方。比如我的就放在Categories的下方。
第二段放在css里面,用来使tag长得不一样。
添加google搜索
在base.html的适当位置添加:
<aside id="sidebar"><!--Google站内搜索开始-->
<div class="search">
<h2>Search</h2>
<form method=get action="http://www.google.com/search">
<input type=text name=q>
<input type=submit name=btnG value="Google 搜索">
<input type=hidden name=ie value=GB2312>
<input type=hidden name=oe value=GB2312>
<input type=hidden name=hl value=zh-CN>
<input type=hidden name=domains value="{{ SITEURL }}">
<input type=hidden name=sitesearch value="{{ SITEURL }}">
</form>
</div>
<!--Google站内搜索结束-->
添加插件sitemap
先git clone git://github.com/getpelican/pelican-plugins.git
配置sitemap的话,在主题的pelicanconf.py加上
PLUGIN_PATH = u"pelican-plugins"
PLUGINS = ["sitemap"]
## 配置sitemap 插件
SITEMAP = {
"format": "xml",
"priorities": {
"articles": 0.7,
"indexes": 0.5,
"pages": 0.3,
},
"changefreqs": {
"articles": "monthly",
"indexes": "daily",
"pages": "monthly",
}
}
让Pelican支持评论
先去Disqus上申请账号,然后在pelicanconf.py里面修改或添加DISQUS_SITENAME = u"lazycal"
更改代码高亮方案
首先得改主题本身的css。。貌似是pre还是code,反正把背景色弄掉。然后去easy_install Pygments,再pygmentize -S default -f html > pygments.css
然后复制pygments.css,把原来主题的那个替换掉就可以了!!
这样,一个个人博客就建成了!!!
p.s.在emacs下写博客还真实愉悦无比啊:)
Comments !