diff options
| -rw-r--r-- | text.c | 5 | ||||
| -rw-r--r-- | text.h | 3 |
2 files changed, 8 insertions, 0 deletions
@@ -1548,6 +1548,11 @@ bool text_byte_get(Text *txt, size_t pos, char *buf) { return text_bytes_get(txt, pos, 1, buf); } +bool text_char_get(Text *txt, size_t pos, char *buf) { + Iterator it = text_iterator_get(txt, pos); + return text_iterator_char_get(&it, buf); +} + size_t text_bytes_get(Text *txt, size_t pos, size_t len, char *buf) { if (!buf) return 0; @@ -70,6 +70,9 @@ size_t text_lineno_by_pos(Text*, size_t pos); /* set `buf' to the byte found at `pos' and return true, if `pos' is invalid * false is returned and `buf' is left unmodified */ bool text_byte_get(Text*, size_t pos, char *buf); +/* same as byte get, but if a sequence of '\r\n' is read at `pos', + * `buf` is set to \n instead of \r. */ +bool text_char_get(Text*, size_t pos, char *buf); /* store at most `len' bytes starting from `pos' into `buf', the return value * indicates how many bytes were copied into `buf'. WARNING buf will not be * NUL terminated. */ |
