diff --git a/src/parser.pegjs b/src/parser.pegjs index f350763a495574a2aa2ab01141da81f68c0c321c..34233e0b4a758a2e85f8058110cc4a63bc24d425 100644 --- a/src/parser.pegjs +++ b/src/parser.pegjs @@ -354,7 +354,7 @@ hashtagChar // inline: URL url - = "<" url:urlFormat ">" + = "<" url:altUrlFormat ">" { return N_URL(url); } @@ -364,14 +364,11 @@ url } urlFormat - = "http" "s"? "://" urlContent + = "http" "s"? "://" urlContentPart+ { return text(); } -urlContent - = urlContentPart+ - urlContentPart = urlBracketPair / [.,] &urlContentPart // last char is neither "." nor ",". @@ -381,6 +378,12 @@ urlBracketPair = "(" urlContentPart* ")" / "[" urlContentPart* "]" +altUrlFormat + = "http" "s"? "://" (!">" CHAR)+ +{ + return text(); +} + // inline: link link