从实际操作中学习vim编辑器(集模式关系+常用指令图+指令示意图为一体)

工作中接触最多的编辑器当属vim,然而也因为vim的功能太过强大导致其指令多且杂,很难完全掌握,本文是基于本人的实际情况并通过浏览一系列介绍vim的文章进行的归纳总结,且长传前均经过一一实验,适合于菜鸟,为了简略,文中诸多用语可能很不准确,且部分描述不够明了,如有疑问请点击本文文末的参考原文(无链接请直接复制搜索),此仅是本人阅读笔记初稿,见笑!

内容概要

第一章节               常用编辑方法总结

1正常模式下

2命令模式下

      3可视模式下(正常模式下按v

         4 中文乱码问题

      5两种实用功能推荐(高级):

==>1多档案编辑

==>2打开多窗口模式

第二章节              vim三种模式相互关系

第三章节                     vim常用功能示意图

第四章节                                     vim指令图

第一章节 常用编辑方法总结

1正常模式下

(==》记住几个大写字母意义X(往前删),P(往上粘),O(往下插新行),G(到最后一行),U(撤销当前行的操作),N(反向搜索),A(行末插)0(数字,到行首,不是到行首的插入模式)

x :向后删除一个字符

X:向前删除一个字符(这个我最喜欢用了,但是原来公司的那个不知道这样搞---惊喜!)

nx:连续向后删除n个字符(大写也一样)

dw ;删除一个单词,从光标位置起的单词(包括空格)

J:将光标所在数据与下一行合成一列(常用)

/****************删除+复制begin*****************************/

de 删除一个单词,从光标位置起的单词(不包括空格)

d$(=D);删除从光标位置起至行尾

d0:删除从光标位置至行首

d1G :删除光标所在到第一行的所有数据

dG :删除光标所在到最后一行的所有数据(注意yd的使用方法一致,实现复制功能)

/****************删除+复制end*****************************/

/****************定位插入取代begin*****************************/

或功能键[Home]:到行首(阿拉伯数字0,只是定位)

或功能键[End]:到行末----公司的那个超烂(只是定位)

为『从目前光标所在处插入』,

I 为『在目前所在行的第一个非空格符处开始插入』。 (常用

为『从目前光标所在的下一个字符处开始插入』,

A为『从光标所在行的最后一个字符处开始插入』。(常用

为『在目前光标所在的下一行处插入新的一行』;(字母o)

O为在目前光标所在处的上一行插入新的一行!(常用

只会取代光标所在的那一个字符一次;

R会一直取代光标所在的文字,直到按下 ESC 为止;(常用

/****************定位插入取代end*****************************/

ctrl + R :撤销掉撤销命令(先按ctrl键)

U 撤销在一行中所做的改动

r+字母:输入 和一个字符替换光标所在位置的字符。 r **

cw+字符串:要改变一个单字/单词的部分或者全部,请输入 cw **

c$ : 可以替换当前光标到行末的内容。请输入 c$ **

/字符串 :正向搜索,如果你突然想反向,请按Shift-N组合键

?字符串 :逆向搜索

%(先让光标停在某个括号前再按):按 可以查找配对的括号 )]}-----------调试很有用(测试不起作用,起作用了,要按住Shift)

Ctrl-g :用于显示当前光标所在位置和文件状态信息(如我想知道我当前打开的文件的名称和总行数,)

Shift-G :用于将光标跳转至文件最后一行。

n<Enter> :为数字。光标向下移动 (常用),当然很多时候我们用:n来到指定的行

2命令模式下

:#,#s/old/new/g:在两行之间替换所有的字符串 old 为新的字符串 new#代表行号---定位修改很有用 

:s/old/new/g :替换当前行中所有

:s/old/new :替换当前行中第一个匹配的

:%s/old/new/g :替换所有文本(在以上的替换命令后面加一个字符c可以在替换之前提醒确认)

:!命令名:输入 :! 然后紧随著输入一个外部命令可以执行该外部命令,再按回车(如:!ls或者!dir,也可用:!rm 文件名删除一个文件)----这个实在太炫了

/**************文件之间内容的复制begin*******************************/

:w filename:编辑的数据储存成另一个档案(类似另存新档) 

:#,# w FILENAME:要保存文件的部分内容到FILENAME--------这个很炫,不过还没实际操作过! 

:r filename :编辑的数据中,读入另一个档案的数据。亦即将 『filename』 这个档案内容加到游标所在行后面 

:#,# r FILENAME:FILENAME文件里的指定行内容插入到当前文件中----------------一定要学会important----

/**************文件之间内容的复制end*******************************/

:set ic :忽略大小写(一般在查找前根据需要你可以先用这个命令设置ignore Case

:set all :查看当前环境参数设置值

/*************/*************//*************//*************//*************//*************//

:set backspace=2:使backspace键能够在INSERT模式下删除任意字符(:set backspace= ~(~代表空格),只能让backspace键在INSERT模式下删除刚刚增加的字符,公司原来就做了这个限制超不爽)

/*************/*************//*************//*************//*************//*************//

3可视模式下(正常模式下按v

移动键盘(就是hjkl或者四个箭头)选择目标,接着按y :复制  再在正常模式下按p :粘贴,完全不用鼠标实现vim的粘贴复制(找了好长时间的功能,以前没怎么关注vim的使用

中文乱码问题

(图一:中文编码原因分析)


(图二:中文编码问题)


(图三:语系编码转换vi.big5-->vi.utf8


(图四:语系编码转换vi.big5-->utf8

5两种实用功能推荐(高级):

==>1多档案编辑

shell终端输入命令==>vim file1 file2 file3 (打开多档案编辑)

正常模式下==:files(列出目前这个vim开启的所有档案)

正常模式下==>:n(编辑下一个文档)

正常模式下==>:N(编辑上一个文档)

优点:这样之后就可以在这些档案之间进行上面提到的复制粘贴了

==>2打开多窗口模式

在正常模式下,譬如我们已经打开了某个文本a.txt==>:sp filename (则a.txt将和filename共同显示在屏幕上,一人一半,即分割,默认打开的文件从首行开始显示)

====>小提醒:最初打开的文件光标在哪行,重新分割窗口后依旧在该行,只是宽度被压缩了

优点:实现多文档对照管理

第二章节 vim三种模式相互关系

第三章节 vim常用功能示意图

第四章节 vim指令图


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

参考:1.鸟哥的私房菜http://cache.baidu.com/c?m=9f65cb4a8c8507ed4fece7631052873d590297634b818b4468d4e411d2234c413031b5fc3022674296d8223c5de8034bed846621765871aa99c98b4899e0852858ca7d766459db0144dc5df4945124b137e059fed81bf0ca8125e0d8c5d2af4323c144767c9780fc4d7660&p=86759a46d6c333b70be2977e4852a538&user=baidu&fm=sc&query=vim%B1%E0%BC%AD%B9%A4%BE%DF&qid=cca57ab1465ba9fb&p1=10

            2.vim实用教程初级http://wenku.baidu.com/view/550376375a8102d276a22f6c.html

            3.vim指令图解http://image.baidu.com/i?tn=baiduimage&ct=201326592&lm=-1&cl=2&nc=1&word=vim%E6%8C%87%E4%BB%A4%E5%9B%BE%E8%A7%A3&ie=utf-8

   4.vim中文手册http://wenku.baidu.com/view/a3df014633687e21af45a997.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值