can now writelines
parent
a9118be5b1
commit
c839aa9e61
|
@ -0,0 +1,8 @@
|
|||
Row *
|
||||
b_getline(Row *r, int l) {
|
||||
|
||||
if (l == 1) return r;
|
||||
if (r->n == NULL) return NULL;
|
||||
return b_getline(r->n, l - 1);
|
||||
}
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
void
|
||||
c_writeline(char *c) {
|
||||
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;
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
|
@ -3,3 +3,4 @@ NULL,
|
|||
['q'] = c_quit,
|
||||
['O'] = c_open,
|
||||
['P'] = c_print,
|
||||
['w'] = c_writeline,
|
||||
|
|
3
efn.c
3
efn.c
|
@ -17,3 +17,6 @@
|
|||
#include "b_truncate.c"
|
||||
#include "c_print.c"
|
||||
#include "b_insert.c"
|
||||
#include "c_writeline.c"
|
||||
#include "b_getline.c"
|
||||
|
||||
|
|
Loading…
Reference in New Issue