【发布时间】:2012-06-12 22:59:36
【问题描述】:
在 node.js 中,如何获取控制台窗口和/或缓冲区的当前宽度?
.net 中的模拟是Console.BufferWidth 和/或Console.WindowWidth。
我想对换行进行更多控制。
【问题讨论】:
在 node.js 中,如何获取控制台窗口和/或缓冲区的当前宽度?
.net 中的模拟是Console.BufferWidth 和/或Console.WindowWidth。
我想对换行进行更多控制。
【问题讨论】:
看起来目前最好的方法是这个属性:
process.stdout.columns
对于高度(行):
process.stdout.rows
另请注意,有一个“调整大小”事件,它可能会派上用场:
process.stdout.on('resize', function() {
console.log('screen size has changed!');
console.log(process.stdout.columns + 'x' + process.stdout.rows);
});
【讨论】:
Screen Buffer Size,不是当前控制台宽度。
if (process.stdout.isTTY) {
console.log("The console size is:", process.stdout.getWindowSize());
} else {
console.log("stdout is not a console");
}
【讨论】:
getWindowSize() 是平台兼容的