Am I not supposed to use Tab when coding?

I really like Cursor, but at this point I’m actually considering changing to another solution simply because it’s insanely frustrating that Tab is default and can’t be rebound.

Am I missing something?
Am I not supposed to use tab when coding?

Right now I have it so that I’ve bound a key to enable and disable the copilot, but even then it’s still frustrating when I suddenly make a change rather than actually tab when it’s on.

Again, and I’m not being snarky - am I not supposed to use tab when programming? Because if so, how come Cursor decided that Tab is the accept key - and at the same time not include a way to modify it?

Finally, it feels kinda odd that I can’t change it in the first place - I’m running a whole ass different application instead of VSCode specifically for Cursor, am I to understand that even so it’s to hard to give the functionality of rebinding a key?

Again, not trying to be snarky - I’m genuinely not sure if missing something here, because I don’t get it.

14 Likes

I also find it a bit weird that I can’t tab in from the side of the editor, or to be more specific, I can if I wait for a certain amount of time (which I’m not sure yet exactly what it is) or alternatively do it very quickly! :sweat_smile:

4 Likes

I also find the inability to rebind the Tab key so frustrating it might be a deal breaker to not resubscribe to pro.

4 Likes

I’m curious on how to rebind tab key, although it doesn’t bother me in my actual execution it would be good to know how many settings are needed to change in order to actually rebind.

If you have a broken config that still results in “unable to rebind tab key” please post it. I can’t be arsed to update all my kebindings to be sure I’ve fully remapped tab (the 2nd to last one is funny to me)

2 Likes

I did rebind all the bindings for “tab” to another key, and still pressing it triggers the cursor completions.

This is one such quality of life improvement that should take literally 1 minute to complete but saves users like me that 1 minute plus plenty of frustrations every single day.

5 Likes

I really hate that I can’t customize the key stroke to accept a copilot solution. As is currently, the action of tab key changes mid writing code. It makes me loose my train of thought. Net bad and will keep Cursors co-pilot off until they improve.

2 Likes

Came here after searching in vain for a way to remap Tab as the Cursor autocomplete key. Tab is such an incredibly overloaded key already, both for global system shortcuts like Alt-Tab, Cmd-Tab etc, and for the already existing VSCode Intellisense, as well as just inserting plain old tabs of course.

So a big +1 for being able to remap this.

4 Likes

Yeah, I just realised I gave up using TAB to insert tab spaces, instead find myself waiting that quarter of a second longer until Cursor suggests I fix the indentation and tab then haha. Everything is taken care by “Format on save” anyway.

Where I really have difficulties is when autocomplete/intellisense pops up and fights with Cursor for control over my tab press. Terribly confusing.

1 Like

Just created an account to say how frustrating this is… I cannot use intellisense now and have to rely only on Cursor to detect the correct change.

I cannot state how frustrating it is to try to use the VS Code autocomplete to write the correct stuff, but can have Cursor Tab overwriting everything with its suggestion. And the worst is the lack of key remapping!

Please, fix that, in the meantime I’m deactivating Cursor Tab and that’s definitly a deal breaker for me.

4 Likes

please fix this

4 Likes

If im feeling very controlled and i am in a decent state of flow, the raised issues above seem easy to deal with.
My main issue is that feeling controlled and being in a stead state is not the developers way, and its virtually impossible to remain calm when all you want to do is indent the code at the start of your line.

I like to skip to the end of the line often too - i do this by holding command and taping the right arrow key, and i fint that also triggers code completions.

The code completions when i mean to accept them are good.but so many i dont ant to use.

I have no idea what the best solution would be - but teh ability to disconnect the LLM from the tab key and reassign it would be beatiful.

1 Like

Joining the crowd of anyone who created an account here just for this issue. I encourage readers in the same boat to do the same.

I’ve just canceled my Cursor subscription and uninstalled the application because apparently I’m “not allowed” to insert Tab characters. This is basic text editor stuff folks, even Notepad got it right.

3 Likes

It’s possible to use Ctrl-] / Cmd-] to tab forward instead of using the Tab key. It’s a VS Code keyboard shortcut.

However, Cursor tabs 4 spaces even if the number of spaces is set to another number, say, 3.

1 Like

Absolutely agree with this. I need to use tab to accept the suggestions of the IDE , but it is not possible to re-bind cursor-ai completion to another key

In the picture, pressing tab will always complete with risk_eval.risk_classification = risk_classification instead of risk_eval_need_risk_approval, even if all key bindings to tab were deleted.

1 Like

Hey, doesn’t the Enter key solve this? Use Enter to accept inline suggestions, and Tab for accepting Cursor Tab suggestions.

Yeah, that’s what I’m doing, but I’d prefer using tab for 100% correct suggestions, and change the keybinding of accepting cursor suggestions, which can be wrong.

1 Like

Imagine if your car randomly started interpreting the left turn signal as a confirmation to blast the heater at max, you complained to the dealer, they told you the only way to prevent that is to completely deactivate the climate control system, and months went by without update or even acknowledgment of the issue.

VS Code has such a robust KB shortcut mapping system built in. Cursor is built on VS Code. And yet Cursor seized one of the most common keystrokes in programming (TAB), bound it non-deterministically to an action that modifies code unpredictably, and made it impossible to remap or disable without deactivating an entire feature which is one of its main selling points.

So many people are obviously upset about this constant disruption to flow. Why not just capture this keystroke through the built-in KB remapping system like the 10 (really) other remappable actions already bound to the “TAB” key in various contexts? This baffling and easily remedied decision will unfortunately push users away to other less hostile products.