aboutsummaryrefslogtreecommitdiffstats
path: root/st.c
diff options
context:
space:
mode:
authorIvan Delalande <colona@ycc.fr>2014-11-16 09:02:57 +0100
committerRoberto E. Vargas Caballero <k0ga@shike2.com>2014-11-19 18:53:17 +0100
commit09f5d98251469070b76f3911cc6a83d977871656 (patch)
tree7c13d95c189837bf7d542c0b250a17216da2e00e /st.c
parent4418939dd9f3a7b3cfd3071234ed18ae86538f2a (diff)
downloadst-09f5d98251469070b76f3911cc6a83d977871656.tar.gz
Trim trailing whitespaces in every selection case
Trailing whitespaces are trimmed when copying from normal selection and rectangular selection on lines that have their last character included or on the left of the selection. It leads to inconsistent behaviors when copying the exact same text from the left and right window in applications with vertical splits. This patch solves this issue by always trimming the selection.
Diffstat (limited to 'st.c')
-rw-r--r--st.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/st.c b/st.c
index 4499be6..fc91334 100644
--- a/st.c
+++ b/st.c
@@ -947,6 +947,8 @@ getsel(void) {
lastx = (sel.ne.y == y) ? sel.ne.x : term.col-1;
}
last = &term.line[y][MIN(lastx, linelen-1)];
+ while(last >= gp && last->c[0] == ' ')
+ --last;
for( ; gp <= last; ++gp) {
if(gp->mode & ATTR_WDUMMY)
remember that computers suck.