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 ...
随机推荐
- Nginx中文详解、配置部署及高并发优化
一.Nginx常用命令: 1. 启动 Nginx /usr/local/nginx/sbin/nginxpoechant@ubuntu:sudo ./sbin/nginx2. 停 ...
- nodejs的child_process同步异步
nodejs是一种单线程模型,但是,使用nodejs的child_process模块可以实现多进程任务.利用child_process可以创建子进程,实现子进程和主进程之间的通信. nodejs v0 ...
- 每个程序员都会的 35 个 jQuery 小技巧
1. 禁止右键点击 $(document).ready(function(){ $(document).bind("contextmenu",function(e){ return ...
- Android-正方形的容器
package liu.myrecyleviewchoosephoto.view; import android.content.Context; import android.util.Attrib ...
- IOS网络请求的一些需要记录的info设置
info.plist文件: <key>NSExceptionDomains</key> <dict> <key>appapi.700bike.com&l ...
- .NET开源插件内核
http://www.cnblogs.com/newmin/ .NET开源插件内核:支持WinForm和Asp.net. 设计的初衷是:利用“开发平台 + 插件内核"来开发子系统,及对系统进 ...
- 如何快速简单上传类库到CocoaPods - 图文攻略步骤
当自己的库已经上传GitHub后,那么如何快速简单的开源自己的库呢? 这里就是介绍如何将自己的类库上传到pods管理库,以便开源所有人都能方便使用. 准备前提: - 项目已上传到GitHub (注意, ...
- 追MM的各种算法
原文:http://blog.sae.sina.com.cn/archives/3542#more-3542 看到一篇文章把算法描述的相当的好,先收藏了! 动态规划 基本上就是说:你追一个MM的时候, ...
- OpenStack调研:OpenStack是什么、版本演变、组件关系(Havana)、同类产品及个人感想
一点调研资料,比较浅,只是觉得部分内容比较有用,记在这里: 首先,关于云计算,要理解什么是SAAS.PAAS.IAAS,这里不述:关于虚拟化,需要知道什么是Hypervisor,这里也不述: Open ...
- extjs学习资料
ExtJs 入门教程 1.Extjs5.1.0教程云盘地址 http://pan.baidu.com/s/1qYhHiEw 2.Extjs3.x如下: ExtJs 入门教程一[学习方法] ExtJ ...