您的位置:首页 > 运维架构 > Shell

第三章 标记位置mark,切换shell

2016-10-18 02:47 176 查看
第二章简述了EX命令格式,vim为几乎所有功能都提供了相应的EX命令。

所以从这个角度来说,vim使用是否得心应手,就看掌握的EX命令是否足够多,足够熟练。

mark标记,既是范围又可以跳转,vim会自动帮我们记录某些感兴趣的位置点。

. ——最近编辑的位置
0-9 ——最近使用的文件
∧ ——最近插入的位置
' ——上一次跳转前的位置
" ——上一次退出文件时的位置
[ ——上一次修改的开始处
] ——上一次修改的结尾处

想要知道当前有哪些地方被做了标记,可以

:marks
利用vim自动记录的位置点,我们可以方便的在文件之间跳转,在修改的开始或结尾处跳转。

自己定义标记位置,比如设定字母q为一个标记

:mark q
想跳转到标记q处,使用:

:'q
同样的操作也可以在普通模式下:

mq
'q
删除自定义q标记

:delmarks q
删除所有自定义标记

:delmarks!
我们用小写字母a-z自定义的标记,只能在文件内部跳转。

如果想要在文件之间快速跳转,除了自动记录的0-9之外,还可以使用大写字母A-Z标记。

:marks Q
:'Q
当然在普通模式下
mQ
'Q
一样成立。
同时,vim会保存一个跳转列表,就算删除掉标记,该列表一样存在。

可以用ctrl+o后退,ctrl+i前进来遍历列表,快速实现你曾经做过的那些重复跳转。

————————————————————————————

我们所输入过的EX命令,vim都会自动的保存下来,在普通模式下输入

q:
打开保存的命令行窗口。

q:
退出命令行窗口。

不退出vim就可以方便的调用外部程序,以前我们如果正在vim中工作,需要执行linux系统命令,只能:wq保存退出vim,执行完shell命令后,再打开vim继续工作,这样很不方便。

于是vim提供了两种方式来应对这类情况:

①在EX命令行中输入叹号!

:!ls
浏览当前目录下的文件和文件夹

所以按照该方式,我们可以在不退出vim的情况下,gcc编译程序了

:!gcc %
%代表当前文件,也可以显式输入我们需要编译的文件名。

②在EX命令行中输入shell

:shell

这种方式类似于Windows系统的切换,将vim暂停放到后台,我们就能执行一系列shell命令,完成后再按【ctrl+d】即可自动返回vim。

注意,如果在这种方式下修改了源文件,但并没有保存就切换出来,此时gcc编译的还是未修改前的那个文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息