I’m a heavy user of cursor autocompletion. I’ve been very fond of it.
However, I believe it can be improved drastically by integrating with some basic rule checking.
For example, users (me at least) would like autocompletion to respect existing curly braces. Currently, cursor often overwrites the last curly brace of my match stmt in Rust if only tabbed once. It’s annoying because it slows me down to fix these unmatching curly braces. Because rule-based programming language tools are often pretty fast, I believe the situation can be easily improved by enforcing curly brace integrity on each autocompletion. This can be offered as optional features for each user to choose.
One can even implement more advanced features like customizing language-specific tools to provide more contextual information for autocompletion llms. For example, one can customize Rust-analyzer to provide quick local type information to autocompletion so that it avoids basic mistakes. It seems that autocompletion now is mostly based on syntax.
Currently no existing tools offer features like this, to my knowledge. But implementing this could strengthen Cursor’s lead in the market.