轻快的vim(二):插入
上一节我们讲到了VIM中的移动,既然已经能够在屏幕和光标间游刃有余了
那么,现在就来谈谈插入命令
不知道有多少VIM新手和我当年(去年)一样,信誓旦旦的以为只有i可以插入
唉,现在想想都觉得可笑,都是Windows下的编辑器用多了的结果
鼠标一点,妈妈再也不用担心我的文本插入了……悲剧!
好了,让我们抛弃过去吧,从现在起奋斗,也许不算太晚
这是俺写的《轻快的VIM系列》第二节,每一节都会不断更新,加入更多技巧在里面
VIM新手们加油,咱一起总结,一起努力练习……
基础
字符位置插入
i 在光标之前插入
a 在光标之后追加
你看,其实刚开始用这两个就足够了,这就是最基础的
为什么这么说呢?因为你可以依靠上一节中的移动命令来达到任意位置,然后再大力插入
不要忘了,VIM中最重要的技巧之一就是命令间的配合使用
进阶
行位置插入
A 在一行的结尾处追加
I 在一行的开头处插入
o 在光标所在位置的下一行打开新行插入
O 在光标所在位置的上一行打开新行插入
当然,如果你认为先移动光标然后插入或追加慢了,那么就应该用上面这种方法
它们是以行做单位
在这里我还是需要提醒一下,命令前加数字代表执行次数
tips1:10I*<Esc>先输入10,然后输入i,接着输入*号,最后按<Esc>
这样就可以在一行开头输入十个*

tips2:同样,5o###<Esc>先输入5,然后输入o,接着输入###,最后按<Esc>
这样就可以在下列5行中每一行开头插入###

看,这样一来,再需要输入重复文本的时候就变得方便了对不对,你可以自己试着扩展思维……
但我依然会不厌其烦的提醒你,命令的组合也是最重要的技巧之一
合并行
有时候你也许会想合并两行

J 合并两行

你只需要把光标移动到首行,然后按3次J即可
让我感觉奇怪的是,我直接使用3J却只能合并两行,4J才能合并3行
谁来告诉我为什么
感谢http://www.cnblogs.com/nerxious/archive/2012/12/21/2827774.html
轻快的vim(二):插入的更多相关文章
- 轻快的vim(四):修改
我想每个Coder都深刻的明白,修改这一操作在代码的世界里是多么重要 与其说修改,无非就是删除了再插入,但VIM把这两者结合的很有效率 闲话少说,让我们再次使用这轻快的VIM在code上起舞 字符替换 ...
- 无意发现vim里插入模式可以借助Alt键输入一些特殊字符
无意发现vim里插入模式可以借助Alt键输入一些特殊字符.如: Alt+w: ÷ Alt+:: » Alt+f : æ Alt+ . : ® Alt+ ? : ¯...
- MySQL行(记录)的详细操作一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理
MySQL行(记录)的详细操作 阅读目录 一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理 一 介绍 MySQL数据操作: ...
- 在vim中插入命令行的输出结果
vim是linux中常见的编辑器,这里讲讲如何在vim中插入命令行的输出结果. 基本用法: 在指令模式下运行 :!command ,如!date将日期显示在vim底部,!ls列出当前目录 将命令结果插 ...
- 轻快的vim(一):移动
断断续续的使用VIM也一年了,会的始终都是那么几个命令,效率极低 前几个星期把Windows换成了Linux Mint,基本上也稳定了下来 就今晚,我已经下定决心开始新的VIM之旅,顺便写一系列的笔记 ...
- 学习使用Vim(二)——User Manuals, Getting Started
Vim的用户手册主要包含以下三个部分: Getting Started; Editing Effectively; Tuning Vim; 分别代表基本编辑技巧,更优化 ...
- vim之插入
进入vim插入模式,我们熟知的有: 字符位置插入: i 在光标之前插入 a 在光标之后追加 行位置插入: A 在一行的结尾处追加 I 在一行的开头处插入 o 在光标所在位置的 ...
- vim 文字插入
我们知道VIM中,普通的复制和粘贴都是YY和PP.那么怎么将vim以外的文件插入到vim编辑器中呢!这是个问题: 首先我们要选中想要插入的文字,如: 然后进入vim插入模式:SHIFT + Inser ...
- vim编程 插入 保存不退出 保存退出 退出不保存 另存为其他文件名 保存覆盖现有文件
---恢复内容开始--- 在xshell里写代码,如果需要编辑代码,可以输入 vim+ xxx.py ,进入vim编辑界面 这里的xxx.py表示 python的存储文件,后缀名是.py. 1. ...
随机推荐
- 五分钟学习React(六):元素(Element)和组件(Component)
俗话说"万丈高楼平地起",从这一期开始,我们将使用基于Webpack+Babel的React学习React框架中的一些基础概念.在学习React的过程中经常会把Element.Cl ...
- Android第三方微博、无线传输、动画特效、商城应用等源码
Android精选源码 Android汽车助手源码 一个酷炫的Android特效源码 新浪微博的第三方客户端.UI遵循Material Design. Android实现旋转木马布局多种效果 Andr ...
- dubbo之多协议
(1) 不同服务不同协议 比如:不同服务在性能上适用不同协议进行传输,比如大数据用短连接协议,小数据大并发用长连接协议 consumer.xml <?xml version="1.0& ...
- GrepWin:Win7下的文本替换工具
工作环境退回到Win7之后,内容查找功能非常不给力,推荐一个文本内容查找工具grepWin. Win7下的文本查找/替换工具: grepWin
- dataGridView 设置
//窗体加载事件 //内容居中 dataGridView1.RowsDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCe ...
- [luogu4161 SCOI2009]游戏 (DP)
传送门 Solution 可以发现实际上是把n分为几个循环节,然后找循环节的\(lcm\)是这次的排数 而\(lcm\)必然是一些最高次幂的质数的成积,那么就dp求一下所有情况就好了 PS:注意并不是 ...
- [luogu2587 ZJOI2008] 泡泡堂 (贪心)
传送门 Description 第XXXX届NOI期间,为了加强各省选手之间的交流,组委会决定组织一场省际电子竞技大赛,每一个省的代表队由n名选手组成,比赛的项目是老少咸宜的网络游戏泡泡堂.每一场比赛 ...
- MongoDB之Too many open files
在Linux下有时会遇到cannot open /dev/urandom Too many open files的问题.其实Linux是有文件句柄限制的,而且Linux默认一般都是1024(阿里云主机 ...
- HTML <area> 对象
<area>对象的属性 属性 描述 W3C alt 设置或返回当浏览器无法显示某个区域时的替换文字. Yes coords 设置或返回图像映射中可点击区域的坐标. Yes hash 设置或 ...
- Beautifulsoup提取特定丁香园帖子回复
DataWhale-Task3(Beautifulsoup爬取丁香园) 简要分析 完整代码 结果图 参考资料 简要分析 任务3:爬取丁香园论坛特定帖子,包括帖子主题,帖子介绍,回贴内容(用户名,用户头 ...