ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Sesame

by gerardroche ST3

Add, open, remove, switch, and manage projects and folders, using the command palette and key bindings.

Details

Installs

  • Total 383
  • Win 158
  • OS X 143
  • Linux 82
Dec 10 Dec 9 Dec 8 Dec 7 Dec 6 Dec 5 Dec 4 Dec 3 Dec 2 Dec 1 Nov 30 Nov 29 Nov 28 Nov 27 Nov 26 Nov 25 Nov 24 Nov 23 Nov 22 Nov 21 Nov 20 Nov 19 Nov 18 Nov 17 Nov 16 Nov 15 Nov 14 Nov 13 Nov 12 Nov 11 Nov 10 Nov 9 Nov 8 Nov 7 Nov 6 Nov 5 Nov 4 Nov 3 Nov 2 Nov 1 Oct 31 Oct 30 Oct 29 Oct 28 Oct 27 Oct 26
Windows 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0
OS X 0 0 0 0 0 0 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 0 0 0 1 1 0 0 1 0 1 0 0 0 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 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1

Readme

Source
raw.​githubusercontent.​com

WHAT SESAME IS

Add, open, remove, and switch, projects or folders, using the Command Palette and Key Bindings.

Minimum Sublime Version Latest Stable Version GitHub stars Downloads Author

QUICK START

Set the location of your projects:

Menu > Preferences > Settings

{
    "sesame.path": "~/projects"
}

Press ctrl+alt+o to open a project.

INSTALLATION

Package Control installation

The preferred method of installation is Package Control.

Manual installation

Close Sublime Text, then download or clone this repository to a directory named Sesame in the Sublime Text Packages directory for your platform:

  • Linux: git clone https://github.com/gerardroche/sublime-sesame.git ~/.config/sublime-text-3/Packages/Sesame
  • OSX: git clone https://github.com/gerardroche/sublime-sesame.git ~/Library/Application\ Support/Sublime\ Text\ 3/Packages/Sesame
  • Windows: git clone https://github.com/gerardroche/sublime-sesame.git %APPDATA%\Sublime/ Text/ 3/Packages/Sesame

COMMANDS

Command Palette Command Description
Sesame: Add sesame_add Add a project to the current window
Sesame: Open sesame_open Open a project in a new window
Sesame: Remove sesame_remove Remove a project from the current window
Sesame: Switch sesame_switch Switch to a project in the current window

KEY BINDINGS

Add your preferred key bindings:

Menu > Preferences > Key Bindings

[
    { "keys": ["ctrl+alt+a"], "command": "sesame_add" },
    { "keys": ["ctrl+alt+o"], "command": "sesame_open" },
    { "keys": ["ctrl+alt+r"], "command": "sesame_remove" },
    { "keys": ["ctrl+alt+s"], "command": "sesame_switch" },
]

Default key bindings:

Windows / Linux OSX Description
ctrl+alt+o super+alt+o Sesame: Open

CONFIGURATION

Key Description Type Default
sesame.depth Number of levels deep to look for projects within path. int 1 or 2 2
sesame.keymaps Enable default key bindings. boolean true
sesame.path Location of projects. string or list[str, dict] The value found in the environment variable PROJECTS_PATH (if it exists).
sesame.vcs Include/exclude version controlled projects e.g. Git, Mercurial, Subversion: true means include only version controlled projects, false means exclude them, and null (default), means version controlled and non-version controlled projects are included. boolean or null null

Path

Menu > Preferences > Settings

{
    "sesame.path": "~/projects"
}

Menu > Project > Edit Project (Per-project)

{
    "settings": {
        "sesame.path": "~/projects"
    }
}

Path environment variable

A PROJECTS_PATH environment variable can be used to set the default path e.g. on Linux edit ~/.profile and add export PROJECTS_PATH=~/projects (may require a system restart).

Multiple paths

Multiple paths can be set using a PATH separator (':' for POSIX or ';' for Windows):

{
    "sesame.path": "~/projects:~/work:~/src"
}

Or as a list:

{
    "sesame.path": ["~/projects", "~/work", "~/src"]
}

Depth

The default depth is 2 (projects are listed using the pattern */* e.g. name/name). If you prefer to organise your projects at a single level, set the depth to 1:

Menu > Preferences > Settings

{
    "sesame.depth": 1
}

Overriding settings for specific paths

Menu > Preferences > Settings

{
    "sesame.path": [
        {"path": "~/projects/a", "depth": 1}
        {"path": "~/projects/b", "vcs": true}
    ],
    "sesame.depth": 2
}

Path a will use depth 1 and package defaults for all other settings.

Path b will use depth 2, vcs true, and package defaults for the all other settings.

Custom commands

Adding a custom command to Key Bindings:

Menu > Preferences > Key Bindings

[
   { "keys": ["ctrl+alt+v"], "command": "sesame_open", "args": { "path": "~/vendor" } }
]

Adding custom commands to the Command Palette (edit User/Default.sublime-commands):

[
   { "caption": "Sesame: Add Vendor", "command": "sesame_add", "args": { "path": "~/vendor" } },
   { "caption": "Sesame: Open Vendor", "command": "sesame_open", "args": { "path": "~/vendor" } },
   { "caption": "Sesame: Switch Vendor", "command": "sesame_switch", "args": { "path": "~/vendor" } }
]

Custom commands accept options (see configuration options above):

{
    "caption": "Sesame: Open Vendor",
    "command": "sesame_open",
    "args": {
      "path": "~/vendor",
      "depth": 2,
      "vcs": false
    }
}

CHANGELOG

See CHANGELOG.md.

LICENSE

Released under the BSD 3-Clause License.