Frage Wie kann ich machen, dass Vim's `J` und` gq` Befehle nach einer Periode ein Leerzeichen benutzen?


Wenn ich Vim benutze J Befehl, die meisten Zeilen sind mit einem einzigen Leerzeichen für die Auffüllung verbunden. Aber nach einer gewissen Zeit benutzt Vim immer zwei Leerzeichen. Nehmen Sie das folgende Beispiel:

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

Für mich ist das Ergebnis:

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

Ein Leerzeichen nach dem Komma, zwei nach dem Punkt. Die gleiche Geschichte, wenn Sie den Absatz mit der gq Befehl.

Gibt es eine Einstellung, die ich ändern kann, damit Vim nach dem Zeitraum nur ein Leerzeichen verwendet?


76
2018-01-21 15:19


Ursprung


Antworten:


: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.

Also würdest du ein tun

:set nojoinspaces

um zu bekommen, was du willst.

Alternativ können Sie die Einstellung mit ändern

:set joinspaces!

85
2018-01-21 15:24



Du brauchst :set nojoinspaces um den doppelten Raum loszuwerden. Dokumentation hier


24
2018-01-21 15:24



:h 'joinspaces'

Setzen Sie diese Option auf 0 / false / no.


9
2018-01-21 15:23