2016-01-06 115 views
0

我正在使用JetBrains的phpstorm與IdeaVim插件。如何將IdeaVim常規模式的鍵映射到編輯器的動作?

我想知道如果我可以綁定正常模式下的鍵到編輯器的動作。

例如,我以前已映射Ctrl鍵 + 到導航>宣言。然而Ctrl + B是一個向後移動一頁的vi動作,沒關係。

我知道我可以將鍵盤快捷鍵配置爲不同的鍵盤快捷鍵。 Ctrl + Shift + B,但爲了讓事情更簡單我希望在ideavim的命令模式中有一個鍵映射到該功能,例如, ;

因此,按下;在命令模式下將觸發Declaration在phpstorm中的動作。

我該如何做到這一點?

回答

1

你想要什麼go to declaration是在vim中的命令。您不必使用IDEA的操作。

gd OTO d eclaration)是你正在尋找的東西。

所以你只需按(正常模式)gd,看看會發生什麼。

在一個正常的vim中,執行:h gd來查看詳細信息。

+0

雖然這適用於問題描述中的操作,但是您是否知道如何將某個鍵重新映射到其他編輯器操作? – k0pernikus

0

您可以使用<C-]>(Ctrl +])作爲以下引用(跳轉到聲明是引用的示例)並返回<C-O>。您還可以使用類似於原始Vim的map命令映射這些Vim風格的快捷方式。

2

爲了讓整整一個明確的答案你問映射:把這個變成你的~/.ideavimrc

nnoremap ; :action VimGotoDeclaration<CR> 

要找到行動的名字,我輸入:actionlist declaration這給包括該單詞的動作名稱的一個子集行動名稱中的「聲明」。

正如其他人所指出的,您可能更喜歡使用現有映射之一,而不是添加新映射。