efn/c_insertline.c

24 lines
595 B
C

void
c_insertline(char *c, char **argv) {
c += 2;
int line = atoi(c);
for(; *c != 0 && *c != ' '; c++);
c += 1; // start of text
Row *r = b_getline(buffer, line);
if (r == NULL) {
printf("%i, invalid line.\n", line);
return;
}
// ^ same as write line
r = b_insert(r);
// v same as write line
int i = 0;
for (;i < ROW_SIZE && c[i] != 0; i++) {
r->text[i] = c[i];
}
for(;i < ROW_SIZE; i++) {
r->text[i] = 0;
}
}