Add non-rawhtml center tag
ci/woodpecker/push/woodpecker Pipeline was successful Details

This commit is contained in:
Sol Fisher Romanoff 2022-07-31 21:49:42 +03:00
parent cb12e3a149
commit d6e115fbb8
Signed by: nbsp
GPG Key ID: 9D3F2B64F2341B62
3 changed files with 51 additions and 0 deletions

View File

@ -147,6 +147,30 @@
return "$[" + token.tag + " " + this.parser.parseInline(token.tokens) + "]";
}
}, {
name: 'center',
level: 'block',
start: function start(src) {
return src.match(/<center>/);
},
tokenizer: function tokenizer(src, tokens) {
var rule = /^<center>([\S\s]*)<\/center>/;
var match = rule.exec(src);
if (match) {
var token = {
type: 'center',
raw: match[0],
text: match[1],
tokens: []
};
this.lexer.inline(token.text, token.tokens);
return token;
}
},
renderer: function renderer(token) {
return "<center>" + this.parser.parseInline(token.tokens) + "</center>\n";
}
}]
};

View File

@ -50,5 +50,27 @@ export default {
return `$[${token.tag} ${this.parser.parseInline(token.tokens)}]`
},
},
{
name: 'center',
level: 'block',
start (src) { return src.match(/<center>/) },
tokenizer (src, tokens) {
const rule = /^<center>([\S\s]*)<\/center>/
const match = rule.exec(src)
if (match) {
const token = {
type: 'center',
raw: match[0],
text: match[1],
tokens: [],
}
this.lexer.inline(token.text, token.tokens)
return token
}
},
renderer (token) {
return `<center>${this.parser.parseInline(token.tokens)}</center>\n`
},
},
],
}

View File

@ -41,4 +41,9 @@ describe('marked-mfm', () => {
marked.use(markedMfm)
expect(marked('$[spin.alternate,speed=0.5s test]')).toBe('<p><span class="mfm _mfm_spin_" data-alternate data-speed="0.5s">test</span></p>\n')
})
test('center', () => {
marked.use(markedMfm)
expect(marked('<center>test *italic*</center>')).toBe('<center>test <em>italic</em></center>\n')
})
})