ctrl+shift+p filters: :st2 :st3 :win :osx :linux
浏览

会话管理器

sascha-wolf ST3

一个灵活且易于使用的会话管理器

详细信息

安装

  • 总数 2K
  • Win 1K
  • Mac 438
  • Linux 514
8月6日 8月5日 8月4日 8月3日 8月2日 8月1日 7月31日 7月30日 7月29日 7月28日 7月27日 7月26日 7月25日 7月24日 7月23日 7月22日 7月21日 7月20日 7月19日 7月18日 7月17日 7月16日 7月15日 7月14日 7月13日 7月12日 7月11日 7月10日 7月9日 7月8日 7月7日 7月6日 7月5日 7月4日 7月3日 7月2日 7月1日 6月30日 6月29日 6月28日 6月27日 6月26日 6月25日 6月24日 6月23日
Windows 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Mac 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0
Linux 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

读我

源代码
raw.​githubusercontent.​com

Sublime-SessionManager

为什么?

让我们实话实说:Sublime Text 的会话管理很奇怪。它并不完全糟糕,但是如果你没有项目文件,它就不灵活且难以使用。

只要你在单个项目中工作,一切都很正常,但只要你想要同时打开多个项目,或者仅仅想要打开一些文件进行修改,Sublime 的会话管理就会让你头疼。

有时你只是想要保存当前状态,做一些不同的事情,然后回到你离开的地方。最好是快捷而不复杂。

如果你曾经处于这种情况,那么这个插件就是为你准备的。

安装

安装会话管理器最简单的方法是通过 Sublime Package Control。打开 包控制首选项 > 包控制),选择 包控制:安装包,并搜索“会话管理器”。

或者,你还可以通过 git 或直接下载存储库来安装插件。

为此,你需要在包文件夹中导航到你的包文件夹(使用 首选项 > 浏览包... 可以做到这一点)并将此存储库克隆或解压缩到该文件夹中。

如何使用

使用会话管理器,你可以 保存加载删除 你当前的状态。它可以处理所有 currently opened windowsfoldersfiles,包括当前可见的 region 以及所有的 selectionscursors

当你加载一个会话时,你可以继续工作就像什么都没发生一样。

可以通过命令面板(ctrl+shift+p)访问的命令有

Session Manager: Save Session
Session Manager: Load Session
Session Manager: Delete Session

会话的默认名称由关键字 session 和当前时间戳组成(例如:session_15-03-13T15-37-22)。如果您不喜欢这种格式,可以通过设置 session_name_format 来自定义。

您的每一个会话都会保存在 Packages/User/sessions 文件夹中。这可以通过设置 session_path 来更改。

会话是简单的JSON文件;这意味着您可以随意编辑和修改它们。

您还可以将命令绑定到键盘上。

Session Manager: Save Session       is   save_session,
Session Manager: Load Session       is   load_session, and
Session Manager: Delete Session     is   delete_session.

配置

只需查看默认配置文件,了解可用选项。

{
    // If session_path is null, the sessions will be saved in your sublime User folder in sessions
    // (User/sessions)
    "session_path": null,

    // The format which shall be used to generate the default session name;
    // Example result: session_15-02-07T15-09-32
    // take a look at the python docs for details:
    // https://docs.pythonlang.cn/3.3/library/datetime.html#strftime-strptime-behavior
    "session_name_format": "session_%y-%m-%dT%H-%M-%S"
}

未来的计划

以下是我在未来计划添加的功能。

  • 仅保存当前窗口
  • 保存后关闭所有内容并打开一个新窗口(是否可选或使用另一定义命令?
  • 加载会话时提供更多信息(这样我们就可以更容易地区分它们

如果您认为应该添加其他功能,请毫不犹豫地提出一个问题。

祝您会话保存愉快!