从终端复制内容时如何避免尾随空格?

从终端复制内容时如何避免尾随空格?

我经常从 SSH 终端会话中复制代码片段,在该会话中我登录到某个远程服务器并在 中打开一个文件vim,例如将其粘贴到 SO 的答案中。经常发生的情况是,代码用尾随空格填充以匹配终端宽度。

虽然我在 Ubuntu 和 Windows 机器上都看到过这种情况(使用 putty),但我认为这种情况并不总是发生。不过,我无法弄清楚它何时发生。

所以我想知道如何避免在复制到的文本区域中出现那些尾随空格(我必须一直手动删除它们)。

请注意,文件不要服务器上有尾随空格!只有当我选择并复制一些文本时才会发生这种情况。

答案1

我相信相关的 .Xresources 设置是:

URxvt.perl-ext-common: default,selection-autotransform
URxvt.selection-autotransform.0: s/ +$//gm

我从http://www.reddit.com/r/emacs/comments/1ox5pf/why_fill_the_empty_space_with_spaces/

答案2

终端决定选择什么可能并不奇怪。更准确地说,不同的终端以不同的方式处理文本选择。在某些终端上,例如rxvt-unicode,这可以在一定程度上得到控制。

相关的 xresources(设置)是:

URxvt.cutchars: string           -- where to split words on double-clicks
URXvt.tripleclickwords: boolean  -- prevent copying of the whole line

我认为最后一个正是你要找的。如果你提供更多关于设置的详细信息,熟悉你的终端的人可能会给你更合适的答案。同时,你可以尝试urxvt

相关内容