Я создаю приложение CLI с nodejs с собственным REPL
. Тупой образец:
const repl = require('repl')
const myApp = require('myApp')
repl.start({
eval: (input, context, filename, callback) => {
const result = myApp(input)
callback(null, result)
},
writer: (result) => result
? 'my result: ' + result
: '' // <--- empty result
})
Все хорошо, но для каждого ответа приложения создается новая строка. Я хотел бы переопределить это поведение и решить, создавать ли новую строку или нет.
Пример
Давайте представим приложение калькулятором:
$ node index.js
add 5
add 3
result
8
Поскольку команда add
не имеет никакого результата, новая команда должна быть вставлена в следующую строку. Однако из приведенного выше кода я получаю следующее:
$ node index.js
add 5
add 3
result
8
с пустой строкой, добавленной после любого вызова 0 add
.
Как я могу предотвратить это?