num = MIN(num, sizeof text - cursor);
if(num && !iscntrl((int) buf[0])) {
memmove(text + cursor + num, text + cursor, sizeof text - cursor - num);
num = MIN(num, sizeof text - cursor);
if(num && !iscntrl((int) buf[0])) {
memmove(text + cursor + num, text + cursor, sizeof text - cursor - num);