• 【vim】分割窗口、标签页与Quickfix窗口


    vim支持窗口分割和标签页,合适地使用这两种特性可以使文字编辑工作更愉快。

    1. 窗口分割

    vim支持窗口的水平分割和垂直分割。以下是常用的操作指令或快捷键。

    命令 说明
    vim -o <files> 打开多个文件,并将它们放在水平分割的窗口中
    vim -O <files> 打开多个文件,并将它们放在垂直分割的窗口中
    :sp[lit] [file]

    不加file参数时,新建一个水平窗口,放置当前文件的副本;
    带file参数时,新建一个水平窗口并把file放在新窗口中。

    新窗口将位于当前窗口的上面,光标停在新窗口中。

    :vsp[lit] [file]

    不加file参数时,新建一个垂直窗口,放置当前文件的副本;
    带file参数时,新建一个垂直窗口并把file放在新窗口中。

    新窗口将位于当前窗口的左边,光标停在新窗口中。

    :qa[ll] 关闭所有窗口并退出
    :wa[ll] 保存所有窗口中的内容
    :on[ly]
    <Ctrl>+w+o
    关闭当前窗口之外的其他所有窗口
    :clo[se]
    <Ctrl>+w+c
    关闭当前窗口
    <Ctrl>+w+h 将光标移动到当前窗口左边的窗口
    <Ctrl>+w+j ..............................下...........
    <Ctrl>+w+k ..............................上...........
    <Ctrl>+w+l ..............................右........... (l是字母L的小写)
    <Ctrl>+w+t 将光标移动到第一个窗口
    <Ctrl>+w+b 将光标移动到最后一个窗口
    <Ctrl>+w+H 将当前窗口移动到最左边
    <Ctrl>+w+J ...........................下...
    <Ctrl>+w+K ...........................上...
    <Ctrl>+w+L ...........................右...
    <Ctrl>+w+R

    将当前窗口列表向前滚动一个位置(如果有3个垂直窗口,一开始从左到右依次是
    ABC,那么在任一窗口中执行此命令,将会变成BCA,再执行变成CAB,如此往复);

    当只有两个窗口时,交换这两个窗口的位置。

    <Ctrl>+w++ 增加当前窗口的高度(默认是一行)
    <Ctrl>+w+- 减小....................
    <Ctrl>+w+> 增加当前窗口的宽度(默认是一列)
    <Ctrl>+w+< 减小....................
    <Ctrl>+w+= 使所有窗口的宽度/高度相同(既有水平窗口,又有垂直窗口的情况没试过会怎么样)
    :res[ize] <N>
    :res[ize] +<N>
    :res[ize] -<N>
    调整当前窗口的高度:为N行,增加N行,减小N行
    :vert[ical] res[ize] <N>
    :vert[ical] res[ize] +<N>
    :vert[ical] res[ize] -<N>
    调整当前窗口的宽度:为N列,增加N列,减小N列

     另外vim提供了quickfix窗口,在执行vimgrep之类的命令后,结果会显示在quickfix窗口,运行:cw命令即可呼出此窗口。与quickfix的指令有

    命令 说明
    :cw 如果有信息列表,则打开quickfix窗口;否则什么也不做
    :cl 列出所有信息
    :cc 显示详细信息
    :cp 跳到上一项
    :cn ......下一项
    :copen 打开quickfix窗口,可添加窗口高度参数,单位为行
    :cclose 关闭quickfix窗口
    :cold[er] 到前一个旧列表
    :cnew 到后一个新列表

    2. 标签页

    分割窗口有时候会显得vim界面比较杂乱,这时候,标签页是另一个选择。以下是常用的操作指令或快捷键。

    命令 说明
    vim -p <files> 打开多个文件,并将它们放在标签中
    :tabe[dit] <file> 在当前标签页之后新建一个标签页,在其中放置file的内容
    :tabnew <file> 新建一个文件file,并为它新建一个标签页
    :tabo[only] 关闭其他标签页
    :tabc[lose]
    :q
    关闭当前标签页
    gt 打开下一个标签页
    gT ......上一个.........
    :tabfir[st]
    :tabr[ewind]
    打开第一个标签页
    :tabl[ast] 打开最后一个标签页
    :tabm[ove] <N>
    :tabm[ove] +<N>
    :tabm[ove] -<N>
    移动标签页:移到到位置N,往右移N个位置,往左移N个位置
    :tabs 显示当前标签页
    :help tab-page-intro 查询标签页相关命令
  • 相关阅读:
    1203 有穷自动机
    1111 评论
    C语言文法 改
    用户调研
    阅读《构建之法》 第8 第9 第10章
    sprint冲刺(第二天)
    sprint初步计划(第一天)
    作业6 团队项目之需求
    作业5 四则运算 测试与封装 5.1 5.2
    作业5 四则运算 测试与封装 5.1
  • 原文地址:https://www.cnblogs.com/zzqcn/p/4788754.html
Copyright © 2020-2023  润新知