On 8 Dec 2013, at 3:30, Walter Lee Davis wrote:
FWIW, I believe this happens because of the regular expression scanning going on to effect syntax highlighting. If you can set this particular file type to .txt or another non-highlighted format first, you may find that opening it goes faster.
I believe the main issue is text layout. This is pretty expensive and it’s hard to break up a single line partly due to unicode rules partly because we need the width of the full line (which requires the full line to go through layout).
Enabling soft wrap should improve performance significantly since here we do break up the line (on spaces) and only the stuff that is visible will actually go through layout, so smaller chunks are given to CoreText.
It’s a known issue, but how to fix it is challenging, as effectively we need to pass less to CoreText, and to do that properly we need to partially replicate unicode rules in TextMate (instead of leaving that to the system) and also need to estimate glyph widths to have some estimates to use before we get real values from CoreText.