16 Commits

Author SHA1 Message Date
Luke Wilson
d96c2f6f03 Refactored cursor architecture into buffer module 2021-04-12 17:38:29 -05:00
Luke I. Wilson
baafcf3d5c TextEdit: Colorscheme "Column" style + changed column appearance 2021-04-07 21:45:38 -05:00
Luke I. Wilson
3982628653 Ran go fmt *.go on all sources 2021-04-04 13:15:31 -05:00
Luke I. Wilson
a4d5f3ccf4 Highlighter: fix bug causing out of bounds access when endLine > len of internal lines 2021-04-01 16:19:14 -05:00
Luke I. Wilson
239793aa2c Rope test: add case for TestRopeSlice 2021-04-01 16:16:47 -05:00
Luke I. Wilson
25f5262b6a Rope: fix bug in Slice() causing out-of-bounds access 2021-04-01 16:14:39 -05:00
Luke I. Wilson
58c8de3068 Rope: Added LineColToPos, and optimized Highlighter's UpdateLines() 2021-04-01 14:16:51 -05:00
Luke I. Wilson
f829b37d0c TextEdit & Highlighting: performance improvements & changes to architecture
I ran pprof to find what was causing stuttering, and found it to be the
getTabCountInLineAtCol function in TextEdit, because it was iterating
many bytes of the buffer, for each rune rendered. Replaced it with a more
optimal system. Also changed the architecture of the highlighting system
to use a single RegexpRange structure for all regular expressions. This
allows for optimizations and multiline matches in the future.
2021-04-01 12:05:17 -05:00
Luke I. Wilson
37589144b5 TextEdit: Add syntax highlighting for Go files 2021-03-30 23:00:32 -05:00
Luke I. Wilson
de921419ce Rope buffer tests: remove unnecessary 't.Fail()` everywhere 2021-03-30 22:17:41 -05:00
Luke I. Wilson
a79227e97c Rope buffer: Fix bug in PosToLineCol and add test case 2021-03-30 22:14:02 -05:00
Luke I. Wilson
9a85e8efef Create and initialize Highlighter in TextEdit 2021-03-27 13:42:11 -05:00
Luke I. Wilson
d47e407063 Fixed bug in saving files: was missing os.O_TRUNC bit flag 2021-03-24 17:47:13 -05:00
Luke I. Wilson
9133ab55d0 Bounds check delete regions in rope buffer 2021-03-24 11:40:18 -05:00
Luke I. Wilson
40e1b40672 Add and replace []string buffer with ropes 2021-03-23 15:14:23 -05:00
Luke I. Wilson
bd6f1cf79e Added RopeBuffer Buffer implementation 2021-03-22 16:10:23 -05:00