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

Select all by current scope

by mreq ALL

Select everything matching the current scope (with an optional filter).

Details

Installs

  • Total 2K
  • Win 948
  • Mac 460
  • Linux 272
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 Sep 5 Sep 4 Sep 3 Sep 2 Sep 1 Aug 31 Aug 30 Aug 29 Aug 28 Aug 27 Aug 26 Aug 25 Aug 24 Aug 23 Aug 22 Aug 21 Aug 20 Aug 19 Aug 18 Aug 17 Aug 16 Aug 15 Aug 14 Aug 13
Windows 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 1 0 1
Mac 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 1 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 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 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com

Select all by current scope

Provides a select_all_by_current_scope command, which (as the name suggests) select everything matching the current scope (that is the scope of your first cursor).

The command accepts an optional argument scope_must_match containing a regex string, which filters the long scope string to get a single scope name.

This plugin doesn't have any default keybindings. You have to assign them yourself.

Example keybindings

Selects everything matching current scope:

[
  {
    "keys": ["ctrl+alt+shift+a"],
    "command": "select_all_by_current_scope"
  }
]

Selects everything matching the first piece of current scope, which contains the word embedded:

[
  {
    "keys": ["ctrl+alt+shift+a"],
    "command": "select_all_by_current_scope",
    "args": { "scope_must_match": "embedded" }
  }
]

Usecase

Say you have a knitr/Sweave file with embedded R code. You might want to select all the R code. For that, I have the following keybinding:

[
  {
    "keys": ["ctrl+alt+shift+a"],
    "command": "select_all_by_current_scope",
    "args": { "scope_must_match": "embedded" }
    "context": [
      { "key": "selector", "operator": "equal", "operand": "source.r.embedded.knitr" }
    ]
  }
]

How about all the javascript code from an HTML file? Bold text from a Markdown file? That's matched by default:

[
  {
    "keys": ["ctrl+alt+shift+a"],
    "command": "select_all_by_current_scope"
  }
]