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()
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
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
}
}
}
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)