vim2
一、光标控制命令
命令 移动
k 向上移一行
j 向下移一行
h 向左移一个字符
l 向右移一个字符
gg 移到文件的首行
G 移到文件的末行
H 移到屏幕的第一行
w 移到下一个字的开头
W 移到下一个字的开头,忽略标点符号
e 移到下一个字的结尾
E 移到下一个字的结尾,忽略标点符号
^ 移到当前行首
$ 移到当前行尾
{ 移到上一段开头
} 移到上一段结尾
Enter 移到下一行行首
二、在 vim 中添加文本
命令 插入
i 在光标前插入文本
I 在当前行首插入文本
a 在光标后插入文本
A 在当前行末插入文本
o 在当前行的下边插入新行
O 在当前行的上边插入新行
s 删除光标所在处字符,并进入插入模式
S 删除光标所在的行,并进入插入模式
:r filename 读入指定文件内容,并插在当前行后
:nr file 读入文件 file 内容,并插在第 n 行后
Esc 回到命令模式
三、在 vim 中删除文本
命令 删除
x 删除光标处的字符
db 删除光标前面的字
dw 删至下一个字的开头
dd 删除整行
:n,md 从第 m 行开始往前删除 n 行
d$ 从光标处删除到行尾
d^ 从光标处删除到行首
四、在 vim 中查找与替换
命令 查找与替换
/target 在文件中向前查找 target
?target 在文件中向后查找 target
n 查找下一个
N 查找上一个
:set ic 查找时忽略大小写
:set noic 查找时对大小写敏感
%s/text1/text2/g 在整个文件中查找text1并且替换为text2
五、在 vim 中复制文本
命令 复制
yy 复制当前行
nyy 从当前开始复制n行
p 粘贴至光标前
P 粘贴至光标后
u 撤消上一次修改
U 撤消所有修改
六、保存与退出vim
命令 保存或退出
:w 保存文件但不退出
:w file 将修改保存在 file 中但不退出
:wq 或 ZZ 或 :x 保存文件并退出
:q! 不保存文件,强制退出
:e! 放弃所有修改,从上次保存文件开始再编辑
七、其他选项
选项 作用
:set all 查看所有选项
:set nu 设置行号
:set showmode 显示是输入模式还是替换模式
:set ts=4 为文本输入设置 tab stops
:set nonumber 取消显示行数
:.= 查看当前行的行号
:= 查看总行数
ctrl+g 显示文件名、当前的行号、文件的总行数和文件位置的百分比
vim2的更多相关文章
- Vim2.1-Vim简明教程【CoolShell】【非原创】
vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progress ...
- 入门VMware Workstation下的Debian学习之Vim简单使用(三)
什么是Vim? Vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计. Vim是从vi发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广 ...
- vim使用入门设置
分为以下四步. 1,安装vim 2,安装git yum -y install vim git (Fedora/CentOS) /apt-get install vim git (Debian/Ubun ...
- SpringMVC项目配置
一.创建一个maven项目 1.new一个maven项目,选择next,如图:
- 零基础学习Vim编辑器
**********************************************************************0.这篇教程的简介:Vim是Linux/Unix下的经典编辑 ...
- vim 源码分析
vim 源码分析 http://bbs.csdn.net/topics/230031469 Ver7.1 晕.看不明白很正常. 7.1已经很大了. 支持了太多东西. 代码行数那么多(源码压缩了都 ...
- 一个简单的基于Tornado二手房信息统计项目的开发实现
Purpose 最近因为要买房子,扫过了各种信息,貌似lianjia上的数据还是靠点谱的(最起码房源图片没有太大的出入),心血来潮想着做几个图表来显示下房屋的数据信息,顺便练练手. 需求分析 1从li ...
随机推荐
- Android UI ListView的使用
一.ListView的理解 1.什么ListView? 一种用来显示多个可滑动项(Item)列表的的ViewGroup 需要使用Adapter将集合数据和每一个Item所对应的布局动态适配到Li ...
- 错误解决:error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory
执行以下代码,生成唯一的UID $fp = popen("/xxx/bin/tools/uuidgen system", "r");// $uid = frea ...
- MVC之Ajax.BeginForm使用详解之更新列表
1.首先,请在配置文件设置如下:(该项默认都存在且为true) <add key="UnobtrusiveJavaScriptEnabled" value="tru ...
- Sqoop:Could not load db driver class: com.microsoft.sqlserver.jdbc.SQLServerDriver
Sqoop version:1.4.6-cdh Hadoop version:2.6.0-cdh5.8.2 场景:使用Sqoop从MSSqlserver导数据 虽然1.4.6的官网说 Even if ...
- Ambari server:无法显示内存,CPU等使用率
Ambari server安装完毕后,都能正确显示各种信息.运行了几天后,发现无法显示内存,CPU等信息. 查找日志发现有错误,日志路径:/var/log/ambari-server/ambari-s ...
- MongoDB学习笔记~为IMongoRepository接口更新指定字段
回到目录 对于MongoDB来说,它的更新建议是对指定字段来说的,即不是把对象里的所有字段都进行update,而是按需去更新,这在性能上是最优的,这当然也是非常容易理解的,我们今天要实现的就是这种按需 ...
- Linux系统中 安装Vmware Toolst工具
前提: 安装虚拟机.可以参考:在Windows上安装虚拟机详细图文教程 安装Linux.可以参考:在VMware Workstation里的Linux操作系统的安装——红旗桌面7.0 本文作者:sou ...
- thrift的lua实现
最近要进行系统升级,后台的数据是根据城市区分的.担心新系统的稳定性及新数据的准确性,计划部分城市采用新接口.接口的入参里没有城市信息,只有经纬度坐标,需要调用一个thrift接口来根据坐标获取城市信息 ...
- OpenStack云计算快速入门之二:OpenStack安装与配置
原文:http://blog.chinaunix.net/uid-22414998-id-3265685.html OpenStack云计算----快速入门(2) 该教程基于Ubuntu12.04版, ...
- Linux驱动开发概述
原文出处:http://www.cnblogs.com/jacklu/p/4722563.html Linux设备分类 设备的驱动程序也要像裸机程序那样进行一些硬件操作,不同的是驱动程序需要" ...