什么是Vim?

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

  Vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

安装Vim:

  sudo apt-get install vim

Vim键盘图:

Vim的使用:

  基本上Vim分为三种模式:分别是命令模式(Command mode),插入模式(Insert mode)和底线命令模式(Last line mode)。这三种模式的作用别分是:

  命令模式(Command mode):

    i,o,a 切换到插入模式(Insert mode),以输入字符。

    x 删除当前光标所在处的字符。

    : 切换到底线命令模式,以在最低一行输入命令。

  插入模式(Insert mode):

    字符按键以及Shift组合:输入字符。

    Enter:回车键,换行。

    Delete:删除键,删除光标后一个字符。

    方向键:在文本中移动光标。

    Home/End:移动光标到行首/行尾。

    PgUp/PgDn:上/下翻页。

    Insert:切换光标为输入/替换模式,光标将变成竖线/下划线。

    Esc:退出输入模式,切换到命令模式。

  底线命令模式(Last line mode):

    在命令模式下按下:(英文冒号)就进入了底线命令模式。

    底线命令模式中,基本的命令有:

    :q 退出程序。

    :w 保存文件。

    :wq 保存并离开。

    按Esc键可随时退出底线命令模式。

Vim创建:

  vim text.txt

Vim常用按键使用:

  一般模式可用的光标移动、复制粘贴、搜索替换等。

    移动光标的常用方法:   

      ←(h):光标向左移动一个字符。

      ↓(j):光标向下移动一个字符。

      ↑(k):光标向上移动一个字符。

      →(l):光标向右移动一个字符。

      Ctrl+f:屏幕向下移动一页。

      Ctrl+b:屏幕向上移动一页。

      G:移动到最后一行。

      gg:移动到第一行。

      n<Enter>:n为数字。光标向下移动n行。

    搜索替换的常用方法:

      /vim:向光标之下寻找一个名称为vim的字符串。

      n:/vim后,然后向下搜索名称为vim的字符串。

      N:/vim后,然后向上搜索名称为vim的字符串。

      :n1,n2s/vim1/vim2/g:n1与n2为数字。在第n1与n2行之间寻找vim1这个字符串,并将该字取代为vim2。

      :1,$s/vim1/vim2/g:从第一行到最后一行寻找 vim1 字符串,并将该字符串取代为 vim2 。

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

    删除、复制和粘贴:

      x,X:x为向后删除一个字符;X为想前删除一个字符。

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

      yy:复制游标所在的那一行。

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

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

      u:重复前一个动作。

      Ctrl+r:重做上一个动作。

      .:小数点,重复前一个动作的意思。

  

  

入门VMware Workstation下的Debian学习之Vim简单使用(三)的更多相关文章

  1. 入门VMware Workstation下的Debian学习之基本命令(二)

    本章记录如何在Linux终端进行命令操作命令下载路径,模拟终端.dkpg管理软件包.用户组和用户管理.文件属性.文件与目录管理.查看磁盘使用量. (1)命令下载路径: wegt 路径; (2)模拟终端 ...

  2. VMware Workstation下VMnet1等虚拟网卡与主机网卡之间的关系

    VMware Workstation下VMnet1等虚拟网卡与主机网卡之间的关系 本文出自 "王春海的博客" http://wangchunhai.blog.51cto.com/2 ...

  3. 转:WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法

    转自:http://www.cnblogs.com/shaddock2013/p/3155024.html 最近在试着在Windows 7上搭建Windows Phone 8的开发调试环境,使用的是V ...

  4. WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法

    最近在试着在Windows 7上搭建Windows Phone 8的开发调试环境,使用的是VMware Workstation + Win8 Pro的虚拟环境, 在漫长的WPexpress_full下 ...

  5. 基于VMware Workstation下Windows server的搭建

    网络安全学习内容 一.VMware安装Windows系统   1.1安装配置虚拟机 需要提前准备的东西: 配置网络实验室的IP: 为了满足实验中一些需要用到网络的需求,学校为我们提供了每个人学号密码的 ...

  6. 解决VMware Workstation下Win2012R2无法安装Hyper-v问题

    有时候我们需要测试Hyper-V但是发现VMware下不能够正常安装,提示:验证过程发现你要安装功能的服务器存在问题.所选功能与所选服务器的当前配置不兼容.无法安装Hyper-V:虚拟机监控程序已在运 ...

  7. vmware workstation下的虚拟Linux通过NAT模式共享上网

    在vmware workstation虚拟机下面,Linux虚机要上网,一般是桥接模式,但我自己的电脑上网的环境不同,也懒得去总是配置Linux的网卡信息,所以,设置为NAT模式来共享真机的上网网卡来 ...

  8. VMware Workstation下安装Linux

    下载VMware Workstation thunder://QUFodHRwczovL2Rvd25sb2FkMy52bXdhcmUuY29tL3NvZnR3YXJlL3drc3QvZmlsZS9WT ...

  9. VMware workstation 下Hadoop伪分布式模式安装

    详细过程: 1.VMware安装: 2.centos 6 安装 3.jdk下载安装配置 4.Hadoop 安装配置 1.VMware Workstation 安装: https://www.vmwar ...

随机推荐

  1. 错误:Warning: Attempt to present <UIAlertController: 0x7fd192806e20> on <ViewController: 0x7fd1928048d0> whose view is not in the window hierarchy!

    系统:mac OS  10.12 (16A323) Xcod:8.3.3 错误:Warning: Attempt to present <UIAlertController: 0x7fd1928 ...

  2. iOS 环信集成问题(连文档都不说明的坑。。)

    首先,关于环信SDK的下载和一些依赖库的添加,在此我就不做详细介绍,(http://www.easemob.com/download/im)附上环信官网文档,可以看一下,上面都可以下载,也有相关配置介 ...

  3. String类的重要方法与字段

    1.Length():获取当前字串长度 2.charAt(int index):获取当前字符串对象下标index处的字符 3.getChars():获取从指定位置起的子串复制到字符数组中 参数:int ...

  4. IntelliJ IDEA使用(一)基本设置与类、方法模板设置

    其实之前一直开发都是在使用的是Eclipse,但是最近在做Maven项目的时候要用IntelliJ IDEA,据说这个idea功能非常的强大,最近在使用的时候发现如果适应的真的是非常的强大.感觉是比E ...

  5. JPG、PNG和GIF图片的基本原理及优…

    JPG.PNG和GIF图片的基本原理及优化方法 一提到图片,我们就不得不从位图开始说起,位图图像(bitmap),也称为点阵图像或绘制图像,是由称作像素(图片元素)的单个点组成的.这些点可以进行不同的 ...

  6. 201521123088《JAVA程序设计》第8周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 2. 书面作业 本次作业题集集合 1.List中指定元素的删除(题目4 ...

  7. 201521123073 《Java程序设计》第11周学习总结

    1. 本周学习总结 2. 书面作业 本次PTA作业题集多线程 1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) 1.1 除了使用synchronized修饰方法实现互斥同步访问, ...

  8. 201521123109 《java程序设计》第11周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1. 互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) ...

  9. 语句的分号、逗号和函数中var的使用

    1语句 分号 语句的结尾的分号不是必须的,但建议不要省略它,避免错误. 2逗号 1同时定义多个变量用逗号分开 2数组的最后一位,建议不要加上逗号,在有的浏览器中会导致,在逗号后添加一个undefine ...

  10. 笔记3 linux 多线程 条件变量+互斥锁

    //cond lock #include<stdio.h> #include<unistd.h> #include<pthread.h> struct test { ...