diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2022-05-29 07:57:35 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2022-05-29 07:57:35 -0700 |
commit | 524157fb8afa3d246e97008080dca8fae0e3049b (patch) | |
tree | 33804355f898b7a13bd42c60a414b965610c9762 | |
parent | 2b69b71c7a6fa70f21383caa2e4e96f9c89e68d1 (diff) | |
download | text.love-524157fb8afa3d246e97008080dca8fae0e3049b.tar.gz |
bugfix for non-ASCII
-rw-r--r-- | text.lua | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/text.lua b/text.lua index b2f99c4..2d5e87b 100644 --- a/text.lua +++ b/text.lua @@ -882,13 +882,14 @@ function Text.textinput(t) end function Text.insert_at_cursor(t) + if Selection1.line then Text.delete_selection() end local byte_offset if Cursor1.pos > 1 then - byte_offset = utf8.offset(Lines[Cursor1.line].data, Cursor1.pos-1) + byte_offset = utf8.offset(Lines[Cursor1.line].data, Cursor1.pos) else - byte_offset = 0 + byte_offset = 1 end - Lines[Cursor1.line].data = string.sub(Lines[Cursor1.line].data, 1, byte_offset)..t..string.sub(Lines[Cursor1.line].data, byte_offset+1) + Lines[Cursor1.line].data = string.sub(Lines[Cursor1.line].data, 1, byte_offset-1)..t..string.sub(Lines[Cursor1.line].data, byte_offset) Lines[Cursor1.line].fragments = nil Lines[Cursor1.line].screen_line_starting_pos = nil Cursor1.pos = Cursor1.pos+1 |