Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

'zle redisplay' bug in 5.3?



Hi,

I have this function in my zshrc:

  expand-or-complete-with-dots() {
      echo -ne "\e[31m......\e[0m"
      zle expand-or-complete
      zle redisplay
  }
  zle -N expand-or-complete-with-dots
  bindkey "^I" expand-or-complete-with-dots

This shows a few dots after the position where I pressed TAB to indicate that
the completion is working. This is helpful if the completion takes a bit
longer so I know that I did press the key correctly and I just have to wait a
bit. The 'zle redisplay' after the completion function is then supposed to
redraw the prompt as it was before inserting the dots.

After upgrading to 5.3 I ran into an issue, though. I use a multi-line prompt,
and now whenever I press TAB the 'zle redisplay' erases the prompt and puts
the cursor on the first line of the prompt, but at the correct column, while
the completion is active. Only after inserting something from the menu does
the prompt get redrawn correctly.

I didn't find anything in the changelog and incompatibilities lists, so my
assumption would be that this is a bug.

In case it is relevant, here is the rest of my completion config:
https://github.com/majutsushi/etc/blob/master/zsh/zsh/zshrc.d/20_completion


-Jan

-- 
-[ OpenPGP key ID: 00A0FD5F ]-
Fantasy is an exercise bicycle for the mind. It might not take you anywhere,
but it tones up the muscles that can.
                -- Terry Pratchett



Messages sorted by: Reverse Date, Date, Thread, Author