simplified caret tracking