vim学习之以退为进——可反复移动和可反复改动的美妙结合
时间:2014.06.29
地点:基地
----------------------------------------------------------------------------------
一、任务1:使改动可反复
在指定字符前后各加入一个字符。比方在连接字符串的 + 号操作前后均流出一个空格( [ ]+[ ] )
我们知道 s命令能够删除光标下的字符进入插入模式,如今我们还能够总结一下进入插入模式的几种方式:
1.
i 命令:当前光标前插入
2.
a命令:当前光标后插入
3.
s命令:当前光标下删除后插入
4.大写i命令:当前光标所在行首插入
5.大写a命令:当前光标所在行尾插入
6.大写S命令:删除当前光标所在行插入
7.
dd命令:不过删除当前行,不会进入插入模式
于是小s命令可删除光标下的字符进入插入模式后的功能后,为了完毕任务我们可先运行小s命令删除光标下的字符,然后键入:空格+空格,然后退出,这样。按键集合:
[ s 空格 + 空格 Esc ]将被记录下来形成一个改动单元,于是接下来就可採用点号命令了。
如今,我们所要做的事情就是把光标移动到下一个 + 号处。然后用 . 命令反复运行这一操作。
----------------------------------------------------------------------------------
二、任务2:使移动可反复
为了查找本行中某指定字符。我们能够使用 f{char}命令,比方 f+ 后光标将移动到下一个 + 号所在位置。
于是,我们没完毕一次改动后都能够使用 f+ 跳转到该行的下一个 + 号所在位置。可是,更好的方法是使用
。 号 命令反复查找上次f命令所查找的字符。于是就不是必需多次输入 f+ 了。
----------------------------------------------------------------------------------
三、综合上述两种移动和改动模式
通过上面,我们知道 ;命令可帮我们定位到下一个目标字符上。而 . 命令可反复上次改动,这样我们配合使用 ;. 就可完毕将 + 号改动成 [ ]+[ ]了。
如今比方有一行这种代码:
string str="You"+"are"+"my"+"world";
我们想将 + 号所有改为 [ ]+[ ] 。过程例如以下:
1.先 f+ 光标定位到第一个 + 号
2.小s命令。删除光标下的+ 号字符 进入插入模式。然后键入: [ ]+[ ]
3.Esc退出改动
4.使用 ;号命名反复上次查找,将光标定位
5.使用 . 号命令反复上次改动
6.不断反复步骤4和5,直到改动完为止。
vim学习之以退为进——可反复移动和可反复改动的美妙结合的更多相关文章
- 菜鸟vimer成长记——第0章、我眼中的vim学习
这是一系统总结vim的学习文章,记录我自己学习vim的过程和感悟.与此同时也想分享出来给大家,欢迎大家互相讨论和学习. 在这里假设你们对vim已经有了一些基本的认识或者说已经使用过几个月的vim.该系 ...
- Linux学习系列之Linux入门(二)Vim学习
第二篇 Vim学习 主要内容: 基本命令: 插件扩展: 参考资料: vim是一个命令控制的文本编辑器,可以完成几乎我们想要做的所有工作,除了Emacs几乎没有其他的工具能和它匹敌.官方网站是:http ...
- Vi/VIM键盘图, Vi/vim学习图
Vi/vim学习图 引用: Vi键盘图片可视化教程 http://www.cnblogs.com/me115/archive/2010/11/16/1878295.html 网上的文章易流失.感谢分享 ...
- vim学习、各类插件配置与安装
vim学习.各类插件配置与安装 vim 插件 配置 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶书籍<vim实用技巧>.注:进阶书籍可以在 ...
- 推荐vim学习教程--《Vim 练级手册》
非常不错的vim学习资源,讲解的简单明了,可以作为速查工具,在忘记时就翻下.地址如下: <Vim 练级手册>
- VIM学习二: VIM配置代码及效果图
vim学习及插件 参见:http://www.cnblogs.com/caixu/p/6337926.html .vimrc配置 "***************************** ...
- vim学习之改头换面(基础配置)
还记得在线有个维护博客园的学长说过,这网站的前端做的贼丑,今日一看果真如此.其实我想说毕竟干货多,没有那么多花花肠子.下面开始进入正题. 在入坑了sublime.vscode.atom.notepad ...
- vim学习、各类插件配置与安装【转】
转自:https://www.cnblogs.com/forest-wow/p/6916531.html 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶 ...
- Linux之Vim学习
Linux之Vim学习 一般模式 光标移动 按键 作用 j或down方向键 向下移动一个字符 k或up方向键 向上移动一个字符 h或left方向键 向左移动一个字符 l或right方向键 向右移动一个 ...
随机推荐
- python笔记2:函数
5. 函数 Python函数代码块以 def 关键词开头; 函数内容以冒号起始,并且缩进. *注: python中,strings, tuples, 和 numbers 是不可更改的对象,而 list ...
- React项目的打包与部署到腾讯云
腾讯云送了30天的免费试用,于是有了把react项目部署到上面的想法.项目是默认生成的,只是一个页面,但是这个过程中也遇到了不少麻烦与问题.下面来具体梳理下: create-react-app 来自F ...
- Java 添加播放MIDI音乐
Java 在多媒体处理方面的确优势不大,但是我们在程序中有些时候又需要一些音乐. 如果播放的音乐是wav等波形音频文件,又很大的话,所以背景音乐最好就是MIDI了. 网上很多播放MIDI的教程都是 ...
- (1)sqlite基础
一.安装sqlite 下载页面:http://www.sqlite.org/download.html 1.下载 sqlite-tools-win32-*.zip 和 sqlite-dll-win32 ...
- [Machine Learning with Python] Data Visualization by Matplotlib Library
Before you can plot anything, you need to specify which backend Matplotlib should use. The simplest ...
- Codeforces Gym 100650C The Game of Efil 模拟+阅读题
原题链接:http://codeforces.com/gym/100650/attachments/download/3269/20052006-acmicpc-east-central-north- ...
- C# Ftp Client 基本操作
C# Ftp Client 上传.下载与删除 简单介绍一下Ftp Client 上传.下载与删除,这是目前比较常用的命令,各个方法其实都差不多,重点是了解Ftp命令协议. 1.建立连接 public ...
- Ext grid单元格编辑时获取获取Ext.grid.column.Column
item2.width = 80; //item2.flex = 1; item2.align = 'center'; item2.menuDisabled = true; //禁止显示列头部右侧菜单 ...
- CEF General Usage(CEF3预览)
CEF General Usage(CEF3预览) 介绍 CEF全称Chromium Embedded Framework,是一个基于Google Chromium 的开源项目.Google Chro ...
- 自签名证书安全性问题研究https(ssl)
先看下https(ssl)的好处,以及为什么要用: http://imweb.io/topic/565c71673ad940357eb99879 https://zh.wikipedia.org/wi ...