Wie mache ich vi neu zeichnen Bildschirm?

110

Wenn ich benutze

git commit --amend

Es wird in ein vi-Fenster eingegeben, in dem ich Kommentare für das Festschreiben eingeben kann. Das Problem ist, dass in den vi-Fenstern einige schmutzige Zeichen aus dem früheren Shell-Hintergrund angezeigt werden. Ich frage mich also, wie ich vi den Bildschirm neu laden oder neu zeichnen lassen kann, um den Bildschirm normal zu machen.

Bisher versuche ich, das Terminal zurückzusetzen und Strg + L, es funktioniert, aber ich frage mich, ob es für eine solche Situation die beste Antwort gibt.

Sam Liao
quelle

Antworten:

214

Ich benutze ctrl+ Lseit 35 Jahren für solche Zwecke. Was ist daran falsch?

Alex Martelli
quelle
2
Kontrolle + L scheint bei mir nicht zu funktionieren; Ich muss zuerst das Terminal zurücksetzen. Ich weiß nicht warum ...
Sam Liao
7
War Ihre .vimrc-Einstellung "Begriff"? Vielleicht wurde es falsch eingestellt.
Laurence Gonsalves
6
@AlexMartelli: Strg + L scheint nicht über Putty zu funktionieren. !redrawist vielseitiger.
gsbabil
10
Strg + L funktioniert bei mir nicht, dies scheint von Ihrem Terminal abhängig zu sein. auch: neu zeichnen! scheint die Arbeit für alle Lösung.
DebugXYZ
2
Für diejenigen, die oben erwähnen, dass <CL> nicht funktioniert, haben Sie möglicherweise die Schlüsselbindung auf etwas anderes abgebildet. In diesem Fall verwenden Sie einfach:redraw!
Huangzonghao
292

So erzwingen Sie eine Bildschirmaktualisierung

:redraw!
HS.
quelle
4

In Vi werden beide neu gezeichnet:

  • ^ R (funktioniert nicht mit Terminals vom Typ VT100)
  • ^ L (funktioniert nicht mit Televideo-Terminals)

Von http://www.cs.rit.edu/~cslab/vi.html#A1.4 (toter Link; siehe Archiv )

Wie in den Kommentaren erwähnt, verwendet Vim jetzt ^ R zum Wiederherstellen und ^ L allein zum Neuzeichnen.

Tim Sylvester
quelle
7
Wird ^ R nicht wiederholt? ^ L arbeitet für mich zum Neuzeichnen des Bildschirms.
Geremia
@Geremia Hängt anscheinend vom Terminaltyp ab, ^ L ist wahrscheinlich bei weitem häufiger.
Tim Sylvester
2
In vim wird ^ R immer wiederholt.
Wir sind alle Monica