如何让Markdown在Assemble中工作?

时间:2016-01-10 03:34:09

标签: assemble

我正在设置咕噜声。这有点困难,因为开发人员似乎已经对安装过程做了很多改变,但是没有更新的文档。

有谁知道如何设置降价处理?

我尝试了一些事情 - 我发现一篇帖子提到安装handlebars-helper-md所以我试过了。

我的汇编任务如下:

assemble: {
    options: {
        layout: 'page.hbs',
        layoutdir: './src/content/layouts',
        partials: ['./src/content/partials/**/*.hbs', './src/content/partials/**/*.md'],
        assets: 'assets',
        helpers: ['handlebars-helper-md'],
        data: ['package.json', './src/content/data/*.json'],
        marked: {
            breaks: false,
            gfm: true,
            langPrefix: 'language-',
            pedantic: false,
            sanitize: false,
            silent: false,
            smartLists: false,
            smartypants: false,
            tables: true
        }
    },
    project: {
        files: [{
            cwd: './src/content/pages',
            dest: './dist/www',
            expand: true,
            src: ['**/*.hbs']
        }]
    }
},

然后我把markdown文件放到这些地方(没有一个工作):

  1. ./src/content/markdown/privacy.md
  2. ./src/content/partials/privacy.md
  3. 直接在模板中
  4. 我的模板位于./src/content/pages/content/privacy-policy.hbs,如下所示:

    title: Privacy
    description: The privacy policy
    tags:
    - content
    - legal
    text: ./markdown/privacy.md
    ---
    <div class="row">
        <div class="col s12">
            <p>This is a quick test for the privacy policy content</p>
    
            <div style="border: 1px solid black">
                Test 1:
                {{md './markdown/privacy.md'}}
    
                relative to the hbs file perhaps?
                {{md '../../markdown/privacy.md'}}
    
            </div>
            <div style="border: 1px solid black">
                Test 2:
                {{>privacy}}
    
            </div>
            <div style="border: 1px solid black">
                Test3:
    
                {{md text}}
    
            </div>
            <div style="border: 1px solid black">
                Test4:
                {{#markdown}}
                    ## Hello World
                {{/markdown}}
    
            </div>
        </div>
    </div>
    
    
    
                smartLists: false,
                smartypants: false,
                tables: true
            }
        },
        project: {
            files: [{
                cwd: './src/content/pages',
                dest: './dist/www',
                expand: true,
                src: ['**/*.hbs']
            }]
        }
    },
    

    然后,基本上有两种方法工作 - 但是没有处理降价。这是输出图片:

    enter image description here

1 个答案:

答案 0 :(得分:0)

handlebars-helper-markdown仍设计为与grunt-assemble一起使用,它会查找已在任务配置中使用partials选项注册的部分内容。

您只需要将./src/content/markdown/*.md添加到partials数组,然后使用{{md "privacy"}}帮助找到要呈现的privacy.md文件。

我注意到你在2个地方有privacy.md。在grunt-assemble中,这将导致仅加载最后privacy.md部分。仅供参考,以防您遇到该问题。我们很快会重构grunt-assemble内幕,以匹配assemble@0.7.0中的功能来处理此类情况。