From d0e39853c63fc7b1133acf9cb6aea97cbc392457 Mon Sep 17 00:00:00 2001 From: Zachary Yedidia Date: Sat, 22 Apr 2017 18:48:05 -0400 Subject: [PATCH] Fix issue with cursorline --- cmd/micro/cellview.go | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/cmd/micro/cellview.go b/cmd/micro/cellview.go index 456756dc..b864c6ba 100644 --- a/cmd/micro/cellview.go +++ b/cmd/micro/cellview.go @@ -131,10 +131,10 @@ func (c *CellView) Draw(buf *Buffer, top, height, left, width int) { c.lines[viewLine][viewCol] = &Char{Loc{viewCol, viewLine}, Loc{colN, lineN}, char, char, curStyle, 1} } if char == '\t' { - width := tabsize - (viewCol+left)%tabsize + charWidth := tabsize - (viewCol+left)%tabsize if viewCol >= 0 { c.lines[viewLine][viewCol].drawChar = indentchar - c.lines[viewLine][viewCol].width = width + c.lines[viewLine][viewCol].width = charWidth indentStyle := curStyle if group, ok := colorscheme["indent-char"]; ok { @@ -144,21 +144,21 @@ func (c *CellView) Draw(buf *Buffer, top, height, left, width int) { c.lines[viewLine][viewCol].style = indentStyle } - for i := 1; i < width; i++ { + for i := 1; i < charWidth; i++ { viewCol++ - if viewCol >= 0 && viewCol < width { + if viewCol >= 0 && viewCol < lineLength { c.lines[viewLine][viewCol] = &Char{Loc{viewCol, viewLine}, Loc{colN, lineN}, char, ' ', curStyle, 1} } } viewCol++ } else if runewidth.RuneWidth(char) > 1 { - width := runewidth.RuneWidth(char) + charWidth := runewidth.RuneWidth(char) if viewCol >= 0 { - c.lines[viewLine][viewCol].width = width + c.lines[viewLine][viewCol].width = charWidth } - for i := 1; i < width; i++ { + for i := 1; i < charWidth; i++ { viewCol++ - if viewCol >= 0 && viewCol < width { + if viewCol >= 0 && viewCol < lineLength { c.lines[viewLine][viewCol] = &Char{Loc{viewCol, viewLine}, Loc{colN, lineN}, char, ' ', curStyle, 1} } }