Re:NotepadNext: A cross-platform reimplementation of Notepad++
by danhau on Saturday April 09, 2022 @04:01AM
(#30966078)
I would be surprised if they use straight QStrings. Text editors typically use more sophisticated data structures for their text buffers - Ropes, Piece Tables, Gap Buffers, etc. - tuned for efficient text operations. Maybe their implementation has memory overhead? Wouldn't Notepad++ use UTF-16 internally too, with its Windows heritage?
[ Parent
| on HN ]
Re:NotepadNext: A cross-platform reimplementation of Notepad++
by TonyTrapp on Saturday April 09, 2022 @04:59AM
(#30966360)
> I would be surprised if they use straight QStrings. Text editors typically use more sophisticated data structures for their text buffers - Ropes, Piece Tables, Gap Buffers, etc. - tuned for efficient text operations.
Sure, I didn't mean to imply that the whole document would be one giant QString. But those data structures might still use a QString as backing memory in the new implementation. I tried to have a look around, but didn't have too much time on hand to dive deep. I could see some QString usage but couldn't confirm if the document itself uses it for storage.
> Wouldn't Notepad++ use UTF-16 internally too, with its Windows heritage
Not necessarily, as the memory consumption of 586MB for a 500MB file shows.
Re:NotepadNext: A cross-platform reimplementation of Notepad++
by arka2147483647 on Saturday April 09, 2022 @05:40AM
(#30966530)
I would suspect that it supports multiple encodings, and handle each of them natively