st

simple terminal

git clone https://9o.is/git/st.git

commit 8fda36b32306c20cb5a84c2b7816982fccedceff
parent 3fe6153aaea3fdd4ec3d7e5ca8778b5c9113604e
Author: Christoph Lohmann <20h@r-36.net>
Date:   Sat,  4 May 2013 08:05:11 +0200

Select to the end of row if end of line is reached.

Thanks Alexander Rezinsky <alexrez@gmail.com>!

Diffstat:
Mst.c | 12++++++++++++
1 file changed, 12 insertions(+), 0 deletions(-)

diff --git a/st.c b/st.c @@ -679,6 +679,8 @@ selected(int x, int y) { void selsnap(int mode, int *x, int *y, int direction) { + int i; + switch(mode) { case SNAP_WORD: /* @@ -735,6 +737,16 @@ selsnap(int mode, int *x, int *y, int direction) { } break; default: + /* + * Select the whole line when the end of line is reached. + */ + if(direction > 0) { + i = term.col; + while(--i > 0 && term.line[*y][i].c[0] == ' ') + /* nothing */; + if(i > 0 && i < *x) + *x = term.col - 1; + } break; } }