程序挪动

回顾上节课内容

  • 上次内容很简略,次要针对文本类素材
  • 挪动段落

    • { 向前
    • } 向后
  • 挪动句子

    • ( 向前
    • ) 向后
  • 如果我想程序中疾速挪动
  • 怎么办?
#首先下载文本找到tomsawyer.txtgit clone http://github.com/overmind1980/vimtutorial.git#而后把文本关上cd vimtutorialvi oeasy.java

括号间跳转 %

  • 当咱们的鼠标在小括号外部时

    • 比方在 public static void main(String[] args) 中的 小括号(

      • 咱们能够应用 % 跳转到括号对的前半部分
      • 而后咱们能够应用 % 在这对儿括号的两个地位指间跳转
  • 这个 % 岂但对于小括号有用,对于成对的大括号、中括号也都有用

    • 对于c语言的 / ... / 正文的头尾 (﹒︠﹒︡ )有用
    • 对于 #if,#ifdef,#else,#elif,#endif 也有用
    • 这个 % 不反对 [count]

小括号跳转

  • 方向

    • [ 往上

      • [( 进挨着的上一个(
    • ] 往下

      • ]) 近挨着的下一个)
  • 如果是大括号呢?

括号跳转

  • [( 跳转到上一个没配对的 (
  • ]) 跳转到下一个没配对的 )
  • [{ 跳转到上一个没配对的 {
  • ]} 跳转到下一个没配对的 }
  • 反对 [count]
  • 向上就是[
  • 向下就是]

函数中的跳转

  • 方向

    • [ 往上

      • [{ 紧挨着的上一个{
      • [[ 本块的第一行
    • ] 往下

      • ]} 近挨着的下一个}
      • ]] 本块的最初一行

正文的头尾

  • 正文跳转

    • [/[*上一个正文/* .... */的头
    • ]*]/下一个正文/* .... */的头

函数间跳转


-函数跳转

- `[m`下一个函数结尾- `[M`上一个函数结尾- `]m`下一个函数结尾- `[M`上一个函数结尾- 反对 `[count]`    - `3]m` 能够往下跳到第 `3` 个函数结尾- `[m`、`]m` 这两个其实还挺好用的

跳到定义

  • 找到本地定义
  • gd - goto global declaration

  • 和 * 不一样的是它会往前找到第一个
  • [[ 的范畴内的第一个

没有配对的 #if 宏定义

  • 这个是针对宏定义外面的内容来的

    • [# 上一个没有配对的 #if#else
    • ]# 下一个没有配对的 #else#endif

标签跳转

#查找matchit.vimsudo find / -name matchit.vim# 把match.vim插件放到零碎插件文件夹cp /usr/share/vim/vim81/macros/matchit.vim /usr/share/vim/vim81/plugin#关上一个网页vi oeasy.html

  • 这个matchit能够反对标签的跳转
  • 比方在 <html> 处按下 % 就能够到配对的 </html>
  • 挺好玩的
  • 试试吧

总结

  • 括号间跳转

    • 成对括号间跳转 %
    • 不成对括号间跳转

      • [( 跳转到上一个没配对的 (
      • [) 跳转到下一个没配对的 )
      • [{ 跳转到上一个没配对的 {
      • [} 跳转到下一个没配对的 }
  • 函数间跳转

    • ]m 下一个函数结尾
    • [m 上一个函数结尾
    • ]M 下一个函数结尾
    • [M 上一个函数结尾
  • #if#else#endif 没有配对的

    • [# 上一个没有配对的 #if#else
    • ]# 下一个没有配对的 #else#endif
  • 正文的头尾

    • [/[* 上一个正文 /* .... */ 的头
    • ]*]/ 下一个正文 /* .... */ 的头
  • 如果我想疾速找到某个货色怎么办呢?
  • 下次再说

[Github地址] (https://github.com/overmind19...)
[Gitee地址] (https://gitee.com/overmind198...)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/course...)