Luke Wilson
b9a8b0040a
Replace manual utf8.DecodeRune with range string loops
2021-04-13 12:31:42 -05:00
Luke Wilson
3bf5e6dfd7
Implemented anchors for rope buffer
2021-04-13 11:05:01 -05:00
Luke Wilson
8d775804cb
Reimplement simple selection
2021-04-12 18:57:59 -05:00
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