Some bits I found out with gprof (with a binary compiled with
lyxstring, but without assertions):
- InsetText::getLyXText use 13% of run time (this is a worst case:
what I do is create a 50x50 table and enter a hundred characters in
it). This would be better if LyXTabular::update was not called as
often (~1000 times) and if the methods used a LyXText* and not a
BufferView* as parameter (but it seems this is not really easy to
change).
- LyXTabular::Init first creates an empty tabular, and then copies the
old one over the newly created values. This means that insettext
destructor is called 323977 for 127 calls to LyXTabular::Init. This
only slows down table creation and undo.
I'll try to have a look at whether juergen's patch makes a difference.
JMarc