diff --git a/bower.json b/bower.json index 28733ca4..f9daf28e 100644 --- a/bower.json +++ b/bower.json @@ -14,7 +14,7 @@ "angular-moment": "0.9.0", "angular-cache": "3.2.5", "angularjs-viewhead": "0.0.1", - "marked": "0.3.5", + "markdown-it": "8.4.0", "moment-timezone": "0.5.4", "highlightjs": "9.1.0", "ng-sortable": "1.3.1" diff --git a/src/app/services/directive/markdown.js b/src/app/services/directive/markdown.js index f39e190f..84f8aaac 100644 --- a/src/app/services/directive/markdown.js +++ b/src/app/services/directive/markdown.js @@ -18,9 +18,19 @@ * Service for rendering text as markdown. */ angular.module('sb.services') - .directive('insertMarkdown', function($sanitize) { + .directive('insertMarkdown', function($sanitize, $window) { 'use strict'; + var md = $window.markdownit({ + html: true, + highlight: function(code, lang) { + if (lang && $window.hljs.getLanguage(lang)) { + return $window.hljs.highlight(lang, code, true).value; + } + return ''; // Don't highlight if no language specified + } + }); + return { restrict: 'E', scope: { @@ -28,7 +38,8 @@ angular.module('sb.services') }, link: function(scope, elem) { scope.$watch('content', function(newVal) { - elem.html('