static ConsoleDriver ()
{
// Put the actual new statements into separate methods to avoid initalizing
// three classes when only one is needed.
if (!IsConsole) {
driver = CreateNullConsoleDriver ();
} else if (Environment.IsRunningOnWindows) {
driver = CreateWindowsConsoleDriver ();
} else {
string term = Environment.GetEnvironmentVariable ("TERM");
// Perhaps we should let the Terminfo driver return a
// success/failure flag based on the terminal properties
if (term == "dumb"){
is_console = false;
driver = CreateNullConsoleDriver ();
} else
driver = CreateTermInfoDriver (term);
}
}