1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2025-07-04 11:02:51 +00:00

Fixed type block bug

This commit is contained in:
Jeremy Ruston 2012-03-03 13:35:51 +00:00
parent 81129629de
commit 128c94804a
2 changed files with 26 additions and 5 deletions

View File

@ -400,9 +400,10 @@ var rules = [
{ {
name: "typedBlock", name: "typedBlock",
match: "^\\$\\$\\$(?:.*)\\n", match: "^\\$\\$\\$(?:.*)\\n",
lookaheadRegExp: /^\$\$\$(.*)\n((?:.|\n)*?)\$\$\$/mg, lookaheadRegExp: /^\$\$\$(.*)\n((?:^[^\n]*\n)+?)(^\f*\$\$\$$\n?)/mg,
handler: function(w) handler: function(w)
{ {
this.lookaheadRegExp.lastIndex = w.matchStart;
var lookaheadMatch = this.lookaheadRegExp.exec(w.source); var lookaheadMatch = this.lookaheadRegExp.exec(w.source);
if(lookaheadMatch && lookaheadMatch.index == w.matchStart) { if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
// The wikitext parsing infrastructure is horribly unre-entrant // The wikitext parsing infrastructure is horribly unre-entrant

View File

@ -1,11 +1,31 @@
title: TypedBlockTests title: TypedBlockTests
Here's an example of a typed block containing JavaScript source code: WikiText can include blocks of text that are rendered with an explicit MIME type like this:
$$$.js {{{
return 2+2; $$$application/javascript
//This is some JavaScript
return 2 + "one";
$$$
}}}
This renders as:
$$$application/javascript
//This is some JavaScript
return 2 + "one";
$$$ $$$
Here's an example of a typed block containing an SVG image: It is also possible to abbreviate the MIME type to a file extension. For example:
{{{
$$$.svg
<svg xmlns="http://www.w3.org/2000/svg" width="150" height="100">
<circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="red" />
</svg>
$$$
}}}
This renders as:
$$$image/svg+xml $$$image/svg+xml
<svg xmlns="http://www.w3.org/2000/svg" width="150" height="100"> <svg xmlns="http://www.w3.org/2000/svg" width="150" height="100">
<circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="red" /> <circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="red" />