代码之家  ›  专栏  ›  技术社区  ›  Thirteenth Seeker

从IdeaVim逃到IntelliJ IDEA快捷方式

  •  31
  • Thirteenth Seeker  · 技术社区  · 11 年前

    我已经习惯了vim和IntelliJ默认热键。我希望不必更改它们中的任何一个——我希望能够在某种转义键之后使用冲突的IntelliJ绑定,例如CTRL-P。

    冲突气球和我的 research 没有太大帮助。我唯一发现的是,我可以用热键关闭vim插件,然后在完成后再打开,但我必须记住每次都打开一个。

    我的问题有什么解决办法吗?

    5 回复  |  直到 11 年前
        1
  •  66
  •   zwessels Rémi Doolaeghe    6 年前

    我做的 .ideavimrc 包含所有冲突映射的绑定。也许这对某人有用。

    imap jj <Esc>
    
    let mapleader = " "
    map <leader>a :action $SelectAll<CR>
    map <leader>b :action GotoDeclaration<CR>
    map <leader>c :action $Copy<CR>
    map <leader>d :action EditorDuplicate<CR>
    map <leader>e :action RecentFiles<CR>
    map <leader>f :action Find<CR>
    map <leader>g :action GotoLine<CR>
    map <leader>h :action TypeHierarchy<CR>
    map <leader>i :action ImplementMethods<CR>
    map <leader>m :action EditorScrollToCenter<CR>
    map <leader>n :action FileChooser.NewFolder<CR>
    map <leader>o :action OverrideMethods<CR>
    map <leader>p :action ParameterInfo<CR>
    map <leader>q :action QuickJavaDoc<CR>
    map <leader>r :action Replace<CR>
    map <leader>s :action SaveAll<CR>
    map <leader>t :action Vcs.UpdateProject<CR>
    map <leader>u :action GotoSuperMethod<CR>
    map <leader>v :action $Paste<CR>
    map <leader>w :action EditorSelectWord<CR>
    map <leader>x :action $Cut<CR>
    map <leader>y :action EditorDeleteLine<CR>
    map <leader>[ :action EditorCodeBlockStart<CR>
    map <leader>] :action EditorCodeBlockEnd<CR>
    
        2
  •  28
  •   jbyler    6 年前

    我只是关闭VIM插件,执行击键,然后再打开它 ^Z型 为此目的绑定到VIM Emulator命令,这对我来说已经足够了。要设置此设置,请转到“首选项”…=>键映射,搜索“vim仿真器”,右键单击命令名以指定快捷方式。

    但是,如果您有一组有限的IntelliJ命令要与前缀键一起使用,则可以选择前缀键,确保它在IntelliJ中未绑定,然后在 ~/.ideavimrc 以及您想要调用的原始绑定。

    例如 ^D) VIM中为“向下滚动窗口”,IntelliJ中为“调试”。如果您想同时使用这两种功能:

    • 选择IntelliJ中未绑定的前缀键,例如 ^Z型
    • 在其他设置中=>Vim仿真,查找快捷方式 ^D) 并将处理程序设置为Vim。
    • 在您的 ~/.ideavimrc ,添加以下映射:

      nnoremap <C-Z><C-D> :action Debug<CR>

    现在您可以键入 ^D) 对于Vim动作向下滚动,或 ^Z型 ^D) 用于IntelliJ操作调试,而不实际禁用IdeaVIM。当然,您必须向~/添加映射。ideavimrc用于您希望以这种方式执行的每个IntelliJ命令,但如果您的数量有限,则可以设置一次并完成。

        3
  •  5
  •   John Slavick Guffa    7 年前

    除了@melihovv的出色回答之外,我还将运行、调试和选择配置操作添加到了 ~/.ideavimrc .

    map <leader>dd :action Debug<CR>
    map <leader>cd :action ChooseDebugConfiguration<CR>
    map <leader>rr :action Run<CR>
    map <leader>cr :action ChooseRunConfiguration<CR>
    
        4
  •  2
  •   animaacija    8 年前

    A. keymap 这里没有任何绑定:要使用,因此可以从干净的开始配置 .ideavimrc

        5
  •  0
  •   alex0ptr    7 年前

    一个简单的选项也可以是对IntelliJ键绑定使用插入模式。我刚开始使用ideavim,目前看来这对我来说很有用。。