manchmal friert meine Datei in meinem vi | vim einfach ein, was ist passiert?


298

Wenn ich meine Datei mit vi oder vim bearbeite, friert meine Datei manchmal einfach ein. Selbst wenn ich tippe Ctrl+Coder Ctrl+D, friert es dort immer noch ein. Ich kill -9 <pid>von einem anderen Terminal, die PID wird getötet, aber die Datei friert dort immer noch ein.

Ich muss wohl eine Tastenkombination eingegeben haben, die ich nicht kenne. Hat jemand eine Idee?

Antworten:


605

Ctrl- Sist wahrscheinlich der Schuldige; In den meisten Terminals wird die Bildschirmausgabe gestoppt. Wie Michael bereits erwähnt hat, können Sie Ihren Bildschirm durch Eingabe von Ctrl- wieder normalisieren Q.

Theoretisch Einstellung stty -ixonverhindern soll Ctrl- Svon Ihrem Bildschirm einfrieren, aber es funktioniert nicht auf meinem lokalen Login Solaris 10.


@CallMeNorm - dies passiert auch mit der hinterhältigen Verknüpfung <Strg-A> für screen / tmux / etc, weil ich dicke Finger habe. ;)
Cometsong

Wenn Sie aus irgendeinem Grund Ctrl-Q global neu zugeordnet ("inaktiviert") haben (z. B. um ein versehentliches Beenden von Firefox zu vermeiden), können stty -ixonSie ~/.bashrcCtrl-q in Terminals aktivieren . In meinem Fall hat Ctrl-s Vim eingefroren und ich konnte nicht darauf zurückkommen ... bis ich diese .bashrc-Modifikation vorgenommen habe. Details hier: superuser.com/a/1328326/409327
Victoria Stuart

75

Verwenden Sie es zufällig in GNU Screen? (Wie pra hervorhebt, trifft dies anscheinend auch außerhalb des Bildschirms zu.) Es ist ziemlich häufig, dass versehentlich Ctrl+S( xoff) gedrückt wird, wodurch die Bildschirmmalerei deaktiviert wird, bis Sie Ctrl+Q( xon) drücken.


Gibt es einen Schlüssel, der die Datei einfriert, wenn mein vim mit cscope kombiniert wird?
user399517

1
es passiert (manchmal) nachdem ich Shift + Insert eingegeben habe und vi zeigt: open mode.
user399517

1
Ctr-S ist nicht spezifisch für den GNU-Bildschirm.
Pra

1

Wenn Ctrl+ Snicht Ihr Problem ist (wie in der Antwort von pra ), kann dies Ihnen helfen.

Wenn Sie versucht haben, eine Reihe von benutzerdefinierten Plugins mit Vundle zu installieren , geht es manchmal schief. Sie können versuchen, diese Pakete manuell zu entfernen, um festzustellen, ob dies hilfreich ist. Finden Sie heraus, wohin die Plugins geschrieben wurden - in meinem Fall befanden sie sich alle im .vim/bundleVerzeichnis, weil ich Vundlegit clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim installiert habe . Sobald Sie sich im .vimVerzeichnis befinden, können Sie den gesamten Bundle-Ordner löschen, um alle Plugins zu entfernen, und durch Ausführen erneut starten rm -rf bundle.

Ich hoffe es hilft!


-11

Sie können versuchen, das Tastaturlayout zu ändern. Vi | vim interagiert nur mit englischen (ähnlichen) Eingaben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.