Vim多列操作指南

我们在使用 Vim 时,经常需要同时编辑多个文件,或者同一个文件的不同部分。Vim 提供了分割窗口(split)和垂直分割窗口(vsplit)的功能,允许我们在同一个 Vim 会话中查看多个缓冲区(buffer)。以下是关于拆分多列(垂直分割)、切换列、关闭列的操作方法:1. 拆分窗口(垂直分割):在普通模式下,输入::vsplit [文件名]  或  :vsp [文件名]如果不指定文件名,则垂直分割当前文件。也可以使用快捷键:Ctrl+w + v  来垂直分割当前窗口。2. 水平分割::split [文件名]  或  :sp [文件名]快捷键:Ctrl+w + s3. 切换窗口:在普通模式下,使用 Ctrl+w 然后加上方向键(h, j, k, l)来切换窗口。Ctrl+w h:切换到左边的窗口Ctrl+w j:切换到下边的窗口Ctrl+w k:切换到上边的窗口Ctrl+w l:切换到右边的窗口也可以使用 Ctrl+w 加上 w 键,循环切换窗口。4. 关闭窗口:在想要关闭的窗口中,输入::q  或者  :close也可以使用快捷键:Ctrl+w + c  关闭当前窗口(注意:如果窗口是最后一个,则不会退出Vim,但如果是最后一个且只有一个缓冲区,则退出Vim)另外,Ctrl+w + q  也是关闭当前窗口。5. 仅保留当前窗口,关闭其他所有窗口::only  或使用快捷键 Ctrl+w + o6. 调整窗口大小:垂直方向调整:Ctrl+w + > :向右增加当前窗口宽度Ctrl+w + < :向左减少当前窗口宽度(可以配合数字,例如 10 Ctrl+w + >,表示增加10列宽度)水平方向调整:Ctrl+w + + :增加高度Ctrl+w + - :减少高度7. 重新分配窗口大小(等宽等高):Ctrl+w + = :使所有窗口等宽等高8. 移动窗口(改变位置):Ctrl+w + H :将当前窗口移动到最左边Ctrl+w + J :将当前窗口移动到最下边Ctrl+w + K :将当前窗口移动到最上边Ctrl+w + L :将当前窗口移动到最右边9. 在窗口间移动文件(即交换两个窗口的缓冲区):Ctrl+w + x :交换当前窗口与下一个窗口(如果是垂直分割,则与右边的交换;水平则与下面的交换)10. 将当前窗口变为新标签页(Tab):Ctrl+w + T注意:以上操作都是在普通模式下进行。示例操作流程:打开一个文件:vim file1垂直分割:Ctrl+w + v   (此时出现两个file1的垂直分割窗口)在右边窗口打开另一个文件::e file2切换窗口:Ctrl+w + l (切换到右边窗口)  Ctrl+w + h (切换到左边窗口)关闭右边窗口:在右边窗口按 :q  或者 Ctrl+w + c另外,也可以使用命令模式直接操作,例如::vsplit file2   # 垂直分割并打开file2:split file3    # 水平分割并打开file3总结:Vim 的多窗口操作非常强大,通过组合 Ctrl+w 和各种按键,可以高效地进行多文件编辑。

在 Vim 中管理多列(垂直分割窗口)的常用操作如下:


1. 创建垂直分割(多列)

  • 新建空白列
    :vsplit:vsp(垂直分割当前文件)
    :vsplit 文件名(垂直分割并打开新文件)
  • 快捷键创建
    <Ctrl+w> + v(在普通模式下按)

2. 切换列(窗口间移动)

  • 方向键切换
    <Ctrl+w> + h → 左移一列
    <Ctrl+w> + l → 右移一列
    <Ctrl+w> + j → 下移一行(水平分割时)
    <Ctrl+w> + k → 上移一行(水平分割时)
  • 循环切换
    <Ctrl+w> + w<Ctrl+w> + <Ctrl+w>(顺时针切换所有窗口)

3. 关闭列(窗口)

  • 关闭当前列
    :q:close
    快捷键:<Ctrl+w> + c
  • 强制关闭(不保存)
    :q!
  • 保留当前列,关闭其他所有列
    :only<Ctrl+w> + o

4. 调整列宽

  • 增加宽度
    <Ctrl+w> + >(例如 10<Ctrl+w> > 表示增加 10 列宽度)
  • 减少宽度
    <Ctrl+w> + <
  • 等宽所有列
    <Ctrl+w> + =

5. 移动列位置

  • 左移/右移列
    <Ctrl+w> + H(当前列移动到最左)
    <Ctrl+w> + L(当前列移动到最右)

示例流程

1. 打开文件:vim file.txt
2. 垂直分割:<Ctrl+w> + v        # 创建第二列(相同文件)
3. 在第二列打开新文件::vsp file2.txt
4. 切换到右侧列:<Ctrl+w> + l
5. 关闭当前列(右侧)::q
6. 调整左侧列宽度:20<Ctrl+w> >  # 增加20列宽度

注意事项

  • 所有操作需在 普通模式(按 Esc 退出插入模式)下执行。
  • 若窗口是最后一个,:q 会退出 Vim。
  • 组合键操作:先按 Ctrl+w 松开,再按后续键(如 h/l/v)。

熟练掌握这些操作可显著提升多文件编辑效率!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/91712.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/91712.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python网络爬虫实现selenium对百度识图二次开发以及批量保存Excel

一.百度识图自动上传图片from selenium import webdriver from selenium.webdriver.edge.options import Options from selenium.webdriver.common.by import By edge_options Options() edge_options.binary_location r"C:\Program Files (x86)\Microsoft\Edge\Applica…

Vue中的refs字段使用记录

这段代码是 Vue.js 中结合 Element UI 等 UI 库的典型表单验证写法&#xff0c;具体含义如下&#xff1a;代码拆解 this.$refs.fromData.validate((valid) > {// 验证后的回调逻辑 })this.$refs.fromData $refs 是 Vue 提供的特殊属性&#xff0c;用于访问模板中通过 ref&qu…

多方案对比分析:后端数据加密策略及实践

多方案对比分析&#xff1a;后端数据加密策略及实践 随着互联网业务对用户隐私和数据安全的要求不断提升&#xff0c;后端系统中对敏感数据的加密保护已成为必备需求。从对称加密、非对称加密到数据库透明加密、应用层字段加密&#xff0c;各种方案各有特点。本文将以方案对比分…

《Java语言程序设计》1.4 复习题

1.4.1 什么是操作系统?列出一些流行的操作系统?操作系统(Operating System)是运行在计算机上的最重要的程序。操作系统管理和控制计算机的活动。通用计算机的流行操作系统有Microsoft Windows、Mac OS以及Linux。如果没有在计算机上安装和运行操作系统&#xff0c;像Web浏览器…

OpenCV图像自动缩放(Autoscaling)函数autoscaling()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 该函数用于对输入图像进行自动缩放&#xff08;Autoscaling&#xff09;&#xff0c;即根据输入图像的像素值范围将其线性映射到一个新的范围内&am…

多线程的认识

竞争与协作在单核 CPU 系统里&#xff0c;为了实现多个程序同时运行的假象&#xff0c;操作系统通常以时间片调度的方式&#xff0c;让每个进程执行每次执行一个时间片&#xff0c;时间片用完了&#xff0c;就切换下一个进程运行&#xff0c;由于这个时间片的时间很短&#xff…

SpringCloud相关总结

SpringCloud相关总结 1. 权威文档推荐&#xff1a; 官方文档&#xff1a;https://spring.io/cloud 玩的时候&#xff0c;注意SpringBoot与SpringCloud的版本兼容问题,推荐参考&#xff1a;https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%…

NW983NW988美光固态闪存NW991NW992

美光NW系列固态闪存深度解析&#xff1a;技术、对比与应用指南一、技术根基与架构创新美光NW系列固态闪存的技术突破源于其先进的G9 NAND架构&#xff0c;该架构采用5纳米制程工艺和多层3D堆叠技术&#xff0c;在单位面积内实现了高达256层的存储单元堆叠&#xff0c;存储密度较…

pytest + requests 接口自动化测试框架

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 pytest + req

Android性能优化之网络优化

一、网络性能瓶颈深度解析 1. 网络请求全链路耗时分析 #mermaid-svg-3cXlC9wERu99EHQH {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3cXlC9wERu99EHQH .error-icon{fill:#552222;}#mermaid-svg-3cXlC9wERu99EHQH …

实现库存显示和状态按钮的Question

首先实现显示图书库存 1 if条件标签里的test""要和实体类的属性名保持一致 否则会报找不到get方法的错误org.apache.ibatis.reflection.ReflectionException: There is no getter for property named stock in class2后端已经把bookStock传到前端了&#xff0c;但是显…

vue + Cesium 实现 3D 地图水面效果详解

一、引言Cesium 是一个强大的开源 JavaScript 库&#xff0c;用于创建基于 Web 的 3D 地理信息系统 (GIS) 应用程序。它提供了丰富的 API&#xff0c;可以实现各种复杂的地理可视化效果&#xff0c;包括地形渲染、建筑物建模、矢量数据显示等。本文将详细介绍如何使用 Cesium 实…

统信 UOS 运行 Windows 应用新利器!彩虹虚拟化软件 V3.2 全新上线,限时30天免费体验

原文链接&#xff1a;统信 UOS 运行 Windows 应用新利器&#xff01;彩虹虚拟化软件 V3.2 全新上线&#xff0c;限时30天免费体验 在国产操作系统逐渐普及的今天&#xff0c;许多用户仍面临一个实际问题——一些办公软件或行业工具仍然仅支持 Windows 系统。对于已全面部署统信…

Vue中使用vue-3d-model实现加载3D模型预览展示

场景 要实现在页面中简单快速的加载3D模型用于产品展示。 实现效果如下&#xff1a; 注&#xff1a; 博客&#xff1a; 霸道流氓气质-CSDN博客 实现 3D模型技术方案对比 这里用于快速展示简单3d模型。 3D模型文件下载 可下载的网站较多&#xff0c;比如&#xff1a; Sk…

GaussDB join 连接的用法

1 join 连接的作用join 连接用于把来自两个或多个表的行结合起来&#xff0c;基于这些表之间的共同字段。 最常见的 join 类型&#xff1a;inner join&#xff08;简单的 join&#xff09;。 inner join 从多个表中返回满足 join条件的所有行。2 示例数据让我们看看选自 "…

GitHub开源轻量级语音模型 Vui:重塑边缘智能语音交互的未来

前言 今天将深入解析一款颠覆性开源语音模型——Vui&#xff08;来自 Fluxions-AI 项目&#xff09;。它正以“轻量化”为矛&#xff0c;刺破传统语音模型高耗能的壁垒&#xff0c;让智能语音无处不在。 GitHub&#xff1a;https://github.com/fluxions-ai/vuihuggingface&am…

用aws下载NOAA的MB文件

安装aws下载某航次MB文件 安装aws curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install下载对应航次数据 aws s3 cp s3://noaa-wcsd-pds/data/raw/Atlantis/AT26-09 /home/xxx/…

Kubernetes (k8s)、Rancher 和 Podman 的异同点分析

1. Kubernetes (k8s) 类型&#xff1a;容器编排系统。功能&#xff1a; 自动化部署、扩展和管理容器化应用。支持跨多台主机的容器编排。提供服务发现、负载均衡、滚动更新等功能。 架构&#xff1a;基于 Master-Node 架构&#xff0c;Master 负责调度和管理&#xff0c;Node 运…

71 模块编程之新增一个字符设备

前言这个 主要是 最开始的时候了解驱动的时候, 看到的一系列的 case, 这里 来大致剖析一下 相关的道理这些模块 是怎么和内核交互的, 内核的这些业务是怎么实现的 这里主要是一个模块来注册了一个字符设备 然后这个字符设备 可读可写, 基于的是分配的一段空间 测试用例测试模块…

小众创新方向!多传感器融合与视觉惯性导航,定位精度和效率大幅提升!

多传感器融合与视觉惯性导航技术&#xff08;VINS&#xff09;取得了显著进展。近期&#xff0c;研究人员通过优化视觉与惯性传感器数据的融合算法、引入深度学习技术以及改进系统架构&#xff0c;显著提升了VINS在复杂环境下的定位精度和鲁棒性。基于深度学习的特征提取方法能…