")?;
- escape_html_body_text(&mut self.writer, &text)?;
- self.write("
")?;
+ write!(self.writer, "{}
", EscapedHtmlBodyText(&text))?;
}
InlineMath(text) => {
- self.write(r#""#)?;
- escape_html(&mut self.writer, &text)?;
- self.write("")?;
+ write!(
+ self.writer,
+ r#"{}"#,
+ EscapedHtmlBodyText(&text)
+ )?;
}
DisplayMath(text) => {
- self.write(r#""#)?;
- escape_html(&mut self.writer, &text)?;
- self.write("")?;
+ write!(
+ self.writer,
+ r#"{}"#,
+ EscapedHtmlBodyText(&text)
+ )?;
}
Html(html) | InlineHtml(html) => {
self.write(&html)?;
@@ -137,11 +187,13 @@ where
}
FootnoteReference(name) => {
let len = self.numbers.len() + 1;
- self.write("")?;
+ write!(
+ self.writer,
+ "",
+ EscapedHtml(&name)
+ )?;
let number = *self.numbers.entry(name).or_insert(len);
- write!(&mut self.writer, "{}", number)?;
+ write!(self.writer, "{}", number)?;
self.write("")?;
}
TaskListMarker(true) => {
@@ -178,29 +230,22 @@ where
} else {
self.write("\n<")?;
}
- write!(&mut self.writer, "{}", level)?;
+ write!(self.writer, "{}", level)?;
if let Some(id) = id {
- self.write(" id=\"")?;
- escape_html(&mut self.writer, &id)?;
- self.write("\"")?;
+ write!(self.writer, " id=\"{}\"", EscapedHtml(&id))?;
}
let mut classes = classes.iter();
if let Some(class) = classes.next() {
- self.write(" class=\"")?;
- escape_html(&mut self.writer, class)?;
+ write!(self.writer, " class=\"{}", EscapedHtml(class))?;
for class in classes {
- self.write(" ")?;
- escape_html(&mut self.writer, class)?;
+ write!(self.writer, " {}", EscapedHtml(class))?;
}
self.write("\"")?;
}
for (attr, value) in attrs {
- self.write(" ")?;
- escape_html(&mut self.writer, &attr)?;
+ write!(self.writer, " {}", EscapedHtml(&attr))?;
if let Some(val) = value {
- self.write("=\"")?;
- escape_html(&mut self.writer, &val)?;
- self.write("\"")?;
+ write!(self.writer, "=\"{}\"", EscapedHtml(&val))?;
} else {
self.write("=\"\"")?;
}
@@ -263,9 +308,11 @@ where
if lang.is_empty() {
self.write("")
} else {
- self.write("")
+ write!(
+ self.writer,
+ "",
+ EscapedHtml(lang)
+ )
}
}
CodeBlockKind::Indented => self.write(""),
@@ -284,7 +331,7 @@ where
} else {
self.write("\n\n")
}
Tag::List(None) => {
@@ -310,11 +357,9 @@ where
title,
id: _,
} => {
- self.write("")
}
@@ -324,11 +369,9 @@ where
title,
id: _,
} => {
- self.write("")
}
@@ -338,13 +381,14 @@ where
title,
id: _,
} => {
- self.write("")
}
@@ -354,11 +398,14 @@ where
} else {
self.write("\n")?;
+ write!(
+ self.writer,
+ "{}\">",
+ EscapedHtml(&name)
+ )?;
let len = self.numbers.len() + 1;
let number = *self.numbers.entry(name).or_insert(len);
- write!(&mut self.writer, "{}", number)?;
+ write!(self.writer, "{}", number)?;
self.write("")
}
Tag::MetadataBlock(_) => {
@@ -376,7 +423,7 @@ where
}
TagEnd::Heading(level) => {
self.write("")?;
- write!(&mut self.writer, "{}", level)?;
+ write!(self.writer, "{}", level)?;
self.write(">\n")?;
}
TagEnd::Table => {
@@ -452,19 +499,19 @@ where
}
Html(_) => {}
InlineHtml(text) | Code(text) | Text(text) => {
- // Don't use escape_html_body_text here.
+ // Don't use EscapedHtmlBodyText here.
// The output of this function is used in the `alt` attribute.
- escape_html(&mut self.writer, &text)?;
+ write!(self.writer, "{}", EscapedHtml(&text))?;
self.end_newline = text.ends_with('\n');
}
InlineMath(text) => {
self.write("$")?;
- escape_html(&mut self.writer, &text)?;
+ write!(self.writer, "{}", EscapedHtml(&text))?;
self.write("$")?;
}
DisplayMath(text) => {
self.write("$$")?;
- escape_html(&mut self.writer, &text)?;
+ write!(self.writer, "{}", EscapedHtml(&text))?;
self.write("$$")?;
}
SoftBreak | HardBreak | Rule => {
@@ -473,7 +520,7 @@ where
FootnoteReference(name) => {
let len = self.numbers.len() + 1;
let number = *self.numbers.entry(name).or_insert(len);
- write!(&mut self.writer, "[{}]", number)?;
+ write!(self.writer, "[{}]", number)?;
}
TaskListMarker(true) => self.write("[x]")?,
TaskListMarker(false) => self.write("[ ]")?,