diff options
author | 最萌小汐 <sumneko@hotmail.com> | 2021-07-15 20:31:33 +0800 |
---|---|---|
committer | 最萌小汐 <sumneko@hotmail.com> | 2021-07-15 20:31:33 +0800 |
commit | bfb7d2eb7b846888d34a24810eaf6943d618b233 (patch) | |
tree | 599a373bb8b41652f65aa7e7b64ec4462c6f0acb | |
parent | 206b9ff94395708390595e73ed2b2528e7a84cad (diff) | |
download | lua-language-server-bfb7d2eb7b846888d34a24810eaf6943d618b233.zip |
fix completion at end of line
-rw-r--r-- | changelog.md | 1 | ||||
-rw-r--r-- | script/files.lua | 9 | ||||
-rw-r--r-- | script/parser/guide.lua | 2 |
3 files changed, 4 insertions, 8 deletions
diff --git a/changelog.md b/changelog.md index 07201f59..0e4c8559 100644 --- a/changelog.md +++ b/changelog.md @@ -23,6 +23,7 @@ * `FIX` infer of `---@type class[][]` * `FIX` infer of `---@type {}[]` * `FIX` completion: displaying `@fenv` in `Lua 5.1` +* `FIX` completion: incorrect at end of line * `FIX` when a file is renamed, the file will still be loaded even if the new file name has been set to ignore * `FIX` [#596](https://github.com/sumneko/lua-language-server/issues/596) * `FIX` [#597](https://github.com/sumneko/lua-language-server/issues/597) diff --git a/script/files.lua b/script/files.lua index f9023ae2..f6fa337c 100644 --- a/script/files.lua +++ b/script/files.lua @@ -721,15 +721,10 @@ function m.position(uri, offset, leftOrRight) line = row - 1, character = ucol, } - elseif col == 1 then - return { - line = row - 1, - character = 0, - } else return { - line = row, - character = 0, + line = row - 1, + character = util.utf8Len(text, start, finish), } end end diff --git a/script/parser/guide.lua b/script/parser/guide.lua index 8d681fdc..a9d832b2 100644 --- a/script/parser/guide.lua +++ b/script/parser/guide.lua @@ -698,7 +698,7 @@ function m.positionOf(lines, offset) end local lastLine = lines[#lines] if offset > lastLine.finish then - return #lines, offset - lastLine.start + return #lines, offset - lastLine.start + 1 end local min = 1 local max = #lines |