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

Re: various weirdnesses with unicode support

On 9/8/05, Peter Stephenson <pws@xxxxxxx> wrote:
> Peter Stephenson <pws@xxxxxxx> wrote:
> > David =?utf-8?B?R8OzbWV6?= wrote:
> > > Hi Mikael ;),
> > >
> > > On Sep 07 at 10:30:24, Mikael Magnusson wrote:
> > > > * Having zsh in utf-8 locale but the terminal inputting for example
> > > > ISO-8859-1 makes zsh enter some weird state where
> > >
> > > Yep, i noticed too this one. It becomes necessary to logout, resetting
> > > the terminal doesn't fix it. From your list, i think this is the
> > > most serious problem.
> >
> > It might be because the multibyte input state never gets reset
> > (getrestchar() in zle_main.c).  How does this manifest itself?  Are you
> > unable even to generate a new line?  If you can, resetting the state for
> > each line would be enough.  Otherwise we could time out multibyte
> > characters and return, for example, a '?'.
> For example, this patch uses the existing $KEYTIMEOUT variable to time out
> the remaining bytes of a multibyte character.  If mbrtowc() reported
> there was more, but reading the next byte took more than $KEYTIMEOUT
> hundredths of a second, the character is returned as a wide '?' and
> the shift state for character input is reset.
> Much of the patch is adding the extra argument to getbyte to differentiate
> a real EOF from a timeout.
> Does this help?  I suspect we probably need something like this anyway.

It seems to help a bit. If i press å (a with a ring), and then press a
a few times, zle still seems to be in a mostly normal state. But if i
press several å in a row i can't seem to get out.

Mikael Magnusson

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