mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-02 22:55:23 +00:00
LibDiff: Add Diff::write_unified for formatting unified hunks
This commit is contained in:
committed by
Andrew Kaster
parent
f690807c5a
commit
a4e50deeea
@@ -24,6 +24,27 @@ DeprecatedString generate_only_additions(StringView text)
|
||||
return builder.to_deprecated_string();
|
||||
}
|
||||
|
||||
ErrorOr<void> write_unified(Hunk const& hunk, Stream& stream, ColorOutput color_output)
|
||||
{
|
||||
TRY(stream.write_formatted("{}\n", hunk.location));
|
||||
|
||||
if (color_output == ColorOutput::Yes) {
|
||||
for (auto const& line : hunk.lines) {
|
||||
if (line.operation == Line::Operation::Addition)
|
||||
TRY(stream.write_formatted("\033[32;1m{}\033[0m\n", line));
|
||||
else if (line.operation == Line::Operation::Removal)
|
||||
TRY(stream.write_formatted("\033[31;1m{}\033[0m\n", line));
|
||||
else
|
||||
TRY(stream.write_formatted("{}\n", line));
|
||||
}
|
||||
} else {
|
||||
for (auto const& line : hunk.lines)
|
||||
TRY(stream.write_formatted("{}\n", line));
|
||||
}
|
||||
|
||||
return {};
|
||||
}
|
||||
|
||||
ErrorOr<void> write_normal(Hunk const& hunk, Stream& stream, ColorOutput color_output)
|
||||
{
|
||||
// Source line(s)
|
||||
|
||||
Reference in New Issue
Block a user