版主
发表于 2023-7-10 14:57:51
本帖最后由 canfu 于 2023-7-10 15:00 编辑 一、vim的基本概念 先给大家介绍一下vim常用的三种模式:正常/普通/命令模式、插入模式、底行模式。 1.1 正常/普通/命令模式 控制屏幕光标移动,字符、字或行的删除,移动复制某区段以及进入插入模式,或者到底行模式。 1.2 插入模式 只有在插入模式下,才可以做文字的输入,按Esc键可回到命令行模式。该模式是应用最频繁的模式。 1.3 底行模式 文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。在命令模式下,按shift + ;其实也就是:。小Tips:要查看你的所有模式:打开vim,底行模式直接输入help vim-modes。 二、vim的基本操作 2.1 进入vim 在系统提示符后面输入vim及文件名称,就进入vim全屏幕编辑画面。注意:如果vim后面的文件名不存在,也会进入到vim全屏幕编辑画面,写入退出后,会在当前目录下生成一个新文件,直接退出不会形成一个新文件。指令: vim test.c 输入上面的指令,点击回车,看到的结果如果和上图一样,左下角出现NORMAL,说明你就成功的用vim打开了test.c这个文件,当前所处的模式就是命令模式,在命令模式下,用户输入的所有内容都被当做命令,所以当前点击键盘,不会以文本的形式显示出你所敲的字符,要想显示你所敲的字符,需要切换到插入模式,所以,下面让我们来看看,如何进行模式之间的切换。 2.2 模式切换⟦命令模式⟧切换至⟦插入模式⟧ 从命令模式切换到插入模式,可以输入a或o或i,它们三个区别在于:进入插入模式后光标所在的位置不同。 输入a:进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字。输入o:进入插入模式后,是插入新的一行,从行首开始输入文字。输入i:进入插入模式后,是从光标当前位置开始输入文件。 左下角出现INSERT说明切换成功。⟦插入模式⟧切换至⟦命令模式⟧ 点击键盘上的Esc键就可以退出到命令模式。(所有模式退到命令模式都是这样)⟦命令模式⟧切换至⟦底行模式⟧ 点击shift + ;,其实就是输入:。 2.3 退出vim在底行模式下,输入w保存当前文件,输入q退出vim。wq:保存并退出vim。q!:不保存,强制退出vim。 三、命令模式命令集 3.1 移动光标gg:定位光标到最开始行(第一个文本所在的地方) G或shift + g:定位光标到最结尾行(第一个文本所在的地方) n+G:n是任意数字,定位光标到任意行(第一个文本所在的地方) $:定位光标到当前行最后一个文本 ^:定位光标到当前行第一个文本 w、b:光标按照单词进行行内或跨行移动(也可可以配合n使用,一次跨越n个单词) h、j、k、l:以字符为单位进行左、下、上、右移动 3.2 复制/粘贴yy:复制光标所在行到缓冲区n+yy:n是任意数字,从光标当前行开始,复制n行p:将缓冲区中的字符贴到光标所在行的下一行位置n+p:n是任意数字,将缓冲区中的字符粘贴n份小Tips:所有与yy有关的复制命令都必须与p配合才能完成。 3.3 撤销u:回到上一个操作,按多次,可执行多次恢复ctrl+r:对撤销的恢复3.4 剪切/删除dd:dd完如果不p的话,那就是删除,如果p的话就是剪切x:删除光标所在位置的字符n+x:n是任意数字,删除从光标位置开始的n个字符X:删除光标所在位置的前面一个字符n+X:n是任意数字,删除光标所在位置的前n个字符3.5 更改shift+~:快速更换大小写r:替换光标所在字符,点击r后,再点击期待替换的字符n+r:n是任意数字,把从光标位置开始的n个字符全部替换成目标字符R:替换光标所到之处的字符,知道按下Esc键为止(其实这就是替换模式) 四、底行模式命令集 4.1 多文本操作vs 文件名:实现多文件分屏ctrl+w+w:实现光标在分屏多文件之间的切换,光标在哪个窗口里面,就对哪一个窗口进行操作 4.2 保存/退出w:保存w!:强制保存q:退出q!:强制退出wq:保存并退出wq!:强制保存并退出 4.3 命令执行!:在底行模式下执行命令 4.4 调出行号set nu:调出行号,在文件每一行前面列出行号set nonu:取消行号 4.5 跳到文件的某行n:n是任意数字,输入一个数字在点enter,就会跳到文章对应的行 4.6 查找字符/关键字:先输入/,在输入你先更要查找的字符,如果第一次找的不是你想要的,可以一直按n,会继续往后寻找你想要的?关键字:输入?,在输入你先更要查找的字符,如果第一次找的不是你想要的,可以一直按n,会继续往后寻找你想要的 |