是否可以使用Pandoc加载CSV文件并为每一行生成markdown文件?

时间:2019-01-19 18:16:16

标签: pandoc

我有一个类似于以下内容的CSV文件:

0,Bob's Business,50 some address,zip,telephone
1,Jill's Business,25 some address,zip,telephone
...

我想获取此CSV文件,并让Pandoc为CSV文件中的每一行生成一个markdown文件。可从变量访问的每一列都将用于降价模板文件。

是否可以通过这种方式加载CSV文件并生成markdown / html文件?

1 个答案:

答案 0 :(得分:2)

我可以看到三种方式。

使用静态网站生成器

我可能只会使用jekyll with its data files之类的工具。

替代方法1:转换为YAML并使用pandoc的模板引擎

  1. mytemplate.md中输入以下内容:

    $for(data)$
    $data$
    $endfor$
    
  2. 将csv转换为JSON或YAML文件

  3. 使用--metadata-file option加载该文件,然后使用模板呈现输出:

    echo '' | pandoc --metadata-file data.yaml -t markdown --template mytemplate.md -o output.md
    

替代2:编写pandoc过滤器

有许多pandoc过滤器(例如pandoc-placetablepantable)读取csv并将其转换为pandoc表。但是您想将其转换为pandoc元数据格式(通常是从markdown文件的YAML主题解析的)。我猜您可以根据需要调整其中一个pandoc过滤器。