我一直在使用Vim和WinWalker,一个缓冲区管理器。有一个很大的功能是自动调整分割窗口的大小。所以,当我将一个缓冲区聚焦时,它将调整到最大宽度和高度。在Vim中自动调用密钥映射开始
然而,激活此功能,你需要打ctrl+w
弹出WinWalker命令(虽然它可以映射到另一个键),然后按下c
激活自动尺寸(这样你就可以打ctrl+w
和c右后组合)。这非常乏味,尤其是当您已经打开了多个缓冲区时,必须激活每个缓冲区中的自动调整。
我的问题是:有没有办法在.vimrc中自动调用这个组合键?
我试过类似autocmd VimEnter <C-W>c
,但它不起作用。另外,我并不擅长定制Vim。那么,有人可以帮助我吗?
在此先感谢
确切地说,我发现正在调用WinWalkerMenu(),并且在一段时间的真循环中它正在等待输入,所以当你点击c时,它会跳转到一个case。实际上,这是WinWalker中的一个次要功能(_“哦,顺便说一下,它也自动调整大小,尽管它不相关”),所以默认情况下没有直接的功能来激活它。然后将是一种方法:调用WinWalker()并“模拟”一个'c'输入? –
Korcholis
2011-05-13 16:36:41
@Kor我不熟悉在vim脚本(.vimrc)中模拟用户输入的任何方法。我不是说它不存在,我只是不知道该怎么做。如果我处于你的位置,我会做的是抽象出功能的功能并向作者提交补丁。 – cledoux 2011-05-13 17:10:40
@Kor我继续前进并修改了脚本。我不使用WinWalker,所以我不确定它是否像它应该的那样工作,但是如果你愿意,你可以测试它。我已经通过https://github.com/karategeek6/WinWalkerClone将它上传到git repo只修改插件/ WinWalker.vim文件。要调用的函数是WinWalkerAutoWindowResize()。 – cledoux 2011-05-13 17:11:52