• vi 快捷键/ctags


    vi 配置

    syntax enable
    set nu

    set relativenumber
    set hlsearch

    set autoindent
    set shiftwidth=4
    set tabstop=4
    set expandtab
    set cursorline
    let g:netrw_liststyle = 3
    let g:netrw_banner = 0
    let g:netrw_winsize = 25
    let g:netrw_browse_split = 3

    set foldmethod=indent

    zc 代码折叠

    zo 代码展开

    ctrl-f ctrl-b //整页翻页 f=forword b=backward
    ctrl-d ctlr-u //翻半页 d=down u=up

    :E :Vex :Sex 打开目录

    ctrl+ww    切换左右窗口

    文件或目录操作
    创建文件 按 % 后, 输入文件名
    创建目录 按 d 后, 输入目录名
    删除文件或者目录 移动到对应的目标后, 按 D
    重命名文件或者目录 移动到对应的目标后, 按 R

    ctags安装

    sudo apt install ctags

    sudo ctags -R *   //在项目中建立tags索引文件

    ctrl+]                  //跳转至光标所在对象定义之处
    ctrl+t                  //返回跳转前位置

    常用快捷键

    x 删除光标处的字符

    dd 删除整行

    i 在光标前插入文本

    a 在光标后插入文本

    o 当前行下插入新行

    u 撤销最后一次修改

    :e! 放弃所有修改,从上次保存开始处再编辑

    :wq 保存退出

    :q! 不保存退出

    /pattern:从光标开始处向文件尾搜索pattern

    ?pattern:从光标开始处向文件首搜索pattern

    折叠方式

    set fdm=indent

    zc 折叠
    zC 对所在范围内所有嵌套的折叠点进行折叠
    zo 展开折叠
    zO 对所在范围内所有嵌套的折叠点展开
    [z 到当前打开的折叠的开始处。
    ]z 到当前打开的折叠的末尾处。
    zj 向下移动。到达下一个折叠的开始处。关闭的折叠也被计入。
    zk 向上移动到前一折叠的结束处。关闭的折叠也被计入。

    多行复制

    6,9 co 12
    复制第6行到第9行之间的内容到第12行后面。

    6,9 m 12

    剪切第6行到第9行之间的内容到第12行后面。

    G    移到文件的最后一行
    nG    移到文件的第n行
    w    移到下一个字的开头
    W    移到下一个字的开头,忽略标点符号
    b    移到前一个字的开头
    B    移到前一个字的开头,忽略标点符号
    L    移到屏幕的最后一行
    M    移到屏幕的中间一行
    H    移到屏幕的第一行
    e    移到下一个字的结尾
    E    移到下一个字的结尾,忽略标点符号
    (    移到句子的开头
    )    移到句子的结尾
    {    移到段落的开头
    }    移到下一个段落的开头
    0或|    移到当前行的第一列
    n|    移到当前行的第n列
    ^    移到当前行的第一个非空字符
    $    移到当前行的最后一个字符
    +或return   移到下一行的第一个字符
    -    移到前一行的第一个非空字符

    在vi中添加文本
    命令    插入动作
    a    在光标后插入文本
    A    在当前行插入文本
    i    在光标前插入文本
    I    在当前行前插入文本
    o    在当前行的下边插入新行
    O    在当前行的上边插入新行
    :r file    读入文件file内容,并插在当前行后
    :nr file   读入文件file内容,并插在第n行后
    escape    回到命令模式
    ^v char    插入时忽略char的指定意义,这是为了插入特殊字符
     
    在vi中删除文本
    命令    删除操作
    x    删除光标处的字符,可以在x前加上需要删除的字符数目
    nx    从当前光标处往后删除n个字符
    X    删除光标前的字符,可以在X前加上需要删除的字符数目
    nX    从当前光标处往前删除n个字符
    dw    删至下一个字的开头
    ndw    从当前光标处往后删除n个字
    dG    删除行,直到文件结束
    dd    删除整行
    ndd    从当前行开始往后删除
    db    删除光标前面的字
    ndb    从当前行开始往前删除n字
    :n,md    从第m行开始往前删除n行
    d或d$    从光标处删除到行尾
    dcursor_command   删除至光标命令处,如dG将从当产胆行删除至文件的末尾
    ^h或backspace   插入时,删除前面的字符
    ^w    插入时,删除前面的字
     
     
    http://www.pchou.info/linux/2016/11/10/vim-skill.html

  • 相关阅读:
    批量数据导入数据库方法
    Remoting简单实践
    js面向对象继承
    Linq实现t-Sql的各种连接
    数据库树状结构的关系表的删除方案
    记录一次SQL查询语句
    mvc请求过程总结
    T-sql表表达式
    各个浏览器的兼容问题及样式兼容处理(不定期补充)
    vue.js 键盘enter事件的使用
  • 原文地址:https://www.cnblogs.com/sanmubai/p/8692789.html
Copyright © 2020-2023  润新知