Vim快捷指南:进阶操作与技巧
![](https://csdnimg.cn/release/wenkucmsfe/public/img/starY.0159711c.png)
"vim高级实用手册"
vim是一个强大的文本编辑器,在Linux和其他Unix-like系统中广泛使用。本手册总结了vim的高级技巧和快捷方式,适用于老手回顾和新手学习。
1. 启动vim:
- `vim`:启动vim,进入命令模式。
- `vim +n filename`:打开文件filename,光标在第n行。
- `vim +filename`:打开文件filename,光标在文件末尾。
- `vim /pattern filename`:打开filename,搜索名为pattern的模式。
- `vim -r filename`:恢复上次退出时的状态打开filename。
2. 移动光标:
- `h`:向左移动一格。
- `l`:向右移动一格。
- `space`:向前移动一格。
- `Backspace`:向后移动一格。
- `k`:向上移动一行。
- `Ctrl+p`:同上。
- `j`:向下移动一行。
- `Ctrl+n`:同下。
- `Enter`:移动到下一行开头。
- `w`:跳到下一个单词开头。
- `W`:同上,但跨越标点符号。
- `b`:跳到前一个单词开头。
- `B`:同上,但跨越标点符号。
- `e`:跳到当前单词结尾。
- `E`:同上,但跨越标点符号。
- `)`:跳到下一段。
- `{}`:在段落间移动。
- `nG`:移动到第n行。
- `n+n`:向下移动n行。
- `n-n`:向上移动n行。
- `$`:移动到当前行末尾。
- `0`:移动到当前行开头。
3. 编辑操作:
- `i`:插入模式,光标前插入字符。
- `I`:在当前行首插入字符。
- `a`:追加模式,光标后追加字符。
- `A`:在当前行尾追加字符。
- `o`:在下一行新开一行并插入。
- `O`:在上一行新开一行并插入。
- `r`:替换当前光标位置的字符。
- `R`:连续替换模式,按ESC退出。
- `s`:删除当前字符并进入插入模式。
- `S`:删除当前行并进入插入模式。
- `cw`:修改单词。
- `cW`:修改到下一个单词结尾。
- `cc`:修改整行。
- `ndw`:删除n个单词。
- `d$`:删除到行尾。
- `ndd`:删除当前行及其后n-1行。
- `x`:删除当前字符。
- `X`:删除当前字符前的字符。
- `Ctrl+u`:删除当前行至上半屏幕。
- `Ctrl+d`:删除当前行至下半屏幕。
- `nzn`:复制n行并粘贴到当前位置。
- `yy`:复制当前行。
- `p`:粘贴。
- `dd`:剪切(删除)当前行。
4. 查找与替换:
- `/pattern`:向前查找pattern。
- `?pattern`:向后查找pattern。
- `n`:重复上一次查找。
- `N`:反向重复上一次查找。
- `s/p1/p2/g`:全局替换当前行的p1为p2。
- `n1,n2s/p1/p2/g`:在n1到n2行间替换p1为p2。
- `g/p1/s//p2/g`:全局替换文件中所有p1为p2。
5. 模式切换与命令:
- `:all`:显示所有缓冲区。
- `:term`:启动终端。
- `:ignorecase`:忽略大小写匹配。
- `:list`:显示行号(Ctrl+I 显示制表符)。
- `:number`:显示行号。
- `:report`:设置多行操作报告行数。
- `:terse`:简短的错误信息。
- `:warnwrite`:写入文件时显示警告。
- `:nomagic`:关闭魔术模式,不特殊处理反斜杠。
- `:nowrapscan`:禁止跳过空行搜索。
- `:mesg`:允许/禁止消息。
- `:n1,n2con n3`:将n1到n2的行合并到n3行之后。
- `:n1,n2m n3`:将n1到n2的行移动到n3行之后。
- `:n1,n2d`:删除n1到n2的行。
- `:w`:保存当前文件。
- `:e filename`:编辑新文件filename。
- `:x`:保存并退出。
- `:q`:退出,如果未保存则提示。
- `:q!`:强制退出,不保存。
- `:!command`:执行shell命令。
- `:n1,n2w !command`:将n1到n2的行通过command处理。
- `:r!command`:将command的输出插入到当前行下方。
6. 其他:
- Vim支持多种操作系统,包括Unix、Linux和Windows,但在不同系统上可能有细微差别。
- 高级用户可以通过配置.vimrc文件自定义vim的行为和快捷键。
掌握这些vim技巧将显著提高文本编辑效率,使其成为日常开发和管理的强大工具。通过不断实践和学习,你可以在任何环境下优雅地驾驭vim。
相关推荐
![filetype](https://img-home.csdnimg.cn/images/20241231044901.png)
![filetype](https://img-home.csdnimg.cn/images/20241231044930.png)
![filetype](https://img-home.csdnimg.cn/images/20241231044930.png)
![filetype](https://img-home.csdnimg.cn/images/20241231044930.png)
![filetype](https://img-home.csdnimg.cn/images/20241231044930.png)
![filetype](https://img-home.csdnimg.cn/images/20241231044930.png)
![filetype](https://img-home.csdnimg.cn/images/20241231044930.png)
![filetype](https://img-home.csdnimg.cn/images/20241231044930.png)
![filetype](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://profile-avatar.csdnimg.cn/e15be93d86694aabba4b924e7455237c_hgwxx_7.jpg!1)
HGWXX_7
- 粉丝: 0
最新资源
- CMU学生张万志的机器人感知与SLAM数据可视化作品集
- 外贸订单管理与Paypal支付接口的PHP集成方案
- iOS自适应列表高度刷新与广告栏日历实现
- GooNow Voice Search-crx插件:简化语音搜索体验
- Python网页抓取实战教程
- 深入浅出:ListView开发实例与源码解析
- Android SDK下载器的高效使用指南
- 7页面豪华酒店预订网站模板下载
- 仿微信朋友圈的照片查看器实现与手势交互
- MyBatis框架:高效操作数据库的Java Web解决方案
- 仿射不变变换在指纹识别系统中的应用
- LoadRunner11实战教程:性能测试进阶要点解析
- KindEditor HTML编辑器插件的使用与部署指南
- MCLNN-theano:用于多通道时间信号分析的蒙版条件神经网络
- 学习仿ICQ启动桌面位置与区域操作技巧
- Nectar Notifier插件:在线购物积分提醒工具