chore(angular.io-package): fix blank line trimming for Jade docs

Jade does not like to have lines with only whitespace between processing marks
and the start of the actual content.

This fix provides a nunjucks filter that can strip off such offending whitespace
when rendering into a Jade syntax file.
This commit is contained in:
Peter Bacon Darwin 2015-09-18 11:35:46 +01:00 committed by Jay Traband
parent 4dcf2210d7
commit f9ad58eba5
2 changed files with 20 additions and 2 deletions

View File

@ -1,9 +1,9 @@
module.exports = function(encodeCodeBlock) { module.exports = function() {
return { return {
name: 'trimBlankLines', name: 'trimBlankLines',
process: function(str) { process: function(str) {
var lines = str.split(/\r?\n/); var lines = str.split(/\r?\n/);
while(lines[0] === '') { while(lines.length && (lines[0].trim() === '')) {
lines.shift(); lines.shift();
} }
return lines.join('\n'); return lines.join('\n');

View File

@ -0,0 +1,18 @@
var factory = require('./trimBlankLines');
describe('trimBlankLines filter', function() {
var filter;
beforeEach(function() {
filter = factory();
});
it('should be called "trimBlankLines"', function() {
expect(filter.name).toEqual('trimBlankLines');
});
it('should remove all empty lines from the start of the string', function() {
expect(filter.process('\n\n\nsome text\n\nmore text\n\n'))
.toEqual('some text\n\nmore text\n\n');
});
});