我看到这个演示一旦打印出来的一段文字(就像你在打字的时候得到some-command --help
),并且再跃升备份到文本几个关键字,改变文字颜色, 它是后已经在该终端打印出来 。
这似乎是疯了我。 他们是怎么做到的?
开始去想它,我想stdout
和stdin
技术上的“IO流”,所以也许这是一个跟踪光标的位置的持久变量? 建设语言解析器的时候我记得做类似的东西。
我们的目标将是这样的:说你键入以下到控制台,因为在Node.js的,它是所有异步,我们不希望写在控制台异步函数每次它输出一个空白数组:
$ node app.js
> App.User.all()
=> []
然后异步回调执行时,你回去和编辑=> []
结果包括:
$ node app.js
> App.User.all()
=> [#<User id:1>, #<User id:2>...]
这将是真棒至少知道如何实现,即使有很多其他的问题通过(工作无关的这个问题,我也知道,你可以定义一个全局回调做类似App.User.all(_c)
)。
如何编辑端子输出它已经被打印后?