程序挪动
回顾上节课内容🤔
- 上次内容很简略,次要针对文本类素材
-
挪动段落
- { 向前
- } 向后
-
挪动句子
- ( 向前
- ) 向后
- 如果我想程序中疾速挪动
- 怎么办?🤔
# 首先下载文本找到 tomsawyer.txt
git clone http://github.com/overmind1980/vimtutorial.git
#而后把文本关上
cd vimtutorial
vi 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.vim
sudo 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…)