func moveDotDown(ed *Editor, k Key) *leReturn { eol := util.FindFirstEOL(ed.line[ed.dot:]) + ed.dot if eol == len(ed.line) { ed.beep() return nil } nextSOL := eol + 1 nextEOL := util.FindFirstEOL(ed.line[nextSOL:]) + nextSOL sol := util.FindLastSOL(ed.line[:ed.dot]) width := WcWidths(ed.line[sol:ed.dot]) ed.dot = nextSOL + len(TrimWcWidth(ed.line[nextSOL:nextEOL], width)) return nil }
func killLineRight(ed *Editor, k Key) *leReturn { eol := util.FindFirstEOL(ed.line[ed.dot:]) + ed.dot ed.line = ed.line[:ed.dot] + ed.line[eol:] return nil }