There is no operator/api function available to set the cursor and selection passing line and column as arguments.
In general this is useful, there is a problem though.
The character values are incompatible with Text.current_character which don't account for multi-byte characters.
The RNA properties current_character and select_end_character should be wrapped by get/set functions to make the values index the characters instead of the bytes, then they will be compatible with inputs for this function.
These functions have been moved into BLI_string_utf8 so there is no need to define this inline.
int BLI_str_utf8_offset_to_index(const char *str, int offset); int BLI_str_utf8_offset_from_index(const char *str, int index); int BLI_str_utf8_offset_to_column(const char *str, int offset); int BLI_str_utf8_offset_from_column(const char *str, int column);