【发布时间】:2016-05-21 16:16:33
【问题描述】:
我正在为 TUI(文本用户界面)小练习开发 NCURSES 应用程序。不幸的是,我没有选择使用永远如此美妙和忠实的 ASCII。我的程序使用了很多 Unicode 方框图字符。
我的程序已经可以检测到终端是否具有颜色功能。我需要做类似的事情:
if(!supportsUnicode()) //I prefer camel-case, it's just the way I am.
{
fprintf(stderr, "This program requires a Unicode-capable terminal.\n\r");
exit(1);
}
else
{
//Yay, we have Unicode! some random UI-related code goes here.
}
这不仅仅是简单地包含ncursesw 并设置区域设置的问题。我需要获取特定的终端信息,如果它不会发生,实际上会抛出一个错误。例如,当用户尝试在可爱的 XTerm 而不是支持 Unicode 的 UXTerm 中运行程序时,我需要抛出一个错误。
【问题讨论】:
标签: c unicode terminal ncurses widechar