Thanks,
I will try rl.
Have a nice day
J-P
Le 7 nov. 2012 à 14:14, Stefan H. Holek a écrit :
> On 07.11.2012, at 11:36, Jean-Pierre Miceli wrote:
>
>> Hi all,
>>
>> I'm working on a tool which enable support of tab completion using the
>> readline modul.
>> And I have a problem with set_completion_display_matches_hook function
>>
>> I've created a display hook function and registered it. It is called
>> and it prints the desire messages. But once it has completed,
>> readline/python does not display the prompt.
>> I've got to press the 'return' key to see the prompt again.
>> What should the display hook function do to return correctly and let
>> the prompt be displayed?
>>
>> Example:
>> def completerHook(self, substitution, matches, longest_match_length):
>> print ""
>> print "Test of the display hook function"
>> for i in range(len(matches)):
>> print matches[i],
>>
>> I use Python 2.7.3 and done some tests on Mac OS 10.7 (Lion) and
>> Ubuntu. I got the same issue on both system.
>
> This always happens when you print newlines behind readline's back. To update
> the prompt area, you'd have to call rl_forced_update_display() which is AFAIK
> not exposed by the stdlib's readline bindings.
>
> There is a more complete implementation of the GNU Readline APIs at
> http://pypi.python.org/pypi/rl. With rl you can fix the prompt by calling
> rl.readline.redisplay(force=True) after the hook has returned.
>
> Hope this helps,
> Stefan
>
> --
> Stefan H. Holek
> ste...@epy.co.at
>
--
http://mail.python.org/mailman/listinfo/python-list