Open
Description
Hi,
If I have a long name I am trying to autocomplete, this no longer is useful. Would it be possible to allow for one of the following:
- Allow the part already typed to not be included
- Ellipsis the start not the end of the string
- Allow for the text displayed in the UI to not be the text updates what is selected
While below is contrived, this happens with autocomplete of long chains of properties. Reproducer:
import random
import string
def randomString(stringLength=10):
"""Generate a random string of fixed length """
letters = string.ascii_lowercase
return ''.join(random.choice(letters) for i in range(stringLength))
def my_completer(c, text):
longstr = 'AUTO_COMPLETE_A_VERY_LONG_STRING_BECAUSE_SOMETIMES_THIS_HAPPENS'
if text.startswith(longstr):
return [(longstr + randomString()).decode('utf8') for x in range(150)]
return []
get_ipython().set_custom_completer(my_completer, 0)
Python 2.7.15
IPython 5.8.0
PromptToolkit: 1.0.15
Please also let me know if this is available in a later version of prompt_toolkit.