当我在vim中搜索然后按“ esc”时,光标返回到上一个位置

时间:2019-05-31 00:15:00

标签: vim

我的vim安装似乎发生了某些事情,我不确定是什么。我是vim的使用者,虽然我不使用它作为主要的编辑器。

当我搜索时:

/foo

我想编辑找到的位置,所以我按ESC(准备进入插入模式)。 vim现在跳回到我从文件开始的位置。例如。如果我位于3000行文件的第0行,则搜索特定的字符串,在第1700行找到它,然后进行编辑-ESC将我带回到第0行。

这是怎么回事?我是否意外设置了一些奇怪的模式?还是忘记了我应该知道的热键组合?

2 个答案:

答案 0 :(得分:5)

这是使用incsearch选项的预期行为:

unique_id   col_id   val_id   rec_i
1           100      a        123
1           101      b        123
1           102      c        123
1           103      d        123

2           106      a        124
2           106      b        124
2           104      c        124
2           103      d        124

如果Note that the match will be shown, but the cursor will return to its original position when no match is found and when pressing <Esc>. You still need to finish the search command with <Enter> to move the cursor to the match. 不在,则光标根本不会跳到第一个匹配项,直到您按下incsearch为止,光标不会移动。

答案 1 :(得分:3)

您说

  

所以我按ESC(准备进入插入模式)。

您无需先按ESC即可进入插入模式,只需按 enter (在vim中称为<CR>表示回车)。

因此,如果您要查找foo并开始插入文本,请键入

/foo<CR>i

请记住,<CR>是单击 enter 按钮的唯一按钮。