美文网首页
vim编辑器基础使用教程

vim编辑器基础使用教程

作者: 饥人谷_sunny | 来源:发表于2016-11-24 22:10 被阅读0次

    vim定义

    vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方面编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为Unix系统用户最喜欢的编辑器。最初的简称是VI Imitation,随着功能的不断增加,正式名称改为了Vi Improved。现在是在开放源代码方式下发行的自由软件。

    为什么要学习使用vim编辑器?

    (1)所有的Unix like系统都会内置vi文本编辑器,其他的文本编辑器则一定不会存在。

    (2)很多软件的编辑接口都会主动调用vi。

    (3)vim具有程序编辑的能力,可以主动以字体颜色辨别语法的正确性,方便程序设计。

    (4)程序简单,编辑速度快。

    vim的三个模式:插入模式、命令模式、低行模式。

    插入模式(insert mode):在此模式下可以输入字符,按ESC将回到命令模式。

    命令模式(command mode):可以控制屏幕光标的移动、字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到last line mode 。

    低行模式(last line mode):可以保存文件、退出vim、设置编辑环境,如寻找字符串、列出行号等。

    vim的基本操作

    1. 进入vim

    打开终端,输入vim,按回车键,就进入了vim。

    此为默认的命令模式

    2. 切换至插入模式(insert mode),编辑文件

    在命令模式(command mode)下按一下字母[i]就可以进入插入模式(Insert mode),这时候就可以开始输入文字了。

    可以输入文字啦

    3. Insert的切换

    当处于插入模式(Insert mode),你就只能一直输入文字,如果你发现输入错了文字,想用光标键往回移动,将该字删除,就要先按一下ESC键转到命令模式(command mode)再删除文字。

    可以运用命令模式下功能键删除错误文字

    4. 切换至低行模式可以退出vim及保存文件

    在命令行模式(command mode)下,按一下[:]冒号键进入低行模式(Last line mode)

    :w filename(输入[w filename]将文章以指定的文件名filename保存)

    :wq(输入[wq], 表示保存并推出vim)

    :q!(输入[q!], 表示不保存强制退出vim)

    低行模式

    命令模式(command mode)常用功能键

    a)插入模式

    1. 按[i]切换进入插入模式(insert mode), 按“i”进入插入模式后是从光标当前位置开始输入文件;

    2. 按[a]进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;

    3. 按[o]进入插入模式后,是插入新的一行,从新的一行的行首开始输入文字。

    b)从插入模式切换为命令模式

    按【ESC】键。

    c)打开文件、保存、关闭文件(vim命令模式下使用)

    1. vim filename //打开filename文件

    2. :w //保存文件

    3. :w vpser.net //保存至vpser.net文件

    4. :q //退出编辑器,如果文件已修改请使用下面的命令

    5. :q! //退出且不保存文件

    6. :wq //退出编辑器且保存文件

    d) 插入文本或行(命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退出插入模式)

    a //在当前光标位置的右边添加文本

    i //在当前光标位置的左边添加文本

    A //在当前行的末为位置添加文本

    I //在当前行的开始处添加文本(非空字符的行首)

    O //在当前行的上面新建一行

    o //在当前行的下面新建一行

    R //替换(覆盖)当前光标位置及后面的若干文本

    J //合并光标所在行及下一行为一行(依然在命令模式)

    e) 移动光标(vim命令模式下使用)

    使用上下左右方向键:命令模式h(向左)、j(向下)、k(向上)、l(向右)。(空格键向右、Backspace向左、Enter移动到下一行首、-移动到上一行首)。

    0(数字0)是让光标移动到当前行的行头,$是让光标移动到当前行的行尾。

    f)删除、恢复字符或行(vim命令模式下使用)

    x //删除当前字符

    nx //删除从光标开始的n个字符

    dd //删除当前行

    ndd //向下删除当前行在内的n行

    u //撤销上一步操作

    U //撤销对当前行的所有操作

    g)搜索(vim命令模式下使用)

    /vpser //像光标下搜索vpser字符串

    ?vpser //像光标上搜索vpser字符串

    n //像下搜索前一个搜索动作

    N //像上搜索前一个搜索动作

    h)跳至指定行及上下翻页(vim命令模式下使用)

    n+ //像下跳n行

    n- //像上跳n行

    gg让光标移动到第一行行头

    nG //跳到行号为n的行

    G //跳至文件的底部(让光标移动到最后一行行头)

    {让光标移动到当前段落的kai开头, }让光标移动到当前段落的结尾

    i)设置行号(vim命令模式下使用)

    :set nu //显示行号

    :set nonu //取消显示行号

    j)复制、粘贴、删除(vim命令模式下使用)

    复制或删除一段内容,先按v键然后移动光标(用方向键向h左i右k上j下),可以看见被选中的字符,选中要复制或删除的内容,然后输出y(复制)、d(删除)、p(粘贴)。

    yy //将当前行复制到缓存区, 也可以用“ayy”复制, a 为缓存区,a也可以替换为a到z的任意字母,可以完成多个复制任务。

    nyy //将当前行向下n行复制到缓存区,也可以用“anyy”复制,a为缓存区,a也可以替换为a到z的任意字母,可以完成多个复制任务。

    y^ //复制从光标到行首的内容

    y$ // 复制从光标到行尾的内容

    p //粘贴剪切板里的内容在光标后,如果使用了前面的自定义缓冲区,建议使用“ap”进行粘贴

    P //粘贴剪切板里的内容在光标前,如果使用了前面的自定义缓冲区,建议使用“aP”进行粘贴

    k)替换(vim命令模式下使用)

    :s/old/new //用new替换行中首次出现的old

    :s/old/new/g //用new替换行中所有的old

    :n,m s/old/new/g //用new替换从n到m行里所有的old

    :%s/old/new/g //用new替换当前文件里所有的old

    o)编辑其他文件

    :e otherfilename //编辑文件名为otherfilename的文件。

    p)修改文件格式

    :set fileformat=unix //将文件修改为unix格式,如win下面的文本文件在linux下会出现^M。

    文章著作权归饥人谷_sunny和饥人谷所有,转载须说明来源

    相关文章

      网友评论

          本文标题:vim编辑器基础使用教程

          本文链接:https://www.haomeiwen.com/subject/dddepttx.html