http://www.cnblogs.com/respawn/archive/2012/08/21/2649483.html

http://blog.163.com/liao_ya/blog/static/196322187201331062458384/

打造属于自己的Vim神器

vim-csupport

http://www.cnblogs.com/eddy-he/archive/2012/09/14/vim_csupport.html

VIM: C程序员插件C.vim

http://blog.csdn.net/guolb57/article/details/7013076

 八项强大的功能

功能一:自动为*.c文件添加文件头说明

当你打开一个扩展名为.c的文件,在文件开始处会自动加上如下的描述,并且将光标定位到description处,此时是insert mode可直接键入文件描述

$ vim myprogram.c
/*
* =================================================
*       Filename:  myprogram.c
*
*    Description:
*
*        Version:  1.0
*        Created:  01/19/09 20:23:25
*       Revision:  none
*       Compiler:  gcc
*
*         Author:  Dr. Fritz Mehner (mn), mehner@fh-swf.de
*        Company:  FH Südwestfalen, Iserlohn
*
* =================================================
*/

以改变AUTHOR COMPANY等得默认值

vim ~/.vim/c-support/templates/Templates

功能二:插入一个函数  \if

当需要创建一个新函数时,只要在正常模式(ESC)键入\if,VIM会提示键入函数名(如图一),会直接得到图二的默认函数内容。

功能三:插入main函数 \im

与功能二类似,在正常模式下键入\im, 得到图三的默认的main函数内容

功能四: 插入函数头 \cfu

插入一个函数头说明,在正常模式下键入\cfu,VIM会提示键入函数名,如图四,会得到如图五的函数说明注释块

功能五: 添加一个注释块 \cfr
        添加一个注释块, 在正常模式下键入\cfr, 会得到图6的注释块,并且光标被定位到注释块内,直接可键入注释。

功能六:包含(include)一个头文件 \p<

在正常模式下键入\p<, 会得到“#include <>”,并且光标被定位到尖括号内,可以直接键入要包含的头文件名

nmap <F4> :NERDTree<cr>

nnoremap <silent> <F5> :Grep<CR>

nnoremap <silent> <F12> :A<CR>

"切换到上一个结果

nmap <F6> :cn<cr>

"切换到下一各结果

nmap <F7> :cp<cr>

vim配置及插件安装管理(超级详细)

http://blog.csdn.net/namecyf/article/details/7787479

vim编程常用命令:

下面是我常用的一些命令, 放在这里供我备忘:

% 跳转到配对的括号去
[[ 跳转到代码块的开头去(但要求代码块中'{'必须单独占一行)
gD 跳转到局部变量的定义处
'' 跳转到光标上次停靠的地方, 是两个', 而不是一个"
mx 设置书签,x只能是a-z的26个字母
`x 跳转到书签处("`"是1左边的键)
> 增加缩进,"x>"表示增加以下x行的缩进
< 减少缩进,"x<"表示减少以下x行的缩进

cscope的主要功能是通过同的子命令"find"来实现的
"cscope find"的用法:
cs find c|d|e|f|g|i|s|t name

0 或 s 查找本 C 符号(可以跳过注释)
1 或 g 查找本定义
2 或 d 查找本函数调用的函数
3 或 c 查找调用本函数的函数
4 或 t 查找本字符串
6 或 e 查找本 egrep 模式
7 或 f 查找本文件
8 或 i 查找包含本文件的文件

如果每次查找都要输入一长串命令的话还真是件讨人厌的事情, Cscope的帮助手册中推荐了一些快捷键的用法, 下面是其中一组, 也是我用的, 将下面的内容添加到~/.vimrc中, 并重启vim:

nmap <C-_>s :cs find s <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>g :cs find g <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>c :cs find c <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>t :cs find t <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>e :cs find e <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>f :cs find f <C-R>=expand("<cfile>")<CR><CR>
nmap <C-_>i :cs find i ^<C-R>=expand("<cfile>")<CR><CR>
nmap <C-_>d :cs find d <C-R>=expand("<cword>")<CR><CR>

当光标停在某个你要查找的词上时, 按下<C-_>g, 就是查找该对象的定义, 其他的同理.
按这种组合键有一点技巧,按了<C-_>后要马上按下一个键,否则屏幕一闪就回到nomal状态了
<C-_>g的按法是先按"Ctrl+Shift+-", 然后很快再按"g"

QuickFix窗口中我们可以找到每一个编译错误, 同样你可以用鼠标点击每一条记录, 代码会马上自动跳转到错误处, 你还可以用下面的命令来跳转:

:cn        // 切换到下一个结果
:cp        // 切换到上一个结果

如果你经常使用这两个命令, 你还可以给他们设定快捷键, 比如在~/.vimrc中增加:
nmap <F6> :cn<cr>
nmap <F7> :cp<cr>

C-w,h j k l    向"左,下,上,右"切换窗口.

VI/VIM高级技巧征集中,欢迎大家来交流,谢绝灌水!

http://bbs.csdn.net/topics/350219702

w或W :光标右移一个字至字首
b或B :光标左移一个字至字首
e或E :光标右移一个字至字尾
) :光标移至句尾
( :光标移至句首
}:光标移至段落开头
{:光标移至段落结尾
nG:光标移至第n行首
n+:光标下移n行
n-:光标上移n行
n$:光标移至第n行尾
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行
0:(注意是数字零)光标移至当前行首
$:光标移至当前行尾

屏幕翻滚类命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏

: 进入ex模式
) 下一句
( 上一句
} 下一段
{ 上一段
]] 下一节
[[ 上一节
0 行的开头
$ 行的末尾
^ 行的第一个非空白字符
+ 下一行的开头
- 上一行的开头
(空格) 下一个字符
(回车) 下一行
/ 向前搜索
? 向后搜索
% 查找当前小(中,大)括号的匹配字符
, 逆向重复上一个f,F,t或T操作
; 重复上一个f,F,t或T操作
. 重复上一个操作
` 转到标记处
' 转到标记所在行的开头
`` 查找前回到上一个做标记的地方
' 查找前回到上一个做标记所在行的开头
~ 切换字符的大小写
" 保存到寄存器中
!! 重复上一次SHELL命令
! 把后面的文本送给命令, 取代输出(例如, !}fmt把当前的段落
送给命令fmt处理,然后用fmt返回的东西替换输出.)
>> 右移当前段落一个移动宽度(shiftwidth)
<< 左移当前段落一个移动宽度(shiftwidth)
>% 从当前到匹配小(中,大)括号之间的文本右移
<% 从当前到匹配小(中,大)括号之间的文本左移
(似乎漏了一个符号|, 移动到某一列----译注)
a 在当前位置之后添加
A 在当前行的末尾添加
^a 没有使用
b 上一个单词的开头
B 上一个单词的开头,忽略标点符号
^b 上移一屏
c 覆盖...
C 覆盖到行末尾
^c 终止插入模式,在命令模式没有用
d 删除...
D 删除到行末尾
^d 下移半屏,如果在插入模式下则移到上一个移动宽度(ShiftTab)处
e 单词的末尾
E 单词的末尾,忽略标点符号
^e 屏幕下卷一行
f 查找...
F 向后查找...
^f 下移一屏
g 未用
G ...跳至[缺省是到文件末尾]
^g 显示状态栏
h 左移
H 屏幕上的第一行
^h 在插入模式下是退格,命令模式下是左移
i 在当前的位置前面插入
I 在本行的第一个非空白字符前面插入
^i 插入模式下是制表键,命令模式下未用
j 下移
J 把下一行合并到本行
^j 命令模式下是下移,插入模式下是建一个新行
k 上移
K 未用
^k 未用
l 右移
L 屏幕中的最后一行
^l 重绘屏幕
m 把当前位置标记到寄存器中
M 屏幕的中间行
^m 回车
n 重复上次查找
N 逆向重复上次查找
^n 命令模式下是下移
o 在当前行的下面建一个新行
O 在当前行的上面建一个新行
^o 未用
p 在当前行的下面粘贴
(译注--应为在当前位置的后面粘贴)
P 在当前行的上面粘贴
(译注--应为在当前位置的前面粘贴)
^p 命令模式下是上移
q 未用
Q 退出并且启动ex
^q 未用
r 覆盖当前的字符
R 在插入模式下一直覆盖字符
^r 在命令模式下面重绘屏幕
s 替换
S 替换整行
t 到...
T 向后到...
^t 移到下一个移动宽度(shifttab)处
u 撤消上一次操作
U 撤消对本行的所有修改
^u 上移半屏
v 未用
V 未用
^v 未用
w 下一个单词的开头
W 下一个单词的开头,忽略标点符号
^w 命令模式下未用,在插入模式下是到上一个单词的开头处
x 删除当前字符
X 删除前一个字符
^x 未用
y 复制...
Y 复制整行
^y 屏幕上卷一行
z 重新配置当前行周围的屏幕
ZZ 保存之后退出
^z 未用
(译注--在命令模式下,^z执行了UNIX暂停操作)

转载于:https://www.cnblogs.com/jingzhishen/p/3628621.html

bundle中vim相关快捷键的使用相关推荐

  1. linux中vim保存快捷键设置,Linux中vim操作快捷键非常简洁

    Linux中vim操作快捷键非常简洁 作者:PHPYuan 时间:2019-03-20 03:40:08 vim 中快捷键操作(简洁版) yy:复制 p:粘贴[大写P是光标所在行的上一行粘贴,小p反之 ...

  2. java——开发工具eclipse中的相关快捷键及Google浏览器的快捷键(开发者实用),便于快速开发

    java--开发工具eclipse中的快捷键,便于快速开发 java--开发工具eclipse中的相关快捷键及Google浏览器的快捷键(开发者实用),便于快速开发 谷歌浏览器(Google)相关快捷 ...

  3. mac中删除相关快捷键

    自己的行为最惹人耻笑的人,却永远是最先去说别人坏话的人. --<伪君子> 最近在项目测试过程中,需要进行向前删除和向后删除的操作.我发现在mac上居然找不到向后删除的快捷键.因此Googl ...

  4. linux系统中VIM编辑器推荐安装插件

    k-vim VERSION: 9.0 LAST_UPDATE_TIME: 2015-05-02 作者 wklken (凌岳/pythoner/vim党预备党员) Email: wklken@yeah. ...

  5. 跳转引用、禅模式...VS Code 中 11 个快捷键/操作,让你的效率与舒适度翻倍!

    在本文之前,我们已经连续在两篇文章中讨论了 VS Code 中的快捷键: 你真的会用 VS Code 的 Ctrl.Shift和Alt吗?高效易用的快捷键:多光标.跳转引用等轻松搞定 VS Code ...

  6. linux 相关快捷键

    linux 相关快捷键 http://linux.chinaunix.net/begin/2004-10-05/34.shtml#_Toc41417098 1.使用虚拟控制台 登录后按"Al ...

  7. android中常用的快捷键

    2019独角兽企业重金招聘Python工程师标准>>> android中常用的快捷键 Eclipse快捷键-方便查找,呵呵,记性不好 行注释/销注释 Ctrl+/  块注释/销注释/ ...

  8. C语言再学习 -- vim常用快捷键(转)

    参看:[Linux]vim常用快捷键 Linux中vim编辑器的功能非常强大,许多常用快捷键用起来非常方便,这里将我学vim入门时学的一些常用的快捷键分享给大家一下,希望可以帮助你们. 这个是我将鸟哥 ...

  9. Fiddler抓包工具详解(二)(fiddler菜单工具栏详解,相关快捷键)

    文章目录 fiddler的主界面 菜单栏(设置选项) File菜单 Rules菜单 Tools菜单栏 View菜单栏 help菜单栏 工具栏 工具栏内容 如何显示工具栏 增加备注 重放请求 移除会话 ...

最新文章

  1. 脑内世界模型:脑科学基础上的意识问题哲学解说
  2. 优化SQl语句的十个重要步骤
  3. 2020年电大c语言程序设计作业1答案,2019年最新电大C语言程序设计作业答案.doc
  4. JDK10的新特性:var泛型和多个接口实现
  5. Java大数据-Week2-Day1 面向对象基础
  6. 潜流式人工湿地计算_「环保技术」农村混合污水人工湿地处理
  7. php中ASCⅡ码的妙用
  8. NRF52840 USB串口例程
  9. python输入名字配对情侣网名_输入名字配置情侣网名-网名搜索
  10. 基于OpenSSL,实现C语言SM2的PKCS10的证书请求
  11. 相机标定实验过程注意问题及总结
  12. 2019个人成长计划
  13. 雷军亲自捧场,双液冷游戏手机演绎“暴力美学”
  14. Android 学习论坛博客及网站推荐
  15. 10款相似图片搜索引擎
  16. altera系列fifo和ram
  17. Xilinx FPGA平台GTX简易使用教程(一)GTX基础知识
  18. 基于虚拟机Ubuntu系统下C语言简单编写程序
  19. 机器学习基石三——机器学习分类
  20. [UnityShader入门精要读书笔记]37.水波效果

热门文章

  1. C语言表达式作业,表达式和语句
  2. 多线程(thread)+进程(Process)
  3. 《Deep Learning Methods for Reynolds-Averaged Navier-Stokes Simulations of Airfoil Flows》
  4. android 字体像素转换工具类_android px,dp,sp大小转换工具
  5. python setup.py build_打包Python项目为rpm时遇到python setup.py build报错的问题
  6. 判断字符串是否是空格
  7. kippo mysql_Kippo:一款优秀的SSH蜜罐开源软件.pdf
  8. 计算机硬件能够直接识别的语言是英语,计算机硬件能直接识别、执行的语言是()...
  9. php安装redis扩展模块,[教程]为PHP安装phpRedis扩展模块
  10. mysql 实例与用户_MySQL(17):用户登录实例