IntelliJ IDEA中IdeaVim插件下GuiDesigner.ExpandSelection无法使用
解决IdeaVim下GuiDesigner.ExpandSelection失效问题
问题情况
- IntelliJ IDEA的
GuiDesigner.ExpandSelection扩展选区功能很实用,但搭配IdeaVim插件时完全用不了 - 用Vim命令
:actionlist GuiDesigner.*Selection能看到默认快捷键绑定:--- Actions --- GuiDesigner.ExpandSelection <C-W> GuiDesigner.ShrinkSelection <C-S-W> - 试过在
.ideavimrc里手动加映射,不管是用:nmap还是:map,甚至换了非<C-W>的快捷键,重启IDE后都没用::nmap <C-w> <Action>(GuiDesigner.ExpandSelection) :nmap <C-w> <Action>(GuiDesigner-ExpandSelection) - 禁用IdeaVim后,
GuiDesigner.ShrinkSelection按<C-S-W>能正常工作,但GuiDesigner.ExpandSelection还是失效,还发现EditorSelectWord默认也绑定了<C-W>:--- Actions --- EditorSelectWord <C-W> - 环境:Ubuntu 22.04系统,snap包安装的IntelliJ IDEA 2022.3社区版,IdeaVim版本2.0.0
解决方法
先解决全局快捷键冲突
打开IntelliJ的File > Settings > Keymap,搜索EditorSelectWord,把它默认的<C-W>快捷键改成别的(比如<C-Alt-W>),避免和GuiDesigner.ExpandSelection抢快捷键。配置正确的IdeaVim映射
打开.ideavimrc文件,替换成下面的映射规则:nnoremap <silent> <C-w> <Action>(GuiDesigner.ExpandSelection) vnoremap <silent> <C-w> <Action>(GuiDesigner.ExpandSelection)用
nnoremap和vnoremap是为了避免递归映射冲突,<silent>能去掉执行时的多余提示。验证并重启
保存.ideavimrc后重启IntelliJ,去GUI设计器界面试试<C-W>能不能正常扩展选区。额外排查:检查GuiDesigner自身绑定
如果禁用IdeaVim后GuiDesigner.ExpandSelection还是失效,直接在Keymap里搜这个功能,确认它的快捷键有没有正确绑定,没绑定的话手动设成<C-W>就行。
内容的提问来源于stack exchange,提问作者H.B.
相关产品推荐
相关产品推荐

