I recently switched to Cursor from PyCharm, and honestly — reading Python code here is painful.
I tried multiple color themes and fonts, but eventually realized the problem isn’t in the theme — it’s in the language server itself.
I can’t get proper semantic highlighting:
-
self and cls are not highlighted at all,
-
function arguments look exactly the same as local variables,
-
overall the code feels flat and hard to read.
I’ve tried almost everything:
-
Tried enabling Pylance, but it seems unavailable in Cursor (only via VSIX or workarounds).
-
Installed the Cursor Pyright fork — no effect.
-
Switched between “None” and “Pylance” in settings — nothing changed.
-
Also tested BasedPyright and Pyright, but couldn’t get meaningful highlighting.
At this point, I’m not sure if I’m even moving in the right direction.
Could someone please explain:
-
Which language server actually provides proper semantic highlighting for Python in Cursor (like in PyCharm or VS Code with Pylance)?
-
How to configure it correctly so that self, cls, and function arguments have distinct colors?
Any working setup or settings.json examples would be greatly appreciated ![]()
