Code completion improvements


#1

RStudio code completion algorithm is always suggesting some abstract and not-even-close-to-what-i-want suggestions.
I am not expecting it to be as good as the one inside IntelliJ or PyCharm or Jupyter but it is ridiculous most of the time. I feel like he is trolling me with suggestions.

For example, let's say that I have this simple snippet given below.

rm(list = ls())
library(caret)
library(stats)

prediction <- c(0, 0, 1)

And that I want to see how prediction looks like by typing

prediction

Let's assume that I am too lazy to type it all the way through and am hoping to get some help from my IDE.

These are the results:

I don't understand how can methods from outside libraries have priority over a variable created inside of my local environment.
Until I type it almost all the way RStudio won't offer me what I need.

Am I doing something wrong?
Is there anything I can do on my end to improve this?

P.S. I am using RStudio 1.1.419 on Ubuntu 18.04, if it means anything to anyone.


#2

Thanks for the feature request. Unfortunately, there isn't currently a way to configure the way completion results are ordered -- I've filed this at https://github.com/rstudio/rstudio/issues/3457.


#3

Thanks,

I wanted to post it there first but then it said that it should be posted here.
So there is no way that we are seeing this anytime soon or do you maybe have some estimate on your mind?
Like you said it's just reordering the shown results.


#4

In general, we prefer discussion to first occur on the community forums just to help flesh a particular bug report / feature request out before we ascertain whether it's something that does have an existing solution or if we do indeed need to fix it on the IDE side. (IMHO the community forums are more amenable to general discussion than the GitHub issues page; we try to keep developer-oriented discussion on GitHub and user-oriented discussion in the community forums)

Unfortunately it's hard to give a time estimate. Even for a relatively smaller change like this, we still need to evaluate whether there could be any other potential fallout from making the change, and we have to balance this against other high-priority issues that block the next RStudio release.