这几个东西不是一个层面的:
- emacs-kp 专注排版,是基础功能;
- emacs widget 是emacs内置的提供组件的库,可能部分组件涉及到长文本展示会用到排版,当然如果不追求美观,直接在行尾暴力断行也不是不行;
- ewoc 更类似于现代前端框架(vue,react…)中的“数据驱动”的概念,即把文本界面的渲染绑定到数据中,实现界面的增量更新。
这些概念统统结合起来,其实就是要在 emacs 中实现一个基于文本的应用程序的前端框架,这就是 ETAF 要做的事情。之所以要做这个,就是因为内置的 widget 不太好用,而且功能很局限。ETAF要做的是在emacs中实现一整个基于现代前端理念的文本框架。