In vim können Sie Befehle mit "!" Ausführen. Sie können dies mit "r" kombinieren, um die Ausgabe in Ihren aktuellen Puffer einzufügen.
: r! date
Fr Jul 20 09:39:26 SAST 2012
fügt das Datum in eine Datei ein.
Wenn ich jetzt versuche, etwas interessanteres zu machen, wie Datum mit anderem Format +% F. In der Befehlszeile
$ date +% F
2012-07-20
In vim
: r! date "+% F"
message.to.followup.lstF
Welcher gibt den Namen der Datei aus und setzt F danach. So wird das r! date "+% F" in vim erweitert und nicht in der Befehlszeile ausgeführt. Was muss ich tun, um dies auszuführen, damit der Inhalt in vim abgelegt wird?
Vielleicht hat vim eine bessere Möglichkeit, Daten in Dateien einzufügen.
vimrc
, um es automatisch in ein beliebiges Format zu bringen .Antworten:
Vim hat eine interne
strftime()
Funktion. Versuchen Sie dies (im Einfügemodus):quelle
"=strftime("%F")<CR>P
(Quelle: vim.wikia.com/wiki/Insert_current_date_or_time )Ich habe weiter experimentiert, bis ich herausgefunden habe, dass vim das Zeichen "%" erweitert. Entkomme einfach "\%" und alles funktioniert wie erwartet.
Jetzt kann ich Daten in Dateien einfügen, wie ich möchte
quelle
date
auch verwenden, und daher ist es leichter zu merken als das internationale "strftime" -Ding.Eine andere Methode, ohne zu entkommen, mit
system()
:Im INSERT- Modus:
Im NORMAL- Modus:
quelle