在Eclipse中复制和粘贴会在每个粘贴行的末尾添加窗口换行符

时间:2012-03-23 16:08:25

标签: eclipse macos aptana

我在Mac OS X(10.7)上使用Eclipse(版本:Indigo Service Release 2),使用PHP开发工具和Aptana Studio 3插件。

在偏好设置中>一般>工作区我选择了:   - 文本文件编码= UTF-8   - 新文本文件行分隔符= Unix 在首选项>一般>编辑>文本编辑器我启用了“显示空白字符”。

我还使用“文件>转换行分隔符到> Unix”来定期更改任何窗口换行符。

文本的复制粘贴会在粘贴文本的整行末尾添加窗口换行符(^ M)。尽管复制的文本是“干净的”Windows新行字符,但仍会发生这种情况。对于所有复制粘贴的文本(来自同一文件/编辑器,或来自其他来源),如果其中至少有一个整行,则会发生这种情况。我注意到git提交中的行为。

我相信我已经用尽所有可能的解释,并且在我的研究中没有找到任何东西。

我怀疑Aptana Plugin是问题所在,因为我有第二个(单独的)Eclipse安装,所有设置如上所述减去Aptana插件,从未经历过类似的东西。尽管如此,我在Aptana偏好中找不到任何看起来像潜在解决方案的东西。

在我称之为错误之前的任何想法?

1 个答案:

答案 0 :(得分:18)

我有同样令人讨厌的问题。经过一些研究和实验,我认为我找到了bug的来源和解决方法。

对我的设置的观察(Eclipse 3.7.2,PDT 3.0.0,no aptana):

  • 它只发生在<?php ?>分隔符内的PHP文件中。
  • 只有当光标位于只有空格的行上的某个地方时粘贴才会发生。粘贴后,所有空格都被删除了。
  • 当行上有非空白字符时,它不会发生。当粘贴在非空格字符前面时,字符前面的空格会被删除。

这种行为感觉就像是自动缩进处理的问题,所以我尝试了dis / /启用与缩进相关的选项。 禁用以下选项为我修复了它:

PHP&gt;编辑&gt;打字&gt;粘贴时调整缩进

祝你好运