diff --git a/src/Spectre.Console.Tests/Unit/MarkupTests.cs b/src/Spectre.Console.Tests/Unit/MarkupTests.cs
index 9b1016d..baba137 100644
--- a/src/Spectre.Console.Tests/Unit/MarkupTests.cs
+++ b/src/Spectre.Console.Tests/Unit/MarkupTests.cs
@@ -71,5 +71,19 @@ namespace Spectre.Console.Tests.Unit
// Then
console.Output.ShouldBe(output);
}
+
+ [Fact]
+ public void Should_not_fail_with_brackets_on_calls_without_args()
+ {
+ // Given
+ var console = new FakeAnsiConsole(ColorSystem.Standard, AnsiSupport.Yes);
+
+ // When
+ console.MarkupLine("{");
+
+ // Then
+ console.Output.NormalizeLineEndings()
+ .ShouldBe("{\n");
+ }
}
}
diff --git a/src/Spectre.Console/Extensions/AnsiConsoleExtensions.Markup.cs b/src/Spectre.Console/Extensions/AnsiConsoleExtensions.Markup.cs
index e150b1f..528dc06 100644
--- a/src/Spectre.Console/Extensions/AnsiConsoleExtensions.Markup.cs
+++ b/src/Spectre.Console/Extensions/AnsiConsoleExtensions.Markup.cs
@@ -28,7 +28,17 @@ namespace Spectre.Console
/// An array of objects to write.
public static void Markup(this IAnsiConsole console, IFormatProvider provider, string format, params object[] args)
{
- console.Render(MarkupParser.Parse(string.Format(provider, format, args)));
+ Markup(console, string.Format(provider, format, args));
+ }
+
+ ///
+ /// Writes the specified markup to the console.
+ ///
+ /// The console to write to.
+ /// The value to write.
+ public static void Markup(this IAnsiConsole console, string value)
+ {
+ console.Render(MarkupParser.Parse(value));
}
///
@@ -42,6 +52,16 @@ namespace Spectre.Console
MarkupLine(console, CultureInfo.CurrentCulture, format, args);
}
+ ///
+ /// Writes the specified markup, followed by the current line terminator, to the console.
+ ///
+ /// The console to write to.
+ /// The value to write.
+ public static void MarkupLine(this IAnsiConsole console, string value)
+ {
+ Markup(console, value + Environment.NewLine);
+ }
+
///
/// Writes the specified markup, followed by the current line terminator, to the console.
///
@@ -54,4 +74,4 @@ namespace Spectre.Console
Markup(console, provider, format + Environment.NewLine, args);
}
}
-}
+}
\ No newline at end of file