Tab Shifter is a plugin for IntelliJ IDEA
with a bunch of actions to move tabs between editor splits and resize splits
Actions are added to to Main Menu -> Window -> Tab Shifter
.
OSX shortcuts:
ctrl + alt + ]
- move tab to the right split (or create new split if it's the rightmost split)ctrl + alt + [
- move tab to the left splitctrl + alt + P
- move tab to the split abovectrl + alt + '
- move tab to the split below (or create new split if it's the bottom split)alt + shift + [
- stretch split leftalt + shift + ]
- stretch split rightalt + shift + M
- maximize/restore split
Other OS shortcuts:
alt + shift + ]
- move tab rightalt + shift + [
- move tab leftalt + shift + P
- move tab upalt + shift + '
- move tab downctrl + alt + [
- stretch split leftctrl + alt + ]
- stretch split rightalt + shift + M
- maximize/restore split
To move focus between splits:
ctrl+alt+shift+]
- rightctrl+alt+shift+[
- leftctrl+alt+shift+P
- upctrl+alt+shift+;
- downctrl + alt + .
- (built-in action) recommended binding forGoto Next Splitter
action
Obviously, the above shortcuts can be changed in IDE Settings -> Keymap
.
Basically, this plugin treats splitting as "take current editor and move it to the next split window". If there is no split window, then create new one.
There are built-in actions to move tabs (see Main Menu -> Window -> Editor Tabs -> Move Right/Down
).
Unfortunately, they don't do the right thing. For example:
- open several tabs in editor
- use built-in action to move tab right (
Main Menu -> Window -> Editor Tabs -> Move Right
); editor will be split into two and the tab will move to the right editor. - move back to leftmost editor and use built-in action to move tab right; leftmost editor will be split into two editors again (three editors in total) the tab will move into the middle editor. Desired behavior is to recognize that there is already editor on the right side and move tab into it.
If you like the idea, please vote for this issue on youtrack.
Plugin idea by Sandro Mancuso at SoCraTes UK 2013. Created using LivePlugin.