Strick.PlusCon includes several shortcuts or “wrappers” for commonly used Console methods.
| Shortcut | Console Equivalent | Notes | 
|---|---|---|
| W | Write | Overloads provide functionality to display text with various forms of styling. | 
| WL | WriteLine | Overloads provide functionality to display text with various forms of styling. | 
| RK | ReadKey | Includes an optional prompt argument that will be displayed before waiting for user input. Overloads provide functionality to display the prompt with various forms of styling. | 
| RL | ReadLine | Includes an optional prompt argument that will be displayed before waiting for user input. Overloads provide functionality to display the prompt with various forms of styling. | 
| CLS | Clear | An overload provides the ability to clear the console window to specified foreground and background colors. | 
Include a using static directive in your file to make these shortcuts available without additional qualifying.
using static Strick.PlusCon.Helpers;
...
WL("Hello World!");
RK("Press any key to continue ");
There are a few different overloads of the W and WL methods that allow 
values to be output to the console with various forms of styling. 
As with Console.Write and Console.WriteLine, 
the WL methods are the same as the W methods. 
The only difference is that WL appends the current line terminator to the output.
All overloads will accept null or empty string values for the message parameter. 
For W, this generally results in no action being taken (nothing is sent 
to the console). For WL, this generally results in only the current line 
terminator being sent to the console. Refer to the internal documentation 
for each method for specific differences.
Supply foreground and background colors (System.Drawing.Color) to display 
messages in the console using those colors.
WL("Hello World!", Color.Red);
WL("Hello World!", Color.Red, Color.White);

To hightlight only a portion of the text, enclose it in square brackets ([, ]).
WL("Hello [World]!", Color.Red);
WL("Hello [World]!", Color.Red, Color.White);

To show the brackets (this can be useful if a particular value might be an empty string).
WL("Hello [World]!", Color.Red, null, true);
WL("Hello [World]!", Color.Red, Color.White, true);

To specify the colors of the brackets
WL("Hello [World]!", Color.Red, null, Color.Red);
WL("Hello [World]!", Color.Red, Color.White, Color.Blue, Color.White);

W and WL will also accept TextStyle and StyledText objects.
TextStyle style = new TextStyle(Color.Blue, Color.LimeGreen);
WL("Blue in Green", style);
style.BackColor = Color.MediumPurple;
style.ForeColor = Color.Blue;
WL(new StyledText("midnight blue", style));

The RK and RL methods are simple shortcuts, or wrappers, for the Console.ReadKey 
and Console.ReadLine methods, respectively.
There are a few overloads that allow you to display a prompt with or without 
styling. To render the prompt, each of these overloads makes use of the W method 
that takes the same arguments.
string anyPrompt = "Press any key ";
W(anyPrompt);
RK();
WL();
string namePrompt = "What's your name? ";
string? name;
W(namePrompt);
name = RL();
WL($"Hello {name}!");
name = RL(namePrompt);
WL($"Hello {name}!");
//colors
RK(anyPrompt, Color.DodgerBlue, Color.White);
WL();
ConsoleKeyInfo confirm;
confirm = RK("Are you sure [Y/N] ", Color.LimeGreen, Color.White);
WL();
confirm = RK("Are you really sure [Y/N] ", Color.LimeGreen, Color.White, Color.LimeGreen, Color.White);
WL();
TextStyle style = new TextStyle(Color.LimeGreen, null, Color.White);
RK(anyPrompt, style);
WL();
style.Reverse = true;
RK(new StyledText(anyPrompt, style));

Use the CLS method to clear the console screen. Pass background and/or foreground colors to set the console screen to those colors.
CLS(Color.LimeGreen, Color.Blue);
WL("Blue in Green");

Note that the colors set in CLS will remain in effect until a color reset sequence is sent to the console.
This would happen, for example, by using the Colorize, or WL methods (and others), as shown below.
To set the colors back to the desired colors, you can send a color escape sequence (without a reset sequence) to the console.
CLS(Color.LimeGreen, Color.Blue);
WL("Blue in Green");
//colors reset by the line below
WL("Kind Of Blue", Color.White, Color.Blue);
//back to default console colors here
WL("No longer blue");
//set to desired colors again
W(EscapeCodes.GetBackColorSequence(Color.LimeGreen) + EscapeCodes.GetForeColorSequence(Color.Blue));
WL("Blue once more");
WL("All Blues");
