Allows you to render templateData with HTML elements
CoffeeScript HTML
Latest commit 82a3b7d May 3, 2016 @balupton balupton Merge pull request #8 from dcohenb/license_format_fix
Format the license in package.json to match the SPDX standard

README.md

Text Plugin for DocPad

Build Status NPM version NPM downloads Dependency Status Dev Dependency Status
Gratipay donate button Flattr donate button PayPayl donate button BitCoin donate button Wishlist browse button

This plugin allows you to render variables within templateData using text elements

Install

docpad install text

Usage

If you have this in your docpad.cson

{
    templateData:
        firstname: 'Benjamin'
        lastname: 'Lupton'
        fullname: '<t>firstname</t> <t>lastname</t>'
        markdownExample: '<t render="markdown">this is so **awesome**</t>'
        markdownEcoExample: '<t render="html.md.eco">here is a random number: **<%- Math.random() %>**</t>'
}

Doing the following inside a document:

My creator's firstname is: <t>firstname</t>
My creator's lastname is: <t>lastname</t>
My creator's fullname is: <t>fullname</t>
The markdown example is: <t>markdownExample</t>
The markdown eco example is: <t>markdownEcoExample</t>

Will output:

My creator's firstname is: Benjamin
My creator's lastname is: Lupton
My creator's fullname is: Benjamin Lupton
The markdown example is: this is so <strong>awesome</strong>
The markdown eco example is: here is a random number: <strong>0.5123213213123</strong>

Which is incredibly useful for abstracting out common generic pieces of text from your templates and placing them inside your configuration files. A common use case for this is easy configurability of skeletons, as well as easier translation of your website.

If you are embedding a text block into a text block, it is best that you name your text block like so <t:myName>blah</t:myName> that way our parser won't get confused as easily :)

To use it with coffeekup you'll do it like so tag 'text', {render:"md"}, "your **markdown** content". More info here..

Alternatively, you can use the t template helper like so @t('*markdown*', {render:"markdown"})

Configuration

matchElementRegexString defaults to 't(?:ext)?'

What regex string should we use to find text elements. The default value will find <t> and <text> elements. If you use SVG, you may want to change this just to t to avoid conflicts with the text element.

preferredElement defualts to 't'

What element should be preferred when we are inject text elements with the t template helper? The default value will inject <t> elements.

History

Discover the change history by heading on over to the HISTORY.md file.

Contribute

Discover how you can contribute by heading on over to the CONTRIBUTING.md file.

Backers

Maintainers

These amazing people are maintaining this project:

Sponsors

No sponsors yet! Will you be the first?

Gratipay donate button Flattr donate button PayPayl donate button BitCoin donate button Wishlist browse button

Contributors

These amazing people have contributed code to this project:

Become a contributor!

License

Unless stated otherwise all works are:

and licensed under: