在vim中重新映射显示行导航

时间:2017-01-12 17:35:25

标签: vim

我目前正在设置.vimrc并将我的主行(即导航键)重新映射到wormkan。所以例如我有

nnoremap n j
nnoremap j n

这一切都运作良好,但我在解决如何使用此设置的显示行导航时遇到问题。

基本上,如果我想在qwerty布局上向下移动一个显示行,这将通过gj实现 - 所以现在我希望gn发生这种情况。

但是,gn目前仍然会映射到视觉搜索,而gj仍然与显示行导航相关联。我认为运营商挂起模式在这里会有所帮助(即添加onoremap n j反之亦然),但这并没有达到预期的效果。关于如何使其发挥作用的任何想法?

1 个答案:

答案 0 :(得分:1)

阅读::help gn

                              *gn* *v_gn*
gn        Search forward for the last used search pattern, like
          with `n`, and
     

启动可视模式以选择匹配。

          If the cursor is on the match, visually selects it.
     

如果运营商处于待处理状态,请对匹配进行操作。

     

例如," dgn"删除下一场比赛的文字。

          If Visual mode is active, extends the selection
          until the end of the next match.

您意识到gn动作命令。这就是为什么映射:onoremap n j没有按预期工作的原因。你需要的是:noremap gj gn