Advertisement
Guest User

Untitled

a guest
Apr 25th, 2015
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.96 KB | None | 0 0
  1. ## 光标移动 ##
  2.  
  3. h,j,k,l = ←, ↓, ↑, →
  4. ctrl+f = 下一页(forward)
  5. ctrl+b = 上一页(backward)
  6. w = 跳到下一个单词的开头
  7. W = 跳到下一个单词(空白分隔)的开头
  8. e = 跳到下一个单词的末尾
  9. E = 跳到下一个单词(空白分隔)的末尾
  10. b = 跳到前一个单词的开头
  11. B = 跳到前一个单词(空白分隔)的开头
  12. 0 = 跳到本行行头
  13. $ = 跳到本行行尾
  14. ^ = 跳到本行第一个非空白字符
  15. g_ = 跳到本行最后一个非空白字符
  16. gg = 跳到第一行
  17. G = 跳到最后一行
  18. [N]G = 跳到第N行
  19. `. = 跳到最后编辑的地方
  20. * = 向下查找当前光标所在位置的字符串
  21. # = 向上查找当前光标所在位置的字符串
  22.  
  23.  
  24. <!--more-->
  25.  
  26.  
  27. ## 插入模式 ##
  28.  
  29. i = insert mode at cursor
  30. I = insert at the beginning of line
  31. a = append after the cursor
  32. A = append at the end of the line
  33. o = open blank line below current line
  34. O = open blank line above current line
  35. Esc = exit insert mode
  36.  
  37.  
  38.  
  39. ## 编辑 ##
  40.  
  41. u = undo
  42. ctrl+r = redo
  43. ~ = switch case
  44. >> = indent line one column right
  45. << = indent line one column left
  46. == = auto-indent current line
  47.  
  48.  
  49.  
  50. ## 剪切与粘贴(删除) ##
  51.  
  52. dd = 删除当前行,并把删除的行存到剪贴板里
  53. [N]dd = 删除当前行开始的N行,并把删除的行存到剪贴板里
  54. x = 删除当前字符
  55. X = 删除前一个字符
  56. dw = delete to end of word
  57. D = delete to end of line
  58. yy = 复制当前行
  59. [N]yy = 复制N行
  60. yw = copy to end of word
  61. y$ = copy to end of line
  62. p = 在光标位置之后粘贴
  63. P = 在光标位置之前粘贴
  64.  
  65.  
  66.  
  67. ## 查找 ##
  68.  
  69. ```vim
  70. /pattern " search for pattern
  71. ?pattern " search backwards for pattern
  72. /ab* " 重复 b 多次或者 0 次,可以匹配 b,be,bee,beee 等
  73. /ab\+ " 重复匹配 b 至少一次
  74. /ab\= " 重复匹配 b 字符 0 次或者一次
  75. /a.b " 匹配任何一个非空白符,可以是 a b,a1b,acb,a*b,a-b 等
  76. n " repeat search in same direction
  77. N " repeat search in opposite direction
  78. ```
  79.  
  80.  
  81.  
  82. ## 替换 ##
  83.  
  84. ```vim
  85. :s/str1/str2/ " 用字符串 str2 替换当前行中第一次出现的字符串 str1
  86. :s/str1/str2/g " 用字符串 str2 替换当前行中所有的字符串 str1
  87. :s/str1/str2/gc " 用字符串 str2 替换当前行中所有字符串 str1,每次替换前询问请求确认
  88. :s/str1/str2/gci " 用字符串 str2 替换当前行中所有字符串 str1,不区分大小,替换前请求确认
  89. :%s/str1/str2/g " 替换每一行中所有的字符串 str1 为 str2
  90. :g/str1/s//str2/g " 同上
  91. :s#/oradata/apras/#/user01/apras1# " 将当前行第一个 /oradata/apras/ 替换成 /user01/apras1/
  92. :n,$s/str1/str2/g " 替换第 n 行开始到最后一行中每一行所有 str1 为 str2
  93. :10,20 s/^/ /g " 从第 10 行到第 20 行,每行前面加四个空格,用于缩进
  94. ```
  95.  
  96.  
  97.  
  98. ## 退出 ##
  99.  
  100. :w = 保存
  101.  
  102.  
  103.  
  104. - - - - - -
  105.  
  106. TEST test TEST test TEST
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement