Files

41 lines
571 B
C
Raw Permalink Normal View History

#include "buffer.h"
#include "line-ed.h"
2024-12-13 17:20:45 +00:00
const char *line_start(struct line_ed *ed, size_t y)
{
const char *line = ed->l_buf;
2024-12-13 17:20:45 +00:00
for (size_t i = 0; i < y; i++) {
line += strcspn(line, "\n");
if (*line == '\n') {
line++;
}
}
return line;
}
2024-12-13 17:20:45 +00:00
size_t line_length(struct line_ed *ed, size_t y)
{
const char *line = ed->l_buf;
2024-12-13 17:20:45 +00:00
for (size_t i = 0; i < y; i++) {
line += strcspn(line, "\n");
if (*line == '\n') {
line++;
}
}
if (*line == '\0') {
return 0;
}
2024-12-13 17:20:45 +00:00
size_t len = strcspn(line, "\n");
if (line[len] == '\n') {
len++;
}
return len;
}