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

Uber​Selection

by SublimeText ST2

Commands to extend the functionality of Sublime Text's multiselection.

Details

  • 2011.04.25.09.37.53
  • github.​com
  • github.​com
  • 7 years ago
  • 60 minutes ago
  • 7 years ago

Installs

  • Total 1K
  • Win 567
  • OS X 378
  • Linux 162
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 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

Uberselection

Make complex selections and replace text in a buffer via textual commands. Inspired in Vim's line-oriented ex mode.

Getting Started

If you're running a full installation, simply doubleclick on the .sublime-package files. If you're running a portable installation, perform an installation by hand.

Usage

  1. Run from Sublime's console with view.run_command("uber_selection")
  2. Issue command as explained further below

Examples

10,20V/this/
Select lines containing this between lines 10 and 20 (inclusive).
.,.+20-V/this/
Select lines not containing this from the current line to 20 lines down from it.
%s/this/that/
Replace this with that in the whole file.

Four Ways of Issuing Commands

  1. <SUBLIME COMMAND>[ <ARG>]
  2. <LINE REF>[,<LINE REF>]
  3. <BUFFER COMMAND>[;<BUFFER COMMAND>]*
  4. <LINE REF><BUFFER COMMAND>[;<BUFFER COMMAND>]*

All tokens are explained in the following sections

Tokens

Sublime Commands

(Not all commands work.)

w [arg]
Save the active buffer. If you pass an arg to it, the Save As dialog will show up. At the moment, the passed arg is ignored.
wall
Save all opened buffers.
wq
Save the active buffer and exit.
ZZ
Save the active buffer and exit.
ls
Show list of opened views.
e
Show list of files in current directory.
q
Exit.
n
Next view.
N
Previous view.

Line References

Select lines or ranges of lines in the active view.

[1-9]+
Designates line by number.
.
Desigates the current line (first cursor in selection).
$
Designates the last line in the view.
%
Designates all lines in the view.
/what/
Looks forwards to find first line matching what or returns current line if none found.
?what?
Looks backwards to find first line matching what or returns current line if none found.

You can also specify offsets with [+-][1-9]+.

In order to designate a range, use two comma separated line references:

.+5,/end$/-3

Text Commands

Select lines and perform replacements in the view.

V/what/<flags>
Selects all lines containing what. Case insensitive by default. Use the flag c to make a case-sensitive search.
-V/what/<flags>
Same as above, but excludes the lines matching what.
s/what/with/
Replaces all instances of what with with. Case sensitive. The separator / can be substituted by any of: ! $ % & = / : ;

You can chain commands by separating them with a semicolon (;):

.+5,/end$/-3V/foo/;-V/bar/;s/foo/BOO!/