1236

I'm using Visual Studio Code as my code editor. I did a search on google but wasn't able to find anything about my issue.

The issue is simple, pressing ⇥ Tab in the editor does nothing. I'm expecting it to insert 4 spaces.

Anyone know what I can do to get ⇥ Tab working like expected?

CC BY-SA 4.0
5

23 Answers 23

2992

I had accidentally enabled a different mode for the tab key. Fixed it by pressing Ctrl+Shift+M (for Mac), or Ctrl+M (for Windows and Linux).

From the Visual Studio Code Keybinding docs:

Command Key Command id
Toggle Use of Tab Key for Setting Focus Ctrl+M editor.action.toggleTabFocusMode

The current tab control mode should also show up in the status bar. It should say Tab Moves Focus:

CC BY-SA 4.0
8
  • 114
    Happened to me when I tried to use the code collapse (Ctrl + M, Ctrl + O). Thx. Commented Jan 7, 2018 at 20:16
  • 9
    @Jannunen you're right, sadly for us who have 25inch screens, nobody is gonna notice that teeny tiny thing in the corner...
    – strwoc
    Commented Mar 8, 2019 at 15:10
  • 12
    What a truly peculiar setting. It's especially confusing because Ctrl-M is used to open up a development menu in the Android emulator (writing in React Native / Expo). I must have accidentally pressed it when VSCode was open and not the emulator. What a bewilderingly strange feature, though.
    – Teekin
    Commented Oct 6, 2019 at 19:10
  • 9
    Delete the keybinding for Toggle Tab Key Moves Focus immediately so this never happens again! See answer by @Addison.
    – AlainD
    Commented Jun 17, 2020 at 9:29
  • 2
    @Teekin It's not bewilderingly strange, it's to allow moving the focus (as tab does in most contexts) without touching the mouse. This might be preference for some, and is vital for others, as some people are unable to use a mouse. The feature is labelled an "Accessibility mode".
    – devrobf
    Commented Sep 20, 2023 at 10:01
475

Click "Tab Moves Focus" at the bottom right in the status bar. That's it.

enter image description here

I believe I had pressed ctrl+M. When doing this, the "Tab Moves Focus" tab/button showed up at the bottom right. Clicking on that makes it go away and starts working again.

You can type ctrl+M again to toggle it off as other answers have pointed out, but that's not as easy to remember as just clicking on it.

CC BY-SA 4.0
6
351

To fix the issue

Pressing ctrl+M causes the ⇥ Tab key to move focus instead of inserting a ⇥ Tab character.
Turn it off by pressing the shortcut again.

To disable the shortcut

  1. Open "Keyboard Shortcuts" with ctrl+K, then ctrl+S.
    Or go to File > Preferences > Keyboard Shortcuts.
  2. Search for toggle tab key moves focus.
  3. Right Click, Remove Keybinding.
CC BY-SA 4.0
7
99

Click on the explorer or any other window that is not the editor then press Ctrl + Shift (for Mac only) + M, this is the command to "Toggle Tab Key Moves Focus" on the Keyboard Shortcuts.

CC BY-SA 4.0
2
27

In, my case I followed this advice and changed this emmet setting in vscode to false:

"emmet.triggerExpansionOnTab": false

I was receinving the error Cannot read property 'value' of null. It solved the problem immediatelly.

CC BY-SA 4.0
1
16

As of December 2018 on macOS Mojave 10.14.2 using VSCode 1.29.1 the default keybinding for 'Toggle Tab Key Moves Focus' is set to Command+Shift+M. If you got stuck with this, using that key combo should fix the issue.

Do Command+K Command+S to pull up the Hotkeys Settings and then search for Toggle Tab Key Moves Focus or editor.action.toggleTabFocusMode if you want to change the key combo.

CC BY-SA 4.0
1
11

[Edit] This answer is for MSVS (the IDE, as opposed to VS Code). It seems Microsoft and Google go out of their way to choose confusing names for new products. I'll leave this answer here for now, while I (continue to) look for the equivalent stackoverflow question about MSVS. Let me know in the comments if you think I should delete it. Or better, point me to the MSVS version of this question.

I installed MSVS 2017 recently. None of the suggestions I've seen fixed the problem. The solution I figured out works for MSVS 2015 and 2017. Add a comment below if you find that it works for other versions.

Under Tools -> Options -> Text Editor -> C/C++ -> Formatting -> General, try unchecking the "Automatically indent when I type a tab" box. It seems counter intuitive, but it fixed the problem for me. enter image description here

CC BY-SA 4.0
2
10

All the above failed for me. But I noticed shift + ⇥ Tab worked as expected (outdenting the line).

So I looked for the "Indent Line" shortcut (which was assigned to alt + ctrl + cmd + 0 ), assigned it to tab, and now I'm happy again.


Next morning edit...

I also use tab to accept snippet suggestions, so I've set the "when" of "Indent Line" to editorTextFocus && !editorReadonly && !inSnippetMode && !suggestWidgetVisible.

CC BY-SA 4.0
1
9

I am using code on xfce - did the following to fix the Tab key behavior:

File -> Preferences -> Settings

search for "keyboard.dispatch"

copy to right panel and change value from "code" to "keyCode"

Reload code

CC BY-SA 3.0
5

For those of you not about that space bar life (- _ - )( - _ -)

  1. Keybinding for ⇥ Tab isn't set to anything so you have to do it manually

  2. Navigate to Preferences/Environment/Keybindings and search for "tab"

  3. Click on Edit Binding at the bottom and press the tab key.

  4. Press "Apply" then "Ok"

  5. Key bound!

CC BY-SA 4.0
4

For some reason, after an update, my tab key was unbinded of 'tab' default behaviour. So I have to open File>Preferences>Keyboad Shortcuts, search for the simple "tab" line, and bind to the tab key again. Pretty awkward, but worked.

CC BY-SA 4.0
4

None of the other answers worked for me.

If your tab is not inserting space but focusing button element then following solution will work for you :)

Just set a keybindings to tab command like following image.

If your tab is not inserting space instead focusing then following solution will work for you

CC BY-SA 4.0
1
3

Maybe another program is interfering? Closing Teamviewer fixed the problem for me.

CC BY-SA 4.0
1
  • Same for me!!! I never open a TeamViewer, and I accidentally left it open. To add more info: I had another instance of VS Code running, and in it the tab was working fine, while in the other tab was not working. After closing TeamViewer, tab works in both instances! Commented Nov 9, 2018 at 10:03
2

I've had this happen before as well, where there was TeamViewer client takes the control of the TAB key. You won't know this until you close the TV window that you have open in the background.

CC BY-SA 4.0
2

On Mac,
Preferences -> settings -> Search for "tab"
Uncheck Insert spaces when pressing tab enter image description here

CC BY-SA 4.0
2

Just restart the vscode it will do the job.

CC BY-SA 4.0
1
1

Check your key mapping (File > Preferences > Key Mapping) [Ctrl+K Ctrl+S]. In the input line at the top write 'tab' and bind tab command with tab key.

It works for me. Some extension overwrite it.

CC BY-SA 4.0
0

Make sure this is NOT checked :

[ ] Tools | Options | Text Editor | C/C++ | Formatting | Automatic Indentation On Tab

Let me know if this helped!

CC BY-SA 4.0
1
0

In 2022, above not working any more, Microsoft changed the key binding

On Mac, Cmd + shift + M no longer working

Instead you should use : ctrl + shift + M

Here is evidence: enter image description here

CC BY-SA 4.0
1
0

Had the same issue on Mac. The Ctrl + Shift + M solution was not the correct one in my case. The indentation of a code line when pressing the Tab key was not possible because the key binding for indentation was set to a 4-key combination.

I did reset it to the Tab key in the key bindings settings (Preferences > Keyboard Shortcuts) and added && !config.emmet.triggerExpansionOnTab to the when expression, since I use the emmet plugin.

CC BY-SA 4.0
-2

Not sure what operating system you're on, but there was a known issue with the tab key on one of the more recent releases of VS Code for Mac OS X. The bug has been fixed in the latest release (0.10.9).

On Mac OS X, you can check for the latest update by opening VS Code and then going to [Code > Check for Updates].

Sources and more information:

CC BY-SA 3.0
1
-2

None of the above worked for me. For me, the issue was that the file wasn't editable by VSCode. You'll see a small padlock on the file tab on top. Just close the tab and open the file again. Tab should be working as usual.

CC BY-SA 4.0
-2

Problem could be caused by an Application on your computer

For me the problem got solved after closing Any Desk on my computer . I had it open to change some files on my remote server, and it's blocking the ability to tab
If you want to check , open your task manager and you will find it there. just right click it and select end task and tab will be back to normal.

AnyDesk

CC BY-SA 4.0
0