String Manipulation

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

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



Source code:

Bugtracker page

Provides actions for text manipulation:

  • Toggle style (camelCase, hyphen-lowercase, HYPHEN-UPPERCASE, snake_case, SCREAMING_SNAKE_CASE,, words lowercase, Words Capitalized, PascalCase)
  • To SCREAMING_SNAKE_CASE (or to camelCase)
  • To snake_case (or to camelCase)
  • To (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 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 non ASCII to escaped Unicode
  • Convert escaped Unicode to String


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


  • Format selected text to columns/table by a chosen separator/delimiter
  • Increment/decrement all numbers found.
  • Duplicate line and increment/decrement all numbers found.
  • Trim selected text
  • Trim all spaces in selected text
  • Remove all spaces in selected text
  • Remove duplicate lines
  • Remove empty lines
  • Swap characters at caret
  • Grep selected text, All lines not matching input text wil be removed. (Does not work in column mode)

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: 177398
Participated in rating: 12
Version Compatible builds Date 135.445 + 20.11.2015 Download 100 — 135.444 11.05.2015 Download
1.3 72.7361 + 29.09.2008 Download
23 updates are hidden show all updates
Screenshot #15484
Screenshot #15123
Screenshot #15076
Screenshot #15074
Screenshot #15075

Recent change notes

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

  • 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
  • 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 "."


2015-11-06 14:30:29
Absolutely perfect.
2015-09-10 22:11:53
2015-04-27 15:23:58
What a great time saver, thank you! - Tom
2015-02-26 18:45:38
Good job
2015-02-13 01:07:42
Great plugin, very useful. Good job!
2014-11-12 17:54:51
2014-11-12 17:46:25
Could u add convert plain email address to
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(); } ´´´
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.
2013-08-22 01:45:03
Check this plugin: you can write your own groovy script for text replacing.
2012-04-02 19:54:55
Excellent timesaver. This is a must-have plugin!
2010-11-23 17:15:42
2010-11-10 08:20:20
A super useful feature would be a column mode insert list of Integers, Hex, 0xHex, Alpha.
2009-10-06 13:26:13
Great plugin, very useful. Good job!
2009-02-28 22:50:40
Usefull plugin, thanx to author