vim常用操作
作者:mmseoamin日期:2024-02-06

vim常用操作

  • 1、前言
  • 2、 vim 的命令集
    • 2.1、底行模式
    • 2.2、命令模式

      1、前言

      • 普通模式 / 命令模式(Normal mode):控制屏幕光标的移动,字符、字或行的删除,移动复制某区段
      • 插入模式(Insertmode):文字输入
      • 底行模式(Last line mode):文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作
      • 替换模式(Replace mode)
      • 视图模式(Visual mode)
      • 进入命令模式:输入命令vim testvim.c打开vim默认进入 命令模式,当前目录下没有同名文件会新建一个
      • 命令模式 -> 插入模式:
        • 按键i,界面左下角出现– INSERT –字样,此时转化成插入模式,光标不移动
        • 按键a,进入插入模式,同时光标向后移动一个
        • 按键o,进入插入模式,同时光标向下移动一排
        • 按键s,进入插入模式,同时删除光标所在字符
        • 命令模式 -> 底行模式:
          • 按键shift + :,左下出现冒号字样,可以进行保存退出等操作
          • 命令模式 -> 替换模式:
            • shift + r,左下出现– REPLACE –字样,此时转化成替换模式
            • 任意模式 -> 命令模式:

              按键[ESC],此时模式提醒消失,返回了命令模式

              2、 vim 的命令集

              2.1、底行模式

              退出保存:

              • q:不保存只退出
              • q!:强制退
              • w:只保存(可以撤销之前的命令)
              • wq :写入并退出(再次打开不可撤销之前的命令)
              • wq!:强制保存并退出
              • !命令行命令:返回执行命令行的命令,但是不退出vim

                文本文件编辑

                • set nu / set noun:设置行号、去掉行号
                • /xxx:字符串查找
                • %s/当前字符串/替换字符串/g:查找并替换字符串
                • vs 文件名:将输入文件分屏至左侧,如当前目录下没有找到该文件,会自动创建一个
                • ctrl + ww:切换光标到另一个分屏界面

                  2.2、命令模式

                  复制粘贴

                  • u:撤销 命令
                  • ctrl + r:对撤销进行撤销
                  • yy / nyy:复制当前光标所在行、复指当前行在内及之下的指定若干行
                  • dd / ndd:剪切当前光标所在行、剪切当前行在内及之下的指定若干行(如果只dd不粘贴,就是删除)
                  • p / np:粘贴 一行、粘贴内容相同的n行,到当前光标所在行之下

                    ️光标定位

                    • gg:将光标定位到文档开始
                    • shift + g:将光标定位到文档结尾
                    • n shift + g:将光标定位到文档指定行
                    • shift + 4:将光标定位到文本行的结尾
                    • shift + 6:将光标定位到文本行的开始
                    • n b / n w:按单词为单位,进行前后移动,b向前,w向后
                    • h / j / k / l:光标移动,h左、j下、k上、l右

                      ️字符编辑

                      • shift + ~:快速大小写切换
                      • r / nr:替换一个字符、替换若干个相同字符
                      • shift + r:切换为替换模式
                      • x / nx:行内删除光标位置,删除光标后面n个字符
                      • n + shift + x:向前删除