svn - VCSCommand 不断向我的所有提交添加一个额外的空行

标签 svn vim vim-plugin vcscommand

我最近开始试用 VCSCommand plugin对于vim与多个颠覆存储库一起工作。每次我使用 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 插件 有关,但我没有看到问题所在。此外,我尝试使用多个版本的 svnvimVCSCommand 插件 进行相同的测试,但仍然得到相同的行为。

版本

  • SVN 客户端操作系统:Fedora 14 和 CentOS 6
  • SVN 服务器操作系统:Windows Vista
  • SVN 服务器版本:1.6.2
  • VCSCommand 插件: vcscommand-1.99.46.zip , ver: 1.99.46 date: 2011-12-06

软呢帽 14

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

中央操作系统 6

  • 尝试过的 SVN 客户端版本:1.6.11、1.6.19 --(注意VCSCommand 插件不适用于 svn1.7+ 和 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,它会关闭文本处理,并单独保留换行符。不过,它确实禁用了其他一些与文本相关的功能。查看documentation查看如果您选择此选项哪些功能将消失。你也可以把这个设置放在你的 .vimrc 文件中。

关于svn - VCSCommand 不断向我的所有提交添加一个额外的空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13896442/

相关文章:

vim - 当我使用 gqG 时,如何阻止 Vim 加入行?

c - YouCompleteMe 仅建议 "local"使用的代码

ruby-on-rails - Vim/command-T : Ignoring "gem-name" because its extensions are not built. 尝试 gem pristine "gem-name"

svn - CruiseControl.NET 和 TortoiseSVN

svn - 你如何在 Subversion 中设置共享工作副本

linux - 将当前项目添加到 SVN 但忽略某些文件类型

r - Vim:下划线(_)自动转换为(<-)

eclipse - 需要帮助使用 Eclipse 配置外部差异

vim - vim为listchars选项卡和空格设置颜色

go - vim-go 找不到正确的 GOPATH