一 写在开头
1.1 本文内容
本文内容为vim快速入门——vimtutor。

二 第一讲
2.1 移动光标(命令模式下)
上 - k
下 - j
左 - h
右 - l

2.2 进入和退出vim
进入vim - vim
退出并丢弃对文件的所有更改 - q!

2.3 删除
删除光标所在的字符 - x(小写)

2.4 插入模式
从命令模式进入插入模式 - i

2.5 添加文本
将光标移至所在行末尾字符的后一个位置并进入插入模式 - A

2.6 编辑文本
打开文件用于编辑 - vim filename
保存文件更改并退出 - wq

三 第二讲
3.1 从当前光标处删除至一个单词的末尾 - dw

3.2 从当前光标处删除至行末 - d$

3.3 命令和对象
许多改变文本的命令都由一个操作符和一个动作构成。
使用删除操作符 d 的删除命令的格式如下:

d motion

其中:
d - 删除操作符。
motion - 操作符的操作对象(在下面列出)。

一个简短的动作列表:
w - 从当前光标当前位置直到下一个单词起始处,不包括它的第一个字符。
e - 从当前光标当前位置直到单词末尾,包括最后一个字符。
$ - 从当前光标当前位置直到当前行末。

因此输入 de 会从当前光标位置删除到单词末尾。

3.4 在动作前输入数字n会使命令重复执行n次
使光标向前移动两个单词 - 2w
使光标向前移动到第三个单词的末尾 - 3e
输入0(数字0)移动光标到行首 - 0

3.5 使用操作符时输入数字n使命令重复执行n次
d number(数字) motion
比如输入d2w以删除两个相邻的单词

3.6 删除当前光标所在的一整行 - dd

3.7 撤销修改
撤销最后执行的命令 - u(小写)
撤销对整行的修改 - U(大写)

四 第三讲
4.1 置入命令p
删除光标当前所在行并将该行保存至vim的寄存器中 - dd
将最后一次删除的内容置入光标之后的位置 - p

4.2 替换光标所在位置的字符 - 输入r和一个字符(输入的字符用于替换原字符)

4.3 更改文本直到一个单词的末尾 - ce

4.4 使用c命令更改更多
更改类操作符的工作方式跟删除类是一致的。操作格式是:
c [number] motion
动作参数(motion)也是一样的,比如 w 代表单词,$代表行末等等。

五 第四讲
5.1 定位及文件状态
显示当前编辑文件中当前光标所在行位置及文件状态信息 - ctrl + g(按住ctrl不变然后按g)
使光标直接跳转到文件最后一行 - G
使光标直接跳转到文件第一行 - gg
使光标直接跳转到文件制定行 - nG(n为行号)

5.2 搜索类命令
在当前文件中查找字符串 - /hello(hello为你要搜索的字符串)
要查找同上一次的字符串 - n
要向相反的方向查找上一次的字符串 - N
要想逆向查找字符 - ?hello(hello为你要搜索的字符串,即将/换成?)

5.3 查找配对的括号(包括)、]、}) - %(百分号)

5.4 替换命令
:s/thee/three - 该命令将会将光标所在行的第一个thee替换为three
:s/thee/three/g - 该命令将会将光标所在行的所有匹配的thee替换为three
:#,#s/thee/three/g - 该命令将会将行#(第一个#)和行#(第二个#)中所有匹配的thee替换为three
:%s/thee/three/g - 该命令会对整个文件中所有匹配的thee替换为three
:%s/thee/three/gc - 该命令会找到整个文件中所有匹配的thee,并对每个找到的thee提示是否进行替换为three的操作

六 第五讲
6.1 在vim中执行外部命令 - :!ls(ls为命令名)

6.2 将对文件的改动保存到文件中 - :w filename

6.3 选择性保存命令v
第一步:按v进入可视模式,选择要复制的内容
第二部:按:,屏幕底部出现:'<,'>,此时输入w filename即可将选中的内容复制到文件filename中去

6.4 向当前文件中插入另外的文件内容 - :r filename

七 第六讲
7.1 打开类命令
在光标当前行所在的下一行打开新一行并进入插入模式 - o(小写o)
在光标当前行所在的上一行打开新一行并进入插入模式 - O(大写O)

7.2
在光标之后插入文本 - a(小写a)
在光标所在行的行末尾插入文本 - A(大写A)

7.3 输入R可以连续替换多个字符

7.4 使用操作符y来复制文本,使用p来粘贴文本
注意:你还可以把y当做操作符使用,比如使用yw来复制一个单词

7.5 设置类命令的选项
:set ic - 搜索字符串时忽略大小写
:set noic - 禁用忽略大小写
:set hls - 高亮搜索结果(或者使用:set hlsearch)

八 第七讲

Vim使用技巧:vimtutor的更多相关文章

  1. Vim使用技巧汇总

    一 写在开头 1.1 本文内容 Vim使用技巧与学习资源汇总. 二 Vim学习资源 1. Vimtutor 2. Vim中文帮助(http://vimcdoc.sourceforge.net/doc/ ...

  2. vim 使用技巧记录

    vim 使用技巧记录 1.批量注释与取消注释 命令格式:起始行号,结束行号s#^#//#g 例如: 注释代码3到15行,"//"可以是其他的"" :3,15s# ...

  3. Vim 常用技巧:

    Vim 常用技巧: 将回车由默认的8个空格改为4个空格: 命令:set sw=4 修改tab为4空格: 命令:set ts=4 设置每一级的缩进长度: 命令:set shiftwidth=4 设置文件 ...

  4. 最好的vim教程莫过于vimtutor

    最好的vim教程莫过于vimtutor 直接运行vimtutor即可

  5. ###《VIM实用技巧》

    ###<VIM实用技巧> #@author: gr #@date: 2015-11-20 #@email: forgerui@gmail.com <VIM实用技巧>阅读笔记. ...

  6. 无插件Vim编程技巧

    无插件Vim编程技巧 http://bbs.byr.cn/#!article/buptAUTA/59钻风 2014-03-24 09:43:46 发表于:vim  相信大家看过<简明Vim教程& ...

  7. vim实用技巧总结

    1. 单个文件内实用mark来帮助跳转以及一些宏操作.(注意:mark不能用于多文件之间的跳转)mch 设置宏,保存到ch标记(不是ch寄存器)'ch 跳转到标记的行首`ch 跳转到标记的字符处另:为 ...

  8. 无插件VIM编程技巧(网摘)

    无插件VIM编程技巧 原文出处:[陈皓 coolshell] 相信大家看过<简明Vim教程>也玩了<Vim大冒险>的游戏了,相信大家对Vim都有一个好的入门了.我在这里把我日常 ...

  9. vim常用技巧

    # vim常用技巧 ## 行操作------------------------------ 行首 0- 行尾 $- 第一个非空字符 ^ ## 列编辑模式----------------------- ...

随机推荐

  1. Bootstrap Multiselect插件使用步骤以及常见参数配置介绍

    Multiselect是基于jQuery插件的,它可以以下拉列表的形式为用户提供选择内容,能进行单选或者多选.它应用的主要步骤如下: 一,引入需要的相关js和css文件 既然是Bootstrap插件, ...

  2. zabbix3.4监控Linux客户端

    环境准备 zabbix-server IP:192.168.1.242 nds-server  IP:192.168.1.202 web-server IP:192.168.1.203 客户端部署 关 ...

  3. 如何使用U盘安装macOS high Sierra?

    当你不再只是想升级系统的时候,而是想把系统重装,你可能就会用到如标题所说的方式:使用U盘安装mac系统.所以我们需要做以下几件事情,就可以顺利地重装mac系统: 第一步.在App Store下载最新的 ...

  4. 英语口语练习系列-C19-喜欢某人

    简单词汇 1. chair [tʃeə(r)] n. 椅子 chair = ch + air拼读的时候ch发音以及air发音 [ ] sit on a chair 坐在椅子上 [ ] a table ...

  5. JavaScript对象类型之创建对象

    引言 JavaScript中,可以通过对象直接量,关键字new(ECMAScript 5中的)Object.create(),函数来创建对象. 对象直接量 JavaScript中使用对象直接量来创建对 ...

  6. SAP PS 模块,项目、WBS与网络作业概念

    项目定义 项目定义是项目的唯一标识.通过项目定义,决定了包含于其中的所有WBS元素的组织结构.计划方法.预算方式以及结算方法等信息.而项目定义中的数据,则主要来源于“项目参数文件”,所以创建项目定义时 ...

  7. Django中的信号

    信号 Django 提供一个“信号分发器”,允许解耦的应用在框架的其它地方发生操作时会被通知到. 简单来说,信号允许特定的sender通知一组receiver某些操作已经发生. 这在多处代码和同一事件 ...

  8. LoadRunner 11 error:Cannot initialize driver dll

    LoadRunner 11 error:Cannot initialize driver dll 这个错误很容易解决,使用win7系统时,有些程序要以管理员身份才能运行. 解决方案:右键选择:“以管理 ...

  9. 部署Java和Tomcat

    Tomcat介绍 Tomcat服务器是一个免费的开放源代码的Web应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP网页的首选. Tomcat和Nginx.Apach ...

  10. SQL Server百万级大数据量删除

    删除一个表中的部分数据,数据量百万级. 一般delete from 表 delete from 表名 where 条件: 此操作可能导致,删除操作执行的时间长:日志文件急速增长: 针对此情况处理 de ...