Pelican若干问题汇总

前几天感冒,鼻塞导致做任何事情都没有精力,只能花点时间整理pelican使用中遇到的一些问题。

WARNING: No valid files found in content.

使用fab build后命令行中出现如下的警告:

[localhost] local: pelican -s pelicanconf.py WARNING: No valid files found in content. WARNING: Could not process content/output/archives.html 'NoneType' object has no attribute 'lower' WARNING: Could not process content/output/authors.html 'NoneType' object has no attribute 'lower' WARNING: Could not process content/output/categories.html 'NoneType' object has no attribute 'lower' WARNING: Could not process content/output/index.html 'NoneType' object has no attribute 'lower' WARNING: Could not process content/output/tags.html 'NoneType' object has no attribute 'lower' Done: Processed 18 articles and 0 pages in 2.23 seconds.

虽然生成了文章,但总感觉怪怪的。也许是强迫症,不过修改这个警告也让我学会了一些东西。
首先确认了md文件中语法格式没有问题,接下来重新安装了markdownpelicanFabric,确保不是软件引起的问题。更新后,警告依然存在,于是google,第一页出现了很多强相关性的链接,专注github上的issue。先找的是issue 1097,尝试运行pelican --debug,发现没有有效的提示信息。再看issue 1116,这个帖子的方法是修改fabfile.py:

def build():
    local('pelican content/ -s pelicanconf.py')
def regenerate():
    local('pelican content/ -r -s pelicanconf.py')

照做然后build后,警告消失了,此外还把page不生成的问题解决了

Pages不生成

在content文件夹下添加了pages文件夹,写入了一些md文件,但发现总是生成不了。一度怀疑是pages中的md文件需要独特的语法:比如有特定的metadata需要写入,或是选用的主题不支持pages。当折腾大半天的时候,却发现上述的警告产生的原因也是该问题产生的凶手!顺便说一下,该问题也导致disqus评论系统加载不上去。
所以,千万不要忽视警告,尤其是让人觉得不影响最终运行的情况。