免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 855 | 回复: 0

vim 实用笔记(不定期更新) [复制链接]

论坛徽章:
0
发表于 2008-03-21 04:21 |显示全部楼层

                                                vim技巧
近来写程序时候发现比较为会常用到的我都我把它记录下来拉
++++++++++++++++++++++++++++++++++++++++++++
一个窗口同时打开多个文件浏览
:vs file
++++++++++++++++++++++++++++++++++++++++++++
上下两行合并
shift+j
++++++++++++++++++++++++++++++++++++++++++++
修改命令操作
c l 更改当前字符
c w 修改到某个单词的结尾位置
c 3 w 修改到第三个单词的结尾位置
c b 修改到某个单词的开始位置
c W 修改到某个以空格作为分隔符的单词的结尾位置
c B 修改到某个以空格作为分隔符的单词的开始位置
c 7 B 修改到前面7个以空格作为分隔符的单词的开始位置
c 0 修改到某行的结尾位置
c) 修改到某个语句的结尾位置
c 4) 修改到第四个语句的结尾位置
c( 修改到某个语句的开始位置
c } 修改到某个段落的结尾位置
c { 修改到某个段落的开始位置
c 7 { 修改到当前段落起始位置之前的第7个段落位置
c tc 修改当前行直到下一个字符c所出现位置之间的内容
C 修改到某一行的结尾
c c 修改当前行
5 c c 修改从当前行所开始的5行内容
++++++++++++++++++++++++++++++++++++++++++++++++
快速定位
H 跳到第一行
M 跳到中间一行
L 跳到最后一行
++++++++++++++++++++++++++++++++++++++++++++++++

行复制
复制
起初行ma 结束行y'a 粘贴行 pp
剪贴
起初行ma 结束行d'a 粘贴行 pp
剪切
shift +v 选定要到行后 ctrl+x 粘贴行pp
shift +v 选定要到行后 ctrl+x直接进入编辑模式修改文件 要粘贴进入命令模式到粘贴行pp
命令模式
:1,10 co 50
光标在1行输入ma在10行输入mb在50行输入mc,然后命令:'a,'b co 'c
剪切则将刚刚到co改为m
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ZQ          相当于:q!,无条件退出
ZZ          相当于:wq,保存退出
:%!nl -ba   全文加上编号,如不加-ba则空行不计算在内。
m[a-z]      做标记[a-z]
'[a-z]      跳到标记[a-z]
Ctrl+} 下一个空行
+++++++++++++++++++++++++++++++++++++++++++++++++++

折叠功能

zf          代码折叠,需要选中
Ctrl+o      还原
还有set tags=./tags,(其它tags),索引的顺序跟这里的先后顺序有关。
如果在Insert模式下想选中一段文本该怎么做呢?和都不管用啊,别急,用可进入(Insert)模式,这个时候在用或进行块选定。
+++++++++++++++++++++++++++++++++++++++++++++++++++++

                                如何选中括号中的内容 进行:

将光标移至括号内,按shift+v进入行选模式,然后
i{ - 选小括号中内容,不包括小括号
a{ - 选小括号中内容,包括小括号
ib - 选中括号中内容,不包括括号
ab - 选中括号中内容,包括括号
i{ - 选大括号中内容,不包括大括号
a{ - 选大括号中内容,包括大括号
:h text-objects
下面还有些相关的tips,未全部验证:
vi{ 选中{}中间的内容,不包括{}
va{ 选中{}中间内容,包括{}
vi( 选中()中间内容
vi中间内容
vi[ 选中[]中间内容
vit 选中中间的内容
vi" 选中""中间内容
vi' 选中''中间的内容
vis 选中一个句子
vib 选中一个block
viw选中一个单词
vip 选中一个段落
...
++++++++++++++++++++++++++++++++++++++++++++++++++++
tags 用法
在函数中移动光标
[{ 转到上一个位于第一列的"{"
}]  转到下一个位于第一列的"{"
{   转到上一个空行
}   转到下一个空行  ([ and ] 也分别是两个指令)
ctrl+t 跳回
gd  转到当前光标所指的局部变量的定义
*   转到当前光标所指的单词下一次出现的地方
#   转到当前光标所指的单词上一次出现的地方
Vim 的创造者是一名计算机程序员,因此这就不奇怪 Vim 中有许多帮助编写程序的功能:
跳转到标识符被定义和使用的地方;在另一个窗口中预览有关的声明等等。
               
               
               
               
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/29321/showart_501880.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP