Skip to content

docpad/docpad-plugin-text

Repository files navigation

Text Plugin for DocPad

Travis CI Build Status NPM version NPM downloads Dependency Status Dev Dependency Status
GitHub Sponsors donate button Patreon donate button Flattr donate button Liberapay donate button Buy Me A Coffee donate button Open Collective donate button crypto donate button PayPal donate button Wishlist browse button

Allows you to render variables within templateData using text elements

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.

Install

Install this DocPad plugin by entering docpad install text into your terminal.

History

Discover the release 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?

GitHub Sponsors donate button Patreon donate button Flattr donate button Liberapay donate button Buy Me A Coffee donate button Open Collective donate button crypto donate button PayPal donate button Wishlist browse button

Contributors

These amazing people have contributed code to this project:

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

License

Unless stated otherwise all works are:

and licensed under: