跟着vimtutor走来认识vim

    一、前言  

     VIM是一款在vi上进行改进的功能性强大的,开源的文本编辑器。


    二、vim的设计理念

    vim的设计理念是组合;

      命令组合:类似于linux的由一个个单一功能的程序,完成复杂任务

      Vim强大的编辑能力中很大部分是来自于其普通模式命令。

      vim的设计理念是命令的组合。例如普通模式命令"dd"删除当前行,"dj"代表删除到下一行,原理是第一个"d"含义是删除,"j"键代表移动到下一行,组合后"dj"删除当前行和下一行。另外还可以指定命令重复次数,"2dd"(重复"dd"两次),和"dj"的效果是一样的。"d^","^"代表行首,故组合后含义是删除到光标开始到行首间的内容(不包含光标);"d$" $"代表行尾,删除到行尾的内容(包含光标);用户学习了各种各样的文本间移动/跳转的命令和其他的普通模式的编辑命令,并且能够灵活组合使用的话,能够比那些没有模式的编辑器更加高效的进行文本编辑。

        模式间的组合:

        在普通模式中,有很多方法可以进入插入模式。比较普通的方式是按"a"(append/追加)键或者"i"(insert/插入)键

    三、跟着vimtotur来认识一下vim这款编程神器吧

1.让我们先看一看由vimtotur对vim的介绍吧

 捕获.PNG

 2.从简单的光标开始吧

捕获1.PNG

3.vim的进入和退出

1463035840643212.jpg     

4.文本的编辑删除  x键删除光标所在处的的字符  

1463035941798396.jpg

5.文本编辑之插入  使用i 键

1463036041512905.jpg

6.文本编辑之添加 使用 A键

1463036169522702.jpg

7.保存已修改的文件

1463036258849277.jpg

8.对之前的操作做个总结 h是左移 j是下移 k是上移 l是右移 

 要进入vim编辑器在command line输入:vim filename  <enter>

 对出vim编辑器:在末行编辑命令接口输入:

 :q!(放弃所有改动) :wq(保存改动)

 在正常模式下删除单个字符请按 x

 插入或添加文本,输入; i A

    i   在光标前插入文本

    A   在一行后添加文本

9.删除命令  d  

1463036968163217.jpg

10.更多的删除方法

1463037049115767.jpg

11.操作符和对象

1463037143841564.jpg

12.数字加动作  w   e   $ 0

1463037224130551.jpg

13.命令+数字+动作

1463037367703683.jpg

14.对整行进行操作

1463037453451981.jpg

15.撤销操作符 u 类似于word的Ctel+z   U 撤销对整行的修改

 1463037745559784.jpg

16.进行总结

从当前光标删除至下一个单词  dw

从当前光标删除至当前末尾    d$

删除整行                    dd

删除一行或多行              nd  n(number 数字)

在正常模式修改命令的格式是:  operator [number] motion

   operator  操作符,代表要做的事情,比如d 代表删除

   [number]  可以附加的数字 代表动作重复的次数

    motion   动作,代表在所操作的文本上的移动

光标移到到行首按数字0

撤销之前的操作按u

撤销整行的操作按U

撤销之前一切的撤销命令 ,按Ctrl+R

17 置入类命令  p 类似于粘贴

1463038885200164.jpg

18.替换类命令    r

1463038975901517.jpg

19.更改类命令  c删减并进入插入模式

1463039156962561.jpg

1463039200294487.jpg

21.小结

1463039372360439.jpg

22.定位及文件状态

1463039483477530.jpg

23 搜索类命令   / ?

1463039633497821.jpg

24.配对括号的查找  %查找配对括号

1463039747716254.jpg

25.替换命令  s/old/new/g

1463039900377704.jpg

26.小结

1463040354255279.jpg

27.在vim执行外部命令的方法

1463040426820309.jpg

28.关于更多保存文件的更多信息

1463040633222506.jpg

29.一个具有选择保存的命令

1463040748276605.jpg

30  提取和合并文件

1463040831214417.jpg

31.小结

1463040870709704.jpg

32.打开类命令 O o

1463040914209136.jpg

33.附加命令  a

1463041091786559.jpg

34.另外的置换类命令的版本 R连续替换多个

1463041267793715.jpg

35.复制粘贴文本  y 复制 p粘贴

1463041311318918.jpg

36.设置类命令的选项

1463041466378072.jpg

37.小结

1463041576191628.jpg

38.获取帮助

1463041623849549.jpg

39.创建启动脚本

1463041729388204.jpg

40,补全功能

1463041766386242.jpg

41.小结

1463041795936622.jpg

    四、vim的总结

      vim从vimtotur中的练习中就有很多的知识点,就单单进入插入模式就有  i a o I A c c ….只不过用处各不一样吧  。想要快速写一个脚本,一个强大的编译器是必不可少的,

所以还是多练吧,vimtotur可以多练一练

原创文章,作者:N19_king,如若转载,请注明出处:http://www.178linux.com/16225

(1)
N19_kingN19_king
上一篇 2016-05-10
下一篇 2016-05-13

相关推荐

  • 网卡别名与bonding

    网络接口配置-bonding Bonding简介 Bonding 就是将多块网卡绑定同一IP地址对外提供服务,可以实现高 可用或者负载均衡。然,直接给两块网卡设置同一IP地址 是不可能的。通过bonding,虚拟一块网卡对外提供连接, 物理网卡的被修改为相同的MAC地址。 Bonding模式 Mode 0 (balance-rr) 轮转(Round-robi…

    Linux干货 2016-09-05
  • mysql并发控制

    并发控制: 锁:Lock 1、锁类型 : 读锁:共享锁,可被多个读操作共享; 写锁:排它锁,独占锁; 2、锁粒度: 表锁:在表级别施加锁,并发性较低; 行锁:在行级另施加锁,并发性较高; 3、锁策略:在锁粒度及数据安全性之间寻求一种平衡机制; 存储引擎:级别以及何时施加或释放锁由存储引擎自行决定; MySQL Server:表级别,可自行决定,也允许显式请求…

    2016-11-18
  • Redis集群明细文档

    Redis目前版本是没有提供集群功能的,如果要实现多台Redis同时提供服务只能通过客户端自身去实现(Memchached也是客户端实现分布式)。目前根据文档已经看到Redis正在开发集群功能,其中一部分已经开发完成,但是具体什么时候可以用上,还不得而知。文档来源:http://redis.io/topics/cluster-spec 一、介绍   该文档是…

    Linux干货 2015-04-04
  • 文件权限解析

    文件权限其实就是用户和用户组对文件或目录进行操作的权力。 文件的属性           上图中显示详细信息文件的详细属性,以最后一行为例从左向右依次说明:     1、drwxr-xr-x.    …

    2015-03-23
  • 磁盘、文件系统管理

    linux磁盘、文件系统管理 硬盘:机械硬盘、固态硬盘     计算硬盘速度:IoPs:(Io  per  second ) 每秒20次 机械硬盘:     track:磁道     平均寻道时间  &nbsp…

    Linux干货 2016-08-25

评论列表(2条)

  • stanley
    stanley 2016-05-13 11:19

    内容应该是由word复制过来的吧,word本地编辑功能确实非常强大,web化编辑器可以尝试下MARKDOWN,同时恭喜拥有自主发布文章权限

    • N19_king
      N19_king 2016-05-15 20:36

      @stanley好的