入门VMware Workstation下的Debian学习之Vim简单使用(三)
什么是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简单使用(三)的更多相关文章
- 入门VMware Workstation下的Debian学习之基本命令(二)
本章记录如何在Linux终端进行命令操作命令下载路径,模拟终端.dkpg管理软件包.用户组和用户管理.文件属性.文件与目录管理.查看磁盘使用量. (1)命令下载路径: wegt 路径; (2)模拟终端 ...
- VMware Workstation下VMnet1等虚拟网卡与主机网卡之间的关系
VMware Workstation下VMnet1等虚拟网卡与主机网卡之间的关系 本文出自 "王春海的博客" http://wangchunhai.blog.51cto.com/2 ...
- 转:WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法
转自:http://www.cnblogs.com/shaddock2013/p/3155024.html 最近在试着在Windows 7上搭建Windows Phone 8的开发调试环境,使用的是V ...
- WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法
最近在试着在Windows 7上搭建Windows Phone 8的开发调试环境,使用的是VMware Workstation + Win8 Pro的虚拟环境, 在漫长的WPexpress_full下 ...
- 基于VMware Workstation下Windows server的搭建
网络安全学习内容 一.VMware安装Windows系统 1.1安装配置虚拟机 需要提前准备的东西: 配置网络实验室的IP: 为了满足实验中一些需要用到网络的需求,学校为我们提供了每个人学号密码的 ...
- 解决VMware Workstation下Win2012R2无法安装Hyper-v问题
有时候我们需要测试Hyper-V但是发现VMware下不能够正常安装,提示:验证过程发现你要安装功能的服务器存在问题.所选功能与所选服务器的当前配置不兼容.无法安装Hyper-V:虚拟机监控程序已在运 ...
- vmware workstation下的虚拟Linux通过NAT模式共享上网
在vmware workstation虚拟机下面,Linux虚机要上网,一般是桥接模式,但我自己的电脑上网的环境不同,也懒得去总是配置Linux的网卡信息,所以,设置为NAT模式来共享真机的上网网卡来 ...
- VMware Workstation下安装Linux
下载VMware Workstation thunder://QUFodHRwczovL2Rvd25sb2FkMy52bXdhcmUuY29tL3NvZnR3YXJlL3drc3QvZmlsZS9WT ...
- VMware workstation 下Hadoop伪分布式模式安装
详细过程: 1.VMware安装: 2.centos 6 安装 3.jdk下载安装配置 4.Hadoop 安装配置 1.VMware Workstation 安装: https://www.vmwar ...
随机推荐
- Centos 7服务启动文件
在Centos 7中,如果要编辑一个脚本服务文件,并使用systemd进行管理,则必须将服务文件命名为/etc/systemd/system/*.service. service unit文件中的选项 ...
- 深入理解计算机系统(1.1)------Hello World 是如何运行的
上一篇序章我谈了谈 程序员为啥要懂底层计算机结构 ,有人赞同也有人反对,但是这并不影响 LZ 对深入理解计算机系统研究的热情.这篇博客以案例驱动的模式,通过跟踪一个简单 Hello World 程序的 ...
- C# 导出Excel的示例(转)
using System; using System.Collections.Generic; using System.Text; using System.Data; using System.W ...
- PowerShell: 问题,此系统上禁止运行脚本解决方法
刚学Django,在PowerShell上建立一个虚拟环境,准备激活,问题来了: 激活的时候报错了,有点儿懵,之前在命令行没问题啊,我又去命令行试了下,果然可以: 感受到了暴击,赶紧上网求助大神 ...
- 1st 四则运算题目生成程序
程序代码见此 程序展示 需求分析 需要程序能根据用户指定生成四则运算的题目,并且能让用户做题,并且最后打分统计正确率 功能设计 主要实现的功能就是: 接受用户输入以便知道要出多少道题目(-n x) 能 ...
- 自定义win8资源管理器左侧导航窗格的方法
Win8自定义资源管理器左侧导航窗格: 快捷键Win+R – 输入regedit: 删除“网络”项目 HKEY_CLASSES_ROOTCLSID{F02C1A0D-BE21-4350-88B0-73 ...
- 201521123006 《java程序设计》 第10周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 本次PTA作业题集异常.多线程 1.finally 题目4-2 1.1 截图你的提交结果(出 ...
- 201521123067 《Java程序设计》第9周学习总结
201521123067 <Java程序设计>第9周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 Q1.常用异常(题目5-1 ...
- JAVA课程设计-学生信息管理系统(个人博客)
1. 团队课程设计博客链接 http://www.cnblogs.com/Min21/p/7064093.html 2.个人负责模块或任务说明 负责person类的编写,建立person对象, 完成M ...
- 一、React Native 搭建开发环境(1)(Mac OS - IOS项目)
React Native是Facebook推出的一个开发IOS和安卓APP的技术.至于更多的详情,这里不再描述,大家可以自行百度它的定义. 目的: 由于我想在一台电脑上同时开发IOS和Android两 ...