开发周期不是一两天, 要把当前的窗口布局, 命令历史/寄存器历史等保存下来,以便下次编写时快速恢复.

需要保存两个方面的信息:

session: 保存窗口的view试图窗口布局, 和全局设置     :mksession [Session.vim]

  导入会话文件: source <sessionfile>   // source 是linux中bash脚本的命令,相当于include, 在bash中,就是把脚本执行一次<sessionfile.vim>中

是脚本命令...

当你的项目有多个不同版本(位于不同的目 录),而你想始终使用一个会话文件时,使用选项: sessionoptions-=curdir  sessionoptions+=sesdir,

你只需要把会话文件拷贝到不同的目录,然后使用就可以了. 会话文件中保存的是文件的相对路径,而 不是绝对路径.

viminfo: 保存编辑历史/jump历史, 寄存器等信息,    :wviminfo <文件名称>

默认vim每次退出后都会写一个.viminfo文件到用户的家目录~ ,如:/root中, 但是这个.viminfo会在每次使用vim后自动更新...

读入viminfo,   :rviminfo <文件名称>

-------------------------------------

: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

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

文件的last modified时间   属性对普通应用来说,没有多少意义和影响, 但是对于编程和编译器来说,就有很大关系了,

编译器就是通过last modified time来判断这个文件如.c, .cc文件是否"过时", 来决定是否对它进行编译.在编译大型项目,如操作系统源码一次

编译可能要几个小时, 所以如果文件没有修改, 最好用 :x命令.

:x  ~= :wq   , :x也是写入并退出,但是 如果文件内容没有改变, 这时将不会改变文件的last modified; 而:wq则不管文件的内容改变没有, 都会强制

地写入文件,并改变last modified.

所以推荐使用:x命令, 代替:wq命令 , 当然对多窗口而言, :x会隐藏文件窗口, 但不会退出vim.

在:w :q  :x后面加上a, 表示all , 对all打开的文件进行操作

vim的bash命令历史 不同于 windows, 对linux, 历史命令保存在文件中: ~/.bash_history中, 即使你关闭了bash, 再次打开bash仍然能够

引用历史命令, 而win它的cmd的历史命令是存放在内存中的,退出cmd, 就没有了, 再次打开cmd就引用不到以前的命令了...

单独的一个y, 要和移动命令一起使用, yy=Y 大写的Y也是复制一行;

vim对文件的加密操作: 在bash命令行使用: gvim -x <filename> 或 在vim中执行命令   :X

保存vim的ide环境的更多相关文章

  1. Java 开发主流 IDE 环境体验

    前言 本来应该继续从 Oracle 官网搬砖的,但是随着示例代码越来越复杂,涉及的类库越来越多,使用 Vim 写 Java 代码就很力不从心了,是时候上 IDE 了.我最熟悉的 IDE 环境是 Ecl ...

  2. 草稿-把vim变成IDE

    从昨天下午到现在一直在研究vim,初学者,从vim最基本的命令开始看起的.是通过vimtutor学习的. 看到最后一章的时候,发现原来vimtutor中的知识知识vim中的冰山一角,vim真正的强大之 ...

  3. Selenium IDE环境部署

    摘自https://blog.csdn.net/ywyxb/article/details/59103683 Selenium IDE环境部署 - Firefox浏览器 Firefox-ESR版本下载 ...

  4. 如何让vim像IDE一样一键放大缩小字号?

    原创,转载请注明出处 在其他IDE中,比如codeblocks,按住ctrl,然后滑动鼠标滚轮就可以实现字体的放大缩小. 在强大的vim中code怎么能缺少这种功能?! 在vim插件库中查询一番,发现 ...

  5. 孤荷凌寒自学python第四天 安装python的其它IDE环境

    孤荷凌寒自学python第四天 安装python的其它IDE环境 (完整学习过程屏幕记录视频地址在文末) 因为是完全的新手,对python环境搭建完全一无所知,因此,可真是大费周章才配置了其它多个Id ...

  6. Selenium----Selenium简单介绍以及Selenium IDE环境搭建,脚本录制

    1.selenium简单介绍 心得:作为一个新手开始了解这个工具,打算从录制脚本开始学习,“录制,看,学习,写”,总结网友说得打算先使用Selenium IDE录制学习,再使用Selenium RC开 ...

  7. c# 第二节 c#的常用IDE环境

    本节内容: 1:常用ide环境 2:Visual Studio 简介 3:Visual Studio Express简介 4:Sharp Develop 5:  IDE 与 .Net的版本 1:常用i ...

  8. 打造好用的C++ IDE环境

    https://www.jianshu.com/p/1aa989808e15 这哥们说的也是极好,也可以这部分直接看他的示例! mingw-w64应该可以算是mingw的改进版本吧,mingw系列编译 ...

  9. LibOpenCM3(四) VSCode IDE 环境配置

    目录 LibOpenCM3(一) Linux下命令行开发环境配置 LibOpenCM3(二) 项目模板 Makefile分析 LibOpenCM3(三) .ld文件(连接器脚本)和startup代码说 ...

随机推荐

  1. [CareerCup] 9.2 Robot Moving 机器人移动

    9.2 Imagine a robot sitting on the upper left corner of an X by Y grid. The robot can only move in t ...

  2. LINUX信息安全系统设计基础第二周学习总结

    1 Linux命令 2 man命令 1.Terminal(终端) Linux 系统还提供了一个叫做终端模拟器的程序(Terminal),下面几个比较常见的终端模拟器,例如 gnome-terminal ...

  3. IoC框架(转载)

      1 IoC理论的背景    我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑.  图1:软件系统中耦合的对象 如果 ...

  4. setTimeout 0秒

    我们通常知道常用setTimeout 0秒来解决动画或者一些效果的延迟问题:众所周知js是单线程,用0秒能把要执行的任务从队列中提出来.其实我也不太懂 有这个问题alert(1);setTimeout ...

  5. js中定时器的使用

    1.setInterval <!DOCTYPE html> <html> <head> <title>json</title> <sc ...

  6. 理解C#泛型

    在C# 2.0中引入了泛型,泛型的出现解决了编码中的很多问题.相信大家一定经常用到"System.Collections.Generic"命名空间中的泛型集合类("Gen ...

  7. ListView 和 Adapter用法

    一个ListView通常有两个职责. (1)将数据填充到布局. (2)处理用户的选择点击等操作. 第一点很好理解,ListView就是实现这个功能的.第二点也不难做到,在后面的学习中读者会发现,这非常 ...

  8. 每天一个linux命令(16):whereis 命令

    whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b).man说明文件(参数-m)和源代码文件(参数-s).如果省略参数,则返回所有信息. 和 find相比,whereis查找的速度 ...

  9. sublime text 删除安装的插件

    ctrl+shift+p输入remove package选择要删掉的插件即可

  10. php 判断是否get传值的参数是否存在

    if(is_array($_GET)&&count($_GET)>0)//先判断是否通过get传值了    {        if(isset($_GET["id&qu ...