[RFC] ColorD
Robik
szadows at gmail.com
Mon Oct 22 03:48:07 PDT 2012
On Sunday, 21 October 2012 at 22:32:35 UTC, Walter Bright wrote:
> On 10/21/2012 12:28 PM, Robik wrote:
> > Simple example:
> >
> > import std.stdio, colord;
> > void main()
> > {
> > setConsoleColors(Fg.red, Bg.blue);
> > writeln("Red text on blue background.");
> > resetConsoleColors(); // Bring back initial state
> > }
>
> Need a method to get the current state, and reset the current
> state. Otherwise, nested calls to the console functions will
> screw up the state.
>
> I.e.:
>
> auto save = getConsoleState();
> setConsoleColors(Fg.red, Bg.blue);
> writeln("Red text on blue background.");
> setConsoleState(save); // Bring back initial state
>
> Or better:
>
> auto save = getConsoleState();
> scope (exit) setConsoleState(save);
> setConsoleColors(Fg.red, Bg.blue);
> writeln("Red text on blue background.");
On Windows, setting color to initial sets console colors to ones
that were set before launch of the program. On Posix it sets
default (ANSI remove formatting).
I will try to check if it is possible to get current colors on
Posix.
More information about the Digitalmars-d
mailing list