Angular module for markdown and syntax highlighting.

https://github.com/jlguenego/angular-markdown-include

angular-markdown-include

Stars : 10

Forks : 10

Created by GUENEGO Jean-Louis

bower install angular-markdown-include

Download GitHub

angular-markdown-include

Angular module for including markdown and syntax highlighting. This module brings the directive md-include.

Syntax

<script src="path/to/jquery.min.js"></script>
<script src="path/to/angular.min.js"></script>
<script src="path/to/angular-markdown-include.min.js"></script>

<md-include src="'{mardown file url}'" [autoscroll] parser="{javascript function}" [script="{path to javascript file}"]></md-include>

Include the module angularMarkdownInclude in your angular app module.

var app = angular.module('app', ['angularMarkdownInclude']);

Attributes:

  • src: URL of the markdown file. Be careful, it is surrounded by quotes.
  • parser: Javascript function taking one argument (the markdown file content) and returning a string (the html content).
  • autoscroll: (optional) Like the autoscroll of Angular ng-include.
  • script: (optional) Specify a script that will be appended at the end of the HTML content and evaluated just after loading.

Example

Here is an example using Marked and HighlightJS.

<md-include src="'markdown/data.md'" autoscroll parser="myParser"></md-include>

<script>
function myParser(str) {
    var result = marked(str);
    var div = $('<div/>').html(result);

    div.find('pre').each(function(i, block) {
        var code = $(this).find('code');
        var lang = code.attr('class');
        console.log('lang=', lang);
        console.log('$(this)=', $(this));
        hljs.highlightBlock(code.get(0));
    });
    return div.html();
}
</script>

See the test directory for two real use cases. - Showdown and Prettify - Marked and HighlightJS

Installation

Simple method

Just download the angular-mardown-include.min.js.

Bower

Bower installs the minimum to run the library, not the test files.

bower install angular-mardown-include

Build

If you clone the Git repository, then you need npm to run the build.

npm install
grunt

Notes

Javascript library for markdown: - Marked - Showdown

Javascript library for syntax highlighting: - HighlightJS - Prettify

Issues

You can submit your issues on the Github system.

License

MIT

Authors

  • Yannis THOMIAS
  • Jean-Louis GUÉNÉGO

Javscript

Javascript plugin

Angular-js