VS Code Utility Belt
Clone or download
a-bentofreire bump version
Version 1.1.0 wasn't published to allow
to increase the code sharing with brackets and atomtoix.
Latest commit 44c9945 Oct 23, 2018

README.md

VS Code Utility Belt

Strap on the belt and become a Ninja Developer with these 26 utilities.
This extension is also available for Brackets(bracketsix) and Atom(atomtoix).

Demo

Mixer

Utilities

Utility Example
Capitalize before:classNameFunc
after:ClassNameFunc
Camel Case before:ClassNameFunc
after:classNameFunc
Dash Case before:ClassNameFunc
after:class-name-func
Add Space before Uppercase
Useful to transform functions names into documentation
before:doActionBefore
after:do Action Before
Url Encode before:https://github.com
after:https%3A%2F%2Fgithub.com
Url Decode before:https%3A%2F%2Fgithub.com
after:https://github.com
Reverse Assignment
Reverses the terms of assignments or equal/different comparisons
before:x == y[x] + 5
after:y[x] + 5 == x
Unix To Win Slash
Converts slashes to backslashes
before:chocolate/candy
after:chocolate\candy
Win To Unix Slash
Converts backslashes to slashes
before:chocolate\candy
after:chocolate/candy
Single To Double Slash before:find\nagain
after:find\\\nagain
Double To Single Slash before:find\\\nagain
after:find\nagain
Regnize
Adds slash to regular expression metachars
before:(\w+)[A-Z]a*b+text
after:\(\\w\+\)\[A-Z\]a\*b\+text
Header To Bookmark
Converts markdown header text to Html Bookmark
before:Is this the header 你好?
after:is-this-the-header-你好
Mixer
Mixes lines of different sections.
before:
// section
abc
cde
// end-section
// section
123
345
after:
abc
123
cde
345
Remove Duplicated Lines
Removes consecutive duplicated lines
before:
first
second
second

after:

first
second
Remove Empty Lines before:
first

second

after:

first
second
Join Lines
Joins lines adding the computed expression at the end of every line
before:
red
green

after:
expr:(x\c{X0A}),
red(x0A),green(x0B)
Split Lines
Split lines by an expression. Dynamic values aren't supported
before:
red,green

after:
expr: = \c{1}
red = 1
green = 2
Sort Numerically Ascending
For each line uses the first number as sort key
before:
10. red
2. green

after:

2. green
10. red
Indent One Space
Adds one space to the beginning of each line
Outdent One Space
Removes one space to the beginning of each line
Insert ISO Date 2018-02-08
Insert ISO TimeDate 2018-02-08 10:12:15
Insert UUID 7fff60f8-91e8-40ba-9053-56b0f3a487f0
Insert Text At End before:
red
green

after:
expr: = \c{1}
red = 1
green = 2
Insert Text At Start before:
red
green

after:
expr: const \e{upper} =
const RED = red
const GREEN = green

Selection Policies

Every utility supports multiple cursors and multiple line selections.
However, It differs in the way each utility category handles the selections.
For every cursor, each line is process individually and the counter is increased per line.

  • Line Utilities:
    • If no text is selected then all the document text is used.
    • If part of the line is selected then all the line is used
  • Transform Text Utilities:
    • If no text is selected then all the document text is used.
  • Insert Text Utilities:
    • If no text is selected then the cursor is the insertion point.
    • If multiple lines are selected then is inserted at start/end of every line.

Expressions

Some of the utilities support expressions
An expression is a text supporting the following metachars:

  • \n - newline

  • \t - tab

  • \c{start-value} - counter with optional start value

    • \c 0,1,2,...
    • \c{10} 10,11,12,...
    • \c{x00a} x00a,x00b,x00c,...
    • \c{XF} xF,x10,x11,...
  • \e{func} - transforms the selected text (line by line)
    function list:

    • upper - UpperCase
    • lower - LowerCase
    • length - Selected text length
    • capitalize
    • isodate
    • isotimedate
    • uuid

Contribute

Suggestions for more utilities and bug reports are welcome but don't forget the golden rule: Be Polite!

License

MIT License+uuid License