bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: console update


From: Marcus Brinkmann
Subject: Re: console update
Date: Mon, 17 Jun 2002 11:37:57 +0200
User-agent: Mutt/1.3.28i

On Mon, Jun 17, 2002 at 09:09:59AM +0200, Niels Möller wrote:
> Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de> writes:
> 
> > The ncurses people did something similar with the cchar_t, but they had to
> > use an array of five(!) UCS-4 characters, because that is what is required
> > by the resp standard for combined characters.
> 
> What standard is that?

Wide character support for curses is part of Single UNIX(R) v2.

It says:
     "Implementations may limit the number of non-spacing characters that can
      be associated with a spacing character, provided any limit is at least 5."

> To me it makes sense to have the console array contain glyphs, not
> unicode characters. Using precomposed characters is an approximation
> of that. Perhaps one could abuse the private use area for glyphs that
> correspond to other combinations that don't have precomposed form.
> Preferably generated dnamically, some way.

I don't think curses has a choice here.  It needs to send those characters
down to the terminal.  As far as our console goes, it doesn't have a choice
for similar reasons (the characters are passed down to a display client).
In fact, in our implementation we even have less of a choice, as we don't
pass the data down in a stream, but provide a matrix of characters.  You
could probably have a matrix of indices into a table of unicode characters,
but if every cell contains a different character, you don't have a choice
and you need a table entry for each cell, too.  And the table entries must
be of fixed length to make it feasible to access them quickly.

I am also worried about atomicity in accessing the cells (to update a cell,
you probably would have to overwrite it with zeros starting from the first
chracter, and write the new character back starting from the last character,
so an intermediate reader gets a zero during an update).

Thanks,
Marcus


-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org brinkmd@debian.org
Marcus Brinkmann              GNU    http://www.gnu.org    marcus@gnu.org
Marcus.Brinkmann@ruhr-uni-bochum.de
http://www.marcus-brinkmann.de



reply via email to

[Prev in Thread] Current Thread [Next in Thread]