Vim实战指南(三):高级技巧
2016-02-02 14:07
363 查看
原文地址:Vim实战指南(三):高级技巧
1. 我编辑好的文本,怎么无法保存?是不是要重新来一次?
2. 我误操作,怎么回退撤销?只能退出vi重新打开吗?
3. 我能同时复制多个不连续的行吗?一行一行复制粘贴太慢了。
下面我将要介绍的内容不仅会解决上述问题,还会介绍几个高级小技巧。
实际上,你可以用vi+行号来打开文件,这将使光标直接调到指定的行数,这对于根据错误行号排查问题尤为方便:
如果你希望以只读模式打开文件:
如果你希望强制打开可写模式,在vi的命令行模式下敲入:
拷贝到另一个文件:
当你希望撤销第三次操作,输入:
如果你不记得应该撤销第几次操作,可以输入:
来找到你想要的内容,其中u撤销上一条命令的意思,.是重复上一条命令的意思,详见Vim实战指南(一):基础编辑命令。
当你希望拷贝的内容存放到缓存区c,输入:
你也可以使用组合命令,拷贝3行到缓存区c,输入:
粘贴缓存区c的内容,输入:
删除也同样可以使用缓存区c,输入:
当你希望建立标签c时,输入:
跳转到标签c所在的行,输入:
跳转到标签c所在的字符处,输入:
移动当跳转前的行的光标处,输入;
移动到跳转前的行首,输入:
”和“的用法详见Vim实战指南(二):光标移动技巧。
Introduction
当vi入门后,在你日常使用中,会遇到下面几个问题:1. 我编辑好的文本,怎么无法保存?是不是要重新来一次?
2. 我误操作,怎么回退撤销?只能退出vi重新打开吗?
3. 我能同时复制多个不连续的行吗?一行一行复制粘贴太慢了。
下面我将要介绍的内容不仅会解决上述问题,还会介绍几个高级小技巧。
命令行下使用vi的技巧
通常我们使用vi打开或编辑文件都是直接敲击vi+文件名,如:$ vi file
实际上,你可以用vi+行号来打开文件,这将使光标直接调到指定的行数,这对于根据错误行号排查问题尤为方便:
$ vi +3 file #这将使光标移动到第3行 $ vi + file #这将使光标移动到文件的末尾 $ vi + /pattern file #这将使光标移动到第一个满足pattern的位置
如果你希望以只读模式打开文件:
$ vi -R file
如果你希望强制打开可写模式,在vi的命令行模式下敲入:
:w!
拷贝到另一个文件:
:w newfile
撤销和重复的技巧
vi一共可以撤销之前的九次操作,这九次操作存放在vi的九个缓存区中,用数字1-9表示。当你希望撤销第三次操作,输入:
"3p
如果你不记得应该撤销第几次操作,可以输入:
"1pu.u.u.
来找到你想要的内容,其中u撤销上一条命令的意思,.是重复上一条命令的意思,详见Vim实战指南(一):基础编辑命令。
复制和粘贴的技巧
事实上,vi的缓存不仅仅用于撤销,还能用于复制和粘贴,vi提供了字母a-z共26个缓存区供你使用。当你希望拷贝的内容存放到缓存区c,输入:
"cyy
你也可以使用组合命令,拷贝3行到缓存区c,输入:
"c3yy
粘贴缓存区c的内容,输入:
"cp
删除也同样可以使用缓存区c,输入:
"cdd
书签
善用缓存区,还能让缓存区变成书签标记供你使用。当你希望建立标签c时,输入:
mc
跳转到标签c所在的行,输入:
'x
跳转到标签c所在的字符处,输入:
`x
移动当跳转前的行的光标处,输入;
''
移动到跳转前的行首,输入:
``
”和“的用法详见Vim实战指南(二):光标移动技巧。
Summary
掌握上述的高级技巧,将让你的编辑技巧比别人技高一筹。不必再机械地来回跳转光标或者一行行复制粘贴了。你会发现vi提供的高级功能,远比其他文字处理工具强大的多。相关文章推荐
- VIM编译器显示TAB和TAB转换为空格
- 菜鸟说给菜鸟听之VIM--入门篇(1)
- cygwin下vim方向键不好用的解决方案
- 安装使用Ubuntu之vim必须知道的细节
- Ruby学习笔记二帮助生成Vim添加代码头的代码
- PHP工程师VIM配置分享
- ruby开发vim插件小结
- VIM中设置php自动缩进为4个空格的方法详解
- Vim命令高级用法
- linux Vim基本操作方法
- 手把手教你将Vim改装成一个IDE编程环境(图文) 吴垠
- 搭建Vim为自定义的PHP开发工具的一些技巧
- 使用python开发vim插件及心得分享
- linux系统中使用Vim删除偶数行或者奇数行
- Python开发如何在ubuntu 15.10 上配置vim
- Mac 配置VIM插件 提示"E492:Not an editor command:^M"
- vim配置文件
- Vim编辑器快捷键
- vim的配置(自动缩进,语法高亮等)
- [Linux学习笔记] Linux文本编辑器Vim/Vi