我正在尝试使用 Go 创建 TUI 应用程序。
我会让这个应用程序像仪表板一样。
我想使用 Vim 作为终端(iTerm2)屏幕的一部分。
我想使用本地 vim env(NeoVim,本地 vimrc 和插件)。
如何在 go 中使用本地 vim?
或者有没有使用本地 vim 的库?
我的英语不是很好,如果有什么不清楚的地方可以随时问我。
谢谢你。
您尝试做的事情非常难以做到,我建议您不要这样做。
像您所描述的那样嵌入终端应用程序的唯一方法是在您的应用程序中实现终端仿真器并在您的应用程序中显示其输出。有一些库可以让这更容易——比如libvterm,vim 用它来实现:terminal
命令——但即便如此,这样做也很困难,特别是如果你想在嵌入式编辑器中支持高级终端功能(比如鼠标支持) .
使编辑器在终端应用程序中可用的一个更常见的习惯用法是将编辑器作为子进程按需启动,允许它在编辑文件时“接管”整个终端。编辑器退出后,您的应用程序可以恢复。