Message254873
When playing with the Editline alternative to Readline, I noticed that “global” name completions can include duplicates:
>>> No
None NotADirectoryError( NotImplementedError(
None NotImplemented
>>> None
None None
It completed my line to “None”, but if you hit Tab again, it lists two duplicate options both identical to what I already have. The reason is that “None” is both a reserved keyword, and a member of the builtins module.
My patch avoids adding extra completions if a name has already been added. It also prioritizes the global namespace over builtins, so that say if you alias “int” to a non-callable, it is no longer listed with an opening bracket “(” suffix. Earlier behaviour:
>>> int = 81
>>> in
in input( int int(
Now:
>>> in
in input( int |
|
Date |
User |
Action |
Args |
2015-11-19 02:14:21 | martin.panter | set | recipients:
+ martin.panter |
2015-11-19 02:14:21 | martin.panter | set | messageid: <1447899261.09.0.497189339865.issue25663@psf.upfronthosting.co.za> |
2015-11-19 02:14:20 | martin.panter | link | issue25663 messages |
2015-11-19 02:14:19 | martin.panter | create | |
|