VCSCommand一直在为我的所有提交添加一个额外的空行



我最近开始尝试vim的VCSCommand插件,以便与几个subversion存储库一起工作。每次我使用VCSCommitvim提交更改时,也就是说。键组合(\cc),我不断在提交中添加这些额外的空行。

这里有一个例子:

------------------------------------------------------------------------
r72 | smingolelli | 2012-12-15 15:58:17 -0500 (Sat, 15 Dec 2012) | 2 lines
Trying from Fedora 14 w/ svn 1.6.17 and vim 7.3 1-315 w/ svn:eol-style=native for compile.sh.
------------------------------------------------------------------------

如果我从命令行执行相同的提交:

------------------------------------------------------------------------
r73 | smingolelli | 2012-12-15 16:06:44 -0500 (Sat, 15 Dec 2012) | 1 line
Trying from Fedora 14 w/ svn 1.6.17 and vim 7.3 1-315 w/ svn:eol-style=native for compile.sh from command-line.
------------------------------------------------------------------------

因此,vimVCSCommand plugin似乎有问题,但我不知道问题是什么。此外,我尝试对多个版本的svnvimVCSCommand plugin进行相同的测试,但仍然得到了相同的行为。

版本

  • SVN客户端操作系统:Fedora14&CentOS 6
  • SVN服务器操作系统:Windows Vista
  • SVN服务器版本:1.6.2
  • VCSCommand插件:VCSCommand-19.99.46.zip,版本:1.99.46日期:2011-12-06

Fedora 14

  • 尝试过的SVN客户端版本:1.6.17
  • VIM版本已尝试:7.3(2010年8月15日,编译于2011年9月21日09:27:09)包含的补丁:1-315

CentOS6

  • 尝试过的SVN客户端版本:1.6.11、1.6.19——(注意:VCSCommand插件不适用于svn1.7+amp;VIM 7.3)
  • VIM版本已尝试:7.2&7.3(2010年8月15日,编译于2012年12月15日14:08:39)包含的补丁:1-393

Vim有一个名为eol的"特性",通常默认情况下处于启用状态。您可以使用:set eol打开它。这会在每个文本文件的末尾添加一个额外的换行符(如果它还没有换行符的话)。这是由于一些较旧的软件(最著名的是cron)需要在文件末尾添加换行符才能正确读取文件。大多数(如果不是全部的话)旧软件已经更新,没有这个要求,但vim仍然像以前一样工作。

您可以使用:set noeol关闭此功能。它会删除文件末尾的一行换行符(如果有的话)。如果您不想在文本文件的末尾添加换行符,或者在您的情况下,在提交注释的末尾添加新行符,那么这是可以的。将set noeol放在.vimrc文件的顶部,此设置将一直处于启用状态,但只要noeol设置有效,所有文件都将在文件的最后丢失换行符。

一种选择是使用:set binary,它关闭文本处理,并保留换行符。不过,它确实禁用了一些其他与文本相关的功能。查看文档,看看如果您选择此选项,哪些功能将消失。您也可以将此设置放在.vimrc文件中。

相关内容

  • 没有找到相关文章

最新更新