Vim常用命令总结

    xiaoxiao2025-09-17  295

    h j k l 分别对应于:←,↓,↑,→ Ctrl+f 向下翻一页(forward) Ctrl+b 向上翻一页(back) Ctrl+d 向下翻半页(down) Ctrl+u 向上翻半页(up) H 屏幕顶行首字符 M 屏幕中间首字符 L 屏幕末行首字符 gg 当前文件首行首字符 G 当前文件末行首字符 【n】G 跳转到第n行 J 合并光标所在行和下一行 【n】< Enter> 下移n行 0 行首 $ 行尾 dd 删除当前行 【n】dd 删除光标以下的n行 dw 删除一个word d0 删除从光标所在位置到该行行首 d$ 删除从光标所在位置到该行行尾 dG 删除当前行到文件末尾 d1G 删除当前行到文件首部 x 向后删除一个字符(相当于delete) X 向前删除一个字符(相当于Backspace) 【n】x/X 向后(前)删除n个字符 yy 复制当前行 【n】yy 复制当前行以下的n行 yG 复制从当前行到最后一行 y1G 复制从当前行到第一行 y0 复制当前位置到行首 y$ 复制当前位置到行尾 p 在光标下一行粘贴 P 在光标上一行粘贴 i 在当前光标前一个字符插入 a 在当前光标后一个字符插入 I 在当前行的首个非控制字符处插入(行首) A 在当前行的最后一个非控制字符处插入(行尾) /word 向后查找word n 按当前方向的下一个查找结果 ?word 向前查找word N 按当前方向反方向的下一个查找结果 :n1,n2s/word1/word2/gc n1行到n2之间,用word2替换word1,有c则替换前需确认 :0,$s/word1/word2/g 整个文件中查找word1,并用word2替换,没有c则替换前不需确认 v 进入字符模式,可选中连续的字符 V 进入行模式,可选中连续的行 Ctrl+v 进入块模式,可选中一个矩形块 块编辑模式下,两个很有用的命令,第一个是在行首批量插入string,第二个是在行尾批量插入string Ctrl+v,选中行(块),I,输入string,两次ESC Ctrl+v,选中行(块),$,A,输入string,两次ESC vim -o file1 file2 水平分割(上下两个)窗口,同时打开两个文件 vim -O file1 file2 垂直分割(左右两个)窗口,同时打开两个文件 两次Ctrl+w可以在两个窗口间切换 :sp file 水平方向另起一个窗口打开文件file :vs file 垂直方向另起一个窗口打开文件file 切换到某一个窗口后,输入命令 :q可以关闭某一个窗口,:qa表示关闭所有窗口(a是all的意思) 若已经打开一个文件,不想分割窗口在打开一个文件,则 :e file 可再打开一个文件 :ls 可列出当前打开的文件(查看文件编号ID:bd 关闭当前缓冲区(当前文件) :bdID】 关闭文件号为ID的缓冲区 b【ID】 切换到编号为ID的缓冲区 Ctrl+^ 切换到下一个缓冲区(:e# 也有类似的功能) 若用:q 命令则关闭所有缓冲区 :!command 在当前环境下调用bash执行command命令 :r file 在当前光标的下一行读(插)入文件file :r !command 调用bash执行command命令,并将结果插入到当前光标下一行 :3 !cmd 将第三行作为bash命令执行,并将结果替换为第三行上 :3 w !cmd 将第三行作为bash命令执行并显示 :1,3 !cmd 将13行之间的字符串作为bash命令执行,并将结果替换到13行之间 :1,3 w !cmd 将13行之间作为bash命令执行并显示结果 :w !sudo tee % 当打开一个无权限写的文件时,用此命令强制写 在代码编写时的匹配,标签与跳转 % 跳转到匹配的括号另一端([, (, { 三种) [[ 跳转到代码块的开头(要求左大括号“{”单独成行) ''(两个反引号) 跳转到上一次光标所在位置 gD 跳转到局部变量声明处 m【x】 x=a~z,将当前位置设置为标签x `【x】(反引号) 跳转到x标签处 :set ts=4 设置TAB缩进为4(默认为8
    转载请注明原文地址: https://ju.6miu.com/read-1302764.html
    最新回复(0)