• vi/vim使用指北 ---- Sample Editing


    本篇介绍vim的基础操作,各种编辑模式的切换,光标的移动,删除,撤销/重做,保存,查找等基础命令:

    基础操作

    编辑文件

    vim  [options] [file ...]

    模式

    打开文件后进入vim的普通模式,可以用各种命令操作文本

    按下字母i,进入Insert模式,此模式下所有键盘按键都为普通字符,插入到文本当中。按ESC退出,进入普通模式

    按下字母v,进入Visual模式,此模式下可以选择文本,然后进行命令操作。按ESC退出,进入普通模式

    按下字母R,进入修改模式,此模式下可以修改光标所在位置字符

    进入Insert模式的几种不同方式

    i ---- 在光标所在位置插入

    a --- 在光标后插入

    I --- 在当前行开头插入

    A --- 在当前末尾插入

    o ---- 在当前行的下一行插入

    O --- 在当前行的上一行插入

    s ---- 删除当前字符,并在当前字符处插入

    S ---- 删除当前行插入

    c[光标移动操作命令]  ----  删除到移动光标操作命令后的位置,并进入插入状态

    光标移动(Noraml model)

    h --> 左移光标

    j  -->下移动光标

    k --> 上移光标

    l  --> 右移光标

    w -->光标移动到下一个单词的开头

    e --> 光标移动到下个单词的结尾

    0 --> 光标移动到本行的开头

    $ --> 光标移动到本行的结尾

    b --> 光标移动到前一个单词的开头,假如光标所不在当前单词的开头,光标移动该单词的开头

    gg --> 移动光标到文件的开头

    G ----- 移动光标到文件的结尾

    [number]g ---移动光标到[number]所指定行的开头

    [number]% --- 移动光标到百分之[number]行的开头

    +/-  --- 移动光标到后一行/前一行的开头

    删除操作

    x ------ 删除光标所在位置的字符

    dw ---- 删除光标所在单词,如果光标在单词中间,则删除当前位置到单词结尾

    d0 ---- 删除光标所在位置到本行开斗

    d$ ---- 删除光标所在位置到本行结尾

    dd ---- 删除本行

    撤销/重做

    u ---- 撤销前一次 操作/undo

    U ----  撤销本行到初始状态

    CTRL-r 撤销前一个撤销的操作/redo

    修改

    r ---- 修改当前光标所在位置的字符

    R --- 进入Replace模式,可以从当前位置开始修改,按ESC退出

    cc  --- 删除本行,进入插入模式(修改本行内容)

    ~  ---  当前字符大小写切换

    复制/粘帖

    复制:在普通模式下,按v进入Visual模式,用改变光标所在位置的命令操作选择的字符,按y复制选择的字符

    粘帖:按p把上一次复制的内容或上一次删除的内容,粘帖在光标所在位置后面

    P  --- 把复制的内容粘帖的光标所在行的上一行

    yw ---- 复制光标所在位置的单词

    yy ---- 复制当前行,不论光标的位置在哪里

    保存/退出

    :w  --- 保存

    :q  --- 退出

    :wq  --- 保存并退出

    :q! --- 强制退出,不保存

    :w [filename] --- 保存到给定文件中

    查找/替换

    %   --- 定位匹配的括号【小括号,中括号,大括号】

    /[charaters]   --- 查找charaters给定的字符

    ?/[charaters]  --- 反向查找charater给定的字符

    n  ---- 重复执行上次的查找

    N  ---  重复执行上次的查找 ,反向查找

    :s/old/new ---- 替换当前行的第一个匹配项

    :s/old/new/g --- 替换当前行的所有匹配项

    :#,#s/old/new/g  ---- #,#为行好区域,替换指定区域内的所有匹配项

    :%s/old/new/g   ----- 替换整个文件中的匹配项

    :%s/old/new/gc  ----  查找整个文件中的匹配项,并提示是否需要替换

    关于查找的几个命令

    :set ic  ---- 设置查找过程忽略大小写

    :set noic  ---- 设置查找过程区分大小写

    :set hls is  ---- 设置查找结果高亮显示

    :noh[lsearch] ---- 取消查找结果高度显示

    重复执行上一次的命令 

    .  ----  重复执行上次的命令

    高级操作

    一次输入多个相同的字符  [number][i,a,I,A][charater][ESC] 

    例如:25i*ESC   在当前光标位置插入25个*

    替换多个字符   [number]r[charater]

    例如:把” || “ 替换成” && “ ---- 2r&

    快速把下面一行移动到本行的后面  J

     

  • 相关阅读:
    查看索引执行次数
    解决TFS服务器重命名后,无法访问的问题
    C#匿名方法增加、删除委托
    Silverlight 4 正确设置 ScrollViewer让它更好的支持鼠标滚轮
    Win8 loading 动画 Silverlight版本
    Silverlight控件自适应利器UseLayoutRounding属性(解决自适应抖动问题)
    添加从Web下载的dll引用,VS提示错误
    IQueryable<T>获取查询计划(SQL)
    WinForm多线程+委托防止界面假死
    ASP.net(c#)生成条形码 code39条码生成方法
  • 原文地址:https://www.cnblogs.com/hanwwly/p/3473540.html
Copyright © 2020-2023  润新知