三种模式
命令行模式
任何模式下 ESC 进入
编辑模式(INSERT)
从命令模式下 a, i 等 进入
可视化模式(VISUAL)(VISUAL BLOCK)
命令模式下,敲 v 进入
非编辑模式, ctrl + v

cd /etc/vim/
root权限编辑 vimrc, 增加一行 set number ? 显示行号

单次显示行号:
vim编辑器的命令模式输入:set number

永久显示行号:
在etc/vim下的vimrc文件,添加set number即可永久在vim编辑器显示行号。

若在vimrc文件下添加,不起作用,使用以下命令:
echo "set number">>~/.vimrc

vim编辑器改变上下左右变ABCD问题
上下左右键:echo "set nocompatible">>~/.vimrc

基本操作
a, i, o, O 进入编辑模式
ESC 进入命令模式
:q 退出vi (q! 不保存强行退出)
:w 保存 (wq 保存并退出)
:x 保存退出
:u 撤销操作
:saveas 另存为
:bn, :bp 同时打开多个文件时,切换到上一个或者下一个
x 删除当前字符
dd 删除当前行 ,删除内容存入剪贴板(p粘贴)
h,j,k,l 和 左下上右 移动光标(某些情况下方向键也是命令的一部分)

0 到行首
^ 到行首第一个非空字符
$ 到行尾
g_ 到行尾最后一个非空字符

ctrl+f 向后翻页 (forward)
ctrl+b 向前翻页 (backward)

ctrl+d 向后翻半页
ctrl+u 向前翻半页

ctrl+e 向下滚1行
ctrl+y 向上滚一行

一阶操作
gg 到第一行
G 到最后一行
10G 到第10行 (:10 等价)
e 到本单词结尾
w 到下一个单词开头
/ABC 从光标处开始查找ABC (n, N移动到下一个/上一个匹配的地方)

yy 拷贝当前行(会把换行符号一起拷贝)
p 粘贴在光标处 (大写P粘贴到光标前)
u 撤销上一步操作 (支持多级)
ctrl+r 反撤销 (支持多级)
. 重复上一条命令
N<命令> 重复N次命令 (2dd; 4p; 6iABC)
2dd 删除两行
4p 粘贴4次
6iABC 插入6个ABC (i->insert), 输入完成后按 ESC ,然后回车

二阶操作
% 移动到匹配的括号处(三种括号都行)
* 移动到下一个与之相同的单词
# 移动到上一个与之相同的单词

ye 拷贝单词 [e表示到单词词尾]
y/ABC 拷贝到ABC位置 [/ABC 表示查找ABC]
y2/ABC 拷贝到第二个ABC位置
gue 单词 转小写
gUe 单词转大写

d2l 往后删除两个字符(相当于 2x)
2dd 删除两行
d^ 删除光标到行首
d$ 删除光标到行尾
de 删除单词
d/kk 删除光标到kk位置
d2/kk 删除到光标到第二个kk位置

d 改成y 就是拷贝了

三阶操作
fk 光标移动到下一个k字母位置
dfk 从光标处删除到k字母位置
2fk 查找第二个k字母位置
v 进入可视化操作
匹配选择:如 if (strcmp(“ABC”, szStr) == 0) 光标在 A 位置
i” 选中ABC
a” 选中“ABC”
i) 选中 “ABC”, szStr
2a) 选中(strcmp(“ABC”, szStr) == 0)

ctrl+v:进入块操作
1: 移动方向键选择块
2: 每行光标前面加内容:选择块 -> I(大写 i ) -> 输入要增加的内容 -> [ESC] ->回车
3: 每行光标后面加内容:选择块 -> A ->输入要增加的内容 ->[ESC] ->回车
4: 左右缩进:选择块 -> < 和 >
5: 自动缩进:选择块 -> =
ctrl+p:insert 模式下自动补齐功能 (ctrl+n)

四阶操作
使用正则表达式
替换:%s/int/unsigned int/g ?所有int替换位unsigned int
替换某些行:1,2s/int/unsigned int/g
替换10行到末行:10,$s/int/unsigned int/g
行首加ABC %s/^/ABC/g
行尾加ABC %s/$/ABC/g
注:正则表达式中 ^表示行首,$表示行尾
13,20s/^[\/]*//g

3vim编辑器的更多相关文章

  1. linux 下crontab -e 命令插入及保存

    由于功能需要,用到linux定时任务. 一般我们都是crontab -e 进去写好定时任务,直接保存退出就可以了,如果是第一次创建定时任务, 系统会选择默认编辑器,就不好保存文件. 在网上参考了一篇文 ...

  2. NiceMark——我的Markdown编辑器

    NiceMark--我的Markdown编辑器 闲来无事,写了一个Markdown编辑器.基于electron,完全采用Web前段技术(Html,css,JavaScript)实现.代码已托管在Git ...

  3. 关于Unity3D自定义编辑器的学习

    被人物编辑器折腾了一个月,最终还是交了点成品上去(还要很多优化都还么做).  刚接手这项工作时觉得没概念,没想法,不知道.后来就去看<<Unity5.X从入门到精通>>中有关于 ...

  4. 在ASP.NET Core中使用百度在线编辑器UEditor

    在ASP.NET Core中使用百度在线编辑器UEditor 0x00 起因 最近需要一个在线编辑器,之前听人说过百度的UEditor不错,去官网下了一个.不过服务端只有ASP.NET版的,如果是为了 ...

  5. 07.LoT.UI 前后台通用框架分解系列之——轻巧的文本编辑器

    LoT.UI汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui 上次说的是强大的百度编辑器 http://www.cnblogs.com/d ...

  6. 富文本编辑器Simditor的简易使用

    最近打算自己做一个博客系统,并不打算使用帝国cms或者wordpress之类的做后台管理!自己处于学习阶段也就想把从前台到后台一起谢了.好了,废话不多说了,先来看看富文本编辑器SimDitor,这里是 ...

  7. 玩转Vim 编辑器

    一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...

  8. 个人网站对xss跨站脚本攻击(重点是富文本编辑器情况)和sql注入攻击的防范

    昨天本博客受到了xss跨站脚本注入攻击,3分钟攻陷--其实攻击者进攻的手法很简单,没啥技术含量.只能感叹自己之前竟然完全没防范. 这是数据库里留下的一些记录.最后那人弄了一个无限循环弹出框的脚本,估计 ...

  9. [BootStrap] 富编辑器,基于wysihtml5

    在我的周围,已经有很多人在使用BootStrap,但对于任何一个带留言.评论.提问.文章编辑功的网站,编辑器永远是重中之重,显然,早期的编辑器完全没考虑过BootStrap的出现,或皮肤跟网站不匹配, ...

随机推荐

  1. swift学习笔记之--方法

    一.说明 跟oc一样,面向对象,swift重点额方法可以分为2大类: (1)实例方法 oc中为减号方法(对象方法) (2)类型方法 oc中的加号方法(类方法) 二.实例方法 只能是对象调用的方法 代码 ...

  2. python3.0与python2.0有哪些不同

    python3的语法跟python2哪里变了. 1. python3中1/2终于等于0.5 了 2. print "Hello World"变成了print("Hello ...

  3. 基于麒麟座开发板2.0的MQTT实现例程

    链接--->https://sanwen8.cn/p/649shZ1.html OneNET现已全面适配标准MQTT协议,相信这一功能的增加会**便于开发者进行设备的接入. OneNET提供了M ...

  4. AFNetworking 上传文件

    本文转载至 http://blog.csdn.net/hmt20130412/article/details/36487055 文件上传AFNetworking @第一种:我的 #pragma mar ...

  5. android 动画学习系列(一)

    老师今天开始讲android的游戏,讲到了view和surfaceview 下面是view的演示部分 private Paint paint; //游戏里很少用double,都是用long priva ...

  6. 搭建FastDFS

    ---恢复内容开始--- FastDFS是用c语言编写的一款开源的分布式文件系统.FastDFS为互联网量身定制,充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用.高性能等指标,使用Fast ...

  7. [分享]收集的Linux学习资源

    下面是我收集的一些Linux资源,与大家分享.大家共同学习,一起进步. 国内的专业Linux网站(GB) 1. ChinaUnix:http://www.chinaunix.net/ 2. Linux ...

  8. CHMOD命令怎么用?

    文件/目录权限设置命令:chmod 这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限.该命令有两种用法: 用包含字母和操作符表达式的文字设定法 其语法格式为:chmod [w ...

  9. spring全局变量引起的并发问题

    先看下面小段代码,一个controller,一个service. controller.java代码:    ........    @Autowired     private XXXService ...

  10. LCA(离线算法)

    hdu4547 CD操作 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) To ...