vim使用学习
1.1在正常模式下,使用h,j,k,l实现左,下,上,右移动。
(如果不再正常模式下,使用Esc键进入正常模式)
1.2退出vim,先进入到正常模式,输入:q!退出,但不保存任何修改。
1.3在正常模式下,使用x键删除光标所在的字符。
1.4在正常模式下,按i键进入插入文本状态(到当前光标所在字符的前一位置插入文本),并使用Esc回到正常模式下。
1.5在正常模式下,按A在该行尾进行插入文本。
1.6如果要保存修改,则在正常模式下,输入:wq。

2.1在正常模式下,删除一个单词,先将光标移到单词的首字母处,输入dw。(d:delete w:word)
2.2在正常模式下,删除当前行光标后的所有字符(包括光标所处字符),输入d$。($:end of line)
2.3 (d motion)d表示要进行删除操作,后可接w,e,$,e表示删除当前光标之后的一个单词(包括光标所处字符)。与dw的不同的是,dw删除一个单词之后,光标会移至新单词的首字母处,de则不然,仅将光标移至删除单词之后。
2.4不使用d,在motion前加上数字,表示重复这个操作的次数,2w表示将当前光标移至到当前光标起后两个单词的首字母处,2e将表示移至两个单词的末尾处。0表示移至到当前行开始处。
2.5在motion前可以使用数字并配合d使用,表示重复这个操作的次数,例如,在正常模式下,输入d2w表示删除两个单词。d0表示删除当前行光标前的所有字符,不包括光标所处字符。d3e表示将光标移至从当前光标起三个单词的末尾处,并删除这3个单词。
2.6在正常模式下,删除正行使用dd,在dd前加数字表示删除多少行,2dd表示删除两行。
2.7在正常模式下,使用u进行上一步撤销,U表示对整行的操作进行撤销,恢复到最初状态。

3.1在输入模式下,输入p表示将之前删除的文本放到光标后面处。
3.2 rx表示对当前光标所处字符进行替换用x这个字符。(r:replace)
3.3 ce表示删除光标所处单词从光标所处字符开始删除,并进入insert模式。
3.4 (c [number] motion)用法与(d [number] motion)类似,c$表示清除光标所处字符的所有字符,只限当前行,并进入到insert模式。

4.1 正常模式下,Ctrl+G查看文件所在位置以及状态,。G跳到文件尾,gg跳到文件开头。行数+G表示跳到所在行处。
4.2正常模式下,输入/键进行查找,/键后接要查找的字符,n表示往下继续查找,N表示相反方向查找,如果按?键查找表示和/相反。
4.3输入%对(,[,{进行匹配),],},匹配之前先将光标移至要匹配的字符处。
4.4单词替换s/old/new/g(s:substitute,g:globally),s/old/new只将光标所在行第一个匹配的进行替换,s/old/new/g表示将光标所在行匹配的全部替换。:#,#s/old/new/g,#表示从哪行到哪行进行替换。:%s/old/new/g整个文件匹配的全部替换。:%s/old/new/gc,将匹配的一个一个进行询问选择是否替换。

5.1在正常模式下,输入:!后接shell命令,表示执行这条命令。
5.2对当前修改进行备份,输入:w filename,:w后接要保存到的文件的名字,如果要删除文件的话输入:!del filename或者:!rm filename
5.3保存部分文本,在正常模式下,输入v,则可对要保存的文本进行选择,再输入:,就可见:'<,'>在屏幕底端,在输入w filename即可。也可对选择的文本进行删除,按d键。
5.4将某个文件的内容插入到当前文本中,输入:r filename(r:read),同样也可以将外部命令的结果读进来,例如,输入:r !ls。

6.1正常模式下,按o表示在光标下方新增一行,按O表示在光标上方新增一行,并都进入insert模式。
6.2输入a表示在光标之后追加文字。(按e表示跳到单词尾)
6.3输入R,在输入字符,表示对当前光标的字符一一进行替换。例如,有xxx文本,光标至于第一个x处,输入R,再输入aaa,表示对xxx进行替换。
6.4在visual mode下(输入v进入),选择文本,再键入y(y: yank表示复制),y后面也可接参数,如yw表示粘贴一个字符。
6.5搜索时忽略大小写,比如搜索/ignore,设置时输入:set ic(ic:Ignore case)。
将搜索的全部高亮显示,输入:set hls is (hls:hlsearch ,hl:hinglighting, is:incsearch),区分大小写则输入,
:set noic。

7.1输入:help查看帮助,后可接参数。
Ctrl + w Ctrl + w 切换窗口,:q退出帮助窗口。
vim使用学习的更多相关文章
- [20150513]Linux远程登陆管理以及Vim的学习
Linux远程登陆管理以及Vim的学习 实现Linux远程管理 所需工具Xshell,Xshell是一个用于MS Windows平台的强大的SSH,TELNET,和RLOGIN终端仿真软件.它使得用户 ...
- 20155208徐子涵Vim编辑器学习经验
20155208徐子涵 2016-2017-2 Vim编辑器学习经验 当我们运用虚拟机进行书写代码时,我们就会用到Vim编辑器,用Vim编辑器进行编辑特别方便,而Vim编辑器中也有一些操作需要去学习. ...
- 开发者和系统管理者最喜爱的开源工具Vim 起步学习的五个技巧
多年来,我一直想学 Vim.如今 Vim 是我最喜欢的 Linux 文本编辑器,也是开发者和系统管理者最喜爱的开源工具.我说的学习,指的是真正意义上的学习.想要精通确实很难,所以我只想要达到熟练的水平 ...
- linux vi/vim 编辑器学习总结
linux vi/vim 编辑器学习总结 很多时候我们开发人员不可避免的会涉及到项目部署,这个时候使用的就不是我们所熟知的 Windows 和 Mac OS 操作系统了,而是类 Unix 系统.项目部 ...
- Vim入门学习之Vim解析
Vim解析... ----------------------- 首先你要会从官网上下载你想要的Vim版本: 官网: http://www.vim.org/==================== ...
- 系统自带vim命令学习教程
[环境] [干货分享] vim或者vi命令在很多linux环境中自带一款学习教程,其教程说明语言还是随系统变化. 输入vimtutor这个命令会打开一款学习神器. 打开之后显示如下,vimtutor一 ...
- vim编辑器学习记录
i:在光标所在字符前开始插入 a:在光标所在字符后开始插入 o:在光标所在行的下面另起一新行插入 s:删除光标所在的字符并开始插入 I:在光标所在行的行首开始插入 如果行首有空格则在空格之后插入 A: ...
- vim 命令学习(基础篇)
[1]三种模式 vi的三种模式:命令模式.末行模式.编辑模式. 三种模式相互切换逻辑与命令图: 1.命令模式是vi的默认模式(即每打开一个文件时的初始模式). 2.命令模式切换至末行模式,末行模式切换 ...
- 第三周vim入门学习2
一.vim重复命令 1.重复执行上次命令 在普通模式下.(小数点)表示重复上一次的命令操作 拷贝测试文件到本地目录 $ cp /etc/protocols . 打开文件进行编辑 $ vim proto ...
- 第三周vim入门学习1
一.vim模式介绍 1.概念:以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数的编辑器使 ...
随机推荐
- 超级实用的VSCode插件,帮你大幅提高工作效率
Visual Studio Code是一个轻量级但功能强大的源代码编辑器,可在桌面上运行,适用于Windows,macOS和Linux. 它内置了对JavaScript,TypeScript和Node ...
- python爬虫爬取腾讯招聘信息 (静态爬虫)
环境: windows7,python3.4 代码:(亲测可正常执行) import requests from bs4 import BeautifulSoup from math import c ...
- 环境变量解释以及在Linux下的环境变量设置
一.环境变量解释 环境变量是什么? 引用百度百科里面的解释:环境变量是操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息.例如Windows系统中的path环境变量,当要求 ...
- 题解报告:hdu 2709 Sumsets
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2709 Problem Description Farmer John commanded his co ...
- 导出数据库报错 EXP-00002: 写入导出文件时出错 EXP-00000: 导出终止失败
解决方法: 1.检查磁盘所在空间是否够用. 2.磁盘修复下 排除故障考虑的地方要全面啊.
- React.js 简介
React.js 是一个帮助你构建页面 UI 的库.如果你熟悉 MVC 概念的话,那么 React 的组件就相当于 MVC 里面的 View.如果你不熟悉也没关系,你可以简单地理解为,React.js ...
- Laravel环境搭建
在有了初步认知后,当然就要开始在自己的电脑上搭建Laravel的开发环境了. 系统环境需求 PHP 5.3.7或者更高版本,如果没有系统没有安装PHP环境的,请到下面地址下载:http://cn2.p ...
- AJPFX关于多态中的动态绑定和静态绑定的总结
在多态中:成员变量和静态方法编译和运行都看左边:成员方法编译看左边,运行看右边,这是为什么:在Java中存在两种绑定方式,一种为静态绑定,又称作早期绑定.另一种就是动态绑定,亦称为后期绑定1.静态绑定 ...
- java自动包装与解包
关于java的自动包装机制想必大家都用过吧,一般这些机制都用于在往容器中存储基本类型数据的时候,因为容器中不允许存在基本数据类型,所以就会调用自动包装机制,将基本数据类型转换为对象,将基本数据保存在对 ...
- 简单工厂模式-Java篇
简单工厂模式就是考虑如何实例化对象的问题,就是说到底要实例化谁,将来会不会增加实例化对象,比如计算器类中增加开根元素,应该考虑用一个单独的类来创造实例的过程,这就是工厂.下面将利用计算器类举例,解释简 ...