commit 047cf9be9c029d560deba431a1889279349f870a
parent 97896d30f103477b09ecd0df2ec6ef25ba2f540a
Author: Benno Schulenberg <bensberg@telfort.nl>
Date: Tue, 22 Aug 2017 15:59:20 +0200
moving: improve retention of the target column somewhat
It's not yet good enough: when proper_x() pushes the index forward,
maybe it should also increase leftedge? Or go_forward_chunks()?
Diffstat:
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/move.c b/src/move.c
@@ -52,8 +52,10 @@ void get_edge_and_target(size_t *leftedge, size_t *target_column)
{
#ifndef NANO_TINY
if (ISSET(SOFTWRAP)) {
+ size_t shim = editwincols * (1 + (tabsize / editwincols));
+
*leftedge = leftedge_for(xplustabs(), openfile->current);
- *target_column = openfile->placewewant - *leftedge;
+ *target_column = (openfile->placewewant + shim - *leftedge) % editwincols;
} else
#endif
{