`
hyshucom
  • 浏览: 811562 次
文章分类
社区版块
存档分类
最新评论

android开发之VIM快捷键使用指南

 
阅读更多

转载地址:http://blog.csdn.net/blogercn/article/details/7487826

android的代码包括JAVA,C,C++和各种脚本,算起来有十几万个文件,阅读,编辑,使用这些代码,需要寻找一款合适的软件才能事倍功半。运行在WINE模式下的source insight工具不仅反应很慢,而且有很多符号在阅读时根本就不会跳转,令人非常困惑。因此我们大部分人只能入乡随俗,要么使用eclipse,要么使用VIM或者EMACS.VIM和EMACS作为linux下的两大编辑神器,对于从WIN转过来的朋友来说,还是比较富有挑战性的,关健在于习惯。他们都能通过命令行和快捷键完成所有工作,而且可以通过插件无限扩展,两者的区别在于,一个更接近DOS,所有操作快捷却对鼠标支持不是很好。一个和WIN比较接近,对鼠标支持比较好。但听说这两大阵营斗的正醋,宛如当年基督教与新教的斗争。也许需要两个都试试才能决定自己加入哪个阵营。在android的develop目录的IDE目录下,可以找到android对一些流行编辑器提供的配置文件。

作为一个典型的WIN用户,其实我们是无法理解这两大神器的。从WIN角度来说,一个好的软件应该需要达到不使用说明书就能操作的地步。但我们的linux同行显然不这么认为,感觉似乎速度,效率,命令的支持才是一个软件的魅力的源泉。所以我们只能入乡随俗,学习一个软件,先读他的说明书,背会他的快捷键和命令行。

确切的说,VIM有三种状态,快捷键状态,命令行状态,编辑状态。通过快捷键ESC切换。但大部分书都会把命令行和快捷键归入一种状态,所以常常说是两种状态,这也不错,快捷键和命令有时确实不太容易分清,一般来说,快捷键不需要回车确认,就会自动执行。

VIM的学习应该分几步,第一步是命令,快捷操作掌握。第二步是使用各种插什,第三步是编写自己工作需要的环境脚本文件.vimrc

下面列出我刚开始学习时总结的快捷键:

  1. 跳转,区分大小写,加shift的是大写:
  2. 1,上下左右箭头hkjl上下左右移一个字符
  3. 退格,左移一字符
  4. 空格,右移一个字符
  5. 2.Ctrl-f往下滚动一屏
  6. Ctrl-b往上滚动一屏
  7. 3.Ctrl-U往上滚动半屏
  8. Ctrl-D往下滚动半屏
  9. 4.Shift+h顶部第一行字符起始,也即大写H
  10. Shift+m中间
  11. shift+l底部最后一行起始
  12. 5.^,0当前行起始
  13. $,当前行尾
  14. 6.~光标上一行首
  15. Enter下一行首
  16. 7.[n]G。指定行,500G,到500行
  17. gg跳到文章开头
  18. shift+g跳到文章末尾
  19. 8.Ctrl-E内容整体上移一行
  20. Ctrl-Y内容整体下移一行
  21. 9.(){}完整句子句首,完整句子句尾,完整段落首位置,完整段落尾位置
  22. 插入,记下a,i,使用跳转也行:
  23. a,光标之后插数据
  24. A,光标行尾插数据(即shift+a)
  25. i,光标之前插数据
  26. I,光标行首插数据(即shift+I)
  27. o.所在行之后
  28. O,所在行之前(即shift+o)
  29. 修改替换,记了C或者R,其他也能使用跳转
  30. shift+c替换从光标开始的字符
  31. cw替换单字
  32. [n]cc替换行,n行,n>=1
  33. [n]s
  34. shift+s
  1. r替换一个
  2. R替换多个
  3. ~转换大小写
  4. 撤消
  5. u撤消先前执行的
  6. U撤消全部
  7. 删除,记个x,不停的按就行了
  8. [n]x删除当前单个字符
  9. [n]X删除前一个字符
  10. dw
  11. [n]dd删除N行
  12. D删除行尾
  13. 复制删除粘贴
  14. yy,Y复制
  15. p光标行下
  16. shift+P光标行上面
  1. EX命令,上面的大都是快捷键,下面的大都是命令。
  2. 多行复制:
  3. :line#1,line#2coline#3从某行#1开始到某行#2结束内容复制到某行#3之后
  4. .当前行,$文件结尾
  5. 移动:
  6. :line#1,line#2mline#3从某行#1开始到某行#2结束内容复制到某行#3之后
  7. 删除:
  8. :line#1,line#2d
  9. 查找:
  10. :str正向查找
  11. :?str反向查找
  12. n或者/从当前位置开始检索下一个,相当于F3
  13. shift+n或者?从当前位置开始反向检索下一个,相当于shift+F3
  14. :/pat/+n光标移到pat所在行之后第n行
  15. :/pat?+n光标移到pat所在行之前第n行
  16. 模式检索:
  17. :/^search只检索行首位置
  18. :/serch$只检索行尾
  19. :/\<search\>
  20. 支持通配符.*,[a-z],[dm]
  21. 替换字符串:
  22. :[g]/search-staring/s//replace-string/[g][c]
  23. 如:g/BankA/s//BankB/g
  24. 如果需要手动确认,加个C:
  25. g/BankA/s//BankB/gc
  26. 编辑多个文件:
  27. vimfile1file2
  28. 合并文件:
  29. :line#rfilename把读取的文件插入当前光标位置
  30. 删除特殊字符:
  31. 1,$s/^M//
  32. VIM里运行shell命令:
  33. :!command
  34. !!command
  35. :sh
  36. 如:!adbdevices
  37. !!adbdevices
  38. 保存文件退出
  39. :w写入不退出
  40. :w!强制写入
  41. :wq  写入退出
  42. :wq! 写入强制退出
  43. ZZ 写入退出,使用shift+两次ZZ
  44. :q  退出
  45. :q! 强制退出

这个掌握之后,需要研究一下插件和vimrc文件编写,这些可以参考《手把手教你把 Vim 改装成一个 IDE 编程环境》

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics