使用vim 开发C++

2 篇文章 0 订阅

原版:http://easwy.com/blog/archives/advanced-vim-skills-catalog/



先来两张指令图



============================


(1) 使用VIM的会话(session)及viminfo的保存和恢复 上次开发环境

      

       这里所说的会话和viminfo,包括了你在本次使用VIM过程中的编辑环境,VIM可以把这个编辑环境保存下来,然后你在下次启动VIM后,可以再恢复回这个环境。我们在开发软件项目时,其周期不是一两天。如果你在中途退出了VIM而不能恢复原先的编辑环境的话,你又要重新打开你所打开的文件,重新定义你的映射、缩写,重新定位你所设定的标记的位置,重新设置项目相关设置……不是一般的麻烦!

要恢复上次的编辑环境,我们需要保存两种不同的信息,一种是会话信息,另外一种是viminfo信息。

-    会话信息中保存了所有窗口的视图,外加全局设置。
-    viminfo信息中保存了命令行历史、搜索字符串历史、输入行历史、非空的寄存器内容、文件的位置标记、最近搜索/替换的模式、缓冲区列表、全局变量等信息。


先看一下我们当前目录,执行”:pwd”,显示“/home/xxx/Desktop”,接下来,执行下面的命令:

:cd src                            "切换到/home/easwy/src/vim70/src目录
:set sessionoptions-=curdir       
"在session option中去掉curdir
:set sessionoptions+=sesdir       
"在session option中加入sesdir
:mksession vim70.vim              
"创建一个会话文件
:wviminfo vim70.viminfo           
"创建一个viminfo文件
:qa                               
"退出vim

退出vim后,在命令行下执行“
gvim & ”,再次进入VIM,这时看到的是一个空白窗口。然后执行下面的命令:

:source ~/src/vim70/src/vim70.vim  "载入会话文件
:rviminfo vim70.viminfo           
"读入viminfo文件


复习下:

       1.在下达的命令后面加上&,就可以使该命令在后台进行工作,这样做最大的好处就是不怕被ctrl+c这个中断指令所中断。

  2. 那大家可能又要问了,在后台执行的程序怎么使它恢复到前台来运行呢?很简单,只用执行fg这个命令,就可以了。

  3.可能有些同学又要问了,我现在已经在前台运行的命令,我能把它放到后台去运行么?当然可以了,只要执行ctrl+z就可以做到了。是不是很赞啊!

  4.说到这里可能有些同学又要问了,如果我有多个进程在后台运行,那如何恢复到前台来执行呢?这时候就要用到jobs这个命令了,通过jobs这个命令,能够列出所有在后台执行的进程,那个中括号([ ])里面的数字就是 jobs 的代号啰 ,通过fg %number 就可以恢复指定的后台进程.



(2)  使用 vimrc

当VIM在启动时,如果没有找到vimrc或gvimrc,它缺省工作VI兼容的模式。这意味着,你只能使用VI所具备的功能,而VIM中的大量扩展功能将无法使用。也许这就是你的VIM如此难用的原因。VIM中自带了一个vimrc例子,让我们从这个例子开始吧。

示例的vimrc(名为vimrc_example.vim)通常位于/usr/share/vim/vimXXX/目录下,其中vimXXX与你所使用的VIM版本有关。

首先把这个示例的vimrc拷贝到相应的目录,在Linux下,应该把它拷贝到你的home目录下,名字为”.vimrc”,下面是shell命令:


cp /usr/share/vim/vim70/vimrc_example.vim ~/.vimrc

或者你在VIM中执行下面的命令,和上面的shell命令完成相同的功能:

:!cp $VIMRUNTIME/vimrc_example.vim ~/.vimrc

现在,你退出VIM后再进入,你的VIM和刚才已经不一样了。


复习下:

:!cp   在vim  下 加 ! 表示执行shell 下的命令

$VIMRUNTIME  vim变量值— 运行时变量 。 在 vim 下  执行 :echo $VIMRUNTIME 可以看到值。vim  工作目录:/usr/share/vim/current  。 current 是个link 档,指向vim70

~ 是当前的home目录

.xxx 前面带”点“ 的文件是隐藏文件,查看要用ls -a



VIM自带的示例vimrc中,只定义最基本的配置。

http://www.amix.dk/vim/vimrc.html有一个非常强大的vimrc,有人戏称为“史上最强的vimrc”,或许有些言过其实。不过,如果你通读了这个vimrc,相信能从中学到很多很多……


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值