gpt4 book ai didi

Vim:解决特定缓冲区中键映射的歧义以避免超时

转载 作者:行者123 更新时间:2023-12-04 04:22:45 25 4
gpt4 key购买 nike

我使用插件“Buffet”,并且有一个本地到缓冲区的映射“d”来删除游标下的缓冲区。

我还使用了plugun Surround,并且有一个全局映射“ds”表示“删除环绕声”。

因此,当我在Buffet窗口中按“d”时,Vim等待一秒钟,然后执行映射“d”。我知道&timeoutlen,但是我不想更改它。因此,我想解决自助餐窗口中“d”的键映射的歧义,以避免d删除缓冲区超时。

为了解决该问题,我想在Buffet窗口中取消以“d”开头的所有映射,但Buffet自己的映射除外。我怎样才能做到这一点?

P.S.我已经阅读了有关maparg()mapcheck()的信息,但不幸的是,它们似乎并不是我所需要的。

最佳答案

看来我自己找到了解决方案:

au BufEnter buflisttempbuffer* nunmap ds
au BufLeave buflisttempbuffer* nmap ds <Plug>Dsurround

我希望有一个更通用的方法(实际上删除所有从“ d”开始的映射),但是此刻我找不到它。

即使我发现了如何获取所有这些映射,但不幸的是我无法执行 unmap <buffer> ds,因为 ds是全局映射。我确信应该能够禁用某些缓冲区的全局映射,但我 还是可以的。 Vim很棒,但并不完美。

好吧,现在对我有用。

关于Vim:解决特定缓冲区中键映射的歧义以避免超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9110601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com