fn at_next_cp_while<F>(cur: StrCursor<'_>, pred: F) -> StrCursor<'_>where
    F: FnMut(char) -> bool,