{"id":161,"date":"2010-07-27T20:27:01","date_gmt":"2010-07-28T03:27:01","guid":{"rendered":"http:\/\/www.dreness.com\/blog\/?p=161"},"modified":"2019-12-07T17:10:19","modified_gmt":"2019-12-08T00:10:19","slug":"gnu-screen-and-white-space-holy-crap","status":"publish","type":"post","link":"https:\/\/dreness.com\/blog\/archives\/161","title":{"rendered":"GNU screen and white space, holy crap"},"content":{"rendered":"<p><a href=\"http:\/\/www.gnu.org\/software\/screen\/\">GNU screen<\/a> has been a key player in my workflow for a long time, and I&#8217;ve been putting up with a strange and very much undesired screen behavior for just about that long. I don&#8217;t fully understand the problem, but at least now I have a fix.<\/p>\n<p>The problem is that when in screen, some &#8216;full-screen&#8217; curses based apps like vim or mutt will cause screen to render empty space as white space&#8230; like for example all the space between the end of a line and the right side of the window. Normally this is not a problem. Who cares if it&#8217;s white space at the output rendering layer, right? Well, as it turns out, the guy on the other end of the clipboard really cares, even if you are that guy. Trust me. He&#8217;s actually kinda angry that it&#8217;s taken this long for his lobbying efforts to bear fruit.<\/p>\n<p><a href=\"http:\/\/www.dreness.com\/blog\/wp-content\/uploads\/2010\/07\/screenspace-still1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-167\" title=\"screenspace-still\" src=\"http:\/\/www.dreness.com\/blog\/wp-content\/uploads\/2010\/07\/screenspace-still1.png\" alt=\"\" width=\"567\" height=\"320\" srcset=\"https:\/\/dreness.com\/blog\/wp-content\/uploads\/2010\/07\/screenspace-still1.png 567w, https:\/\/dreness.com\/blog\/wp-content\/uploads\/2010\/07\/screenspace-still1-300x169.png 300w\" sizes=\"auto, (max-width: 567px) 100vw, 567px\" \/><\/a>Anyway, the fix is to employ the services of background color erase, known on the street as bce.<\/p>\n<div id=\"_mcePaste\" style=\"padding-left: 30px;\"><span style=\"color: #000000;\">bce [on|off]<\/span><\/div>\n<div id=\"_mcePaste\" style=\"padding-left: 30px;\"><span style=\"color: #000000;\">Change background-color-erase setting. If &#8220;bce&#8221; is set to on, \u00a0all \u00a0charac-<\/span><\/div>\n<div id=\"_mcePaste\" style=\"padding-left: 30px;\"><span style=\"color: #000000;\">ters cleared by an erase\/insert\/scroll\/clear operation will be displayed in<\/span><\/div>\n<div id=\"_mcePaste\" style=\"padding-left: 30px;\"><span style=\"color: #000000;\">the current background color. Otherwise the \u00a0default \u00a0background \u00a0color \u00a0is<\/span><\/div>\n<div id=\"_mcePaste\" style=\"padding-left: 30px;\"><span style=\"color: #000000;\">used.<\/span><\/div>\n<p>The correct setting for me is: on, although I can&#8217;t really deduce that from the above description. Basically I just showed up in #screen on freenode, started mumbling, and somebody was like &#8220;&#8230; bce on?&#8221;, which was enough for me to arrive at the following .screenrc additions:<\/p>\n<p style=\"padding-left: 30px;\">defbce on<br \/>\nterm screen-bce<\/p>\n<p>Here&#8217;s a <a href=\"https:\/\/dreness.com\/bits\/tech\/screenspace.mov\">short demo<\/a> of expected behavior outside of screen, broken behavior in screen, and then fixed behavior.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>GNU screen has been a key player in my workflow for a long time, and I&#8217;ve been putting up with a strange and very much undesired screen behavior for just about that long. I don&#8217;t fully understand the problem, but &hellip; <a href=\"https:\/\/dreness.com\/blog\/archives\/161\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-161","post","type-post","status-publish","format-standard","hentry","category-bitbucket"],"_links":{"self":[{"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/posts\/161","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/comments?post=161"}],"version-history":[{"count":10,"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/posts\/161\/revisions"}],"predecessor-version":[{"id":1025,"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/posts\/161\/revisions\/1025"}],"wp:attachment":[{"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/media?parent=161"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/categories?post=161"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dreness.com\/blog\/wp-json\/wp\/v2\/tags?post=161"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}