Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1354371
  • 博文数量: 334
  • 博客积分: 10302
  • 博客等级: 上将
  • 技术积分: 2986
  • 用 户 组: 普通用户
  • 注册时间: 2006-01-12 10:17
文章分类

全部博文(334)

文章存档

2013年(1)

2012年(9)

2011年(4)

2010年(10)

2009年(24)

2008年(64)

2007年(72)

2006年(150)

我的朋友

分类: LINUX

2008-01-14 20:02:14

 vim有三种模式-普通(可视命令)模式,命令行模式,编辑模式。启动vim后在任何模式下按Esc键进入到普通模式。普通模式下输入 : 回车进入命令行模式,此时vim最窗口最下面一行为 :    后面可以输入命令行命令.在执行任何命令前要确保在相应的模式下。
1.启动与退出 
   1)vi filename
   2)命令行模式下 wq 保存并退出,q!强行退出
  
2.基本设置-命令行模式下
   1)set showmode 设置显示模式
   2)set nu 显示行号
   3)syn on 显示语法高亮
   4)set tabstop=4

3.运行shell 命令与模式的转换
 1)!shellcmd 执行命令 或 shell (sh)启动 shell
 2)ESC 返回普通模式
 3)普通模式进入编辑模式
  a 光标后追加
     A 当前行后追加
        o 当前行后加一行
  O 大写O当前行前加一行
     i 光标前插入
      I 当前行前插入
        r 替换
  R 替换
  cw = dw+i 删除一个单词并插入新的单词
            


4.普通(可视命令)模式中 移动光标
 1)hjkl 左,下,上,右,7h,左移7个字符。 
    2)HML 移动到页首,页中,页尾
    3)ctrl+f, ctrl+b, 向下,向上移一屏 ctrl+d,ctrl+u,向下,向上移半屏 
 4)^$ 行首行尾
 5){} 段首段尾  () 句首句尾
 6)可视模式下 % ,移动光标到匹配的花括号上。
  7)nG,移动到n行处
 
5.删除-可视命令模式
 1),dw删除一个单词 dd 删除一行 d$ 或 D 删除到行尾 d^删除到行首
 2)X,dh删除光标前的单个字符,db删除当前光标到行首的字符
 3)x,d,dl删除光标后的单个字符,
 4)编辑模式时,ctrl+h删除光标前单个字符,ctrl+u删除到行首,ctrl+w删除光
标前的一个单词。
 5)dL 删除到最后一行,dH,删除到开始一行。
 6)dtc,删除到当前行中下一个字符c的位置
 
 
6.修改-可视命令模式
 1)cl,更改当前字符,cw修改当前单词到结尾,cb,修改到单词的开始位置,
 2)c3w, ,c0,修改到某行的结尾位置。
 3)c),修改到没句结尾位置,ctc,修改当前行直到下一个字符c所出现的位置之
间的内容。
 4)C,修改到某一行结尾,cc修改当前行,5cc修改从当前行开始的5行内容

7.替换-可视命令模式
    1)s,当前字符替换为,S,当前行替换为,5s,当前字符开始的5个字符替换

 2)~,光标处字符大小写转换
 
8.拷贝复制,undo,对换
 1)Y,拷贝到行尾,yy,拷贝本行,yw拷贝本单词,y$,y^拷贝到行尾,行首y),y}拷贝到句尾,段尾
 2)剪切 yydd,剪切本行,7yy,拷贝从当前行开始的7行内容
 3)粘贴 p
 4)undo , u
 5)xp,交换当前与后面字符的位置。
 6)ddp,交换当前与下面一行的位置。

9.小结范围选择命令
 1)W,w 向前移到单词前,后, ^,$ 行首行尾,(),句首句尾,{},段首段尾
 2)B,b 向后移到单词前,后,
 3)e 移到单词的最后一个字母。
 4)L,M,H 页尾,页中,页首 

10.搜索,替换
 1)fa,Fa,当前行中向下,向上搜索字符a,
 2)ta,Ta,当前行中向下,向上移到字符a之前,之后,并不可再重复(?)
 3) ,将重复最近一次f,F,t,T命令(t,T?)
 4)/字串,?字串,命令行模式下输入,向下,向上搜索字串,如果字串中出现/?则
使用\/ ,\?引用
 5)n重复搜索,N反方向搜索
 6)搜索中的特殊字符:
  ^,$,行首,行尾,
  .,*,[]任意单个字符,任意一或多个字符,
  \<,\>,
  \(...\),
 7)替换:[g][address]/sourcestring/replacestr/[g] 
  注释多行 :.,+499 s/^/#/g
  替换全部^M :1,$s/^M//g  (^M 使用ctrl+V,ctrl+m输入)
 
11.刷新荧屏,缩进
 1)命令模式下 ctrl+l (ell) 或 ctrl+r
 2)ctrl+T,ctrl+D,输入模式下,缩进,倒退缩进

12.系统崩溃后恢复文本
 vi -r

13.书签功能
 1)mt,'t, 建立标记,移到标记,",移到上一个标记
 2)标记可以代替行编号

14.命令行模式下
 1) set all 显示所有选项
 2)e filename,新建一个文件,e#,关闭当前,并返回上一个编辑的文件
 3)rew,编辑文件重新排序
 4)%,表示当前编辑的文件名

 

15.编辑多个文件,编辑多个缓冲区
 1)args,显示编辑文件的列表,next,prev,first,last, e filename,enew,新建
一个文件,
 2)buffers,ls,显示缓冲区列表,bn,转到第n个缓冲区,
bnext(bn),bprev(bp),bfirst(bf),blast(bl),new 新建一个buffer
 3)bdelete buffernumber,删除一个buffer,bwipe,真正删除一个buffer
 
16.分割,比较
 1)sp filename,水平分割并打开,vp filename,垂直分割并打开
 2)ctrl+w [jkhl] 上下左右在窗口间移动

17.常用plugin 的安装:
 1)Calendar 日历显示
 2)tagExplorer 目录导航
 3)FavMenu.vim Fav管理
 4)svncommand svn版本控制管理
 5)email.vim ,mailbrowser.vim

2.tagExplorer的使用
 :Tag


--------------使用vim 进行C/C++程序开发--------
1.plugin for C/C++ Develop
 1)ctag c的Tag
 2)tagmenu.vim
 3)cppcomplete.vim
 
2.define map key
 :map :w :!gcc -g -o %< %
 :map !%<

-----------使用vim 进行Java,SQL,XML,Perl,Pyth程序开发------
1.plugin for Java,Sql,XML,Perl,Sql
 1)ant_menu.vim
 2)oracle.zip,sql.vim,
 3)xml.vim
 4)perl.vim

阅读(1275) | 评论(0) | 转发(0) |
0

上一篇:升级了内存

下一篇:gvim編UTF-8的文件

给主人留下些什么吧!~~