光标移动
约 827 字大约 3 分钟
NeovimVim光标移动
2026-03-20
这一篇把常见移动动作整理成几组:词级移动、行内移动、屏幕滚动、搜索跳转和标记跳转。
单词级移动
w:移动到下一个单词开头。b:移动到上一个单词开头。e:移动到下一个单词结尾。ge:移动到上一个单词结尾。
如果想查更完整的词与文本对象列表,可以继续看 12.快捷键索引-文本对象。
行内移动
$:移动到当前行末尾。0:移动到当前行第一个字符。^:移动到当前行第一个非空白字符。f<char>:向右找第一个指定字符。F<char>:向左找第一个指定字符。t<char>:移动到目标字符前一位。T<char>:移动到目标字符后一位。
执行过一次 f/F/t/T 后:
;:重复同方向查找。,:按相反方向重复查找。
括号与结构跳转
%:当光标在括号附近时,跳到对应括号。gg:跳到文件开头。G:跳到文件末尾。<number>G:跳到指定行。<number>gg:同样可跳到指定行。<number>%:跳到文件大约第 n% 的位置。
屏幕位置相关移动
H:跳到当前屏幕顶部附近。M:跳到当前屏幕中间附近。L:跳到当前屏幕底部附近。
这里的 H/M/L 说的是当前窗口可见区域,不是整个文件的开头、中间和结尾。
滚动
CTRL-U:向上滚动半屏。CTRL-D:向下滚动半屏。CTRL-B:向上翻一整屏。CTRL-F:向下翻一整屏。CTRL-Y:窗口向上滚动一行。CTRL-E:窗口向下滚动一行。zt:把当前行滚到窗口顶部。zb:把当前行滚到窗口底部。
搜索
/<word>:向后搜索。?<word>:向前搜索。n:跳到下一个结果。N:跳到上一个结果。*:向后搜索当前光标所在完整单词。#:向前搜索当前光标所在完整单词。
常见辅助选项:
:set ignorecase
:set hlsearch
:set incsearch
:set wrapscan如果只想临时清掉高亮:
:nohlsearch简单正则
/^word:匹配行首。/word$:匹配行尾。/a.c:.匹配任意单个字符。
更完整的搜索模式可以看 13.快捷键索引-正则搜索。
跳回之前的位置
``:回到上一次跳转前的位置。CTRL-O:回到更早的位置。CTRL-I:回到更新的位置。:jumps:查看跳转历史。
标记位置
m<char>:设置局部标记。`<char>:跳到局部标记。m<char>中如果<char>是大写字母,则标记可以跨文件使用。:marks:查看当前标记列表。
使用建议
- 真正常用的是“操作命令 + 移动命令”的组合,而不是单独记住某一个动作。
- 如果发现自己频繁用方向键或鼠标移动,通常说明可以多练几组词级和行级移动。--- title: 光标移动 createTime: 2026/03/20 12:44:24 permalink: /notes/knowledge/zndbfhxb/