VIM编辑器基操
时间:2022-07-23
本文章向大家介绍VIM编辑器基操,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
VIM是一个强大的编辑器,上古程序开发工具神器无须过多解释,linux必备!具体详情可以参考官方网站[1]或者推荐文章[2],掌握VIM就是多练多用,一张图涵盖大部分快捷键。
VIM中的模式
- 普通模式
- 命令模式
- 编辑模式
- 视图模式
移动光标
h (左移) j (下移) k (上移) l (右移) v键进入视图模式可以选择文本内容
退出VIM
q! 强制退出 wq 保存退出
文本编辑
按下x键以删除光标所在的字符
按下 i键 以插入文本
按下 A键 以行末追加文本
按下 a键 以字符后追加文本
键入 小写字母 o 以在光标下插入一行,并置于插入模式
要在光标前插入一行,只需键入 大写字母 O
键入 a 以在光标后插入文本
按下 y键 复制
按下 p键 粘贴
按下 c键 更改光标位置,同等于d+i
删除操作
删除光标到下一个单词:dw 删除光标到行尾:d$ 删除整行:dd
d -是操作码 motlion -是操作码要操作的对象(译者:更确切地说应是范围吧?)(罗列在下方) 关于对象的小清单:
w -到下一个单词头,除开所在的第一个字符。
e -到下一个单词尾,包括所在单词的最后一个字符。
$- 到行尾,包括了最后一个字符。
0- 到行首,包含空格。
^ -到行首,不含空格。
G -到文本最后一行首
gg -到文本首行。
所以de会删除光标处到单词尾下的字符。
注:不带操作码按下对象键时,仅会按对象指定的方式 移动光标
恢复命令
恢复之前的动作,键入:u (小写)
恢复对一行的所有改变,键入:U(大写)
恢复恢复,键入:CTRL-R
搜索命令
在正常模式,键入 / 字母 正向搜索
在正常模式,键入 ? 字母 反向搜索
在正常模式,键入 % 字母 可以搜索括号()[]
(想再次搜索相同的短语,简单的键入 n,以相反的方向,键入 N或者键入 CTRL-O(按住 CTRL时,按下字母o).重复几次回到更早的那刻。CTRL-I是向前移动)
搜索替换
在一行中以new替换old. :s/old/new
在一行中以new替换所有的old :s/old/new/g
在#到#两行间,以new 替换所有的old :#,#s/old/new/g
替换文件中的所有事件 :%s/old/new/g
每次替换前确认,增加‘c’' :%s/old/new/gc
执行外部命令
:!加要执行的命令
:r filename 可以直接读取文件
:w filename 写入文件
设置选项
键入":set xxx" 以设置选项 "xxx". 一些选项:
'ic' 'ignorecase' 搜索时忽略大小写
'is' 'incsearch' 部分显示匹配的搜索短语。
'hls' 'hlsearch' 高亮所有匹配的短语
参考资料
[1]
VIM官网: "http://www.vim.org"
[2]
推荐文章: "https://www.cnblogs.com/chenyablog/p/10399601.html"
为你铺好的HACKWAY
长按扫码上车
你点的每个在看,我都认真当成了喜欢
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 为什么你每次被问到HashMap底层原理都一知半解,搞定它
- 要想精通java,你必须得知道java的内存模型,不忽悠
- java类加载机制,再也不怕面试官的刁难
- 前端科普系列(4):Babel —— 把 ES6 送上天的通天塔
- JVM技术总结之五——JVM逃逸分析
- React源码解读【二】更新创建
- JVM技术总结之六——JVM的锁优化
- 每日两题 T12
- 删除列中的 NULL 值
- Linux生产环境CPU使用率100%,教你定位到具体函数
- Nginx技术总结之二——Nginx进程模型
- 「PostgreSQL技巧」Citus实时执行程序如何并行化查询
- Nginx技术总结之四——集群和负载均衡的算法与实现
- SQL 找出 100 以内的质数
- SQL 获取最长的日期序列