[EMAIL PROTECTED] wrote:

> >Whatever the client does with that stream and the callbacks, is
> >irrelevant at this point.
> 
> I thought about that too, but unfortunately I don't have the time to
> work out all the details. For example, some terminals save scrolled
> lines, some don't (so where do you store screen information).

I don't understand. In what way is scrolling related to the terminal
emulator, i.e. the parser filtering out control sequences ?

> Most of
> them implement a huge common subset of commands, and so on. So let's
> do the following: let me finish this one (I'm really enjoying working
> in cmtt10!) and post it on sourceforge, then other people can pick it
> up and "generalize it". After all, I already did the hard work here!!!
> I guess there should be a lot of people interested in such a thing,
> after all the Linux console is going to some undefined place really
> slowly (main reason why I wrote this thing), and the Berlin project
> could make good use of it. As an aside, do you people really see the
> need for a completely generic terminal? What are the reasons for a
> `linux' terminal emulator not being enough, for example?

ok, I'm speaking for me, and probably for berlin:
berlin isn't linux specific in any way. I don't see any need to be locked
into one particular environment. Also, different terminal emulators (read:
control sequence parsers) are unrelated to each other, they are a good
candidate for a modular design (i.e. you may want to swap out one emulator
object against another one if the client changes the terminal type).
I would never try to put everything into the same code. Most codes mean
similar things anyway (cursor positioning, font / color setting, etc.), so
all that changes is the interpreter which filters out the commands. That
shouldn't be too hard to get right. Most terminal programs I'v looked into
are awefully messy, mostly because they don't separate the graphics from
the tty and the parser properly. This cries for a good object oriented
design !
(have a look into the berlin code, we do have a terminal widget. What's missing
 is the emulator, i.e. a pluggable parser which reads out the control sequences.
 Right now we simply ignore them, i.e. all we can run are programs in canonical 
 mode)

Regards,        Stefan
_______________________________________________________              
              
Stefan Seefeld
Departement de Physique
Universite de Montreal
email: [EMAIL PROTECTED]

_______________________________________________________

      ...ich hab' noch einen Koffer in Berlin...

Reply via email to