diff --git a/internal/action/actions.go b/internal/action/actions.go index b8b0650f..16c87b6d 100644 --- a/internal/action/actions.go +++ b/internal/action/actions.go @@ -283,7 +283,7 @@ func (h *BufPane) SelectWordLeft() bool { return true } -// StartOfLine moves the cursor to the start of the text of the line +// StartOfText moves the cursor to the start of the text of the line func (h *BufPane) StartOfText() bool { h.Cursor.Deselect(true) h.Cursor.StartOfText() @@ -1567,7 +1567,7 @@ func (h *BufPane) SpawnMultiCursorUp() bool { return true } -// SpawnMultiCursorUp creates additional cursor, at the same X (if possible), one Y more. +// SpawnMultiCursorDown creates additional cursor, at the same X (if possible), one Y more. func (h *BufPane) SpawnMultiCursorDown() bool { if h.Cursor.Y+1 == h.Buf.LinesNum() { return false diff --git a/internal/display/bufwindow.go b/internal/display/bufwindow.go index dd6c7f63..fb52728a 100644 --- a/internal/display/bufwindow.go +++ b/internal/display/bufwindow.go @@ -275,14 +275,7 @@ func (w *BufWindow) LocFromVisual(svloc buffer.Loc) buffer.Loc { if vloc.Y >= bufHeight { break } - vloc.X = 0 - if b.Settings["diffgutter"].(bool) { - vloc.X++ - } - // This will draw an empty line number because the current line is wrapped - if b.Settings["ruler"].(bool) { - vloc.X += maxLineNumLength + 1 - } + vloc.X = w.gutterOffset } } } @@ -648,6 +641,11 @@ func (w *BufWindow) displayBuffer() { if b.Settings["diffgutter"].(bool) { w.drawDiffGutter(lineNumStyle, true, &vloc, &bloc) } + + if hasMessage { + w.drawGutter(&vloc, &bloc) + } + // This will draw an empty line number because the current line is wrapped if b.Settings["ruler"].(bool) { w.drawLineNum(lineNumStyle, true, maxLineNumLength, &vloc, &bloc)