您的位置:首页 > 其它

VIM常用命令

2013-12-04 20:43 330 查看
1 ctags: 命令

    ctags -R *(sh): 对当前目录下所有文件执行同步tag操作,最终会在目录下生成一个tags文件,保存着各个tag的信息

    ctrl+](vim): 转到当前光标所在位置变量所在文件

    ctrl+p: 可以根据ctags生成的标志,进行自动补全

    ctrl+t: 返回到上一个标志

    g+]: 显示所有该tag

    

    :set tags=tags

2 Tlist Win快捷键:
    x: zoom

    u: update

    -: 折叠

    +: 打开折叠

    *: 打开所有折叠

    =: 折叠所有

    [[: 跳到前一个文件

    ]]: 跳到后一个文件

    q: 关闭taglist窗口

3 NERDTree 快捷键:
    A: zoom

    K: go to root

    qq: exit

    F4: run or exit

    s: 以vertical方式在新窗口打开当前光标所在文件.

    u: 去上一层文件夹c

    o: 在当前光标位置添加bookmark

    cd: 切换CWD到选定的文件夹

    r: 更新选中文件夹文件列表

    C: 切换文件夹root到选中文件夹

    m: 显示菜单, 这个菜单可以执行复制,黏贴,剪贴文件夹和文件的操作.

    

    

4 vim内置命令:
    ctrl+ww: 在多个窗口间切换
    ctrl+v: 进入列可视模式,可以选择局部内容,然后使用正则表达式进行替换

    shift+v: 进入行可视模式

    ctrl+n: 扫描当前tag,生成快速补全列表

    ctrl+6: 跳到打开的上一个文件

    ctrl+shift+6: 同上,应该方向和上面快捷键相反.

    =: 格式对齐

4.1 复制黏贴
    yy:    复制当前光标所在行

    yw: 拷贝当前光标下的单词

    p: 将上次复制的内容黏贴到光标所在下一行

4.2 删除
    dd: 删除光标所在行

    dw: 删除光标所在处的单词

    D: 删除光标后改行部分

4.3 窗口管理
    ctrl + -: 缩小窗口,整体,包括文字
    ctrl + +: 这个需要按住shift, 这个放大窗口,包括文字

4.3 移动命令:
    h: 左

    k: 上

    j: 下

    l: 右

    ctrl+f: 向前,下一页
    ctrl+b: 向后,上一页
    w: 跳到下一个自首,按标点或单词分割

    W: 跳到下一个字首, 长跳,如end-of-line被认为一个字

    e: 跳到下一个字尾

    E: 跳到下一个字尾,长条

    b: 跳到上一个字

    B: 跳到上一个字,长跳

    ^: 跳到当前行第一个字符

    $: 跳到当前行最后一个字符

    gg: 文件第一行

    gd: 跳到光标所在变量的声明处

    %: 跳到当前括号匹配的括号处,如{跳到}

    fx: 在当前行找x字符,找到则跳转至

    tx: 与fx类似,只是跳到x的前一个字符处.

    Fx: 与fx方向相反

    *: 查找光标所在处单词, 向下查找

    #: 和*一样,不过向上查找

    ctrl+o: 返回上一个位置,比如通过gD跳转的时候

    K: 打开光标所在处函数的man页面。这个功能在编写native程序时比较有用。

4.4 插入
    i: 在当前光标所在字符前进行插入

    o: 在当前行下一行插入一行,并进入编辑

    O: 在当前所在行的的上一行插入一行,并进入编辑模式

4.5 替换
    :s/aa/bb/g: 将当前行中的aa都替换为bb

    :%s/aa/bb/g: 将当前所在文件的所有aa都替换为bb

    :12,22s/aa/bb/g: 将12到22行中包含的aa都替换为bb

    :g/^\s*$/d: 删除所有都是空格的行

5 vim配置的插件快捷键:
    F3: 调出grep工具

    F4: 调出NERDTree,就是文件浏览器

    F8: 调出WMToggle,也就是当前文件中的Tags列表

    F3: 调用grep命令进行搜索

    F1: 调用VIM的帮助

    ca: 调用日历

    ss: :w<cr> 保存

    qq: :q<cr> 退出

    qa: :qa<cr> 全部退出

5. 格式化代码命令
    =: 自动格式化

    :set expandtab/et: 设置将tab自动转换为空格

    :set noexpandtab/noet: 不将tab转换为空格

    :set tabstop/ts: 设置tab的位置

    :retab: 将文件中所有的tab都转换为空格

    :set shiftwidth/sw: 自动缩进时插入的空格数

    :set smartab/sta: 在行首按tab会插入shiftwidth个空格

有道笔记连接: http://note.youdao.com/share/?id=5c87401c0ada964c3893bba8657261db&type=note
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: