mirror of
https://github.com/Hopiu/micro.git
synced 2026-03-21 08:20:23 +00:00
Fix bug with Move()
This commit is contained in:
parent
72f5808025
commit
f0faeb3a3e
1 changed files with 10 additions and 4 deletions
|
|
@ -83,7 +83,7 @@ func (l Loc) LessEqual(b Loc) bool {
|
|||
return false
|
||||
}
|
||||
|
||||
func (l Loc) right(n int, buf *Buffer) Loc {
|
||||
func (l Loc) right(buf *Buffer) Loc {
|
||||
if l == buf.End() {
|
||||
return l
|
||||
}
|
||||
|
|
@ -95,7 +95,7 @@ func (l Loc) right(n int, buf *Buffer) Loc {
|
|||
}
|
||||
return res
|
||||
}
|
||||
func (l Loc) left(n int, buf *Buffer) Loc {
|
||||
func (l Loc) left(buf *Buffer) Loc {
|
||||
if l == buf.Start() {
|
||||
return l
|
||||
}
|
||||
|
|
@ -110,9 +110,15 @@ func (l Loc) left(n int, buf *Buffer) Loc {
|
|||
|
||||
func (l Loc) Move(n int, buf *Buffer) Loc {
|
||||
if n > 0 {
|
||||
return l.right(n, buf)
|
||||
for i := 0; i < n; i++ {
|
||||
l = l.right(buf)
|
||||
}
|
||||
return l
|
||||
}
|
||||
return l.left(Abs(n), buf)
|
||||
for i := 0; i < n; i++ {
|
||||
return l.left(buf)
|
||||
}
|
||||
return l
|
||||
}
|
||||
|
||||
// func (l Loc) DistanceTo(b Loc, buf *Buffer) int {
|
||||
|
|
|
|||
Loading…
Reference in a new issue