文件名称:libvim:libvim:作为最小C库的Vim核心编辑引擎
文件大小:13.17MB
文件格式:ZIP
更新时间:2024-02-20 05:59:15
c vim text-editor vi onivim
什么是libvim ? libvim是一个分支,目标是提供一个对Vim模态编辑进行建模。 它根本不包含任何用户界面(甚至不包含终端UI),并且主要负责忠实于Vim击键的快速缓冲区操纵引擎。 它仍在进行中,还有很多工作需要稳定。 如果您要查找终端Vim,请查看或GUI Vim,请查看 。 为什么? libvim主要用于 。 在v1,v2和其他项目之间实现了几次“ UI Vims”迭代之后,我希望拥有的抽象是一种纯功能的Vim,与终端UI完全分离,其中“ vim”是(editor state, input) => (new editor state) 。 当Onivim 2完全处理渲染层时,此Vim建模为纯函数可以仅关注缓冲区操作。 为此, libvim公开了一个简单的C API来与Vim一起使用,并支持侦听缓冲区更改,消息等。 它负责: 管理和操纵缓冲区 响应输入的缓冲区操作 解析和获取VimL 处理按键重映射 它不负责: 任何形式的UI渲染(终端等) 滑鼠支援 语法高亮 拼写检查 终端支持 完成时间 输入法(IME) 所有这些都打算由库的使用者处理-使libvim专