加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

在Gvim中自动恢复上一个会话

发布时间:2020-12-15 21:14:44 所属栏目:安全 来源:网络整理
导读:我安装了sessionman,它运行正常.但是当我重新加载X会话两次(注销/登录,重启等)时会丢失会话,因为当KDE恢复G vim时,它不会自动加载会话,而只会加载最后一个文件,然后在下次重新加载时将其保存在最后一个会话名称下.如果我没有运行SessionOpen,那么在下次重新
我安装了sessionman,它运行正常.但是当我重新加载X会话两次(注销/登录,重启等)时会丢失会话,因为当KDE恢复G vim时,它不会自动加载会话,而只会加载最后一个文件,然后在下次重新加载时将其保存在最后一个会话名称下.如果我没有运行SessionOpen,那么在下次重新加载时,我的上一个会话将丢失.

我已经配置了会话自动保存.如果Gvim也可以自动加载上一个会话,那将是很好的.但是,即使手动,此功能也不适用于我.当我重新启动Gvim时,SessionShowLast打印“上一个会话未定义,当前会话是”“”.

sessionman文档说:“打开的会话的名称保存在g:LAST_SESSION变量中,如果’viminfo’选项包含’!’,则保存在viminfo文件中.但是我没有找到任何明确的解释是什么是“viminfo选项”,它应该包含’!’,以及如何设置它.另外我不确定如何从vimrc执行SessionOpenLast.

如果我试图解决问题的方式是错误的,那么请纠正我.

解决方法

viminfo是一个变量,描述了应该在viminfo文件中存储哪些数据.

有关完整的详细信息,请在vim中运行:help’viminfo'(注意引号):

!       When included,save and restore global variables that start
            with an uppercase letter,and don't contain a lowercase
            letter.  Thus "KEEPTHIS and "K_L_M" are stored,but "KeepThis"
            and "_K_L_M" are not.  Nested List and Dict items may not be
            read back correctly,you end up with a string representation
            instead.

使用:set viminfo查看viminfo设置的当前值.在?/ .vimrc文件中修改它.

set viminfo='100,<500,s10,h,!

因为vimrc是在插件之前加载的,所以将SessionOpenLast添加到vimrc将不起作用.要解决此问题,请创建一个自动命令:

autocmd VimEnter * SessionOpenLast

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读