将数据写入终端时如何处理 xterm.js 中的新行?

Kum*_*iya 7 xtermjs

我试图在 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>
Run Code Online (Sandbox Code Playgroud)

我已附上图像以供参考我面临的问题。

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

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

abh*_*rel 22

尝试这个

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

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


小智 6

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

let data = "kumar\r\nkanhaiya"
Run Code Online (Sandbox Code Playgroud)