1

我正在尝试在 xterm.js 中使用换行符输出字符串,但它以一种奇怪的格式显示输出。我需要像在实际终端中一样打印输出。

从'xterm'导入{终端};

    let terminal = new Terminal();
    terminal.loadAddon(new FitAddon());
    let data = "kumar\nkanhaiya"
    this.setState({showOutput: true},() => {
        terminal.open(document.getElementById('xterm'));
        terminal.writeUtf8(data)
    })

    <div id="xterm"></div>

我附上了图片以供参考我面临的问题。

换行符应该使文本的另一部分从头开始,就像在实际终端中一样。但它在左边留下了一些空间。

https://i.stack.imgur.com/IOcpW.png

4

2 回答 2

4

尝试这个

let terminal = new Terminal({convertEol: true});

它会将光标设置到每一个新行的下一行的开头。

于 2021-07-15T01:59:16.363 回答
3

用数据中的 CRLF('\r\n') 替换 LF('\n') 字符

let data = "kumar\r\nkanhaiya"
于 2021-01-20T10:03:29.293 回答