Resharper重新格式化会改变行尾符

9
有没有设置可以更改ReSharper,使其不改变我的行尾?我还没有看到任何东西。
以下是我证实的说明...
看起来当我使用ReSharper并进行完整的代码清理时,无论之前使用什么样的行尾,它都会将其更改为CRLF。
我通过在VS2010中打开一个文件,执行“文件->高级保存选项”并将行风格更改为Unix(LF)来证明了这一点。
在Notepad++中,我打开查看行尾,并且只在行尾看到LF。
然后,我进行了ReSharper代码清理,到处都出现了CRLF。

请在 http://youtrack.jetbrains.net 提交错误报告。 - Dmitry Osinovskiy
1
已完成:http://youtrack.jetbrains.net/issue/RSRP-274916?projectKey=RSRP - CubanX
3个回答

4

在 Resharper / 选项 / 代码编辑 / 一般格式化程序样式 / 默认行尾样式 下,您可以选择 - 当前操作系统 | Windows | Mac | Unix


这个问题在这个bug修复之前是不存在的: https://youtrack.jetbrains.com/issue/RSRP-274916现在,这是100%正确的答案(在2012年我提问时,遗憾的是没有正确答案 :) ) - undefined

1

ReSharper configuration window

不要忘记确保你的git设置对于行结尾是准确的。如果你和我一样,因为你把源代码放在Mac上而在Windows中运行Visual Studio而来到这里,那么你需要确保你的git设置也包括正确的“core.autocrlf”设置。

https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration


这些是非常好的观点,如果我能给予双重正确答案的奖励,我会这样做,但是另一个答案先到了。 - undefined

-4

自ReSharper 1.0版本以来,CRLF行结尾已经被硬编码。

这样做的主要原因是VS运行在Windows下,其中CRLF结尾是标准的。你的项目一定非常特殊,才不使用Windows默认的文本文件设置。


2
不,这没什么特别的 :) 我们只是在与OSX和Linux上的开发人员进行交互,并且我希望每个地方都有相同的行尾。某些操作会产生混合的EOL,我碰巧发现ReSharper就是其中之一。如果我正确地阅读了那个ticket,我认为他们正在解决它,所以一切都很好。 - CubanX

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接