assemble-middleware-anchors
v0.2.4
Published
Assemble plugin for creating anchor tags from headings in generated html using Cheerio.js.
Downloads
10
Maintainers
Readme
assemble-middleware-anchors
Assemble plugin for creating anchor tags from headings in generated html using Cheerio.js.
Upgrade notice! v0.2.0 or greater of this plugin depend on Assemble v0.5.0. This plugin will not work with Assemble v0.4.0!
Example
Before
<h1 id="glyphicons">Glyphicons</h1>
After
<h1 class="docs-heading">
<a href="#heading-id-name" name="heading-id-name" class="anchor">
<span class="anchor-target" id="heading-id-name"></span>
<span class="glyphicon glyphicon-link"></span>
</a>
Glyphicons
</h1>
Currently the plugin adds Bootstrap glyphicon classes. If you want to use different classes, find a bug, or have a feature request, please create an issue
Visit the anchors example repo.
Quickstart
In the command line, run:
npm install assemble-middleware-anchors --save
Next, register the plugin with Assemble:
var options = {
plugins: ['assemble-middleware-anchors', 'other/plugins/*']
};
Options
template
Specify a custom template (Underscore/Lo-Dash) to use for anchor markup. This is the default template:
module.exports = [
'<a href="#<%= id %>" name="<%= id %>" class="anchor">',
' <span class="anchor-target" id="<%= id %>"></span>',
' <span class="glyphicon glyphicon-link"></span>',
'</a>'
].join('\n');
To use a custom template just specify it in the options as follows:
options: {
plugins: ['assemble-middleware-anchors'],
anchors: {
template: './path/to/custom/template.js'
}
}
Visit the plugins docs for more info or for help getting started.
Other Assemble plugins
Here are some related projects you might be interested in from the Assemble core team.
- assemble-plugin-blog: Assemble plugin for generating blog pages for posts and archive list pages.
- assemble-plugin-drafts: Assemble plugin (v0.5.0) for preventing drafts from being rendered.
- assemble-plugin-pagination: WIP this plugin isn't ready for use!
- assemble-plugin-rss: NOT Published yet! This plugin isn't ready for prime time! Plugin for creating RSS feeds with Assemble, the static site generator for Node.js, Grunt.js and Yeoman.
- generator-plugin: Yeoman generator for Assemble plugins.
- grunt-init-assemble-plugin: Generate a plugin for Assemble.
- plugins: Collection of contrib plugins maintained by the Assemble core team.
- assemble-contrib-lunr-examples: Usages examples for assemble-contrib-lunr, a search plugin for Assemble.
- assemble-contrib-markdown: HEADS UP! This isn't ready for prime time! Convert markdown files to HTML using marked.js. This plugin is an alternative to Assemble's markdown Handlebars helpers. Both are useful in different scenarios.
- assemble-contrib-navigation: Assemble plugin for automatically generating Bootstrap-style side navigation.
- assemble-contrib-permalinks: Permalinks plugin for Assemble, the static site generator for Grunt.js and Yeoman. This plugin enables powerful and configurable URI replacement patterns, presets, uses Moment.js for parsing dates, and much more.
- assemble-contrib-sitemap: Sitemap generator plugin for Assemble
- assemble-contrib-toc: Create a table of contents in the generated HTML, using Cheerio.js
- assemble-contrib-toc-example: Example for generating a Table of Contents using Assemble.
- assemble-contrib-wordcount: Assemble plugin for displaying a word-count on blog posts or pages.
Visit assemble.io/plugins for more information about Assemble plugins.
Contributing
Find a bug? Have a feature request? Please create an Issue.
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality,
and run docs
in the command line to build the docs with Verb.
Pull requests are also encouraged, and if you find this project useful please consider "starring" it to show your support! Thanks!
Author
Brian Woodward
License
Copyright (c) 2014 Brian Woodward, contributors.
Released under the MIT license
This file was generated by grunt-verb on May 01, 2014.