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

Sesame

by gerardroche ST3

Open projects and folders commands.

Details

Installs

  • Total 1K
  • Win 642
  • Mac 482
  • Linux 346
Feb 22 Feb 21 Feb 20 Feb 19 Feb 18 Feb 17 Feb 16 Feb 15 Feb 14 Feb 13 Feb 12 Feb 11 Feb 10 Feb 9 Feb 8 Feb 7 Feb 6 Feb 5 Feb 4 Feb 3 Feb 2 Feb 1 Jan 31 Jan 30 Jan 29 Jan 28 Jan 27 Jan 26 Jan 25 Jan 24 Jan 23 Jan 22 Jan 21 Jan 20 Jan 19 Jan 18 Jan 17 Jan 16 Jan 15 Jan 14 Jan 13 Jan 12 Jan 11 Jan 10 Jan 9 Jan 8
Windows 1 1 1 2 1 2 5 2 2 0 2 1 0 3 1 0 1 2 0 1 1 1 1 0 1 0 1 0 0 2 0 1 1 3 1 1 0 2 0 1 0 0 0 2 0 1
Mac 2 1 0 1 0 0 1 0 1 2 0 1 1 1 0 0 1 1 0 0 0 0 1 5 1 0 1 0 0 2 0 1 0 0 0 0 0 0 0 2 0 0 0 1 0 0
Linux 0 0 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 1 2 2 1 0 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 1 0 1 1 1 0

Readme

Source
raw.​githubusercontent.​com

Sesame

Downloads

Sublime Text commands to open, add, remove, and switch projects or folders.

For example when you organise your projects:

$ /path/to/projects
├── laravel
│   ├── fortify
│   ├── framework
│   └── passport
├── sublimelsp
│   └── LSP
└── wbond
    ├── package_control
    └── packagecontrol.io

Sesame commands will prompt you:

laravel/fortify
laravel/framework
laravel/passport
sublimelsp/LSP
wbond/package_control
wbond/packagecontrol.io

If a project folder contains a .sublime-project file, it is used when opening the project.

Setup

Set the projects path.

Command Palette → Preferences: Settings

Error: language “jsonl” is not supported
"sesame.path": "~/projects",

Command Palette

Name Description
Sesame: Open Open project or open folder.
Sesame: Add Add project or add folder.
Sesame: Remove Remove folder from window.
Sesame: Switch Switch to project or folder.

Key Bindings

One key binding is defined by default.

Command Linux / Win Mac
Sesame: Open ctrl + alt + o super + alt + o

Create your preferred key bindings.

Command Palette → Preferences: Key Bindings

Linux / Win

Error: language “jsonl” is not supported
[
    { "keys": ["ctrl+alt+o"], "command": "sesame_open" },
    { "keys": ["ctrl+alt+a"], "command": "sesame_add" },
    { "keys": ["ctrl+alt+r"], "command": "sesame_remove" },
    { "keys": ["ctrl+alt+s"], "command": "sesame_switch" }
]

Mac

Error: language “jsonl” is not supported
[
    { "keys": ["super+alt+o"], "command": "sesame_open" },
    { "keys": ["super+alt+a"], "command": "sesame_add" },
    { "keys": ["super+alt+r"], "command": "sesame_remove" },
    { "keys": ["super+alt+s"], "command": "sesame_switch" }
]

Settings

sesame.path

  • Type: string|list
  • Required

The location of projects.

Placeholders like ~ and environment variables are expanded.

Error: language “jsonl” is not supported
"sesame.path": "~/projects"

Multiple paths

Error: language “jsonl” is not supported
"sesame.path": ["~/projects", "~/vendor", "~/other"]

A list of paths with specific settings for each path.

Error: language “jsonl” is not supported
"sesame.path": [
    {
        "path": "~/projects",
        "depth": 1
    },
    {
        "path": "~/vendor",
        "vcs": true
    }
]

sesame.depth

  • Type: integer (1 | 2)
  • Default: 2

By default, Sesame looks two levels deep inside the path. This maps nicely to vendor/name, which is typical on services like GitHub. For example, when you organise your projects like this:

❯ ~/projects
├── laravel
│   ├── fortify
│   ├── framework
│   └── passport
├── sublimelsp
│   └── LSP
└── wbond
    ├── package_control
    └── packagecontrol.io

Sesame will prompt you with this:

laravel/fortify
laravel/framework
laravel/passport
sublimelsp/LSP
wbond/package_control
wbond/packagecontrol.io

When setting the depth to 1, Sesame will prompt you with this:

laravel
sublimelsp
wbond

sesame.keymaps

  • Type: boolean
  • Default: true

Enable default key bindings.

sesame.vcs

  • Type: null|boolean
  • Default: null

The sesame.vcs setting allows you to control the inclusion of version control system projects. Here are the available options:

  • null: This setting includes both version-controlled and non-version-controlled projects. Projects with and without vcs integration will be considered.

  • true: With this setting, only version-controlled projects will be included. Projects without vcs integration will be excluded.

  • false: This setting excludes version-controlled projects. Only projects without vcs integration will be considered.

Custom commands

Sesame commands accept path, depth, and vcs arguments.

Example

Packages/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" }
    },
]

There is no need to create a custom command for Sesame: Remove because that command prompts with the currently open projects and folders.

Installation

Package Control installation

  1. Open the Command Palette: Ctrl+Shift+P (Linux / Win) or Cmd+Shift+P (Mac).
  2. Type “Package Control: Install Package” and press Enter.
  3. In the input field, type “Sesame” and select it from the list of available packages.

Manual Git installation

  1. Navigate to the Sublime Text Packages directory: Linux “ ~/.config/sublime-text/Packages
Mac

~/Library/Application Support/Sublime Text/Packages

Windows

%APPDATA%\Sublime Text\Packages

1. Clone directly into the Packages directory:
   ```bash
   git clone https://github.com/gerardroche/sublime-sesame.git Sesame

License

Released under the GPL-3.0-or-later License.