分页: 1 / 1

vim 脚本怎样把一串字符当作 Ex 命令送到命令行

发表于 : 2010-11-27 16:32
自由建客
比如我的一个函数要完成的功能是完成一个很长的 Ex 命令的前一部分(:vertical botright),后一部分需要用户手动键入(或 new 或 help 等等)。我想让该函数把 :vertical botright 送到命令行,然后返回。用户可接着在 :vertical botright 之后键入后半部分命令而执行。
我试过 menu 和 map 只要不带 <CR> 就是我想要的效果,但现在的条件不是菜单和键映射而是在一个脚本的一个函数中。

Re: vim 脚本怎样把一串字符当作 Ex 命令送到命令行

发表于 : 2010-11-27 21:15
lilydjwg

代码: 全选

:h input

Re: vim 脚本怎样把一串字符当作 Ex 命令送到命令行

发表于 : 2010-11-27 21:59
自由建客
我试过 input() 伪造一个命令行,但补全无论怎么设置都不如真正命令行来得好。

Re: vim 脚本怎样把一串字符当作 Ex 命令送到命令行

发表于 : 2010-11-27 22:31
xtz1990
我安装了VIM,但不知道怎样找出它的图形界面

Re: vim 脚本怎样把一串字符当作 Ex 命令送到命令行

发表于 : 2010-11-27 22:54
lilydjwg
自由建客 写了:我试过 input() 伪造一个命令行,但补全无论怎么设置都不如真正命令行来得好。
completion 参数设置得对的话应该没什么问题吧。实在不行自定义补全函数好了。

Re: vim 脚本怎样把一串字符当作 Ex 命令送到命令行

发表于 : 2010-11-27 23:17
自由建客
lilydjwg 写了:
自由建客 写了:我试过 input() 伪造一个命令行,但补全无论怎么设置都不如真正命令行来得好。
completion 参数设置得对的话应该没什么问题吧。实在不行自定义补全函数好了。
真正的命令行是,输入 edit 后面参数的补全是 file 类型,输入 help 后面的补全类型是 help 。我伪造的命令行怎么设置它都是固定的补全方式,要么有盲区要么就弄一堆没必要的补全候选。

Re: vim 脚本怎样把一串字符当作 Ex 命令送到命令行

发表于 : 2010-11-28 12:29
lilydjwg
自由建客 写了: 真正的命令行是,输入 edit 后面参数的补全是 file 类型,输入 help 后面的补全类型是 help 。我伪造的命令行怎么设置它都是固定的补全方式,要么有盲区要么就弄一堆没必要的补全候选。
好吧。用 feedkey 把前半部分写出来如何?

Re: vim 脚本怎样把一串字符当作 Ex 命令送到命令行

发表于 : 2010-11-28 19:19
自由建客
大侠怎么不早说呢,昨晚深夜我又仔细翻了翻手册,翻到 feedkeys(),我要的就是它! :em09