ストリームとstdio

https://github.com/retextjs/retext/tree/main/packages/retext-english より、コメントは檜山。

import {unified} from 'unified'
import {stream} from 'unified-stream'
import retextEnglish from 'retext-english'
import retextStringify from 'retext-stringify'
import retextEmoji from 'retext-emoji'

// unifiedプロセッサを作る。
const processor = unified()
  .use(retextEnglish)
  .use(retextEmoji, {convert: 'encode'})
  .use(retextStringify)

// 作ったプロセッサをstream化して、stdioパイプラインの中間に挟む
process.stdin.pipe(stream(processor)).pipe(process.stdout)

この使い方は便利そう。