> I've looked for your kernel in the 'lyx' cvs module, but the code there is
> incomplete. Is there a working version of your kernel? Is it still the plan
> to use it instead of the current kernel? When?

The kernel in the cvs module is what there is, besides some documentation
which I'm not sure where is now.

The kernel is complete in the sense that it's the complete code for the
data structure. However, it's not complete in the sense that there is a
need for much more than the data structure.

[Change of font data structure to be a sorted list and use special characters
to represent font change points]
> Here are the advantages of the above suggestion:
> 
> 1. Speed. The current rendering code (e.g., LyXText::draw) checks the font for each
> character. This will be eliminated (font change occur only when the special
> char is encountered)
> 
> 2.  Improved UI: When you place the cursor on the boundary between two fonts, 
> it is currently not always clear which font is going to be used.
> This will be fixed by (2). Furthermore, it will give visual cue when
> changing font attribute that doesn't have a visual effect (like language).
> 
> The only disadvantage is that it will give a different UI which will need getting
> used to.
> 
> Any comments?

2) is a good point. However, as Jean-Marc mentioned, it's entirely possible
to have this without a change in the data structure.
Regarding 1): We do not need more displaying speed.

I think it's not worth it to change the data structure to get 2). It's
better to just enhance the displaying.
Also, if you insist to get the speed of 1), it's trivial to preprocess
the paragraph before you display it and get the constant time font
resolving.

In other words: Nice goal to have, but the wrong solution if you ask me.

Greets,

Asger

Reply via email to