Angenommen, Sie führen das folgende Vimscript aus:
let @z = system("date")
Dadurch wird eine String-Version des aktuellen Datums in das z-Register eingefügt, die Zeichenfolge endet jedoch mit einem Zeilenumbruch, den ich nicht möchte. Gibt es eine integrierte Möglichkeit (ähnlich wie bei Perl chomp
), um die nachgestellten Zeilenumbrüche einer Zeichenfolge zu beseitigen?
call
Syntax? Warum nicht einfachChomp
einen Parameter mit dem Namen angebenstring
unda:string
an übergebensubstitute
?Chomp()
es alle Argumente übergibt, die es verarbeitetsystem()
, die nachgestellte Zeile aus der Ausgabe entfernt und diese zurückgibt.system()
hat ein optionales{input}
Argument, und dieses behandelt alle diese generisch. Wenn Sie dies nicht benötigen, tun Sie es einfach auf herkömmliche Weise.Entfernt den Zeilenumbruch für Sie.
quelle
\n
Newline verwenden, nicht korrekt funktioniert.systemlist()
entfernt nur die\n
, keine\r
.Christian Brabandt hat eine Reihe verschiedener Methoden auf superuser.com aufgelistet .
Ich mag dieses, weil es kurz ist:
quelle
\r\n
Art der Zeilenenden behandelt ...\n
bevor es sie zurückgibt.