我想复制一些没有鹈鹕解析它的HTML文件。在我的文件系统上,我将这些文件放在名为html5
的文件夹中。它应该在{SITE}/html5
。
我已尝试将其添加到EXTRA_PATH_METADATA = {'../html5': {'path': 'html5'}}
。但是这不会将文件夹复制到输出中。
我尝试添加STATIC_PATHS = ['images', '../html5']
。这给了我
CRITICAL: Error: `/home/moose/GitHub/MartinThoma.github.io/html5/polynom-interpolation.htm` and `/home/moose/GitHub/MartinThoma.github.io/output/../html5/polynom-interpolation.htm` are the same file
将html5
文件夹直接添加到content
会给我一个错误:
ERROR: Skipping html5/regression/regression.htm: could not find information about 'NameError: date'
ERROR: Skipping html5/regression/README.md: could not find information about 'NameError: title'
答案 0 :(得分:2)
关键:错误:
/home/moose/GitHub/MartinThoma.github.io/html5/polynom-interpolation.htm
和/home/moose/GitHub/MartinThoma.github.io/output/../html5/polynom-interpolation.htm
是同一个文件
重命名文件" polynom-interpolation"另外,在pelican生成输出后,两个具有相同html文件名的文件导致错误。
答案 1 :(得分:0)
<强> TL;博士强>
用
STATIC_PATHS = ['images', 'html5']
pelicanconf.py
中的,发生以下情况
PELICAN
|-- html5
| |-- README.md
|-- pelicanconf.py
|-- output
| |-- html5
| | |-- README.md
另外:不要使用相对路径指向&#34;向上&#34; (..
)。这可能并且会使事情变得混乱。
澄清:
尝试1
EXTRA_PATH_METADATA
本身不包含复制说明。
它可以指定要复制文件的位置,但仅限于要复制文件的位置。
例如,可以在STATIC_PATHS
。
尝试2
这实际上是要走的路。 STATIC_PATHS
是一个文件列表(相对于鹈鹕项目根目录),它将复制到输出文件夹。
这意味着给定的相对路径将用于获取文件&#39;内容和也将是相对于复制输出的目标文件路径。
SITE/path/to/file => SITE/output/path/to/file
可以使用EXTRA_PATH_METADATA
调整此行为。
例如,列表项'res/htaccess': {'path': '.htaccess'}
具有将htaccess文件的路径从output/res/htaccess
重写为output/.htaccess
的效果。
我无法完全解释为什么会出现此错误。
考虑到我上面写的内容,路径中的..
指示鹈鹕将文件写入SITE/output/../html5 == SITE/html5
。但是,当您从位于SITE父目录中的SITE/../html5
读取时,它们不应该是相同的文件。我可以想象这是一个限制,它阻止你在输出目录之外写。或者您在SITE/html5
中有另一份html5。
也许您的试用2 包含试用1 ,但即使这样也无法完全解释为什么错误信息中包含这些路径。
底线:引用SITE目录以外的文件时要小心。
尝试3
显然这种方法不起作用。 通过这种方式,资源被理解为文章源文件,这些文件无法正常工作。
答案 2 :(得分:0)
我今天遇到了同样的问题 - 我有:
STATIC_PATHS = [
'images', 'slides'
]
我想将一些HTML和Markdown文件放到幻灯片目录中,以便用户可以在原始格式中看到它们。很遗憾make html
返回了:
错误:跳过幻灯片/ index.html:无法找到有关&#39; NameError:date&#39;的信息。 DEBUG:阅读文件幻灯片/ systemd.md - &gt;文章 错误:跳过幻灯片/ systemd.md:找不到关于&#39; NameError:title&#39;
的信息
因此,在深入研究pelican代码库之后,我发现,我还应该将幻灯片目录放入 ARTICLE_EXCLUDES :
ARTICLE_EXCLUDES = ['slides']
现在它就像一个魅力。