• Vim操作


    VIM编辑器操作

    特点

    1. 没有菜单,只有命令
    2. 功能强大

    作用

    • 建立、编辑、显示文本文件

    常用操作

    命令模式

    • 当我们使用vi/vim 文件名时,就会进入到编辑器的默认模式——命令模式
      • 如果文件不存在,就会新建
    • 在命令模式中,你在键盘上的每一个按键都会被编辑器当作一个命令指令来看待
      • 比如iao
    常用命令介绍
    1. 进入插入模式的命令

      • i在光标所在字符前插入
      • I在光标所在行的行首插入
      • a在光标所在字符后插入
      • A在光标所在行的行尾插入
      • o在光标下插入新行
      • O在光标上插入新行
    2. 移动光标的命令

      • gg光标到第一行
      • G光标到最后一行
      • nG光标到第n行
      • $光标移至行尾
      • 0光标移至行首
    3. 删除字符

      • x删除光标所在处字符
      • nx删除光标所在处后面的n个字符,包含该字符(注意删除多个字符昂)
      • D删除光标所在处到行尾的内容
    4. 删除行

      • dd删除光标所在行
      • ndd删除光标所在行后面的n个行,包含该行(注意删除多行昂)
      • dG删除光标所在行到文件末尾的内容
    5. 复制(yank)

      • yy复制当前行
      • nyy复制当前行以下n行(包括当前行)
    6. 剪切(delete)

      • dd剪切当前行
      • ndd剪切当前行以下n行(包含当前行)
    7. 粘贴命令(paste)

      • p粘贴到当前光标所在行下
      • P粘贴到当前光标所在行上
    8. 替换(replace)

      • r取代光标所在处字符
      • R从光标所在处开始替换字符,按ESC结束
    9. 撤销操作(undo)

      • u取消上一步操作
    10. 搜索

      • /string搜索指定字符串,再回车
        • 默认是严格区分大小写的,可以在搜索前,进入编辑模式,输入命令set ic
      • n搜索指定字符串的下一个出现位置
      • 搜索替换请见编辑模式
    11. 保存和退出命令

      • ZZ保存修改并退出
      • 其他命令请见编辑模式
    注意
    1. 任何命令都要在命令模式(按esc从插入模式退出到命令模式)下才能执行

    插入模式

    退出插入模式
    • esc键即可

    编辑模式

    编辑模式常用命令
    1. 行号

      • :set numberset nu设置行号
      • :set nonu取消行号
    2. 光标

      • :n光标到第n行
        • 等价于命令模式下nG
    3. 删除

      • :m, nd删除指定范围的行,包含起始和结尾
    4. 大小写

      • 默认是严格区分大小写的,使用:set ic 可以在搜索时不严格区分大小写
      • set noic严格区分大小写
    5. 搜索替换

      • :%s/old_str/new_str/g 全文替换指定字符串
        • 这里的g是在替换的过程中不询问是否替换,如果用的是字母c`就会在每次替换的时候询问
      • :m,ns/old_str/new_str/g在一定范围内替换指定字符串
    6. 保存和退出

      • :w保存修改
        • 在编辑过程中就可以一边编辑一边保存
      • :w new_filename另存为指定文件
      • :wq保存修改并退出
      • :q!不保存修改退出
      • :wq!保存修改并退出
        • 只有文件所有者或root用户可以使用
        • 用来强行修改只读权限的文件
    退出编辑模式
    1. 编辑模式每一次执行完命令之后都会回退到命令模式

    文件内容操作

    导入其他文件内容到当前文件

    • 编辑模式下:r 文件路径

    在不退出VIM的情况下执行其他命令

    • 编辑模式下:! 命令
      • 常用的比如在shell编程中,你想引入一条命令,但是有不知道它额路径,这份时候就可以在不切出VIM的情况下使用该命令
        • 编辑模式下:! which ls

    在当前文件的当前光标所在行中导入命令的执行结果

    • 编辑模式下:r !命令
      • 比如在文件中导入当前事件:r !date

    其他操作

    自定义快捷键

    • :map 快捷键 触发命令
  • 相关阅读:
    好记性不如烂笔头,要经常把学习的东西记录下来
    liunx git 已经设置了ssh key 还是需要帐号和密码的解决方法。
    解决composer ssl required for SSL/TLS 证书配置
    composer SSL: Handshake timed out 解决办法
    小程序解密报错:IV passed is 24 bytes long which is longer than the 16 expected by se
    PHP面向对象试题(基础部分)
    php 单例模式
    在Thinkphp里面加入验证码插件
    phpstorm 修改默认注释
    用PHP去掉文件头的Unicode签名(BOM)
  • 原文地址:https://www.cnblogs.com/geogre123/p/9989967.html
Copyright © 2020-2023  润新知