Multiple code completion types unituitive / confusing

Hi,

Coming from Eclipse (in this case PyDev but also Java) I've been using the PyCharm beta for a few weeks now and so far I'm really very pleased with it; in almost all regards it has much more features and feels more "polished".

But there is one area which drives me crazy and that is the (to me) completely unintuitive code completion behaviour.

There are three different types of code completion:

  • Basic
  • "SmartType" - I don't even know what that's supposed to do in the Python / Django context
  • Class Name

Then there are various other types of "completion" (like Insert Live Template, Code->Generate, or pressing tab to insert some other kind of template in html templates e.g.)

And quite frankly (for me at least) that sucks. I don't want to have to think about what kind of thing I'm about to complete. Most of the time I have to press 2 or 3 shortcuts (getting very helpful "No suggestions" along the way) until I finally hit the right one.

Maybe I've been "spoiled" in this regard by Eclipse. There I have a single shortcut (Ctrl-Space) that intelligently shows me all the currently available completion options (be it class names (already imported ones on top), tags in html, arguments to the method call under the cursor, overridable methods from a parent class, templates, etc.)

So I guess my question is, is there something I can do about this? And maybe if I'm the only one with this "problem".

Thanks

Ulrich

2 comments
Comment actions Permalink

Hello Ulrich,

The best thing you can do about this is file YouTrack requests with specific

improvement suggestions at http://youtrack.jetbrains.net/

Some specific comments:

- You can pretty much ignore SmartType completion. It doesn't (and most likely

won't) do anything useful in Python; it is supported only for JavaScript.

Most likely we'll disable the action in Python/HTML context.

- Showing non-imported items in regular Ctrl-Space completion together with

regular suggestions is, in my opinion, undesirable, both for performance

reasons and to avoid cluttering the completion list with irrelevant choices.

What can be done is to show non-imported items (Ctrl-Alt-Space suggestions)

if none of the regular suggestions match the entered completion prefix.

- We already have a request for completing overridable method names, which

will likely be implemented before the 1.0 release: http://youtrack.jetbrains.net/issue/PY-170

Coming from Eclipse (with PyDev) I've been using the PyCharm beta for

a few weeks now and so far I'm really very pleased with it; in almost

all regards it has much more features and feels more "polished".

But there is one area which drives me crazy and that is the (to me)

completely unintuitive code completion behaviour.

There are three different types of code completion:

  • Basic

  • "SmartType" - I don't even know what that's supposed to do in the

Python / Django context

  • Class Name

Then there are various other types of "completion" (like Insert Live

Template, Code->Generate, or pressing tab to insert some other kind of

template in html templates e.g.)

And quite frankly (for me at least) that sucks. I don't want to have

to think about what kind of thing I'm about to complete. Most of the

time I have to press 2 or 3 shortcuts (getting very helpful "No

suggestions" along the way) until I finally hit the right one.

Maybe I've been spoiled" in this regard by Eclipse. There I have a

single shortcut (Ctrl-Space) that intelligently shows me all the

currently available completion options (be it class names (already

imported ones on top), tags in html, arguments to the method call

under the cursor, overridable methods from a parent class, templates,

etc.)

So I guess my question is, is there something I can do about this? And

maybe if I'm the only one with this "problem".

Thanks

Ulrich

---

Original message URL:

http://devnet.jetbrains.net/message/5270423#5270423

--

Dmitry Jemerov

Development Lead

JetBrains, Inc.

http://www.jetbrains.com/

"Develop with Pleasure!"

0
Comment actions Permalink

Hi Dimitry,

and thanks for the reply. I'm sorry if my previous post came across a bit unfriendly.

I will definitely put something on youtrack.

There are some other peculiarities with complete class name that I noticed in the last few days, I will put those on youtrack as well.

Bye.

Ulrich

0

Please sign in to leave a comment.