如何在Node.js中禁用和启用readline历史记录?

我有嘴唇REPL。我已经在lisp中读取了功能。我想在读取读取代码时禁用历史记录,并在完成后启用历史记录。这是我的代码:

var prompt = 'lips> ';
var continuePrompt = '... ';
const rl = readline.createInterface({
    input: process.stdin,output: process.stdout,prompt: prompt,terminal: !!process.stdin.isTTY
});
if (process.stdin.isTTY) {
    rl.prompt();
}
var code = '';
var multiline = false;
var e = env.inherit('name',{
    stdin: {
        read: function() {
            return new Promise(function(resolve) {
                rl.question('',resolve);
            });
        }
    }
});
rl.on('line',function(line) {
    code += line;
    if (balanced_parenthesis(code)) {
        rl.pause();
        run(code,e).then(function(result) {
            if (process.stdin.isTTY) {
                print(result);
                if (multiline) {
                    rl.setPrompt(prompt);
                }
                code = '';
                rl.prompt();
            }
            rl.resume();
        }).catch(function() {
            if (process.stdin.isTTY) {
                if (multiline) {
                    rl.setPrompt(prompt);
                }
                rl.prompt();
            }
            code = '';
        });
    } else {
        multiline = true;
        var i = indent(code,2,prompt.length - continuePrompt.length);
        rl.setPrompt(continuePrompt);
        rl.prompt();
        rl.write(new Array(i + 1).join(' '));
    }
});

我从Docs中发现,将HistorySize设置为0以使用readline.createInterface的唯一方法是,但是如何更新它?

fish890129 回答:如何在Node.js中禁用和启用readline历史记录?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2997317.html

大家都在问