• 【从Python基础到深度学习】 8. VIM两种状态


    一、安装

    sudo apt install vim

    二、VIM两种模式 - 命令状态/编辑状态

    1.1 进入/退出VIM

    进入VIM

    vim

    退出vim 

    :q 

    2.2 根目录下添加配置文件

    window下创建vimrc类型文件内容如下:

    1. set nu
    2. set cursorline
    3. set hlsearch
    4. set tabstop=4

    使用Winscp 将vimrc文件拖入根目录下(Winscp使用见【从Python基础到深度学习】3. Winscp与Ubuntu使用及配置-CSDN博客

    更改配置文件为隐藏文件

    cp vimrc .vimrc

    2.3 进入vim后默认为命令模式

    2.4 命令模式与编辑模式切换

    按 i 键后左下角出现 insert 即进入编辑模式

    编辑模式下可对文本正常进行输入

     

    按 ESC键回到命令模式 

    三、文档保存与退出

    结束编辑:
    :q
    在未修改文档的情况下退出
    : q !
    放弃文档的修改,强行退出
    : w
    文档存盘
    : wq文档存盘退出其他:
    :help命令查看该命令的帮助提示(不常用,当不小心按F1时,通过:q进行退出>
    : % ! xxd十六进制模式
    : %!xxd -r 返回文本模式中间有一个空格的
    如果在编辑过程中不小心按了Ctrl+s, vim 会处于僵死状态,按Ctrl+q可以恢复。
     

    四、删除与修改

    X 删除光标处的字符
    dd 删除光标所在的整行
    [n]dd 删除光标所在行以及下面的两行(删除[n]行,[n]表示一个整数)
    D 删除光标到行尾的文本,常用语删除注释语句(d$)
    yy 复制光标所在的整行
    [n]yy 从光标开始往下复制n行,[n]表示一个整数

    p 将复制后的文本粘贴到光标处
    u 撤销上次操作

    先yy后再去p的效果就是复制粘贴的效果
    先dd后再去p的效果就是剪切的效果
     

    五、光标移动

    ^光标移动到行首
    $光标移动到行尾
    Ctr1+d向下翻半页
    Ctrl+f向下翻一页
    Ctrl+u向上翻半页
    Ctrl+b向上翻一页
    gg光标定位到文档头
    G光标定位到文档尾
    H光标定位到当前页首
    L光标定位到当前页的最后一行的行首
    w光标往后移一个字
    b光标往前移一个字
    [n]+光标向后移动n行,[n]表示一个整数10+
    [n]-光标向前移动n行,[n]表示一个整数10-
    [n]G光标定位到第n行行首,[n]表示一个整数20G
    :[n]到达第[n]行

    六、查找与替换

    /[str]
    查找字符串str,[str]表示要查找的字符串回车后会加亮显示所有找到的字符串,接着
    命令n移动到下一个找到的字符串,命令N(shift + n)移动到上一个找到的字符串。


    :s/[src]/ [dst] 

    部分替换(只能替换光标之所在的行) /i忽略大小写 /g全部匹配
    :3,6s/[src]/[dst]/ig   (3-6行中进行替换)



    : %s/[src]/[dst]/g 

    全部替换,将文档中所有src的字符串替换为dst字符串

    :%s/^ l/g

    将文档每一行的行首的空格去掉
     

    七、 块操作

    v 可视化块选择状态

    • 选中块之后,可以对块进行删除(d),复制(y),剪切(x),粘贴(p)

    Ctrl +v 竖向选择模式,主要用于批量注释代码,输入步骤如下:

    1. 首先按ctr1+v,竖选选中要注释的行
    2. 输入Ⅰ(注意是大写的I),然后输入/ /3、再输入esc,就会看到选中的行被注释了。
       
  • 相关阅读:
    Redis
    go gin ShouldBind 绑定参数到结构体struct 数据校验
    市面上的护眼灯真的护眼吗?护眼灯作用大不大
    Flutter ☞ 数据类型
    C++ Tutorials: C++ Language: Compound data types: Data structures
    uniapp 版本检查更新
    银行智能运维探索:打造通用指标趋势预测模型
    UltraISO 制作U盘启动盘
    在线问诊 Python、FastAPI、Neo4j — 创建 节点关系
    高等数学(第七版)同济大学 习题1-8 个人解答
  • 原文地址:https://blog.csdn.net/qq_60245590/article/details/136131555