• 第十章 Vim程序编辑器学习


      1.Vim是进阶版的vi,vim不但可以用不同颜色显示文字内容,还能进行诸如shell script,C program等程序编辑功能。

      区别:vi是老师的字处理器,不过功能已经很齐全,但还是有可以进步的地方。

         vim则是一个“程序开发工具”而不是文字处理软件。在vi 的基础上加入了支持正则表达法的搜寻架构,多档案编辑、区块复制等等。

    2、vi有一般模式,编辑模式、与指令列命令模式。

    一般模式:可以用上下左右来移动光标,也可以使用“删除字符和删除整行”“复制和粘贴”来处理你的文件,但无法编辑文件。

    编辑模式:在一般模式下,按下“i,I,o,O,a,A,r,R(取代)”等任何一个字母之后才会进入编辑模式。如果要回到一般模式,则按下“ESC”按键即可退出编辑模式。

    指令列命令模式:在一般模式当中,键入“:/ ?”三个中任何一个按钮,就可将光标移动到最底下那一行。在这个模式当中,可以提供“搜寻资料、读取、存盘、大量取代字符、离开vi、显示行号”等动作

    vi后面一定要加档名:vi test.txt.进入文档编辑模式

    离开字符命令“:wq”

     ls -l:查看文件属性

    一般模式下:h(向左)j(下)k(上)l(右)移动光标,如果想要进行多次移动的话,向下移动30行可使用“30j”或者"”

    "ctrl+f"="page down"

    "ctrl+b"="page up"

    "ctrl+d":向下移动半页

    “ctrl+u”:向上移动半页

    "+":光标移动到非空格符的下一列

    “-”:光标移动到非空格符的上一列

    “20<space>”:光标会向后面移动20个字符距离

    “0或者Home”:移动到这一行的最前面字符处

    “$或者End”:移动到这一行的最后面字符处

    “H”:光标移到这个屏幕的最上方那一行的第一个字符

    “M”:光标移动到这个屏幕的中央那一行的第一个字符

    “L”:光标移动到这个屏幕的最下方那一行的第一个字符

    “G”:移动到这个歌档案的最后一行

    “nG”:n为数字,移动到这个档案的第n行。

    “gg”:移动到这个档案的第一行,相当于1G

    “n<Enter>”:n为数字,光标向下移动n行

    “/word”:向光标之下寻找一个名称为word的字符串,如在档案内寻找vbird这个字符串,输入/vbird即可

    “?word”:向光标之上寻找一个名称为word的字符串,如在档案内寻找vbird这个字符串,输入/vbird即可

    “n”:代表重复前一搜寻的动作。

    “N”:刚好与n相反,为反向进行前一个搜寻动作。

    注:使用/word,配合n及N是非常有帮助的,让你快速寻找关键词

    “:n1,n2s/word1/word2/g” :n1 与 n2 为数字。在第 n1与 n2 行间寻找 word1 这个字符串,并将该字符串取代为 word2 !举例来说,在 100 到 200 行间搜寻 vbird 并取代为 VBIRD 则: 『:100,200s/vbird/VBIRD/g』。(常用)

    “:1,$s/word1/word2/g ”:从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用)

    “:1,$s/word1/word2/gc” :从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代!(常用)

     “x,X”:在一行字当中,x为向后删除一个字符,X为向前删除一个字符

    “nx”:n为数字,连续向后删除n个字符。

    “dd”:删除光标所在的那一行

    “ndd”:n为数字,删除光标所在的向下n行

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

    “dG”:删除光标所在到最后一行的所有数据

    “d$”:删除光标所在处到该行的最后一个字符

    “d0”:数字为0,删除光标所在处,到该行的最前面一个字符

    “yy”:复制光标所在的那一行

    “nyy”:n为数字,复制光标所在的向下n行

    “y1G”:复制光标所在行到第一行之间的所有数据

    “yG”:复制光标所在行到最后一行的所有数据

    “y0”:复制光标所在的那个字符到该行行首的所有数据

    “y$”:复制光标所在的那个字符到该行行尾的所有数据

     “p,P”:p为将已复制的数据在光标下一行贴上,P则为贴在光标的上一行。

    “j”:将光标所在列与下一列的数据结合成同一列

    “c”:重复删除多少个数据。向下删除10行,10cj

    “u”:复原前一个动作。

    “CTRL+r”:重做上一个动作

    “.”:重复前一个动作的意思

    编辑模式:

    “i,I”:i为从目前光标所在处插入,I为目前所在行的第一个非空格符处开始插入

    “a,A”:a为从目前光标所在的下一个字符处开始插入,A为光标所在行的最后一个字符处开始插入

    “o,O”:o为在目前光标所在的下一行处插入新一行,O为目前光标所在处的上一行插入新的一行

    “r,R”:r只会取代光标所在的那一个字符一次,R会一直取代光标所在的文字,直到按下ESC为止

    “ESC”:退出编辑模式,回到一般模式

    指令列模式:

    !:在vi中,常常具有强制的意思

    ZZ:大写的Z,若档案没有更改,则不存储离开,若档案已经更改过,则存储后离开。

    :w[filename]  :将编辑的数据存储成另一个档案

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

    :n1,n2 w[filename] :将n1到n2的内容存储成filename这个档案

    :set nu  :显示行号

    :set nonu :取消行号

    在vi底下作了很多的编辑动作后,想还原成原来的档案内容:按下“:e!”即可恢复成档案的原始状态

    “:! command”:暂时离开vi到指令列模式下执行command的显示结果

    例如:“:! ls/home”:即可在vi当中观察看/home底下以ls输出的档案信息

  • 相关阅读:
    文本框小写变大写控制
    SQL2005 递归查询示例,非常方便
    GridView分页后进行添加,删除操作后,仍返回到当前页码
    从ASP.NET 1.1升级到ASP.NET 2.0要考虑的Cookie问题
    英语常用口语
    ASP.NET会话(Session)保存模式
    .NET2005文档自动生成
    JavaScript 弹出窗口总结
    SQL SERVER和SYBASE的渊源
    A versatile HDR Video Production System笔记
  • 原文地址:https://www.cnblogs.com/Caden-liu8888/p/5565112.html
Copyright © 2020-2023  润新知