all repos — st @ c490a60b804f467490cd4d8275a181dc37edef9f

st (suckless terminal) config

Move calls to selsnap into selnormalize

This simplifies getbuttoninfo() and bpress(), and fixes a bug which made word
snapping behave incorrectly when a delimiter was at the beginning or end of
line.

Signed-off-by: Roberto E. Vargas Caballero <k0ga@shike2.com>
Ivan Delalande colona@ycc.fr
commit

c490a60b804f467490cd4d8275a181dc37edef9f

parent

83dea7fd7bb5f6e8a11a7ac8a734d8016d1ed0cb

1 files changed, 3 insertions(+), 11 deletions(-)

jump to
M st.cst.c

@@ -682,6 +682,9 @@ }

sel.nb.y = MIN(sel.ob.y, sel.oe.y); sel.ne.y = MAX(sel.ob.y, sel.oe.y); + selsnap(sel.snap, &sel.nb.x, &sel.nb.y, -1); + selsnap(sel.snap, &sel.ne.x, &sel.ne.y, +1); + /* expand selection over line breaks */ if (sel.type == SEL_RECTANGULAR) return;

@@ -777,15 +780,6 @@ sel.alt = IS_SET(MODE_ALTSCREEN);

sel.oe.x = x2col(e->xbutton.x); sel.oe.y = y2row(e->xbutton.y); - - if(sel.ob.y < sel.oe.y - || (sel.ob.y == sel.oe.y && sel.ob.x < sel.oe.x)) { - selsnap(sel.snap, &sel.ob.x, &sel.ob.y, -1); - selsnap(sel.snap, &sel.oe.x, &sel.oe.y, +1); - } else { - selsnap(sel.snap, &sel.oe.x, &sel.oe.y, -1); - selsnap(sel.snap, &sel.ob.x, &sel.ob.y, +1); - } selnormalize(); sel.type = SEL_REGULAR;

@@ -900,8 +894,6 @@ sel.snap = SNAP_WORD;

} else { sel.snap = 0; } - selsnap(sel.snap, &sel.ob.x, &sel.ob.y, -1); - selsnap(sel.snap, &sel.oe.x, &sel.oe.y, +1); selnormalize(); /*