@1: VIM中非常迷人的功能:

D------->从当前位置开始删除,直到当前行结束

cw------->修改游标所在的单词,修改范围从游标位置到单词结尾。

一个替换一个用r,一个替换多个用s

u撤销 ctrl+r重做

%------->跳转到配对的括号

''------->跳转到光标上次停靠的地方, 是两个', 而不是一个"

`.------->移动到最后被编辑的行。

>------->增加缩进,"x>"表示增加以下x行的缩进

<------->减少缩进,"x<"表示减少以下x行的缩进

[[------>跳转到代码块的开头去(但要求代码块中'{'必须单独占一行)

gD----->跳转到局部变量的定义处

mx----->设置书签,x只能是a-z的27个字母

`x------>跳转到书签处("`"是1左边> 的键)

gv------>退出可视化模式后,可以使用这个命令用同样的方式自动选取之前的区域

(------>移动到前一个段落的第一个字符,段落之间以空行为分割。

)------>移动到下一个段落的第一个字符。

*------>往下查找当前字符串,并移动到下一个字符串的首字符。

#------>往上查找当前字符串,并移动到上一个字符串的首字符。

命令模式下,选中一段代码,然后按下“=”,可以自动对齐选中的代码

q: 进入命令历史编辑(类似的还有 q/ 可以进入搜索历史编辑, q 后面如果跟随其它字母,是进入命令记录)

f+字母:跳到当前光标后面的第一个“字母”的位置上(如  fa 跳到下一个a)

t+字母:跳到当前光标后面的第一个“字母”的前一个字母上(如 ta 跳到下一个a的前一个字母)

d+f+字母:删除从当前光标开始到当前光标后面的第一个“字母”的全部字母(如  dfd 删到下一个d, dfa删到下一个a)

d+t+字母:删除从当前光标开始到当前光标后面的第一个“字母”前面的全部字母(如  dtd 删到下一个d前面的位置, dfa删到下一个a前面的位置)

set nu

set nonu

syntax on              "开启vim语法高亮

set hlsearch

set incsearch

set tabstop=4

set nocompatible

set showmatch           "开启括号匹配

@2:VIM中的文本复制到其他的程序(如浏览器,word)中:

  我们可以在vim下面选中一段文字(需退出编辑模式)然后输入y,这样就把当前选中的文字复制到vim的临时寄存器(*号寄存器)中

了,再在我们需要粘贴的地方输入“*p就可以将临时寄存器中的内容粘贴进来(也可以直接按鼠标中键)。我们可以通过:reg命令

看寄存器中的内容。

补充:
  如果输入"1y 就是将选中的内容复制到1号寄存器,"2y就是将内容复制到2号寄存器,粘贴"寄存器号p,例如:"1p,"2p; 其中有两

个寄存器比较特殊,一个是*,另一个是+,*也就是我们上面说的寄存器,在选中文字的情况下,直接按y,默认复制到*寄存器。

  下面我们来说这个+寄存器,当我们需要将vim里面的内容复制到别的地方时,假如是word中,就不能通过"1p将寄存器复制到word下

面,因为word没有1号寄存器这种东西,它只是在vim下存在,这时我们就需要用到+寄存器了,因为+寄存器是和系统剪贴板相通的。因

此,我们可以通过"+yy(如果要复制多行--如从当前行开始的6行,就可以使用"+6yy)将内容复制到系统剪切板上,然后直接在word里面

ctrl+v就行了。

  说明:如果你按照上面的方法,尝试了很多遍都不能成功,那么你可以先到software-center(Ubuntu软件中心),安装一个叫做

vim-gui-common的软件。

@3:GVim快捷键:

  块选择:ctrl + q 而不是ctrl + v

@4:Vim代码折叠:

zc折叠选中的部分

zo打开折叠

Vim代码折叠简介:http://scmbob.org/vim_fdm.html

@5:Vim以指定的编码格式打开文件:vim filename -c "e ++enc=utf-8"

http://blog.sina.com.cn/s/blog_3ef80b950100xm75.html

vim用指定的编码保存文件: encoding & fileencodings

http://blog.sina.com.cn/s/blog_6927adc1010153gl.html

Reference:

VIM中鼠标右键无法复制的解决方法: http://blog.csdn.net/txg703003659/article/details/6622995

vim-可视化操作: http://www.cnblogs.com/eddy-he/archive/2012/03/08/vim_view_operation.html

Vim step by step的更多相关文章

  1. Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

    原创地址:http://www.cnblogs.com/jfzhu/p/4018153.html 转载请注明出处 (一)检查Customizations 从2011升级到2013有一些legacy f ...

  2. Step by Step 创建一个新的Dynamics CRM Organization

    原创地址:http://www.cnblogs.com/jfzhu/p/4012833.html 转载请注明出处 前面演示过如何安装Dynamics CRM 2013,参见<Step by st ...

  3. Step by step Install a Local Report Server and Remote Report Server Database

    原创地址:http://www.cnblogs.com/jfzhu/p/4012097.html 转载请注明出处 前面的文章<Step by step SQL Server 2012的安装 &g ...

  4. Step by step Dynamics CRM 2013安装

    原创地址:http://www.cnblogs.com/jfzhu/p/4008391.html 转载请注明出处   SQL Server可以与CRM装在同一台计算机上,也可安装在不同的计算机上.演示 ...

  5. Step by step 活动目录中添加一个子域

    原创地址:http://www.cnblogs.com/jfzhu/p/4006545.html 转载请注明出处 前面介绍过如何创建一个域,下面再介绍一下如何在该父域中添加一个子域. 活动目录中的森林 ...

  6. SQL Server 维护计划实现数据库备份(Step by Step)(转)

    SQL Server 维护计划实现数据库备份(Step by Step) 一.前言 SQL Server 备份和还原全攻略,里面包括了通过SSMS操作还原各种备份文件的图形指导,SQL Server  ...

  7. 转:eclipse以及step into step over step return的区别

    首先来讲一下step into step over step return的区别: step into就是单步执行,遇到子函数就进入并且继续单步执行:(F5) step over是在单步执行时,在函数 ...

  8. [转]Bootstrap 3.0.0 with ASP.NET Web Forms – Step by Step – Without NuGet Package

    本文转自:http://www.mytecbits.com/microsoft/dot-net/bootstrap-3-0-0-with-asp-net-web-forms In my earlier ...

  9. EF框架step by step(7)—Code First DataAnnotations(2)

    上一篇EF框架step by step(7)—Code First DataAnnotations(1)描述了实体内部的采用数据特性描述与表的关系.这一篇将用DataAnnotations描述一下实体 ...

  10. EF框架step by step(6)—处理实体complex属性

    上一篇的中介绍过了对于EF4.1框架中,实体的简单属性的处理 这一篇介绍一下Code First方法中,实体Complex属性的处理.Complex属性是将一个对象做为另一个对象的属性.映射到数据库中 ...

随机推荐

  1. (转)Direct3d 设备丢失 (device lost)

    1.什么时候设备丢失 一个Direct3D设备, 有两种状态: 操作状态或丢失状态. 操作状态: 是设备的正常状态, 设备按预期运行, 并且能present所有渲染效果 丢失状态: 所有渲染操作悄然失 ...

  2. JSON美化输出

    echo '{"a": 1, "b": 2}' | python -m json.tool 转自: http://blog.csdn.net/chosen0ne ...

  3. IPL和SPL的区别

    IPL是英文Initial Program Loader的简称,意为初始程序的装入程序,其主要功能为负责主板.电源.硬件初始化程序.并把SPL装入RAM空间中,当IPL损坏则只能更换字库解决否则只能换 ...

  4. PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享

    php屏蔽电话号码中间四位: Method 1: function hidtel($phone){ $IsWhat = preg_match('/(0[0-9]{2,3}[\-]?[2-9][0-9] ...

  5. H5学习之--前端和PHP后端的简单交互

    最近在学习前端的东西,H5+CSS3+JS,又分别学习了原生JS和jQuery库,还有Bootstrap框架,因为我是做ios开发的,所以先熟悉WebApp相关的开发知识,其他的学习资料,网上有很多的 ...

  6. laravel 配置修改及读取

    1)laravel 的所以配置文件都在根目录下的 config 目录里,直接看一个配置文件的名字就知道是做什么的了,这里不说了 2)读取配置的方法 $value = config('app.timez ...

  7. Qt Creator开发的程序提升到管理员权限运行

    一些功能需要管理员权限,例如启动一个服务,这就需要exe在管理员权限下运行,一个方法是在exe上右键,选择“以管理员身份运行”,或者右键-属性-兼容性-勾选“以管理员身份运行此程序” 另一个方法是在程 ...

  8. mysql5.5的安装配置

    1.wget http://120.52.72.23/cdn.mysql.com/c3pr90ntc0td//Downloads/MySQL-5.5/mysql-5.5.50-linux2.6-x86 ...

  9. MySQL安装时出现Apply Security Settings错误的解决办法

    windows版mysql安装执行程序下载地址: https://dev.mysql.com/downloads/file/?id=473605 点击下面的No thanks, just start ...

  10. 160510、jQuery给input绑定回车事件

    <script type="text/javascript" src="Scripts/jquery-1.6.2.js"></script&g ...