#escaping #ansi #prompt #console #command #problem #setup

setup-console

一个提供在 Windows 命令提示符中修复 ANSI 转义问题的函数的库

4 个版本

0.2.1 2023 年 8 月 6 日
0.2.0 2023 年 8 月 6 日
0.1.1 2023 年 8 月 2 日
0.1.0 2023 年 7 月 31 日

#903 in 命令行界面

MIT 许可证

6KB
68

setup-console

一个提供在 Windows 命令提示符中修复 ANSI 转义问题的函数的库。

Latest version

用法

在打印任何内容之前,只需在主函数中运行 setup_console::init() (或 setup_console::try_init()) 即可。

fn main() {
    println!("\x1b[31mRed \x1b[32mGreen \x1b[34mBlue\x1b[39m");
    // ・[31mRed ・[32mGreen ・[34mBlue・[39m
    setup_console::init();
    println!("\x1b[31mRed \x1b[32mGreen \x1b[34mBlue\x1b[39m");
    // Red Green Blue
}

恐慌

这仅适用于 Windows。

setup_console::init() 不会恐慌,而是显示消息并使用从 GetLastError() 获取的错误代码终止程序。

导致程序终止的情况包括

如果您不希望这种行为,可以使用 setup_console::try_init(),它返回 Result

依赖关系

~0–11MB
~68K SLoC