[sublimetext2] Indenting code in Sublime text 2?

In Visual Studio I can press Ctrl+K+D to indent everything so the code is structured nicely and readable. Is there a shortcut in Sublime 2 to do the same?

This question is related to sublimetext2 sublimetext

The answer is


For Auto-Formatting in Sublime Text 2: Install Package: Tag from Command Palette, then go to Edit -> Tag -> Auto-Format Tags on Document


Netbeans like Shortcut Key

Go to Preferences > Key Bindings > User and add the code below:

[
    { "keys": ["ctrl+shift+f"], "command": "reindent", "args": {"single_line": false} }
]

Usage

Ctrl + Shift + F


No one seems to love mac re-indentation, So here How I do it:

[
   { "keys": ["command+shift+i"], "command": "reindent"}
]

In Preferences > Key Binding - User

One more extra tip: add

{ "keys": ["command+0"], "command": "focus_side_bar" }

to have sidebar file tree view navigation using keyboard.

Note: Add , at the end of each {}, if you have more than one {} set of objects


There is no default shortcut for reindenting a file. However you can create one by following eznme's answer above.

You can also use the Command Palette by pressing:

  1. Control+Shift+P (or ?+Shift+P on a Mac)
  2. Type the first few characters of Reindent e.g: rein
  3. Press Enter to run the command
    (The first command at the top should now show Indentation: Reindent Lines)

First open the sublime text.
than open preferences.
than open Key Bindings -User.
than put the below code

[{"keys": ["ctrl+shift+c"], "command": "reindent"},]

I use CtrlShiftC and you also use other short cut key.


For those who like the default key binding for IntelJ IDEA, select Preferences > Settings - User:

enter image description here

And paste in the following to have the command + shift + l shortcut for auto indent:

[
   { "keys": ["command+shift+l"], "command": "reindent"}
]

code formatter.

simple to use.


1.Install


2.press ctrl + alt + f (default)


Thats it.


Select all code that you intend to indent, then hit Ctrl + ] in Sublime text to indent.

For macOS users, use command + ] to indent, and command + [ to un-indent.


To indent with the same keys like Visual Studio Ctrl+K+D (I am a Visual Studio user so I am used to this combination) I suggest:

[
{ "keys": ["ctrl+k", "ctrl+d"], "command": "reindent", "args": {"single_line": false} }
]

Write this on Preferences>Key Bindings - User


This is my configuration for sublime-keymap:

[
  {
    "keys": [",+=+="],
    "command": "reindent",
    "args": {
      "single_line": false
    }
  }
]

For vim people, just use ,== to reindent the whole file.


The reindent command only works on the currently selected lines unless the "single_line" argument is set to false.

{ "keys": ["f12"], "command": "reindent", "args": {"single_line": false} }

Now, pressing f12 will reindent the entire document.


It is very simple. Just go to Edit=>Line=>Reindent


Select everything, or whatever you want to re-indent and do Alt+ E+L+R. This is really quick and painless.


For those interested it is easy to change but for a lover of Netbeans and the auto-format you can change the key binding from F12 to ctrl+shift+F to use your beloved key binding. Sad part is that you have to select all to format the entire file. Netbeans still has the upper hand on that. If anyone knows how to overcome that limitation I'm all ears. Otherwise happy reindenting (auto-formating).


Just in case this stop working for anyone like me, in OS X, the command key is identified as superso it should be able to do something like this:

[
    {
    "keys": ["super+i"], 
    "command": "reindent", 
    "args": {
        "single_line": 
        false}
    } 
]

in this case using command+i is going to indent your whole code (eclipse like :) )


{ "keys": ["f12"], "command": "reindent", "args": {"single_line": false} } 

You can get the reindent option by using the above code


Beside of the inbuilt 'reindent' function, you can also install other plugins, such as SublimeAStyleFormatter and CodeFormatter. These plugins are better for their specify language.


You can add a shortcut by going to the menu Preferences ? Keybindings ? User, then add there:

{ "keys": ["f12"], "command": "reindent", "args": {"single_line": false} }  

I used to use Alt + Shift + F in NetBeans, I checked and there isn't any collision in the default keymap array of sublime, so I added it to my sublime and I'm using it without any problem.