是否可以在gVIM中显示多项选择对话框?

时间:2012-01-21 21:27:57

标签: vim

我有一个gVIM脚本,用于解析当前缓冲区并提供用户选择多个选项之一。它被实现为控制台输入,但由于我使用的是gVIM的图形版本,也许可以使用多选对话框的图形版本?我曾尝试使用python + Tkinter,但它非常不稳定,并没有在一些NIX盒子上工作:(。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

GVim 在其功能和设置中没有任何可以显示GUI元素的东西(有一些高级例外,比如关闭对话框等)。

话虽如此, GVim 是开源的,没有什么可以阻止你下载源代码并搞乱它。

答案 1 :(得分:0)

经过一些研究,我找到了解决方案。 VIM支持所谓的“客户端服务器”模式,外部应用程序可以向其发送命令。所以这个任务(以及许多其他任务)可以通过以下技术解决(在Windows,OSX和Ubuntu上测试):

  1. 处理命令的VIMscript启动独立的GUI脚本 单独的过程和回报。
  2. 独立GUI脚本(python / ruby​​ / .exe / whatever)显示GUI和 等待用户交互。
  3. 用户交互后,独立GUI脚本关闭它的窗口, 通过“clientserver”接口与VIM进行通信(调用另一个接口) 脚本,打开文件,移动光标等)并退出。