aboutsummaryrefslogtreecommitdiff
path: root/st.c
diff options
context:
space:
mode:
authorChristoph Lohmann <20h@r-36.net>2013-05-04 08:01:17 +0200
committerChristoph Lohmann <20h@r-36.net>2013-05-04 08:01:17 +0200
commit5938fa9d32379815757a83076069584f29a8d276 (patch)
treebd06d0e170d05d48b8870e58e66178f527dc51fd /st.c
parent8618386de947a1e2d0b449d6f60fde478e931ecb (diff)
downloadst-5938fa9d32379815757a83076069584f29a8d276.tar.gz
st-5938fa9d32379815757a83076069584f29a8d276.tar.bz2
Better comments for the snapping code.
Diffstat (limited to 'st.c')
-rw-r--r--st.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/st.c b/st.c
index 533fb0a..d73aaa1 100644
--- a/st.c
+++ b/st.c
@@ -681,6 +681,10 @@ void
selsnap(int mode, int *x, int *y, int direction) {
switch(mode) {
case SNAP_WORD:
+ /*
+ * Snap around if the word wraps around at the end or
+ * beginning of a line.
+ */
for(;;) {
if(direction < 0 && *x <= 0) {
if(*y > 0 && term.line[*y - 1][term.col-1].mode
@@ -708,6 +712,11 @@ selsnap(int mode, int *x, int *y, int direction) {
}
break;
case SNAP_LINE:
+ /*
+ * Snap around if the the previous line or the current one
+ * has set ATTR_WRAP at its end. Then the whole next or
+ * previous line will be selected.
+ */
*x = (direction < 0) ? 0 : term.col - 1;
if(direction < 0 && *y > 0) {
for(; *y > 0; *y += direction) {