aboutsummaryrefslogtreecommitdiff
path: root/vis.c
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2017-04-08 22:11:57 +0200
committerMarc André Tanner <mat@brain-dump.org>2017-04-09 11:28:06 +0200
commit4f15fee811d2645bf810a475d4272f83c30608d6 (patch)
treee61902723c42378b78b43e42bf55f37ec216d702 /vis.c
parent6a6bc5bb4c1b5be36b342266d0f74ec4a2843b00 (diff)
downloadvis-4f15fee811d2645bf810a475d4272f83c30608d6.tar.gz
vis-4f15fee811d2645bf810a475d4272f83c30608d6.tar.xz
vis: remove handling of \r\n line endings
Use something like dos2unix(1) and unix2dos(1), if you need to edit such files.
Diffstat (limited to 'vis.c')
-rw-r--r--vis.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/vis.c b/vis.c
index e63d206..82b47b9 100644
--- a/vis.c
+++ b/vis.c
@@ -772,7 +772,7 @@ void vis_replace(Vis *vis, size_t pos, const char *data, size_t len) {
Text *txt = vis->win->file->text;
Iterator it = text_iterator_get(txt, pos);
int chars = text_char_count(data, len);
- for (char c; chars-- > 0 && text_iterator_byte_get(&it, &c) && c != '\r' && c != '\n'; )
+ for (char c; chars-- > 0 && text_iterator_byte_get(&it, &c) && c != '\n'; )
text_iterator_char_next(&it, NULL);
text_delete(txt, pos, it.pos - pos);
@@ -1601,8 +1601,7 @@ void vis_insert_tab(Vis *vis) {
}
size_t vis_text_insert_nl(Vis *vis, Text *txt, size_t pos) {
- const char *nl = text_newline_char(txt);
- size_t nl_len = strlen(nl), indent_len = 0;
+ size_t indent_len = 0;
char byte, *indent = NULL;
/* insert second newline at end of file, except if there is already one */
bool eof = pos == text_size(txt);
@@ -1625,14 +1624,14 @@ size_t vis_text_insert_nl(Vis *vis, Text *txt, size_t pos) {
}
}
- text_insert(txt, pos, nl, nl_len);
+ text_insert(txt, pos, "\n", 1);
if (eof) {
if (nl2)
- text_insert(txt, pos, nl, nl_len);
+ text_insert(txt, pos, "\n", 1);
else
- pos -= nl_len; /* place cursor before, not after nl */
+ pos--; /* place cursor before, not after nl */
}
- pos += nl_len;
+ pos++;
if (indent)
text_insert(txt, pos, indent, indent_len);