Chinaunix首页 | 论坛 | 博客
  • 博客访问: 858073
  • 博文数量: 150
  • 博客积分: 5123
  • 博客等级: 大校
  • 技术积分: 1478
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-06 10:03
文章分类

全部博文(150)

文章存档

2011年(2)

2010年(139)

2009年(9)

分类: C/C++

2010-08-29 11:57:31

vim多文件编辑
总想写点东西,以证明自己的存在给将来。
 
1 screen
a 通过ports安装screen
b $screen
c $vi file1.c
d CTRL+a c (表示同时按住CTRL和a,松开后再单击c,以下同)新建一个窗口
e $vi file2.c
f 光标移动到起始点
g CTRL+a [进入copy模式
h 单击空格标志起始点
i 通过hjkl选择范围
j 单击空格标志结束点
k CTRL+a p进入上一窗口
l 单击i进入insert模式
m CTRL+a ]插入当前位置
 
2 插入
a $vi file1.c
b 移动光标至插入点
c :r file2.c
适合把一个文件插入另一个文件的情况
 
3 window
a $vi file1.c
b :split file2.c
c CTRL+w j/k在上下窗口切换
可以在您的~/.vimrc中加入如下2行:
map j
map k
这样可以通过CTRL+j/k在上下窗口切换
也可以用如下2行:
map j_
map k_
实现CTRL+j/k切换窗口并使当前窗口占满屏幕
 
4 buffer
a 通过vim打开多个文件(可以通过ctags或者cscope)
b :ls查看当前打开的buffer(文件)
c :b num切换文件(其中num为buffer list中的编号)
可以用到的命令有
:bn -- next buffer in the buffer list
:bp -- previous buffer in the buffer list
:b# -- previous buffer you was in
可以在您的~/.vimrc中加入如下3行:
map :bn
map :bp
map :b#
实现左右方向键切换到上或下一个buffer,按空格在两个buffer间切换
典型的应用场景是:同时打开c文件和h文件,然后用空格切换
 
5 mark
a $vi file1.c
b 移动光标至您关注的位置,单击mR
c :e file2.c
d 移动光标至您关注的位置,单击mW
e 然后就可以通过'R/'W在文件间切换
m[a-z]: lowercase marks, valid within one file
m[A-Z]: uppercase marks, also called file marks, valid between files
该方法很适合阅读源码和3个以上文件编辑的情况
方法3,4,5,因为都在同一个vim中,您可以使用yy,yw,y'a,dd,dw,d'a等和p实现copy和粘贴
另外,当您离开一个已修改但未保存的文件时,vim会提示您保存,可以通过如下命令
:set autowrite
实现让其自动保存。
阅读(819) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~