43 Commits

Author SHA1 Message Date
Luke Wilson
b0ca65a613 Fix not applying cursor operation 2021-04-12 17:48:00 -05:00
Luke Wilson
d96c2f6f03 Refactored cursor architecture into buffer module 2021-04-12 17:38:29 -05:00
Luke I. Wilson
70e32e0b5c Merge branch 'panels' 2021-04-08 13:05:13 -05:00
Luke I. Wilson
8346c52167 Added baseComponent to ui to save boilerplate lines 2021-04-08 12:41:24 -05:00
Luke I. Wilson
5df772e568 TextEdit: only hide cursor when unfocused 2021-04-07 22:05:58 -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
e115855491 TextEdit highlighting: update lang definition 2021-04-04 11:09:34 -05:00
Luke I. Wilson
ca68b8d7fa TextEdit: naive fix to rendering selection around hard tabs 2021-04-04 09:36:56 -05:00
Luke I. Wilson
2cd41fc62d TextEdit: update highlighting for .go files, make strings lazy match 2021-04-01 14:40:38 -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
aaf377ccd5 TextEdit: account for tab offsets when highlighting 2021-03-30 22:21:56 -05:00
Luke I. Wilson
a90a367122 TextEdit: Replaced line-based rendering with character-based rendering.
With line-based rendering, it was more efficient but we were unable
to perform syntax highlighting, or more specifically, individual character
stylings. With this change, the rendering is likely to be slightly less
performant (because it is not as simple as string slicing) but much more
powerful.
2021-03-30 20:44:09 -05:00
Luke I. Wilson
9a85e8efef Create and initialize Highlighter in TextEdit 2021-03-27 13:42:11 -05:00
Luke I. Wilson
8d532fd9b7 Renamed diesel to qedit 2021-03-24 18:37:12 -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
296fa8b4ac Remove comment 2021-03-23 18:47:58 -05:00
Luke I. Wilson
3be12bdff1 Use Buffer.WriteTo method for writing buffer to file 2021-03-23 18:13:55 -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
Luke I. Wilson
bc08505fa8 Show dirty TextEdit tabs 2021-03-20 13:46:44 -05:00
Luke I. Wilson
6e97e8345a Add status bar 2021-03-19 21:57:49 -05:00
Luke I. Wilson
1d77aae277 go fmt 2021-03-18 19:52:34 -05:00
Luke I. Wilson
c8729aebb8 Fix bug in GetSelectedString in TextEdit 2021-03-18 19:46:36 -05:00
Luke I. Wilson
cac950afd6 Cursor selection movement fix in TextEdit 2021-03-18 16:47:20 -05:00
Luke I. Wilson
f7f864d125 Selection bug fixes 2021-03-18 16:44:50 -05:00
Luke I. Wilson
d5ec12c1c8 Improved modifying selection with cursor movement 2021-03-16 17:30:38 -05:00
Luke I. Wilson
7971ef16ab go fmt 2021-03-16 14:08:22 -05:00
Luke I. Wilson
0f743cf1b3 Selection drawing fixes when scrolling in TextEdit 2021-03-16 14:07:11 -05:00
Luke I. Wilson
5a3bae052b Account for hard tabs when drawing selection in TextEdit 2021-03-16 13:59:58 -05:00
Luke I. Wilson
c0fbd178b6 No, the hard tab problems persist 2021-03-15 16:21:55 -05:00
Luke I. Wilson
5fef5598de go fmt 2021-03-15 16:07:50 -05:00
Luke I. Wilson
e2a4fc7e7c 90% working previous column alignment for had tabs 2021-03-15 16:06:52 -05:00
Luke I. Wilson
ea492bfa04 Fixed a cursor bug 2021-03-13 17:37:00 -06:00
Luke I. Wilson
bf09ab03fe Fixed tab offsets messing with TextEdit.prevCurCol 2021-03-12 01:14:16 -06:00
Luke I. Wilson
b0cb1bedd8 Fix cursor column tracking in TextEdit 2021-03-11 23:16:19 -06:00
Luke I. Wilson
a6674fb918 Added horizontal scrolling in TextEdit 2021-03-11 22:24:39 -06:00
Luke I. Wilson
314a50c385 Fix cursor position bug in UTF-8 lines in TextEdit 2021-03-11 20:50:24 -06:00
Luke I. Wilson
d7a5309e80 Fixed some TabContainer and TextEdit bugs 2021-03-11 16:57:28 -06:00
Luke I. Wilson
443070f077 go fmt sources & add command-line file loading 2021-03-11 14:11:43 -06:00
Luke I. Wilson
d0bb43cc8f Did a lot of work off-repo, basically init 2021-03-11 13:27:35 -06:00