在 xfce4-terminal 中复制粘贴添加 0~ 和 1~

在 xfce4-terminal 中复制粘贴添加 0~ 和 1~

我使用 xubuntu 14.04,64 位。有时,当我尝试在 xfce4-terminal 中粘贴一些文本时,它不是预期要粘贴的文本,而是被0~和包围1~,例如:

0~mvn clean install1~

文本应该是mvn clean install——我通过将内容粘贴到各种其他应用程序(gnome-terminal、gedit 等)中来验证这一点。每个应用程序都会正确粘贴内容,xfce4-terminal 除外。我在互联网上找不到任何相关参考(不幸的是,很难在 google.com 上搜索带有特殊字符的文本...)。为什么会出现这种情况?

答案1

问题是您的终端处于括号粘贴模式,但似乎无法正确支持它。该问题已在 VTE 中修复,但 xfce4-terminal 仍在使用旧的且未维护的版本。

您可以尝试使用以下方法暂时关闭括号粘贴模式:

printf "\e[?2004l"

答案2

我的问题是由于 bash 会话关闭不当造成的。所以reset在我的终端中运行命令立即解决了它。

答案3

我也遇到了同样的问题,使用 vi 后就出现了。

set t_BE= 我的问题通过添加到我的.vimrc文件中得到解决。

为了参考,这就是 t_BE 所做的:

t_BE 启用括号粘贴模式

答案4

这可能并不直接适用于您的问题,但就我而言,我发现这种症状可能是由我选择的编辑“mcedit”(午夜指挥官)引起的

为了缓解错误问题,我在 .bashrc 文件中添加了以下函数:

### vvv 'function mcedit' is a fix-up for the ~0/~1 paste problem
function mcedit() { command mcedit $@ ; printf '\e[?2004l' ; }

然后'源.bashrc'

现在,每次我执行“mcedit”时,当我关闭以重置“括号粘贴模式”时,它都会自动添加“printf“\e[?2004l””

对我有用,YMMV。

相同的方法可以用于 vi、vim、nano 或任何其他行为不当的程序。

相关内容