Improved TextDocument
update (in async) performance with TreeLineTracker
#426
Labels
performance
This issue or enhancement is related to performance concerns
Milestone
Today we use ListLineTracker (coming from Eclipse Platform) which doesn't support replace method. It means that each time text is changed, the ListLineTracker recompute the all lines. Even if it's fast (around 40 ms for nasa.xml), when there are several 'textDocument/didChange' with big file like nasa.xml, the completion, foldings, etc is slow.
Ex : you type 10 characters, you wait for 40 * 10 = 400 ms.
To improve this time we can use the TreeLineTracker which supports replace. After doing some test in local, the replace method takes 0 ms, so we win 40 ms for updating TextDocument in asynch mode.
The text was updated successfully, but these errors were encountered: