diff options
author | Alexander Sedov | 2013-04-18 12:47:23 +0400 |
---|---|---|
committer | Christoph Lohmann | 2013-04-18 16:51:52 +0200 |
commit | e5ff746430725b05e223c454febbde949df2fde2 (patch) | |
tree | 8c8616004c7d067e4af459b917b476b176e4a39b | |
parent | da182612b7c7a6be67b2c7be0c0d85562220f1e4 (diff) | |
download | st-e5ff746430725b05e223c454febbde949df2fde2.tar.gz st-e5ff746430725b05e223c454febbde949df2fde2.tar.xz st-e5ff746430725b05e223c454febbde949df2fde2.zip |
Selection now handles empty lines less counter-intuitively.
Now, when you are selecting a region, you will get all empty lines that happen
to be in it, including trailing ones. Last line terminator is omitted as it previously
was, though.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
-rw-r--r-- | st.c | 7 |
1 files changed, 2 insertions, 5 deletions
@@ -752,7 +752,7 @@ bpress(XEvent *e) { void selcopy(void) { char *str, *ptr; - int x, y, bufsize, isselected = 0, size; + int x, y, bufsize, size; Glyph *gp, *last; if(sel.bx == -1) { @@ -763,7 +763,6 @@ selcopy(void) { /* append every set & selected glyph to the selection */ for(y = sel.b.y; y < sel.e.y + 1; y++) { - isselected = 0; gp = &term.line[y][0]; last = gp + term.col; @@ -774,8 +773,6 @@ selcopy(void) { for(x = 0; gp <= last; x++, ++gp) { if(!selected(x, y)) { continue; - } else { - isselected = 1; } size = utf8size(gp->c); @@ -792,7 +789,7 @@ selcopy(void) { * st. * FIXME: Fix the computer world. */ - if(isselected && y < sel.e.y) + if(y < sel.e.y) *ptr++ = '\n'; } *ptr = 0; |