如何让Vim的`J`和`gq`命令在一段时间后使用一个空格?

当我使用Vim的J命令时,大多数行都用一个空格进行填充。 但经过一段时间Vim总是使用两个空格。 以下面的例子:

 This ends with a comma, but this ends with a period. Join with 'J' and what do you get? 

对我来说,结果是:

 This ends with a comma, but this ends with a period. Join with 'J' and what do you get? 

逗号后面有一个空格,后面是两个空格。 如果使用gq命令重新格式化段落,那么同样的故事。

有没有一个设置,我可以修改,使Vim使用后,只有一个空间?

 :help joinspaces 'joinspaces' 'js' boolean (default on) global {not in Vi} Insert two spaces after a '.', '?' and '!' with a join command. When 'cpoptions' includes the 'j' flag, only do this after a '.'. Otherwise only one space is inserted. NOTE: This option is set when 'compatible' is set. 

所以,你会做一个

 :set nojoinspaces 

获得你想要的东西。

或者,您可以使用切换设置

 :set joinspaces! 

你需要:set nojoinspaces摆脱双重空间。 文档在这里

 :h 'joinspaces' 

将此选项设置为0 / false / no。