如何在Linux上使用QtCreator设置CRLF结尾

14
我想在Unix环境下将QtCreator设置为使用CRLF而不是LF。有什么方法可以做到这一点吗?
PS:我知道可以在文件上使用dos2unix,但我不想这样做。

这通常是通过版本控制系统完成的,以便文件可以在不同平台之间共享。除了跨平台可移植性之外,您是否有其他想在Linux上使用CRLF的原因? - Dave Mateer
这正是我想要避免的原因,每次在一些由qt creator修改的Windows源代码上使用diff时,我都不想使用dos2unix。 - Dan Lincan
你使用哪个版本控制系统?我使用的所有diff工具(与Subversion一起)都会自动忽略仅有行尾差异。 - Dave Mateer
默认情况下,版本控制系统会尝试使用本地的行尾符,但是例如在Git中,您可以覆盖默认设置,一个不错的起点可能是https://help.github.com/articles/dealing-with-line-endings/,但请小心! - Ľubomír Carik
3个回答

2
下一个QtCreator版本将具有从工具栏更改打开文档的行结尾的功能。
根据时间,我将尝试在QtCreator设置中为新创建的文件添加默认选项。

为新文件设置一个默认选项确实非常有帮助。 - Hope
1
已经实现该选项,并将在未来版本中提供。 - smaryus

1

0
一些可能的解决方案:1. 我注意到一旦QtCreator在Linux中打开一个CRLF文件,它会像处理CRLF文件一样处理它,因此您只需要对该文件运行一次dos2unix。2. 'diff --strip-trailing-cr ...' 可以解决问题。3. 正如评论中提到的那样,大多数版本控制系统可以设置本地或固定行尾,因此您可以在VCS工具中解决问题而不是在Creator中。
我在“工具”->“选项”->“编辑器”下尝试了各种编码,但似乎没有任何影响行尾的设置(我很惊讶Creator似乎没有这个设置 - 但选项4是您总是可以获取Creator的源代码...)

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