mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-09-01 15:18:06 +00:00
LibMarkdown: Add render_for_raw_print methods to Node derived classes
This method will be used by the package manager code to render an actual Port's name to raw text as it is stored as relative URL currently in the AvailablePorts.md file.
This commit is contained in:
parent
8073c615af
commit
22737b70bc
Notes:
sideshowbarker
2024-07-17 08:55:54 +09:00
Author: https://github.com/supercomputer7
Commit: 22737b70bc
Pull-request: https://github.com/SerenityOS/serenity/pull/18944
Reviewed-by: https://github.com/ADKaster
Reviewed-by: https://github.com/alimpfard
Reviewed-by: https://github.com/gmta
Reviewed-by: https://github.com/kleinesfilmroellchen ✅
Reviewed-by: https://github.com/linusg
Reviewed-by: https://github.com/timschumi
2 changed files with 52 additions and 0 deletions
|
@ -34,6 +34,11 @@ void Text::EmphasisNode::render_for_terminal(StringBuilder& builder) const
|
|||
}
|
||||
}
|
||||
|
||||
void Text::EmphasisNode::render_for_raw_print(StringBuilder& builder) const
|
||||
{
|
||||
child->render_for_raw_print(builder);
|
||||
}
|
||||
|
||||
size_t Text::EmphasisNode::terminal_length() const
|
||||
{
|
||||
return child->terminal_length();
|
||||
|
@ -62,6 +67,11 @@ void Text::CodeNode::render_for_terminal(StringBuilder& builder) const
|
|||
builder.append("\e[22m"sv);
|
||||
}
|
||||
|
||||
void Text::CodeNode::render_for_raw_print(StringBuilder& builder) const
|
||||
{
|
||||
code->render_for_raw_print(builder);
|
||||
}
|
||||
|
||||
size_t Text::CodeNode::terminal_length() const
|
||||
{
|
||||
return code->terminal_length();
|
||||
|
@ -85,6 +95,10 @@ void Text::BreakNode::render_for_terminal(StringBuilder&) const
|
|||
{
|
||||
}
|
||||
|
||||
void Text::BreakNode::render_for_raw_print(StringBuilder&) const
|
||||
{
|
||||
}
|
||||
|
||||
size_t Text::BreakNode::terminal_length() const
|
||||
{
|
||||
return 0;
|
||||
|
@ -104,6 +118,11 @@ void Text::TextNode::render_to_html(StringBuilder& builder) const
|
|||
builder.append(escape_html_entities(text));
|
||||
}
|
||||
|
||||
void Text::TextNode::render_for_raw_print(StringBuilder& builder) const
|
||||
{
|
||||
builder.append(text);
|
||||
}
|
||||
|
||||
void Text::TextNode::render_for_terminal(StringBuilder& builder) const
|
||||
{
|
||||
if (collapsible && (text == "\n" || text.is_whitespace())) {
|
||||
|
@ -158,6 +177,11 @@ void Text::LinkNode::render_to_html(StringBuilder& builder) const
|
|||
}
|
||||
}
|
||||
|
||||
void Text::LinkNode::render_for_raw_print(StringBuilder& builder) const
|
||||
{
|
||||
text->render_for_raw_print(builder);
|
||||
}
|
||||
|
||||
void Text::LinkNode::render_for_terminal(StringBuilder& builder) const
|
||||
{
|
||||
bool is_linked = href.contains("://"sv);
|
||||
|
@ -198,6 +222,13 @@ void Text::MultiNode::render_to_html(StringBuilder& builder) const
|
|||
}
|
||||
}
|
||||
|
||||
void Text::MultiNode::render_for_raw_print(StringBuilder& builder) const
|
||||
{
|
||||
for (auto& child : children) {
|
||||
child->render_for_raw_print(builder);
|
||||
}
|
||||
}
|
||||
|
||||
void Text::MultiNode::render_for_terminal(StringBuilder& builder) const
|
||||
{
|
||||
for (auto& child : children) {
|
||||
|
@ -236,6 +267,11 @@ void Text::StrikeThroughNode::render_to_html(StringBuilder& builder) const
|
|||
builder.append("</del>"sv);
|
||||
}
|
||||
|
||||
void Text::StrikeThroughNode::render_for_raw_print(StringBuilder& builder) const
|
||||
{
|
||||
striked_text->render_for_raw_print(builder);
|
||||
}
|
||||
|
||||
void Text::StrikeThroughNode::render_for_terminal(StringBuilder& builder) const
|
||||
{
|
||||
builder.append("\e[9m"sv);
|
||||
|
@ -269,6 +305,13 @@ DeprecatedString Text::render_to_html() const
|
|||
return builder.to_deprecated_string().trim(" \n\t"sv);
|
||||
}
|
||||
|
||||
DeprecatedString Text::render_for_raw_print() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
m_node->render_for_raw_print(builder);
|
||||
return builder.to_deprecated_string().trim(" \n\t"sv);
|
||||
}
|
||||
|
||||
DeprecatedString Text::render_for_terminal() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue