oeasy教您玩转vim - 63 - # window分屏
窗口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再垂直方向上进行切分
- v的意思是
在左右切换的时候,使用
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]可以隐藏当前窗口- 隐藏的
window中buffer不保存 - 除非设置了
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分屏的更多相关文章
- oeasy教您玩转vim - 56 - # 字符可视化模式
可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...
- oeasy教您玩转vim - 57 - # 行可视化
可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...
- oeasy教您玩转vim - 53 - # 批量替换
查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...
- vim中的分屏操作
title: vim中的分屏操作 date: 2017-11-14 21:45:11 tags: vim categories: 开发工具 在命令行中: vim -On file1 file2 # O ...
- vim如何进行分屏操作
文章转自:http://www.netingcn.com/vim-%E5%88%86%E5%B1%8F%E6%93%8D%E4%BD%9C.html 启动vim打开多个文件并分屏显示: vim -on ...
- Linux学习笔记之十二————vim编辑器的分屏操作
一.分屏操作: sp: 上下分屏,后可跟文件名 vsp: 左右分屏,后可跟文件名 Ctr+w+w: 在多个窗口切换 二.启动分屏: 1.使用大写O参数进行垂直分屏 $ vim -On file1 fi ...
- oeasy教您玩转linux010203显示logo
我们来回顾一下 上一部分我们都讲了什么?
- oeasy 教您玩转linux010101查看内核uname
linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...
- oeasy教您玩转linux010202软件包管理apt
顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010201持续输出yes
我们来回顾一下 上一部分我们都讲了什么?
随机推荐
- WebView2在WPF中的应用
开发环境 运行环境:.Net 6 开发环境:Visual Studio 2022 17.1.3 框架语言:WPF 安装WebView2 通过Package Manager控制台安装 Install-P ...
- Flutter(四):Flutter 语言 Dart基础使用
一.变量和常量 变量 var a = 1; var str = 'abc'; 常量 const PI = 3.14; 不可变对象 final PI = 3.14; final TIME = new D ...
- Tron_CTF2024新生赛 MISC
猿神?岂洞!! 题目: 腿短的好奇怪,难道有东西? 密码在这,好像有电!.txt 0362014324221316063736154275 还有一个压缩包. 我的解答: 036201432422131 ...
- 《剑指offer - 题目1》
题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数 ...
- UIView AutoLayout WrapContent,UIview 实现自动包裹
一.需求 实现一个UI组件,要求组件内部的内容变化的时候,内容需要同时产生变化 二.实现 效果: 一个三个元素的组件,两边固定大小,中间的Label内容会变化 实现的约束: 首先保证三个元素同时居中, ...
- OpenCV笔记(3) CV::Mat
1. 创建一个数组 1.1 使用构造函数 cv::Mat a; //默认构造函数 cv::Mat b = cv::Mat(); //默认构造函数 cv::Mat c = cv::Mat(3, 3, C ...
- codemirror-editor-vue3 编辑器只要换行保存就会有小红点
先看示例 找了篇博客写的贼详细 https://blog.csdn.net/xujingyiss/article/details/118992763 只要设置这二个 let conten ...
- react props进阶 children属性
children属性,表示组件标签的子节点,当组件标签有子节点时,props就会有该属性,与与普通的props一样,其值可以使任意类型. # 父组件 class App extends React.C ...
- NFS练习
NFS练习题 1.开放/nfs/share目录,提供给 任意用户 只读(/etc/exports ro) 查询 1.任意客户端2.任意的用户 服务端 showmout exportfs system ...
- Java邮件发送解决ssl及邮件中文乱码
Java邮件发送解决ssl及邮件中文乱码 org.apache.commons.mail.EmailException: Sending the email to the following serv ...