SmarterEditor

Compatible with all products except MPS
24.06.2016
56 537
Smarten up the editor with new editor actions.
This plugin makes you more productive in the editor. It supports some frequently used actions with the press of a key. You can easily select, format and navigate in selections. And it allows to to split literals at the current position without breaking your code!

It relies on navigation contexts. A navigation context is defined as:
  • Block statement: If, Switch or loops statements
  • Method definition
  • Class definition
  • XML tag

This plugin saves you from unnecessary caret movements.


Supported languages:
  • Java
  • JavaScript
  • CSS
  • XML
  • Bash (BashSupport plugin)
  • SQL (only certain dialects)
  • PHP

Split the current string literal at caret or around selection

Press alt + PLUS / Edit: Smart split. This action splits a string into two parts and positions the caret between two parts. For example: the string "abcd" is turned into "a" + "bc" + "d" if "bc" was selected.
Useful examples:

  • Working on Java code: simply split a string into two parts and enter a variable in between


Jump to the start of a navigation block

Press ctrl + alt + HOME / Edit: Smart home. This action moves the editor caret to the beginning of the next parent navigation context.
Useful examples:

  • Working on a Java loop statement: Use this action to jump to the loop beginning.
  • Working on XML tag body: Use this action to directly jump to the tag definition. Press again to jump to the parent tag definition.


Jump to the end of a navigation block

Press ctrl + alt + END / Edit: Smart end. This action moves the editor caret to the end of the next parent navigation context.
Useful examples:

  • Working on a Java loop in a method: Use once to add code after the loop, press another time to move after the method to add more class level code.
  • Working on XML tag body: Press to add another tag after the current one. Press again to move after the parent tag.


Format a navigation block

Press ctrl + alt + shift + F / Edit: Format favourite. This action reformats the next parent navigation context according to the code style settings. It puts a selection on the reformatted text. It can be called multiple times to reformat the next parent context.
Before you needed to press ctrl+w multiple times, then ctrl+alt+L and confirm the message box.
Useful examples:

  • Working on a Java method: If you want to reduce whitespace changes just reformat the current method by calling this action.
  • Working on XML tag body: Reformat the current tag and child context by calling this from anywhere on the first level below the tag.


Select a navigation block

Press ctrl + alt + shift + D / Edit: Select favourite. This action select the next parent navigation context. It can be called multiple times to select the next parent context.
Before you needed to press ctrl+w multiple times, which works on a much finer grained model.
Useful examples:

  • Working on a Java code: Select code on a more coarse grained model, e.g. anonymous class, then the method, then the inner class, then the outer class.
  • Working on XML tag body: Copy all sibilings and the parent tag by calling this action twice and then ctrl + c


This is an early release of this plugin. Please vote and provide feedback to help!

Download plugin

Version

Update date

Recent change notes

Changes in this version:
  • Javascript string splitting improved

General usage instructions

Source code repository is at https://github.com/jansorg/SmarterEditor