使用Atom 1.14.3,我有一个whitespace包,用于在文件末尾自动插入换行符。
即使我删除结束换行符并点击保存,它也会重新添加换行符。这很好。

空白包配置似乎没有问题:

问题是,当我承诺Github时,它说换行符已经被删除了:

为什么会这样呢?这是一个Atom问题,还是潜在的本地github设置问题?
编辑:不知怎么的,我需要禁用whitespace包,在文件的末尾手动添加两个CRLF,然后提交Github在文件末尾拾取单个CRLF。

发布于 2017-03-28 01:34:20
我想你可能误解了新台词的位置。
让我们来看看你的两个截图,以及每个截图中换行符的位置。

233 return router;\n
234 };\n这里我们有234作为文件中的最后一行。我们显示了一行235,但这是因为234上的换行符创建了编辑器光标要打开的下一行。如果您开始输入235,您将创建更多的内容。但是现在,235是一个空行(包括没有终止换行符)。

233 return router;\n
234 };\n
235 \n这与此类似,但它还有一个以换行符结尾的空行235。现在,没有换行符的空输入行移动到236。
当您使用活动的空格包保存时,它删除了文件末尾多余的换行符,只剩下一行。就像第一张截图一样。然而,当你看到吉蒂布的差异时,情况就没有什么不同了。Github正在向您显示文件内容,而不是在编辑器中。因此,没有理由让您的光标的幻影最后一行。相反,它向您展示了事情的简单真相:第234行是文件中的最后一行。第235线现在消失了。
让我们看一下空白包的设置。具体而言,第一种情况是:
确保单尾纽线 如果缓冲区保存时没有以换行符结尾,则追加一个。如果它以多个换行符结尾,则删除除一个以外的所有换行符。若要禁用/启用特定语言,请在
config.cson中使用语法范围的属性。
以下是描述的前两句话,并加了一些重点:
如果缓冲区在保存时没有以换行符结尾,那么会追加一个。如果它以一个以上的换行符结尾,将删除除一个换行符以外的所有换行符。
https://stackoverflow.com/questions/43052279
复制相似问题