Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Segfault when displaying completion lists
On 02/08/2016 05:58 PM, Christian Heinrich wrote:
> Hello,
>
> I'm running ZSH 5.2-3 on my Debian Testing system. This error existed
> previously, too, but I only found the time today to find a minimal
> setup for this. Here we go:
>
> % zsh --norcs
> % zmodload zsh/complist
> % autoload -U compinit && compinit -d ~/.zsh/cache/zcompdump
> % zstyle ':completion:*' list-prompt '%p'
> % bindkey -d
> % ls /usr/lib/<TAB>
> Now a huge list should be displayed with a pager. Press "Arrow Down"
> and it should segfault.
>
>
> This does not happen if the "zsh/complist" module is not loaded.
>
> Another interesting observation:
>
> After the <TAB>, press backspace instead of "arrow down" and remove the
> whole command (do not accept the line). Type "bindkey -d" (yes, a 2nd
> time) and accept. Type "ls /usr/lib/<TAB>" again and press backspace.
> It segfaults now, although backspacing worked the first time.
>
> Maybe someone can find the reason for this? I do have EDITOR="vim" set,
> but it appears as if it happens with EDITOR="emacs" as well.
>
>
> Thanks!
>
> Christian
>
This is a guess:
menu selection requires a keymap named menuselect to function. you can view
it with ''bindkey -l''. This keymap is provided by the complist module
that you loaded initially, then sequentially deleted with ''bindkey -d''
returning the keymaps back to a default state.
The zsh/complist is loaded automatically on first use of menuselect,
which explains why ''zmodload zsh/complist'' is required for the segfault.
If my guess is true, zsh should handle the menuselect keymap not existing more elegantly.
But i wouldn't expect menuselect to be of much use without keybinds.
Messages sorted by:
Reverse Date,
Date,
Thread,
Author