窗口window

回忆上次

  • 我们这次了解了缓冲区buffer
  • ls可以查看buffer
  • 如下是buffer缓冲的一些flag

    • + 有修改未保存内容
    • - 可修改标签关闭
    • = 只读缓冲区
    • a 活跃缓冲区
    • u 没有在列表里面的缓冲区
    • h 隐藏缓冲区
    • x 有读取错误的缓冲区
    • % 当前缓冲区
    • #swap替换文件的缓冲区
  • 可以在buffer跳转

    • 可以通过bn[ext],选择下一个buffer
    • 可以用b[uffer1]b2进入指定的 buffer
    • 也可以用文件名,比如b[uffer] oeasy.txt
    • 可以用bf[irst],打开第一个buffer
    • 可以用bl[ast],打开最后一个buffer
  • 不保存也可以跳转

    • 设置 hidden
  • 跳转的时候自动保存

    • 设置 autowrite
  • 可以用大写字母设置跨文件标记mark

    • mA 添加标记
    • 'A 跳转到标记
  • 关于强行跳转和保存退出

    • 强制退出当前窗口 :q!
    • 不保存强行退出所有buffer :qall!
    • 保存所有未保存的文件:wall
    • 全部保存并退出:wqall
  • vim中打开的两个文件缓存buffer
  • 可以放到两个窗口里面同时查看吗?

查询手册

  • 查一下手册:h window

  • 三者定位

    • 上次的 buffer缓存 是内存中的文件缓存
    • 这次的 window窗口 是打开 buffer 的一个视角
    • tab 标签是 window窗口的集合
  • 我们可以

    • 通过:sp[lit]来上下切分窗口
    • 且切分了之后
    • 我们可以在一屏幕内同时看到第1行和第1000行
    • 切分出窗口之后可以用:q退出当前窗口
    • 这样就又回到单一窗口的状态

在此切分

  • :sp[lit]切分 窗口之后

    • 可以切换窗口
    • ctrl-w ctrl-k切换到当前窗口上面的窗口
    • ctrl-w ctrl-j切换到当前窗口下面的窗口
    • ctrl-w

      • 意味着window
    • ctrl-k、ctrl-j

      • 意味着切换的方向
  • 切分之后可以再次切分 :sp[lit]

    • 再次切换
    • ctr-w再ctrl-k

      • 切换到当前窗口上面的窗口
    • ctrl-w再ctrl-j

      • 切换到当前窗口下面的窗口

纵向切分

  • 我们现在位于中间的一层
  • :vsp[lit]

    • v的意思是 vertical 垂直方向
    • 于是就可以把这个 window 再垂直方向上进行切分
  • 在左右切换的时候,使用

    • ctrl-w再ctrl-h

      • 切换到当前窗口左面的窗口
    • ctrl-w再ctrl-l

      • 切换到当前窗口右面的窗口

退出窗口

  • 退出当前window窗口

    • :q
  • 强制退出当前window窗口不保存

    • :q!
  • 不保存强行退出所有

    • buffer :qall!
  • 保存所有未保存的文件

    • :wall
  • 全部保存并退出

    • :wqall

设置window显示与隐藏

  • :on[ly]

    • 保留当前window,其余的都hidden
  • :hide

    • 隐藏当前window
  • 如果:set autowrite

    • hidden的时候就自动保存

调整高度

  • 调整窗口 window 高度减小

    • 高度减小

      • ctrl-w -
    • 高度减小N

      • :res[ize] -N
  • 调整窗口 window 高度增大

    • 高度增大

      • ctrl-w +
    • 高度增大N

      • :res[ize] -N
  • 设置当前窗口高度值为N

    • :res[ize] N
    • 或者直接在正常模式下

      • z15cr
  • 总共是 80*24

    • 看着分配
  • 窗口高度都统一

    • ctrl-w再=

调整窗口 window 宽度

  • 调整窗口 window 宽度减小

    • 宽度减小

      • ctrl-w <
    • 窗口 window 宽度减小N

      • :vertical res[ize] -N
  • 调整窗口 window 宽度增大

    • 宽度增大

      • ctrl+w >
    • 宽度增大N

      • :res[ize] -N
    • 设置当前窗口宽度值为N

      • :vertical res[ize] N
  • 窗口高度宽度都统一

    • ctrl-w再=
  • 总共是 80*24

    • 还是得看着分配看着分配

状态横条

  • :set laststatus=0不用状态横条
  • :set laststatus=1有多个窗口的时候,最底下有一个状态横条
  • :set laststatus=0各窗口有各自的状态横条

快速终端

  • 可以用:terminal或者:ter切换到命令模式
  • 只有vim8以上的版本才支持
  • 可以试试不?

    • 看起来是单独新建了一个进程
  • 如何上下切换 窗口 window ?

    • 快捷键
  • 如何切出 shell ?

    • 试试 exit 命令

  • 想要纵向分屏出shell?

    • :vertical terminal
    • :vert ter

总结

  • 我们这次了解了 窗口window
  • 窗口是用来装 缓冲buffer
  • buffer 是在内存里面载入的硬盘文件
  • 窗口的切分

    • :sp[lit] 水平切分
    • :vsp[lit] 垂直切分
  • 窗口的切换

    • ctrl-w再ctrl-k

      • 切换到当前窗口上面的窗口
    • ctrl-w再ctrl-j

      • 切换到当前窗口下面的窗口
    • ctrl-w再ctrl-h

      • 切换到当前窗口左面的窗口
    • ctrl-w再ctrl-l

      • 切换到当前窗口右面的窗口
  • 窗口的隐藏和全屏

    • :hid[e]可以隐藏当前窗口

      • 隐藏的windowbuffer不保存
      • 除非设置了autowrite
    • :on[ly]可以全屏当前窗口

      • 其他的窗口都进入:hide状态
  • 'laststatus' 可以设置状态横条
  • :terminal 可以开启终端
  • 这次主要就是window窗口,还挺方便
  • 尤其多文件操作
  • 这个还有什么可玩的吗?
  • 下次再说

[Github地址] (GitHub - overmind1980/oeasyvim: 这是oeasy制作的的一套关于vim的教程 可以在 https://www.lanqiao.cn/teacher/courses/2840 做实验 邀请码FJWYIMGB 本教程从0基础开始,到精通vim配置,和高级命令。希望能让vim是你的开发更高效。)

[Gitee地址] (overmind1980/oeasyvim)

[蓝桥实验楼 邀请码FJWYIMGB] (oeasy 教您零基础玩转编辑神器 vim_Linux - 蓝桥云课)

oeasy教您玩转vim - 63 - # window分屏的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  3. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  4. vim中的分屏操作

    title: vim中的分屏操作 date: 2017-11-14 21:45:11 tags: vim categories: 开发工具 在命令行中: vim -On file1 file2 # O ...

  5. vim如何进行分屏操作

    文章转自:http://www.netingcn.com/vim-%E5%88%86%E5%B1%8F%E6%93%8D%E4%BD%9C.html 启动vim打开多个文件并分屏显示: vim -on ...

  6. Linux学习笔记之十二————vim编辑器的分屏操作

    一.分屏操作: sp: 上下分屏,后可跟文件名 vsp: 左右分屏,后可跟文件名 Ctr+w+w: 在多个窗口切换 二.启动分屏: 1.使用大写O参数进行垂直分屏 $ vim -On file1 fi ...

  7. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  8. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  9. oeasy教您玩转linux010202软件包管理apt

    顾一下 上一部分我们都讲了什么?

  10. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

随机推荐

  1. 【超详细】宝塔面板安装WordPress程序图文教程

    宝塔面板是目前广受用户喜爱的服务器控制面板之一,自己也在用,确实很方便,很多用户的网站都是基于宝塔面板搭建,今天简单介绍下宝塔面板是如何安装WordPress的,方便新手用户快速部署.也方便自己以后查 ...

  2. GNU GDB

    1 说明 本文主要介绍一些简单的.常用的gdb调试技巧. 环境:GNU gdb (GDB) Red Hat Enterprise Linux (7.2-60.el6_4.1) 参考文档:<gdb ...

  3. 程序员面试金典-面试题 02.02. 返回倒数第 k 个节点

    题目: 实现一种算法,找出单向链表中倒数第 k 个节点.返回该节点的值. 注意:本题相对原题稍作改动 示例: 输入: 1->2->3->4->5 和 k = 2输出: 4说明: ...

  4. 三星PM871B SATA SSD 固态硬盘评测

    三星PM871B SATA SSD 固态硬盘评测 视频测试: 外观: CDI信息: 跑分 : 260G复制测试: 听说是850EVO的OEM版本.

  5. epoll使用与原理

    使用要点 边缘模式(ET)与水平模式(LT)区别 下面内容来自linux man page The epoll event distribution interface is able to beha ...

  6. 一个开源且全面的C#算法实战教程

    前言 算法在计算机科学和程序设计中扮演着至关重要的角色,如在解决问题.优化效率.决策优化.实现计算机程序.提高可靠性以及促进科学融合等方面具有广泛而深远的影响.今天大姚给大家分享一个开源.免费.全面的 ...

  7. Spring扩展——Aware接口

    Aware接口 在Spring中有许多的Aware接口,提供给应用开发者使用,通过Aware接口,我们可以通过set的方式拿到我们需要的bean对象(包括容器中提供的一些对象,ApplicationC ...

  8. FreeRTOS简单内核实现2 双向链表

    FreeRTOS Kernel V10.3.1 FreeRTOS 的 list.c / list.h 文件中有 3 个数据结构.2 个初始化函数.2 个插入函数.1 个移除函数和一些宏函数,链表是 F ...

  9. SQL索引优化,菜单列表优化

    SQL索引优化,菜单列表优化 现象:在系统中几个数据量大的列表页面,首次进入页面未增加筛选条件,导致进入的列表查询速度非常慢.分析:通过SQL查看,是做了count求和查询,然后根据总的记录数来做分页 ...

  10. 2024-06-15:用go语言,Alice 和 Bob 在一个环形草地上玩一个回合制游戏。 草地上分布着一些鲜花,其中 Alice 到 Bob 之间顺时针方向有 x 朵鲜花,逆时针方向有 y 朵鲜花

    2024-06-15:用go语言,Alice 和 Bob 在一个环形草地上玩一个回合制游戏. 草地上分布着一些鲜花,其中 Alice 到 Bob 之间顺时针方向有 x 朵鲜花,逆时针方向有 y 朵鲜花 ...