Ein großer Unterschied zwischen neovim und Vim besteht darin, dass neovim einen Terminalemulator enthält , der asynchron arbeitet.
Ich sehe jedoch nicht ein, wie ich von dieser Funktion profitieren kann. Wofür kann ich es verwenden? Können Sie einige Anwendungsfälle für die Terminalfunktion von neovim angeben, damit ich verstehe, wie ich sie optimal nutzen kann?
Im normalen Gebrauch Vim ich normalerweise :read !{command}
, :write !{command}
, Ctrl+Z
und fg
sowie tmux Split - Fenster.
<C-z>
ist, dass der Vim-Prozess vom Betriebssystem angehalten wird: Er unternimmt nichts (einschließlich der Reaktion auf Serverbefehle).:shell
mit zuexit
verwenden, oder ist vim auch hier ausgesetzt?<C-z>
, das ist ein Problem mit Ihrem Skript.Antworten:
Durch Ausführen eines Terminals in Vim können Sie Vim-Befehle für die Ein- und Ausgabe der Programme verwenden, die Sie in diesem Terminal ausführen. Sie erhalten Suchen, Kopieren, Einfügen, Makros, Syntaxfarben usw. Verwenden
:read !{command}
und:write !{command}
gibt diese für One-Shot-Befehle an, aber die asynchrone Eingabe / Ausgabe wird nützlich, wenn Sie Eingaben Stück für Stück an ein externes Programm senden möchten.Der typische Anwendungsfall ist eine Read-Eval-Print-Schleife (REPL), die von vielen höheren Programmiersprachen bereitgestellt wird. Sie geben eine Zeilengruppe in Ihren Quellcode ein und geben sie dann zur sofortigen Rückmeldung an die REPL weiter. Da die REPL von einer Übermittlung zur nächsten weiterläuft, werden die übermittelten Codeausschnitte im Kontext ausgeführt.
quelle
Ich denke, die Option zum Erstellen von Nur-Terminal-Zuordnungen ist wertvoll und erweitert die Optionen, die Sie in anderen Terminal-Emulatoren haben, z. B. Zuordnung t, um Unittests mit einer bestimmten Konfiguration auszuführen, die Sie nur durch komplexe Aliase oder Bash-Funktionen erreichen können.
quelle
Der offensichtlichste Anwendungsfall, den ich mir vorstellen kann, ist das Programmieren. Wollten Sie schon immer Tests in VIM ausführen, kompilieren oder ein Konsolentool verwenden? Ich weiß, dass Leute Tmux verwenden, aber ich weiß, dass Sie dies in NeoVIM tun können. Das ist ziemlich genial !!!
Wenn Sie Puffer verwenden, können Sie Terminals nach Belieben hinzufügen, entfernen, ausblenden und anzeigen. Das ist der Gewinn;)
quelle
Der beste Anwendungsfall, den ich mir vorstellen kann, ist der ursprüngliche ADM-3a auf einer 110-Bit / s-Leitung! Manchmal gibt es wirklich keinen Ersatz dafür, Dinge nebeneinander zu betrachten und
:!r
sie nicht zu schneiden.quelle