caret and selection_offset manipulation