summaryrefslogtreecommitdiff
path: root/src/parser/text_p.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser/text_p.cpp')
-rw-r--r--src/parser/text_p.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/parser/text_p.cpp b/src/parser/text_p.cpp
index 0701691..ce1e233 100644
--- a/src/parser/text_p.cpp
+++ b/src/parser/text_p.cpp
@@ -20,7 +20,7 @@ text_p::text_p() : text_p::base_type(text_) {
using namespace ph;
using qi::standard_wide::char_;
- text_ = stext_(_r1) | ptext_(_r1);
+ text_ = stext_(_r1) | pstext_(_r1) | ptext_(_r1);
stext_ = lit("***") >> attr(VSEMPH) >> +text_(_r1) >> "***"
| lit("**") >> attr(SEMPH) >> +text_(_r1) >> "**"
@@ -34,6 +34,9 @@ text_p::text_p() : text_p::base_type(text_) {
| lit(L"@\"") >> attr(QUOTE) >> +text_(val(L"*'`$@\"")) >> '"'
| lit(L"@_") >> attr(SUB) >> +text_(val(L"*'`$@_")) >> '_';
+ pstext_ = lit('[') >> attr(LINK) >> +text_(val(L"]")) >> ']' >>
+ lit('(') >> ptext_(val(L")")) >> ')';
+
ptext_ = +(echar_ | rchar_(_r1));
echar_ = lit('\\') >> char_;
rchar_ = char_ - char_(_r1);