Editing the current line works because I brought in
https://man7.org/linux/man-pages/man3/readline.3.html towards the end so I could support editing, tab completion, and history.
IIRC readline uses a `char *` internally since the length of a user-edited line is fairly bounded.