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

Hookblime

by Pafsis ST2

Flexible and generic plugin to hook onto sublime's file state events

Details

  • 2012.07.14.18.40.45
  • github.​com
  • github.​com
  • 7 years ago
  • 28 minutes ago
  • 7 years ago

Installs

  • Total 61
  • Win 19
  • OS X 33
  • Linux 9
Jul 20 Jul 19 Jul 18 Jul 17 Jul 16 Jul 15 Jul 14 Jul 13 Jul 12 Jul 11 Jul 10 Jul 9 Jul 8 Jul 7 Jul 6 Jul 5 Jul 4 Jul 3 Jul 2 Jul 1 Jun 30 Jun 29 Jun 28 Jun 27 Jun 26 Jun 25 Jun 24 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
Windows 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 0 0 0 0 0 0 0 0 0 0 0 0
OS X 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 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 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

Readme

Source
raw.​githubusercontent.​com

Hookblime

Hookblime lets you easily add hooks to execute your own scripts on file events.

Hook scripts are executed by the user's default shell*, giving you the possibity of using shell-scripting oneliners.

Supported events

These are the currently supported events:

  • on_new: Executed when a new file tab created.
  • on_load: Executed when an existing file is opened.
  • on_close: Executed when a tab is closed.
  • on_pre_save: Executed before a file is saved.
  • on_post_save: Executed after a file is saved.

Configuration

Hookblime can be configured at any level of the Sublime's settings hierachy, both in global and scoped ways.

All configuration must be set in an entry called “hookblime”, containing a dict for each global hook and scope. Each scope must contain its desired hooks.

Each hook dict must have a “cmd” string value with the script to execute, and can have an optional boolean entry called “replace_filename” which if true, makes the plugin replace the string “%(file_name)” with the current file's path. Note that on_new and on_close hooks can be triggered by non-saved files, in which cases an empty path will appended.

If both global and scoped hooks are matched, only the later would be executed.

Sample configuration:

"hookblime" : {
    "source.python" : {
        "on_post_save" : {
            "cmd": "python_saved %(file_name)",
            "replace_filename": true
        }
    },
    "on_new" : {
        "cmd": "global_hook_new_tab"
    }
}

* The working directory of the scripts is always the user's home.