Message349557
Terry, many thanks for the clarifications!
> The intended behavior is to complete if at all possible.
I can see the point in that.
> What is odd to me is that you seem happy using the more numerous non-user IDLE imports when there is no Shell.
The alternative would just be completing in an empty namespace, which would be completely useless. I do agree that having a shell should increase the available modules etc. available for completion.
FWIW I brought this up trying the dict-key completions in the shell with `globals()[` and got surprising results.
Perhaps we should differentiate between completions in the shell vs. when editing a file. In the shell, having completions for things not actually available is weird IMO. In the editor it makes more sense.
Or perhaps we should really go the route of issue #18766 and try to make all available modules available for completions. I really dislike the arbitrary availability of only certain modules for completion. That would likely be a *huge* undertaking, though, and I don't think it's worth it. Maybe restrict this to just stdlib modules, and/or use lazy (on demand) importing.
Finally, we can also decide that the current behavior is what we want. It's there, documented, and normally not very surprising. |
|
Date |
User |
Action |
Args |
2019-08-13 13:50:42 | taleinat | set | recipients:
+ taleinat, terry.reedy |
2019-08-13 13:50:42 | taleinat | set | messageid: <1565704242.72.0.820170589662.issue37821@roundup.psfhosted.org> |
2019-08-13 13:50:42 | taleinat | link | issue37821 messages |
2019-08-13 13:50:42 | taleinat | create | |
|