diff --git a/src/utils.c b/src/utils.c index d4da1a748bd1e3b757e0ab67c2994f0a7d6573f8..75a5919a5b117f5ebbb018424dcf689ff53f40b7 100644 --- a/src/utils.c +++ b/src/utils.c @@ -367,13 +367,14 @@ char *free_and_assign(char *dest, char *src) return src; } -/* nano scrolls horizontally within a line in chunks. Return the column - * number of the first character displayed in the edit window when the +/* When not in softwrap mode, nano scrolls horizontally within a line in + * chunks (a bit smaller than the chunks used in softwrapping). Return the + * column number of the first character displayed in the edit window when the * cursor is at the given column. Note that (0 <= column - * get_page_start(column) < COLS). */ size_t get_page_start(size_t column) { - if (column == 0 || column < editwincols - 1) + if (column < editwincols - 1 || ISSET(SOFTWRAP) || column == 0) return 0; else if (editwincols > 8) return column - 7 - (column - 7) % (editwincols - 8);