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

open-sesame

by gerardroche ST3

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

Details

Installs

  • Total 267
  • Win 117
  • OS X 94
  • Linux 56
Oct 20 Oct 19 Oct 18 Oct 17 Oct 16 Oct 15 Oct 14 Oct 13 Oct 12 Oct 11 Oct 10 Oct 9 Oct 8 Oct 7 Oct 6 Oct 5 Oct 4 Oct 3 Oct 2 Oct 1 Sep 30 Sep 29 Sep 28 Sep 27 Sep 26 Sep 25 Sep 24 Sep 23 Sep 22 Sep 21 Sep 20 Sep 19 Sep 18 Sep 17 Sep 16 Sep 15 Sep 14 Sep 13 Sep 12 Sep 11 Sep 10 Sep 9 Sep 8 Sep 7 Sep 6
Windows 0 0 0 0 0 0 1 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 2 0 0 0 1 2 0 0 0 0 0 0 0
OS X 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 2 0 0 0 0 1 0 1 1 0 0 1 0 1
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 1 0 1 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com

WHAT OPEN SESAME IS

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

Minimum Sublime Version Latest Stable Version GitHub stars Downloads Author

Set the location of your projects:

Preferences > Settings

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

Command palette screenshot

Adding, opening, or switching a project will prompt an overlay for you to select a project.

Projects are listed in the format x/y by default:

Overlay screenshot

If you prefer to organise your projects at a single level then set depth to 1:

Preferences > Settings

{
    "open-sesame.depth": 1
}

INSTALLATION

Package Control installation

The preferred method of installation is Package Control.

Manual installation

  1. Close Sublime Text.
  2. Download or clone this repository to a directory named open-sesame in the Sublime Text Packages directory:
    • Linux: git clone https://github.com/gerardroche/sublime-open-sesame.git ~/.config/sublime-text-3/Packages/open-sesame
    • OS X: git clone https://github.com/gerardroche/sublime-open-sesame.git ~/Library/Application\ Support/Sublime\ Text\ 3/Packages/open-sesame
    • Windows: git clone https://github.com/gerardroche/sublime-open-sesame.git %APPDATA%\Sublime/ Text/ 3/Packages/open-sesame
  3. Done!

COMMANDS

Command Palette Command Description
Open Sesame: Add Project open_sesame_add_project Add a project to the current window
Open Sesame: Open Project open_sesame_open_project Open a project in a new window
Open Sesame: Remove Folder open_sesame_remove_folder Remove a folder from the current window
Open Sesame: Switch Project open_sesame_switch_project Add a project to the current window

KEY BINDINGS

Windows / Linux OSX Description
Ctrl+Alt+O Super+Alt+O Open Sesame: Open Project

Add your preferred key bindings:

Menu > Preferences > Key Bindings

[
    { "keys": ["ctrl+alt+a"], "command": "open_sesame_add_project" },
    { "keys": ["ctrl+alt+o"], "command": "open_sesame_open_project" },
    { "keys": ["ctrl+alt+r"], "command": "open_sesame_remove_folder" },
    { "keys": ["ctrl+alt+s"], "command": "open_sesame_switch_project" },
]

On Ubuntu you may have conflict issues with key bindings such as ctrl+alt+s that may be mapped to something like the system toggle-shaded window command. You can clear the system keybinding with a command at terminal. If you have issues with key bindings on Ubuntu, ping me on twitter and I'll do my best to help you resolve it.

$ gsettings set org.gnome.desktop.wm.keybindings toggle-shaded "[]"

CONFIGURATION

Key Description Type Default
open-sesame.depth Number of levels deep to look for projects within projects path. 1 or 2 2
open-sesame.keymaps Enable the default keymaps. boolean true
open-sesame.path Location of your projects. string The path found in the environment variable PROJECTS_PATH (if it exists).
open-sesame.vcs Include only version controlled projects e.g. Git, Mercurial, Subversion boolean false

Path

Preferences > Settings

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

Project > Edit Project

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

Depth

The default depth is 2 which means that projects are listed using the pattern */* e.g. your/project.

If you prefer to organise your projects at a single level, set the depth to 1.

Preferences > Settings

{
    "open-sesame.depth": 1
}

Project > Edit Project

{
    "settings": {
        "open-sesame.depth": 1
    }
}

Multiple paths

Multiple paths can be set using a PATH separator (':' for POSIX or ';' for Windows) e.g. "~/projects:~/work:~/src".

PROJECTS_PATH environment variable

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

Additional custom commands

Example of creating some custom commands for ~/vendor path.

Menu > Preferences > Browse Packages

Edit User/Default.sublime-commands (create the file if it doesn't already exist):

[
    {
        "caption": "Open Sesame: Open Vendor",
        "command": "open_sesame_open_project",
        "args": { "path": "~/vendor" }
    },
    {
        "caption": "Open Sesame: Add Vendor",
        "command": "open_sesame_add_project",
        "args": { "path": "~/vendor" }
    },
    {
        "caption": "Open Sesame: Switch Vendor",
        "command": "open_sesame_switch_project",
        "args": { "path": "~/vendor" }
    }
]

Add preferred key bindings:

Menu > Preferences > Key Bindings

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

CONTRIBUTING

Your issue reports and pull requests are always welcome.

CHANGELOG

See CHANGELOG.md.

LICENSE

Released under the BSD 3-Clause License.