summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGrégoire Duchêne <gduchene@fastmail.net>2010-12-04 22:20:31 +0100
committerGrégoire Duchêne <gduchene@fastmail.net>2010-12-04 22:20:31 +0100
commitdc0ac72c987ec48c6b2a90d0056b4e79a3be092b (patch)
tree2854eac49a2fa71d145a13a9ed665d25dc37f036 /src
parent753d309d6b51ef2f3dc13f93dbc8942ce80df57a (diff)
Inline code text support partially added.
The "matching" constraint is not honored yet.
Diffstat (limited to 'src')
-rw-r--r--src/elements.h3
-rw-r--r--src/generators/latex/text_g.cpp3
-rw-r--r--src/parser/text_p.cpp5
3 files changed, 7 insertions, 4 deletions
diff --git a/src/elements.h b/src/elements.h
index 5f1bc5c..78560d7 100644
--- a/src/elements.h
+++ b/src/elements.h
@@ -31,7 +31,8 @@ enum stattribute_t {
SEMPH,
VSEMPH,
ALT,
- SALT
+ SALT,
+ CODE
};
struct stext_t {
diff --git a/src/generators/latex/text_g.cpp b/src/generators/latex/text_g.cpp
index 0cc64cb..93b1716 100644
--- a/src/generators/latex/text_g.cpp
+++ b/src/generators/latex/text_g.cpp
@@ -25,7 +25,8 @@ latex::text_g::text_g() : text_g::base_type(text_) {
| &uint_(SEMPH) << L"\\textit{\\emph{" << +text_ << L"}}"
| &uint_(VSEMPH) << L"\\texttt{\\textit{\\emph{" << +text_ << L"}}}"
| &uint_(ALT) << L"\\texttt{" << +text_ << '}'
- | &uint_(SALT) << L"\\texttt{\\textbf{" << +text_ << L"}}";
+ | &uint_(SALT) << L"\\texttt{\\textbf{" << +text_ << L"}}"
+ | &uint_(CODE) << L"\\texttt{" << +text_ << '}';
ptext_ = +char_;
}
diff --git a/src/parser/text_p.cpp b/src/parser/text_p.cpp
index 3546f5b..22e2a12 100644
--- a/src/parser/text_p.cpp
+++ b/src/parser/text_p.cpp
@@ -25,9 +25,10 @@ text_p::text_p() : text_p::base_type(text_) {
| lit("**") >> attr(SEMPH) >> +text_ >> "**"
| lit('*') >> attr(EMPH) >> +text_ >> '*'
| lit("''") >> attr(SALT) >> +text_ >> "''"
- | lit('\'') >> attr(ALT) >> +text_ >> '\'';
+ | lit('\'') >> attr(ALT) >> +text_ >> '\''
+ | lit('`') >> attr(CODE) >> +ptext_ >> '`';
ptext_ = +(echar_ | rchar_);
echar_ = lit('\\') >> char_;
- rchar_ = char_ - char_(L"*'");
+ rchar_ = char_ - char_(L"*'`");
}