• 3vim编辑器


    三种模式
    命令行模式
    任何模式下 ESC 进入
    编辑模式(INSERT)
    从命令模式下 a, i 等 进入
    可视化模式(VISUAL)(VISUAL BLOCK)
    命令模式下,敲 v 进入
    非编辑模式, ctrl + v

    cd /etc/vim/
    root权限编辑 vimrc, 增加一行 set number ? 显示行号

    单次显示行号:
    vim编辑器的命令模式输入:set number

    永久显示行号:
    在etc/vim下的vimrc文件,添加set number即可永久在vim编辑器显示行号。

    若在vimrc文件下添加,不起作用,使用以下命令:
    echo "set number">>~/.vimrc

    vim编辑器改变上下左右变ABCD问题
    上下左右键:echo "set nocompatible">>~/.vimrc

    基本操作
    a, i, o, O 进入编辑模式
    ESC 进入命令模式
    :q 退出vi (q! 不保存强行退出)
    :w 保存 (wq 保存并退出)
    :x 保存退出
    :u 撤销操作
    :saveas 另存为
    :bn, :bp 同时打开多个文件时,切换到上一个或者下一个
    x 删除当前字符
    dd 删除当前行 ,删除内容存入剪贴板(p粘贴)
    h,j,k,l 和 左下上右 移动光标(某些情况下方向键也是命令的一部分)

    0 到行首
    ^ 到行首第一个非空字符
    $ 到行尾
    g_ 到行尾最后一个非空字符

    ctrl+f 向后翻页 (forward)
    ctrl+b 向前翻页 (backward)

    ctrl+d 向后翻半页
    ctrl+u 向前翻半页

    ctrl+e 向下滚1行
    ctrl+y 向上滚一行

    一阶操作
    gg 到第一行
    G 到最后一行
    10G 到第10行 (:10 等价)
    e 到本单词结尾
    w 到下一个单词开头
    /ABC 从光标处开始查找ABC (n, N移动到下一个/上一个匹配的地方)

    yy 拷贝当前行(会把换行符号一起拷贝)
    p 粘贴在光标处 (大写P粘贴到光标前)
    u 撤销上一步操作 (支持多级)
    ctrl+r 反撤销 (支持多级)
    . 重复上一条命令
    N<命令> 重复N次命令 (2dd; 4p; 6iABC)
    2dd 删除两行
    4p 粘贴4次
    6iABC 插入6个ABC (i->insert), 输入完成后按 ESC ,然后回车

    二阶操作
    % 移动到匹配的括号处(三种括号都行)
    * 移动到下一个与之相同的单词
    # 移动到上一个与之相同的单词

    ye 拷贝单词 [e表示到单词词尾]
    y/ABC 拷贝到ABC位置 [/ABC 表示查找ABC]
    y2/ABC 拷贝到第二个ABC位置
    gue 单词 转小写
    gUe 单词转大写

    d2l 往后删除两个字符(相当于 2x)
    2dd 删除两行
    d^ 删除光标到行首
    d$ 删除光标到行尾
    de 删除单词
    d/kk 删除光标到kk位置
    d2/kk 删除到光标到第二个kk位置

    d 改成y 就是拷贝了

    三阶操作
    fk 光标移动到下一个k字母位置
    dfk 从光标处删除到k字母位置
    2fk 查找第二个k字母位置
    v 进入可视化操作
    匹配选择:如 if (strcmp(“ABC”, szStr) == 0) 光标在 A 位置
    i” 选中ABC
    a” 选中“ABC”
    i) 选中 “ABC”, szStr
    2a) 选中(strcmp(“ABC”, szStr) == 0)

    ctrl+v:进入块操作
    1: 移动方向键选择块
    2: 每行光标前面加内容:选择块 -> I(大写 i ) -> 输入要增加的内容 -> [ESC] ->回车
    3: 每行光标后面加内容:选择块 -> A ->输入要增加的内容 ->[ESC] ->回车
    4: 左右缩进:选择块 -> < 和 >
    5: 自动缩进:选择块 -> =
    ctrl+p:insert 模式下自动补齐功能 (ctrl+n)


    四阶操作
    使用正则表达式
    替换:%s/int/unsigned int/g ?所有int替换位unsigned int
    替换某些行:1,2s/int/unsigned int/g
    替换10行到末行:10,$s/int/unsigned int/g
    行首加ABC %s/^/ABC/g
    行尾加ABC %s/$/ABC/g
    注:正则表达式中 ^表示行首,$表示行尾
    13,20s/^[/]*//g

  • 相关阅读:
    类在编写过程中的一些注意事项
    SDUT 2893-B(DP || 记忆化搜索)
    Microsoft.AlphaImageLoader滤镜解说
    解决网页版权符号模糊不清
    oninput,onpropertychange,onchange的使用方法和差别
    VB.net数据库编程(03):一个SQLserver连接查询的简单样例
    使用WinSetupFromUSB来U盘安装windowsXP(不使用win PE系统)
    ActivityManager
    IP协议
    jni编译non-numeric second argument to `wordlist' function错误
  • 原文地址:https://www.cnblogs.com/gd-luojialin/p/9215932.html
Copyright © 2020-2023  润新知