Fix buffer.RuneAt (#1895)

Fix buffer.RuneAt returning the rune not at the given location (as the
documentation claims) but just before it.
This commit is contained in:
Dmitry Maluka
2020-10-20 02:36:14 +02:00
committed by GitHub
parent 23162f7a34
commit 298fa40f90
3 changed files with 5 additions and 4 deletions

View File

@@ -69,11 +69,11 @@ func GetWord(b *Buffer) ([]byte, int) {
l := b.LineBytes(c.Y)
l = util.SliceStart(l, c.X)
if c.X == 0 || util.IsWhitespace(b.RuneAt(c.Loc)) {
if c.X == 0 || util.IsWhitespace(b.RuneAt(c.Loc.Move(-1, b))) {
return []byte{}, -1
}
if util.IsNonAlphaNumeric(b.RuneAt(c.Loc)) {
if util.IsNonAlphaNumeric(b.RuneAt(c.Loc.Move(-1, b))) {
return []byte{}, c.X
}