Copyright © 2005,2006 本文遵从GNU 的自由文档许可证(Free Document License)的条款,欢迎转载、修改、散布。
发布时间:2005年07月18日
更新时间:2006年05月22日
Abstract
VI编辑器是类UNIX系统中最常用到的编辑器,VIM是VI编辑器的改良版本。本笔记是我在使用vim时记录下来的备忘录,内容不是很全面,详细介绍可参考http://vimdoc.sourceforge.net/网站。
Table of Contents
-
1. 普通模式
-
-
1.1. 编辑
1.2. 光标移动
2. 编辑模式
3. 命令模式
4. vimrc配置
在shell中直接打vim filename就会进入普通模式。在这个状态,我们可以通过不同的按键对文件进行操作和切换到其它模式。按“:”可切换到命令模式,按i,o,a可进入编辑模。
-
i
-
进入编辑模式。
o
-
在当前位置下插入一空行,进入编辑模式,光标位于空行的最开头。
a
-
光标后移一个字符,进入编辑模式。
v
-
这入可视模式,可用高亮的色块选择内容。
x or DEL键
-
删除当前字符,删除内容保存在缓冲区。
xp
-
左右字符互换。
dd
-
删除当前行,删除内容保存在缓冲区。
ddp
-
上下两行的内容互换。
d$
-
删除当前光标至行尾的所有内容。
dG
-
删除从当前行至文件未尾的所有行。
u
-
undo。
v
-
进地visual模式,移动光标可选择文本。
y
-
把当前行复制到缓冲区中。
p
-
把缓冲区中的文本插入到当前位置。
"ay
-
把当前行复制到a缓冲区。可用26个字母命名多个缓冲区。
"ap
-
把a缓冲区中的文本插入当前位置。
J
-
上下两行合并成一行。
.
-
英文句点的作用是重复执行上次执行的命令,如你按了"ap插入a缓冲区的内容,那你就可按"."来重复这个操作。
在普通模式上按“:”就可进入命令模式,在左下屏幕我们输入一些操作指令。
-
:q!
-
不保存退出vim。
:w
-
保存文档,但不退出vim。
:x
-
保存退出vim。
:! command
-
运行shell命令。
:e filename
-
编辑/打开一个文件
:s/emacs/vim
-
在当前行中把第一个emacs替换成vim。
:s/emacs/vim/g
-
把当前行中所有的emacs替换成vim。
:%s/emacs/vim/g
-
在全局范围内把emacs替换成vim。
:reg
-
列出缓冲区内容。
:set all
-
列出所有参数的配置情况。
:tabe
-
新建一个标签页。
:tabn or :tabp
-
切换到下一个\上一个标签页。
:close
-
关闭当前标签页。
:qa
-
关闭所有标签页退出。
在命令模式下用set命令设置的东西是不能保存的,下次打开vim时又要重新设置。所以vim提供了一个配置文件叫vimrc,可以保存你的配置信息。该文件在Debian系统中位于/etc/vim/目录下。在该文件中,以双引号开头的是注释。
-
set autoindent
自动缩排,如当前行是从第3个字符的位置开始编辑的,按回车后光标会自动定位在下一行第三3个字符的位置。
-
set paste
置粘贴模式,这样粘贴过来的程序代码就不会错位了。
-
打开文件时自动回到上次编辑位置。
if has("autocmd") autocmd BufRead *.txt set tw=78 autocmd BufReadPost * \ if line("'\"") > 0 && line ("'\"") <= line("$") | \ exe "normal g'\"" | \ endif endif