Vim中split的使用方法

Vim中split的使用方法

一、作用

用split可以显示两个不同的文件;或者同时显示一个文件的两个不同地方;又或者并排比较两个文件。这一切都可以通过分割窗口实现。如下图,左边的两个窗口是mytool.h和mytool.cpp 右边的两个窗口是commonfun.h和commonfun.cpp。同样的,也可以在阅读代码的时候查看配置文件,在调试的时候新开一个窗口,这个功能给我们带来的很多方便。

二、用法

先新建5个文件:main.cpp、commonfun.h、commonfun.cpp、mytool.h、mytool.cpp随便写一些代码。

然后就是下面的几个命令了:

vim commonfun.h

split commonfun.cpp

按下Ctrl+w +k把光标切换到上面的窗口

vsplit mytool.h

按下Ctrl+w+ j 把光标切换到下面的窗口

vsplit mytool.cpp

就可以达到上面的效果了。

三、具体命令解析


命令


解释


split


水平分割窗口


vsplit


垂直分割窗口


Ctrl+w


在窗口间跳转


Ctrl+w+h


将光标跳转到相邻的左面的窗口(hljk和在vim里面的用法相同)


Ctrl+w+l


将光标跳转到相邻的右面的窗口


Ctrl+w+j


将光标跳转到相邻的下面的窗口


Ctrl+w+k


将光标跳转到相邻的上面的窗口


Ctrl+w+t


将光标跳转到最上面的窗口


Ctrl+w+b


将光标跳转到最下面的窗口

四、具体命令解析

1、:quit&close

二者都能实现关闭窗口的功能,但是,quit会关闭最后一个窗口,而close不会关闭最后一个窗口。用close不用担心不小心退出vim。

2、:only

此命令可以关闭其他所有窗口。这个命令关闭除当前窗口外的所有窗口。如果要关闭的窗口中有一个没有存盘,Vim 会显示一个错误信息,并且那个窗口不会被关闭。

3、Ctrl-w

如果长按Ctrl-w那么光标会不停地在窗口之间跳转。如果眼力好的话可以使用。如果需要精确定位的话可以再加上hlkj(左右上下)像在vim当中是一样的。

4、:split

此命令是分割当前窗口的,所以在使用的时候要注意把光标跳转到你需要分割的哪个窗口上之后再使用此命令。

5、:qall

全部退出,如果任何一个窗口没有存盘,Vim 都不会退出。同时光标会自动跳到那个窗口你可以用 ":write" 命令保存该文件或者 ":quit!" 放弃修改。

6、:wall

此命令表示 "write all" (全部保存)。但实际上,它只会保存修改过的文件。

7、vim -o one.txt two.txt three.txt

这个命令就是在终端下使用的,就是一次性打开3个文件并使用分割形式显示。

时间: 2024-10-13 08:46:56

Vim中split的使用方法的相关文章

schema中的虚拟属性方法

schema中的虚拟属性方法相当于vue中的计算属性,它是通过已定义的schema属性的计算\组合\拼接得到的新的值 var personSchema = new Schema({ name: { first: String, last: String } }); var Person = mongoose.model('Person', personSchema); // create a document var bad = new Person({ name: { first: 'Walt

在.net中序列化读写xml方法的总结

在.net中序列化读写xml方法的总结 阅读目录 开始 最简单的使用XML的方法 类型定义与XML结构的映射 使用 XmlElement 使用 XmlAttribute 使用 InnerText 重命名节点名称 列表和数组的序列化 列表和数组的做为数据成员的序列化 类型继承与反序列化 反序列化的实战演练 反序列化的使用总结 排除不需要序列化的成员 强制指定成员的序列化顺序 自定义序列化行为 序列化去掉XML命名空间及声明头 XML的使用建议 XML是一种很常见的数据保存方式,我经常用它来保存一些

Vim 中文件目录浏览插件——NERD tree

说明 :vim的插件NERDTree用于使得vim窗口分左右窗口显示的用法说明.其中,左侧为目录的树形界面,简称为NERDTree界面,右则为vim界面. 一.配置步骤 下载地址: http://www.vim.org/scripts/script.php?script_id=1658 或者 http://download.csdn.net/detail/caoyingsdhzcx/5752889 树形目录插件NERDTree的安装方法,如下: 1. 在当前用户文件夹(例如simpman)下,建

老男孩教育每日一题-2017-05-15-说说你在vi/vim中常用的命令或快捷键

1.题目 2.参考答案 01:学会在vim中查询帮助 :help 或:h即可 :help G :help :wq 02.vi/vim 使用最基本方法 第一个里程碑-使用vi打开oldboy.txtvi /data/oldboy.txt默认是命令模式.第二个里程碑i  ->insert插入模式(编辑模式)  ->然后输入文本I am studying linux.第三个里程碑-按esc键我不想编辑了,退出编辑模式(插入模式),再次进入到命令模式第四个里程碑-保存并退出:wqw write 写入q

VIM中设置python自动缩进为4个空格

从别处找来的方法,做记录. 在全局vim配置文件中(/etc/vimrc)或个人vim配置文件中($HOME/vimrc)加入如下代码即可将自动缩进改为4空格: autocmd FileType python setlocal et sta sw=4 sts=4 其中相关变量含义: 变量名 缩写 含义 (no)autoindent ai 自动缩进,即为新行自动添加与当前行同等的缩进. (no)cindent ci 类似C语言程序的缩进 (no)smartindent si 基于autoinden

关于java中split的使用

之前在博客中已经叙述过这个问题,但是最近一次笔试中居然有碰到了这个知识点,而且还做错了,囧!学艺不精啊.题目大概是这样的: Java代码 String s2="this is a test"; String sarray[]=s2.split("/s"); System.out.println("sarray.length="+sarray.length); 这个输出是什么还是编译出错?我想那个split方法中的参数要是"s"

去除VIM中打开文件里有的^M字符

现象:在linux下打开Windows编辑的文本文件时会出现^M 原因:把文件从一个系统移到另一个不同的系统,你就会遇到与换行相关的问题. 解决方法: 在命令模式下使用正则表达式进行字符全文空替换:其中"^M"的输入,分别是"Ctrl+v"."Ctrl+M"键生成的.像^M 这样的在VIM中是控制字符,在查找替换中输入控制字符必须用别的方法,那就是在输入^M时,必须依次在键盘上敲入Ctrl+V和Ctrl+M. :%s/^M//g 使用sed 工具

C#_在.net中序列化读写xml方法的总结

阅读目录 开始 最简单的使用XML的方法 类型定义与XML结构的映射 使用 XmlElement 使用 XmlAttribute 使用 InnerText 重命名节点名称 列表和数组的序列化 列表和数组的做为数据成员的序列化 类型继承与反序列化 反序列化的实战演练 反序列化的使用总结 排除不需要序列化的成员 强制指定成员的序列化顺序 自定义序列化行为 序列化去掉XML命名空间及声明头 XML的使用建议 XML是一种很常见的数据保存方式,我经常用它来保存一些数据,或者是一些配置参数. 使用C#,我

Vim键入<ESC>的巧妙方法<alt-;>

在Vim中esc是一个常用的按键,却需要我们如此大幅度的移动才能碰触到它,那么我们如何更方便的使用它呢? 网上有不少方法,alt-[和df键映射是我曾用过的两种方法,现在先讲一下它们的问题, df键映射问题在于等待!每次按d键都要烦我一会!不能忍 alt-[ 好多了,但是按下后还是有延迟感 那么新方法就出现了alt-; 不需要键映射,直接打出来就好,利用元按键机制,打出一个esc+;命令,就代表esc命令,方便吧! 当然,如果还觉得麻烦,那就改键值吧,把一个不用的键干掉,我就觉得alt两个键有点