[Konsole-devel] shared terminal emulation library

Jekyll Wu adaptee at gmail.com
Wed Oct 3 02:53:51 UTC 2012


On 2012年10月02日 18:34, Lars Doelle wrote:
> Hi All,
>
> refering to my earlier mails, i want to point you to
>
> https://github.com/dvdhrm/kmscon
> https://github.com/doelle/libemu
>
> The first from David's pen and for Wayland/Weston,
> the later is an extraction of the konsole's emulation
> core together with a bitmap renderer.
>
> As "Save List..." is not working properly in kmail, i
> now have put together the list of addressees for
> three or times, and, as i did not receive word, yet,
> will post follow-ups only to konsole-devel.
>
> Kind regards, Lars
> _______________________________________________
> konsole-devel mailing list
> konsole-devel at kde.org
> https://mail.kde.org/mailman/listinfo/konsole-devel
>

Hi Lars,

A short introduction: I started contributing to konsole about one year 
ago.  Most of the fixes and improvements done by me is on the surface, 
not the core emulation part. So I'm afraid I can't give much technical 
comment. But still, I would like to say something :)

First, I like this idea of extracting the emulation code into a separate 
library. I think/hope that procedure would make the code clearer, better 
documented and easier to understand and maintain.

I actually from time to time tried to fully understand and document the 
emulation code in detail , but never really managed to do so. So that 
part scares and worries me . Although those code is stable as reflected 
by bug reports on b.k.o, it doesn't feel good when you don't really 
understand the small core part of the project to which you are 
contributing .

Second, I'm not that optimistic with the idea of making that library 
reusable for other projects without losing some konsole features or 
causing some konsole regressions.

Konsole code has a long history and I am involved for only one year, but 
from my experience of fixing a few bugs which need to touch the 
emulation part, I feel some high level konsole features are strongly 
coupled with some low level konsole specific emulation features.

One example is the "\e]50;\a" escape sequence use by the konsoleprofie 
script to change konsole settings in the runtime. If I remember it 
correctly, that sequence is used for changing font in xterm. If the 
library is to be reusable for other projects, how to deal with such 
incompatibility ? Is there some planned spec for that library?

Also by glancing the current code at https://github.com/doelle/libemu, 
it seems to be based upon some older version. Is that repo just a demo, 
or will it be the start point of the proposed library ? If the latter 
case I'm really worried.  Although the emulation part is inactively 
modified, it still receives a few fixes and improvements in the past year.

This "reusable library" thing reminds me of the big rewriting of konsole 
in KDE4 (which happens long before I become a KDE user).  That rewriting 
is mostly about the surface, and I think Robert have done a great job in 
making those code much better than before. But users just don't care 
about internal code quality. The will only notice lost features and new 
bugs. I have had it enough to hear users saying "KDE4 konsole is worse 
than KDE3 konsole". I really want to be careful to not give users 
another chance of shouting.

Finally, I think the general rule is "Those who have done or would do 
the work make the decision". There is no real/valid objection from me at 
the moment. If taking the release schedule of KDE SC into account, this 
library thing is unlikely to catch the deadline of 4.10. So there are a 
few months before it really makes sense to discuss and decide whether 
this should happen for konsole in 4.11 or later.

Regards
Jekyll






More information about the konsole-devel mailing list