Wyam-如何在管道中订购内容?

时间:2018-06-26 11:16:08

标签: wyam

我尝试使用Wyam从不同的.md文件生成静态HTML文件,但是我的管道无法按正确的顺序创建内容。

我设置了文件属性的orderby和thenby语句,以按输入文件夹结构的顺序获取HTML结果的各个部分。

我的输入文件夹具有以下结构:

Input
│   help.md
│
├───1_Intro
│       1_general.md
│
├───2_examples
│       1_general.md
│       2_examples.md
│
└───3_appendix
        1_glossar.md
        2_sources.md

这是我与管道一起使用的wyam.conf文件:

// Load Wyam Modules
#n Wyam.Html 
#n Wyam.Markdown
#n Wyam.Yaml

// Setting culture
System.Globalization.CultureInfo.DefaultThreadCurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-EN");

    Pipelines.Add("Help",
    ReadFiles("help.md"),
        Append(
            ReadFiles("*/{*,!help}.md"),
            OrderBy((d, c) => d["SourceFileBase"]).ThenBy((d, c) => d["SourceFileName"]),
            FrontMatter(Yaml()),    
            Markdown()
            ),
        FrontMatter(Yaml()),
        Markdown(),
        Combine(),
        WriteFiles(".html")
    ).WithProcessDocumentsOnce();

我期望得到一个HTML文件,如果我的.md文件的内容是这样的:

1.1 General
Lorem ipsum...
2.1 About my Examples
...
2.2 Examples
...
3.1 Glossar
...
3.2 Sources
...

但是在使用管道运行Wyam之后,我得到如下结果:

3.1 Glossar
Lorem ipsum...
2.1 About my Examples
...
2.2 Examples
...
3.2 Sources
...
1.1 General
...

每次在管道上运行Wyam时,都会得到不同的结果,某些结果是按照我要创建的顺序排列的,但是大多数结果对我来说都是完全随机的。

有人可以告诉我我做错了什么吗?

0 个答案:

没有答案