Products: IntelliJ IDEA
Vendor: Nathan Brown
Similar to 'SyncEdit' functionality already in Borland Delphi, and soon to be in Eclipse... This plugin allows you to do an inplace synchronized edit of all instances of a string within a defined range.
A "SyncEdit Mode" menu item is added to the Search and Editor Popup menus. Simply select a range to be edited, enter "SyncEdit Mode" and all words in the marked range become 'live' - any changes to an instance of a word changes all matching strings in real-time.
The decision about the word to SyncEdit is determined by a 'Select Word' operation at the current cursor location (respecting any CamelHump settings) when a modification is made. However, you can SyncEdit a custom region of text by first selecting it and then invoking the SyncEdit action again, or even just start typing to replace the substring completely.
There is also a "Paste with SyncEdit" action added to the Edit Menu - this will execute a paste and automatically enter SyncEdit Mode for the range of the pasted text, great for tweaking pasted code fragments for the context they are used in.
The mode can be exited by pressing either escape or enter - once to exit SyncEdit on a word, and once again to stop SyncEditing a range.
At the moment SyncEdit works purely on a textual basis, but maybe later versions will optionally use code members/identifiers if there is interest for this.
2 updates are hidden show all updates
Recent change notes:1.1.1 - Tweaked Color Settings Page text.
1.1.0 - Features added:
Tab/Ctrl+Tab now cycles back/forth through SyncEditable words within the selected SyncEdit range.
SyncEdit active range highlight colour is now customizable through the Plugins tab of the Colors & Fonts settings.
Fixed Bug which would garble text when a SyncEditing word was typed over.
Improved detection of words to modify - typing at the end of a sub-word in a larger word would modify the next sub-word, not the previous sub-word.
Improved Home/End behaviour to match Inplace Rename.