vim移动到行中间是啥快捷键?百度不到,所以来问了。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim移动到行中间是啥快捷键?百度不到,所以来问了。相关的知识,希望对你有一定的参考价值。

移到位于屏幕中间的行是 M,助记符是 Middle line。
如果是想移到整个文件的中间是 50%,输入任意数字之后再按 %(shift + 5)就可以跳到相应的文件位置。

上面两个是移动光标的命令。如果是想把光标所在行置于屏幕中央,是 zz。它不移动光标,而是重绘屏幕,以使光标所在行位于屏幕中间位置。

才注意到,你问的好像是怎么移到所在行的中间那列。
这个需求在编辑文本的时候好像不常用到。如果你想居中对齐文本,vim 倒是有现成的命令。
一般移动到指定列,是用 | (是 shift + \),比如想移动到第10列,就是10| 直接按就行。如果你能估计屏幕的宽度,或者一行的长度,中间位置大约还是比较好算的。或者如果你能看见你想去的列上是什么字符,比如是 x,用 fx 也可以移过去。如果光标和中间位置之间不止一个 x,在 fx 后用几次 ; 就可以了。

如果你要频繁地做这件事,也不是没办法,但略显复杂。
就比如你是想挪一行文本的正中间,执行以下两个命令都可以:
:exe "norm " . col("$")/2 . "|"

:cal cursor(line("."), col("$")/2)
然后把它们映射到某个键上,就方便反复用了。
参考技术A 不知道快捷键是什么,我一般是在按 h(或者b) l(或者e) 前输入一个估计的数字,这样可以稍微快点接近目标位置 参考技术B 好像没有这个快捷键
只有移动到屏幕中间行
参考技术C 可以按着向上向下键调整,也可以把行号调出来,直接到你想去的行号!

vim快捷键

操作系统快捷方式
1) 利用方向键 ↑ ↓ --- 快速调取历史命令 (输入命令都会临时保存在内存中 --> 保存在磁盘文件)
2) 快速移动光标
ctrl + a --- 将光标快速移动到行首
ctrl + e --- 将光标快速移动到行尾
ctrl + ← → --- 将光标按照单词进行左右快速移动
3) 快速操作命令信息
ctrl + u --- 将光标之前的内容进行剪切
ctrl + k --- 将光标之后的内容进行剪切
ctrl + w --- 以空格作为分隔 剪切每个字符串信息
ctrl + y --- 将剪切的内容进行粘贴
4) 特殊功能快捷方式
ctrl + c(cancel) --- 中断或取消命令执行过程
ctrl + l(clear) --- 清屏操作
ctrl + s --- 进入锁定状态
ctrl + q --- 退出锁定状态

  1. 编辑命令使用方法 vi/vim
    1) 编辑命令模式信息
    命令模式: 可以实现特殊功能操作
    编辑模式: 可以编辑文件内容信息
    底行模式: 可以输入特殊命令信息 wq q wq! q!

    命令模式 -i-> 编辑模式 -esc-> 命令模式
    命令模式 -:-> 底行模式 -esc-> 命令模式

    2) 命令模式 ---> 编辑模式
    i --- 在光标所在位置直接进入编辑模式
    I --- 将光标切换到行首进入编辑模式
    a --- 在光标所在位置下一个字符进入编辑模式
    A --- 将光标切换到行尾进入编辑模式
    o --- 在光标所在行的下面插入新的一行,并进入编辑状态
    O --- 在光标所在行的上面插入新的一行,并进入编辑状态
    s --- 删除光标所在位置字符并进入编辑状态
    S --- 删除光标所在行并进入编辑状态哦

    3) 命令模式 ---> 底行模式
    : --- 进入到底行模式,完成功能操作 wq w q wq! q!
    / --- 搜索文件信息 n 向下查找 N 向上查找
    ? --- 搜索文件信息 n 向上查找 N 向下查找
    PS: 忽略大小写查找文件中数据
    /oldboyc

    4) 如何快速移动光标 (命令模式)
    G --- 切换到文件的最后一行
    gg --- 切换到文件的第一行
    100G --- 切换到文件指定行
    100gg
    ^ --- 切换到一行的开头
    $ --- 切换到一行的结尾

    5) 如何完成特殊编辑操作
    yy --- 复制指定行信息
    nyy --- 复制多行信息
    p --- 将复制的内容在指定行进行粘贴
    np --- 将复制的内容在指定行进行粘贴多次
    dd --- 删除指定行信息 (实质是剪切)
    ndd --- 删除指定多行信息 (实质是剪切)
    dG --- 删除光标之后的所有行内容
    C --- 删除光标之后的内容并进入编辑状态
    r --- 替换指定字符信息
    R --- 连续替换多个字符信息

    6) 命令模式特殊功能操作
    u --- 撤回操作 undo
    ctrl+r --- 取消撤回 redo

    底行模式特殊功能操作
    : set nu --- 显示行号信息
    : set nonu --- 取消行号显示

以上是关于vim移动到行中间是啥快捷键?百度不到,所以来问了。的主要内容,如果未能解决你的问题,请参考以下文章

Mac下Vim编辑快捷键小结

VIM 快捷键整理

Mac下Vim编辑快捷键小结(移动光标)

vim快捷键整理(转载)

VIM快捷键整理

Intellij IDEA 移动光标到行尾或行首的快捷键是啥?