prompt_index
if (c->prompt_index != 0)
c->prompt_index--;
if (c->prompt_index == size) {
memcpy(c->prompt_buffer + c->prompt_index, ud,
c->prompt_index += n;
c->prompt_buffer[c->prompt_index].size = 0;
memmove(c->prompt_buffer + c->prompt_index + n,
c->prompt_buffer + c->prompt_index,
(size + 1 - c->prompt_index) *
memcpy(c->prompt_buffer + c->prompt_index, ud,
c->prompt_index += n;
idx = c->prompt_index;
c->prompt_index = (first - c->prompt_buffer) + strlen(s);
size_t idx = c->prompt_index;
c->prompt_index = idx;
c->prompt_index = idx;
size_t idx = c->prompt_index;
c->prompt_index = idx;
c->prompt_index = idx - 1;
size_t idx = c->prompt_index;
c->prompt_index = idx;
if (c->prompt_index > 0) {
c->prompt_index--;
if (c->prompt_index < size) {
c->prompt_index++;
if (c->prompt_index != 0) {
c->prompt_index = 0;
if (c->prompt_index != size) {
c->prompt_index = size;
if (c->prompt_index != 0) {
if (c->prompt_index == size)
c->prompt_buffer[--c->prompt_index].size = 0;
memmove(c->prompt_buffer + c->prompt_index - 1,
c->prompt_buffer + c->prompt_index,
(size + 1 - c->prompt_index) *
c->prompt_index--;
if (c->prompt_index != size) {
memmove(c->prompt_buffer + c->prompt_index,
c->prompt_buffer + c->prompt_index + 1,
(size + 1 - c->prompt_index) *
c->prompt_index = 0;
if (c->prompt_index < size) {
c->prompt_buffer[c->prompt_index].size = 0;
idx = c->prompt_index;
(c->prompt_index - idx) + 1);
(c->prompt_index - idx) * sizeof *c->prompt_buffer);
c->prompt_buffer + c->prompt_index,
(size + 1 - c->prompt_index) *
memset(c->prompt_buffer + size - (c->prompt_index - idx),
'\0', (c->prompt_index - idx) * sizeof *c->prompt_buffer);
c->prompt_index = idx;
c->prompt_index = utf8_strlen(c->prompt_buffer);
c->prompt_index = utf8_strlen(c->prompt_buffer);
idx = c->prompt_index;
c->prompt_index = idx;
c->prompt_index = utf8_strlen(c->prompt_buffer);
c->prompt_index = utf8_strlen(c->prompt_buffer);
if (c->prompt_index == size) {
utf8_copy(&c->prompt_buffer[c->prompt_index], &tmp);
c->prompt_index++;
c->prompt_buffer[c->prompt_index].size = 0;
memmove(c->prompt_buffer + c->prompt_index + 1,
c->prompt_buffer + c->prompt_index,
(size + 1 - c->prompt_index) *
utf8_copy(&c->prompt_buffer[c->prompt_index], &tmp);
c->prompt_index++;
c->prompt_index = utf8_strlen(c->prompt_buffer);
c->prompt_index = utf8_strlen(c->prompt_buffer);
c->prompt_index = utf8_strlen(c->prompt_buffer);
pcursor = utf8_strwidth(c->prompt_buffer, c->prompt_index);