Permalink
Browse files

Added documentation for ``` style fenced code block and more robust p…

…arsing
  • Loading branch information...
Dimitri van Heesch
Dimitri van Heesch committed Apr 5, 2015
1 parent ba37d86 commit 39ba42c3b21d08ec606eee18ee8b64c67ec6a42a
Showing with 15 additions and 9 deletions.
  1. +6 −0 doc/markdown.doc
  2. +5 −5 src/pre.l
  3. +4 −4 src/scanner.l
View
@@ -390,6 +390,12 @@ int func(int a,int b) { return a*b; }
The curly braces and dot are optional by the way.
Another way to denote fenced code blocks is to use 3 or more backticks (```):
```
also a fenced code block
```
\subsection md_header_id Header Id Attributes
Standard Markdown has no support for labeling headers, which
View
@@ -2452,7 +2452,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
<SkipCComment>[\\@][\\@]("f{"|"f$"|"f[") {
outputArray(yytext,(int)yyleng);
}
<SkipCComment>"~~~"[~]* {
<SkipCComment>^({B}*"*"+)?{B}{0,3}"~~~"[~]* {
static bool markdownSupport = Config_getBool("MARKDOWN_SUPPORT");
if (!markdownSupport)
{
@@ -2465,7 +2465,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
BEGIN(SkipVerbatim);
}
}
<SkipCComment>"```"[`]* {
<SkipCComment>^({B}*"*"+)?{B}{0,3}"```"[`]* {
static bool markdownSupport = Config_getBool("MARKDOWN_SUPPORT");
if (!markdownSupport)
{
@@ -2612,14 +2612,14 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
BEGIN(SkipCComment);
}
}
<SkipVerbatim>"~~~"[~]* {
<SkipVerbatim>^({B}*"*"+)?{B}{0,3}"~~~"[~]* {
outputArray(yytext,(int)yyleng);
if (g_fenceSize==yyleng)
{
BEGIN(SkipCComment);
}
}
<SkipVerbatim>"```"[`]* {
<SkipVerbatim>^({B}*"*"+)?{B}{0,3}"```"[`]* {
outputArray(yytext,(int)yyleng);
if (g_fenceSize==yyleng)
{
@@ -2629,7 +2629,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
<SkipVerbatim>"*/"|"/*" {
outputArray(yytext,(int)yyleng);
}
<SkipCComment,SkipVerbatim>[^*\\@\x06~\n\/]+ {
<SkipCComment,SkipVerbatim>[^*\\@\x06~`\n\/]+ {
outputArray(yytext,(int)yyleng);
}
<SkipCComment,SkipVerbatim>\n {
View
@@ -6264,14 +6264,14 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
g_nestedComment=FALSE;
BEGIN(DocCopyBlock);
}
<DocBlock>"~~~"[~]* {
<DocBlock>^({B}*"*"+)?{B}{0,3}"~~~"[~]* {
docBlock+=yytext;
docBlockName="~~~";
g_fencedSize=yyleng;
g_nestedComment=FALSE;
BEGIN(DocCopyBlock);
}
<DocBlock>"```"[`]* {
<DocBlock>^({B}*"*"+)?{B}{0,3}"```"[`]* {
docBlock+=yytext;
docBlockName="```";
g_fencedSize=yyleng;
@@ -6389,14 +6389,14 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
REJECT;
}
}
<DocCopyBlock>"~~~"[~]* {
<DocCopyBlock>^({B}*"*"+)?{B}{0,3}"~~~"[~]* {
docBlock+=yytext;
if (g_fencedSize==yyleng)
{
BEGIN(DocBlock);
}
}
<DocCopyBlock>"```"[`]* {
<DocCopyBlock>^({B}*"*"+)?{B}{0,3}"```"[`]* {
docBlock+=yytext;
if (g_fencedSize==yyleng)
{

0 comments on commit 39ba42c

Please sign in to comment.