Categories


Authors:
osmedile
meo

String Manipulation

Products: IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, Android Studio, 0xDBE, CLion, Rider

Vendor: original author: Olivier Smedile, current maintainer: Vojtech Krasa

Email:

Website: https://github.com/krasa/StringManipulation

Source code: https://github.com/krasa/StringManipulation

Bugtracker page

Provides actions for text manipulation:

  • Toggle style (camelCase, hyphen-lowercase, HYPHEN-UPPERCASE, snake_case, SCREAMING_SNAKE_CASE, dot.case, words lowercase, Words Capitalized, PascalCase)
  • To SCREAMING_SNAKE_CASE (or to camelCase)
  • To snake_case (or to camelCase)
  • To dot.case (or to camelCase)
  • To hyphen-case (or to camelCase)
  • To hyphen-case (or to snake_case)
  • To camelCase (or to words)
  • To PascalCase (or to camelCase)
  • Capitalize selected text
-when nothing is selected, then either nothing or whole line or a particular element is selected - report an issue if you find something to improve, each file type needs its own implementation to work flawlessly.

Un/Escape:

  • Un/Escape selected Java text
  • Un/Escape selected JavaScript text
  • Un/Escape selected HTML text
  • Un/Escape selected XML text
  • Un/Escape selected SQL text
  • Un/Escape selected PHP text
  • Convert diacritics(accents) to ASCII
  • Convert non ASCII to escaped Unicode
  • Convert escaped Unicode to String

Encode/Decode:

  • Encode selected text to MD5 Hex16
  • De/Encode selected text as URL
  • De/Encode selected text to Base64

Increment/Decrement:

  • Increment/decrement all numbers found.
  • Duplicate line and increment/decrement all numbers found.
  • Increment to produce unique sequence of numbers

Sort with natural order:

  • Reversing order of lines
  • Sort case-sensitive A-z
  • Sort case-sensitive z-A
  • Sort case-insensitive A-Z
  • Sort case-insensitive Z-A
  • Sort line length asc., desc.

Align:

  • Format selected text to columns/table by a chosen separator/delimiter
  • Align text to left/center/right

Filter/Remove/Trim...:

  • Grep selected text, All lines not matching input text wil be removed. (Does not work in column mode)
  • Trim selected text
  • Trim all spaces in selected text
  • Remove all spaces in selected text
  • Remove duplicate lines
  • Remove empty lines

Other:

  • Swap characters at caret

Actions are available under Edit menu, or via the shortcut "alt M" and "alt shift M". You can setup your own shortcuts for better usability.

Downloads: 197745
Rating:
Participated in rating: 13
Version Compatible builds Date
4.5.135.445.0 135.445 + 05.05.2016 Download
3.2.100.000 100 — 135.444 11.05.2015 Download
1.3 72.7361 + 29.09.2008 Download
26 updates are hidden show all updates
Screenshot #15484
Screenshot #15074
Screenshot #15076
Screenshot #15845

Recent change notes

Version 4.5
  • new action: Increment to produce unique sequence of numbers ("s0,s0,s0" => "s1,s2,s3")
Version 4.4
  • fixed AssertionError: Wrong line separators
Version 4.3
  • added action: Align to left/center/right
  • added action: Convert diacritics(accents) to ASCII
  • added action: Sorting with natural ordering
Version 4.2
  • added PascalCase support
Version 4.1
  • fixed converting with numbers (now: v2Counter -> V2_COUNTER, _2_v2_Counter_3 -> 2_V2_COUNTER_3)
Version 4.0
  • smarter selecting for case converting actions - when nothing is selected, then either a whole line or a particular element is selected - report an issue if you find something to improve, each file type needs its own implementation to work flawlessly.
  • fixed whole bunch of edge cases for case converting actions
  • new action: Increment/decrement all numbers found
  • too many actions, introduced new subgroups
Version 3.3
  • new action: Remove duplicate lines
  • new action: Format selected text to columns/table by a chosen separator/delimiter
Version 3.2
  • Renamed and added more case converting actions
Version 3.1
  • Improved converting to camelCase and CONSTANT_CASE
Version 3.0
  • Popup(Alt+M) disabled when refactoring popups are visible
Version 2.9
  • To camel case fixed for a lower case word.
Version 2.8
  • Added properties style action
Version 2.7
  • Improved constant and camel case actions
  • Added hyphen case action
  • Added action for switching between all styles (camelCase, hyphen, underscore, words)

Version 2.6
  • Line break fix

Version 2.5.135.445
  • Multiple Selections support

Version 2.4
  • Fixed bug: if end-of-line was selected as last character, then it was removed
  • Disabled default shortcut for swap characters
  • New actions for PHP escaping

Version 2.3
  • Fixed: Convert escaped Unicode to String

Version 2.2
  • Increment/Decrement improvements
  • Popup menu works during indexing

Version 2.1.1
  • Swap Characters - bugfix

Version 2.1
  • Alt+A - Exchange two selected characters, or ones surrounding the cursor if no selection

Version 2.0 - Resurrection of the plugin
  • Column selection fix
  • Enabled for all IDEs
  • Fixed Escaped Unicode to String action
  • New action: Capitalize
  • New action: Capitalize Fully
  • New action: Decode Url
  • Added shortcut Alt+M for popup opening
  • Improved actions shortcuts in the popup

Version 1.3
  • Fixed a bug in duplicate and increment actions when line contains '.' and 'e'
  • Fixed exception when clicking cancel on grep dialog
  • Grep action now warns when no text is selected

Version 1.2 New features:
  • Convert non ASCII to escaped Unicode
  • Convert escaped Unicode to String
  • Remove empty lines
  • Duplicate and decrement numbers in a text
Misc:
  • Now works since IDEA 7.0 (build 7361)
  • To camel case, now put the first letter on lowercase.

Version 1.1 Added following actions:
  • Encode to MD5 Hex16
  • Encode URL
  • De/Encode to Base64
  • Escape SQL
  • Escape XML
  • To Camel case
  • To Constant case
Duplicate and increment now handles float number which ends with "."

Comments:

12>
frakc
Rated:
2016-04-12 16:36:18
.
buksyt
Rated:
2015-11-06 14:30:29
Absolutely perfect.
.
Anonymous
Rated:
2015-09-10 22:11:53
.
Anonymous
Rated:
2015-04-27 15:23:58
What a great time saver, thank you! - Tom
.
Anonymous
Rated:
2015-02-26 18:45:38
Good job
.
Borz
Rated:
2015-02-13 01:07:42
Great plugin, very useful. Good job!
.
meo
2014-11-12 17:54:51
example?
.
Anonymous
2014-11-12 17:46:25
Could u add convert plain email address to
string?
.
jonas.carlbaum@b3it.se
2014-06-18 15:21:50
I kind of want something like this implemented: ´´´ public static String wordsToHyphenCase(String s) { StringBuilder buf = new StringBuilder(); char lastChar = 'a'; for (char c : s.toCharArray()) { if (Character.isWhitespace(lastChar) && (!Character.isWhitespace(c) && '-' != c) && buf.length() > 0 && buf.charAt(buf.length() - 1) != '-') { buf.append("-"); } if (!Character.isWhitespace(c)) { buf.append(Character.toLowerCase(c)); } lastChar = c; } if (Character.isWhitespace(lastChar)) { buf.append("-"); } return buf.toString(); } ´´´
.
jonas.carlbaum@b3it.se
2014-06-18 13:18:33
Is there any plan to add conversion to hyphenization/dashify/dash-and-lowecase-notation? (in PHPStorm) It would be real handy when working with keys and language-conversions. There could be a choice to use dash or underscore. I would love this and it seems to fit this plugin perfectly.
.
meo
2013-08-22 01:45:03
Check this plugin: http://plugins.jetbrains.com/plugin/7282 you can write your own groovy script for text replacing.
.
mhurne
Rated:
2012-04-02 19:54:55
Excellent timesaver. This is a must-have plugin!
.
popalka
Rated:
2010-11-23 17:15:42
.
jasonpr@gmail.com
Rated:
2010-11-10 08:20:20
A super useful feature would be a column mode insert list of Integers, Hex, 0xHex, Alpha.
.
summerian
Rated:
2009-10-06 13:26:13
Great plugin, very useful. Good job!
.
12>