Overload tab prevents normal tab operation

Describe the Bug

The latest Cursor update (or one of the updates this week of July 28) resulted in my normal key in neovim insert mode failing to add 4 spaces to my file. Instead, I’m redirected to some other pane in Cursor. I tried searching for some relevant new keybinding in settings but couldn’t find anything that helped.

Steps to Reproduce

Using vscode-neovim plugin, have tab mapped to 4 spaces in insert mode. Go to insert mode, press tab.

Expected Behavior

4 spaces added to my file.

Operating System

MacOS

Current Cursor Version (Menu → About Cursor → Copy)

Version: 1.3.8
VSCode Version: 1.99.3
Commit: a1fa6fc7d2c2f520293aad84aaa38d091dee6fe0
Date: 2025-07-31T21:33:51.093Z
Electron: 34.5.1
Chromium: 132.0.6834.210
Node.js: 20.19.0
V8: 13.2.152.41-electron.0
OS: Darwin arm64 24.5.0

Does this stop you from using Cursor

No - Cursor works, but with this issue

hi @bschreck and welcome to Cursor Forum.

Thank you for your bug report.

Could you check Cursor Settings > Editor Settings > Keybindings what actions are configured for Tab? You may deactivate the unwanted Tab key actions. By default it activates Cursor Tab (Autocomplete).

Hi @condor I’ve used cursor for years now and this has not been a problem until an update last week which must have added a Tab keybinding. Cursor Tab is not the issue- the unwanted Tab is navigating to various other focus points on the app, not autocompleting. I haven’t been able to figure out which is the new keybinding causing this behavior. I tried the “jumpToNextSnippetPlaceholder” (no effect), and also added a standard “tab”→”tab” keybinding when in vscode-neovim insert mode but that just overrides all of Cursor tab. None of the other keybindings seem relevant unless there was a change to the “when” field of the Cursor Tab keybindings last week. Is there anything that was added in the updates last week that could have this effect?

Thank you for the detailed explanation. Will check internally and update you.

Hi @condor - I’m still dealing with this and it’s making the experience quite annoying. I’m unable to use the normal tab, and have to resort to typing spaces 4 times- which adds a period on the second space every time that I have to then delete. Any updates?

We are currently unable to reproduce it. Can it be that some extension is causing it as we did not limit Tab to some other action.

Could you try cursor --disable-extensions and let me know if that fixes it?
Also are you still on 1.3.8?

In 1.4.3 (Stable) and 1.4.6 (Early Access) it is correctly using 4 spaces in the editor.


Okay I figured it out. Somehow I didn’t have a keyboard shortcut mapping tab to indent. This screen recording shows what it looked like. Every time I click tab my cursor gets directed above to the patch function. I’m on 1.4.5.

It seems like no keybinding matches the “when” clause in this case, at least of no extensions. I figured this out from the log output from keyboard shortcuts debugging:

```2025-08-18 10:51:26.646 [info] [Window] [KeybindingService]: / Soft dispatching keyboard event

2025-08-18 10:51:26.646 [info] [Window] [KeybindingService]: | Resolving Tab

2025-08-18 10:51:26.647 [info] [Window] [KeybindingService]: \ From 11 keybinding entries, no when clauses matched the context.

2025-08-18 10:51:26.647 [info] [Window] [KeybindingService]: / Received keydown event - modifiers: , code: Tab, keyCode: 9, key: Tab

2025-08-18 10:51:26.647 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: , code: Tab, keyCode: 2 (‘Tab’)

2025-08-18 10:51:26.647 [info] [Window] [KeybindingService]: | Resolving Tab

2025-08-18 10:51:26.647 [info] [Window] [KeybindingService]: \ From 11 keybinding entries, no when clauses matched the context.```

So I found the keybinding mapping cmd+] to editor.action.indentLines when editorTextFocus && !editorReadOnly and duplicated this for tab.

Sorry for the trouble!

Actually I may have spoke too soon. Adding this keybinding overloads Cursor tab so I lose autocomplete

This when expression seems to be working: editorTextFocus && neovim.init && !cpp.shouldAcceptTab && neovim.mode == ‘insert’

1 Like

This topic was automatically closed 22 days after the last reply. New replies are no longer allowed.