1 工具准备(下载gvim)
废话 :因为我们的目的是学习vi/vim操作,所以不必强调使用linux系统下的vi/vim,这里使用的是windows版的gvim(gvim是vi/vim的gui加强版)。
网盘下载 :http://pan.baidu.com/s/1hqfAch2
官网下载 :http://www.vim.org/download.php#pc
2 vi/vim基本入门
2.1 安装
windows下的vi/vim安装很简单的。这里就不啰嗦了。
2.2 基本使用
windows下进入gvim的3种方式
- 点击gvim74直接进入。
- Win+R 然后输入gvim后回车进入。
- Win+R 输入cmd进入控制台,然后在控制台里输入gvim后回车。
提示
- 你也可把gvim换成vim进入控制台版
vi/vim3种基本工作模式:
命令行模式 | 控制屏幕光标的移动,字符,字或者行的删除,移动、复制某区域及插入模式,或者到末行模式。 |
插入模式 | 只有在插入模式下,才可以做文字输入,按“Esc"键可切换到命令行模式。 |
末行模式 | 用于保存文件或退出vi/vim编辑器,也可设置编辑环境,例如:列出行号,查找替换字符串等。 |
必知的移动键:
上 k 左j l右 j 下 上面的是vi/vim下的方向键,使用方法:切换到命令行模式分别按k(上)、j(下)、h (左)、l(右)移动光标。
进入givm后处于命令行模式下,按下“i”进入插入模式(注意是小写的i)此时你可以在你的编辑器里输入自己想要的内容。这里以简单的c程序为例,下面为步骤:
- 进入插入模式
i
- 输入内容
#include <stdio.h> int main() { printf("欢迎来到友歌博客"); return 0; }
- 切换到命令行模式
Esc
- 切换到末行模式
Shift + :
- 保存文件到桌面
w desktop/welcom.c
- 退出
Shift + : q
按照顺序完成之后你就差不多能简单的使用gvim编辑器了。这里啰嗦一下,学习vi/vim最简单的途径就是使用它,尽量全键盘操作,不使用鼠标。(当你全部工作全用键盘完成,是不是有种黑客的感脚,有点装逼了,呵呵)
小提示:这里的"desktop"就是我们的桌面目录。
3 vi/vim基本命令表
下面为vi编辑器常用的命令,仅供参考。
相关资料:[http://www.vim.org/docs.php]
vi/vim帮助文档:[http://vimdoc.sourceforge.net/htmldoc/help.html]
命令 | 描述 |
---|---|
vi | 从控制台进入vi编辑器 |
vi filename | 创建名为filename的文件并进入vi编辑器 |
命令行模式 | |
i | 从光标所在字符前插入 |
a | 从光标所在的字符后插入 |
o | 从光标所在行的下面插入空白行 |
I | 从光标所在行的行首插入 |
A | 从光标所在行的行末插入 |
O | 从光标所在行的上面插入空白行 |
s | 删除光标所在字符进入插入模式 |
S | 删除光标所在行进入插入模式 |
Esc | 插入模式切换到命令行模式 |
k | 类似方向键上 |
j | 类似方向键下 |
h | 类似方向键左 |
l | 类是方向键右 |
Ctrl+u | 向上移动半页 |
Ctrl+d | 向下移动半页 |
Ctrl+b | 向上移动一页 |
Ctrl+f | 向下移动一页 |
0 | 光标移动到所在行的行首 |
gg | 移动到文本的第一行 |
G | 移动到文本最后一行 |
$ | 光标移动到所在行的行为 |
^ | 光标移动到所在行的行首 |
w | 光标跳到下个字的开头 |
e | 光标跳到下个字的字尾 |
b | 光标回到上个字的开头 |
x | 每按一次,删除光标所在位置的一个字符 |
nx | 如"3x"表示删除光标所在位置开始的3个字符 |
X | 删除光标所在位置的前一个字符 |
nX | 如"3X"表示删除光标所在位置的前3个字符 |
dd | 删除光标所在行 |
ndd | 如"3dd"表示删除光标所在行开始的3行字符 |
yw | 将光标所在之处到字尾的字符复制到缓冲区 |
nyw | 复制n个字符到缓冲区 |
p | 将缓冲区里的内容写到光标所在位置 |
r | 替换光标所在处的字符 |
R | 替换贯标所在处的字符,直到按下"Esc"为止 |
u | 撤销命令,可多次撤销 |
Ctrl+g | 列出光标所在行的的行号 |
nG | 表示移动光标到文本的第n行行首 |
ZZ | 存盘退出 |
ZQ | 不存盘退出 |
末行模式 | |
: | 先按Esc进入命令行模式再按Esc进入末行模式 |
set nu | 开启每行的行号 |
set nonu | 取消每行的行号 |
n | n代表数字,表示跳到n行 |
/关键字 | 先按"/",在输入关键字后回车查找字符(查找),按n查找下一个 |
?关键字 | 类似"/关键字" |
!命令 | windows下运行dos命令,linux下运行shell命令 |
s /a/b | 将光标所在行的第一个a替换为b |
s /a/b/g | 将光标所在行的a全部替换为b |
w | 保存修改的文件 |
w filename | 保存并命名为filename |
q | 退出vi |
q! | 强制退出无法退出的vi |
wq | 保存并退出 |