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 334
  • Win 140
  • OS X 124
  • Linux 70
Jun 23 Jun 22 Jun 21 Jun 20 Jun 19 Jun 18 Jun 17 Jun 16 Jun 15 Jun 14 Jun 13 Jun 12 Jun 11 Jun 10 Jun 9 Jun 8 Jun 7 Jun 6 Jun 5 Jun 4 Jun 3 Jun 2 Jun 1 May 31 May 30 May 29 May 28 May 27 May 26 May 25 May 24 May 23 May 22 May 21 May 20 May 19 May 18 May 17 May 16 May 15 May 14 May 13 May 12 May 11 May 10
Windows 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 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
OS X 0 0 0 0 1 0 0 0 1 0 3 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 0 0 0 0 0 0
Linux 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0

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.