vim详解
1.编辑器简介vi编辑器是所有Unix及Linux系统下标准的编辑器,相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。是使用Linux系统不能缺少的工具。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的。vim(vi improved)编辑器是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转、语法高亮等方便编程的功能特别丰富,在程序员中被广
1.编辑器简介
vi编辑器是所有Unix及Linux系统下标准的编辑器,相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。是使用Linux系统不能缺少的工具。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的。
vim(vi improved)编辑器是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转、语法高亮等方便编程的功能特别丰富,在程序员中被广泛使用。
简单的来说, vi 是老式的, vim 则可以说是程序开发者的一项很好用的工具。vim 的官方网站 (http://www.vim.org) 自己也说 vim 是一个程序开发工具而不是文字处理软件。
vi/vim编辑器的核心设计思想:
让程序员的手指始终保持在键盘的核心区域, 就能完成所有的编辑操作
2. 打开和新建文件
如果当前的linux系统中输出:vim命令后,出现命令的不识别的情况,需要安装VIM
安装方式: yum -y install vim*
文件打开格式: vim 文件名
- 如果文件已经存在, 会直接打开该文件
- 如果文件不存在, 保存且退出时 就会新建一个文件
打开文件并且定位行
在日常工作中, 有可能会遇到打开一个文件, 并定位到指定行的情况。
例如: 在开发时候知道某一行代码有错误, 可以快速定位到出错误代码的位置,这个时候, 可以使用以下命令打开文件:vim 文件名 +行数
提示: 如果只带上+ 而不指定行号, 会直接定位到文件末尾
异常处理
如果 vi 异常退出, 在磁盘上可能会保存有 交换文件
下次再使用 vi 编辑文件时, 按下字母 d 删除交换文件即可。
这种现象如何产生:编辑文件时没有退出, 直接关闭会话窗口。
vi/vim三种工作模式
基本上 vi/vim 共分为三种模式,分别是:命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode).
1、命令模式
打开文件首先进入命令模式, 是使用vim的入口。
命令模式下下敲击键盘动作会被Vim识别为命令,而非输入字符。
若想要编辑文本:必须切换到输入模式。
2、底线命令模式
执行 保存 退出等操作 (是从命令模式进入的)
要退出 vi 返回到控制台, 需要在底线命令模式下输入命令,是 vi编辑器 的出口。
在底线命令模式中,基本的命令有(已经省略了冒号):
q 退出程序
w 保存文件
wq 保存且退出文件
wq! 强制保存且退出文件
3、输入编辑模式
正常的编辑文字
光标移动
移动光标的方法:
如果想要进行多次移动的话,例如向下移动 30 行,可以使用 "30j" 或 "30↓" 的组合按键, 亦即加上想要进行的次数(数字)后,按下动作即可!
复制粘贴
搜索替换
删除
选中文本(可视模式)
为了便于选取文本,VIM 引入了可视(Visual)模式。 要选取一段文本,首先将光标移到段首,在普通模式下按 v 进入可视模式,然后把光标移到段末。 需要注意,光标所在字符是包含在选区中的
v 进入字符可视化模式文本选择是以字符为单位的。
V 进入行可视化模式文本选择是以行为单位的。
Ctrl+v 进入块可视化模式可以选择一个矩形内的文本。
按 ESC 可以放弃选中, 返回到 命令模式。
撤销和恢复撤销
命令 | 英文 | 功能 |
u | undo | 撤销上次的命令(ctrl + z) |
Ctrl + r | uredo | 恢复撤销的命令 |
插入命令(重要)
在 vi 中除了常用 i
进入编辑模式 外, 还提供了一下命令同样可以进入编辑模式
命令 | 英文 | 功能 | 常用 |
i | insert | 在当前字符前插入文本 | 常用 |
I | insert | 在行首插入文本 | 较常用 |
a | append | 在当前字符后添加文本 | |
A | append | 在行末添加文本 | 较常用 |
o | 在当前行后面插入一空行 | 常用 | |
O | 在当前行前面插入一空行 | 常用 |
小结:在进入编辑模式之前,可以通常输入的命令,来进入到不同编辑状态
i:进入到编辑模式后,定位到当前光标前面
I:进入到编辑模式后,定位到当前行的首位置
a:进入到编辑模式后,定位到当前光标的后面追加要写入的内容
A:进入到编辑模式后,定位到当前行的行尾
o:进入到编辑模式后,在当前行的后面,添加一行空行
O:进入到编辑模式后,在当前行的前面,添加一行空行
更多推荐
所有评论(0)