私は立ち往生していると逃げることはできません。それは言います:
"type :quit<Enter> to quit VIM"
しかし、それを単にオブジェクトの本体に表示すると入力すると。
ヒット Esc 「通常モード」に入るためのキー。それから:
をタイプして「コマンドラインモード」に入ることができます。コロン(:
)が画面の下部に表示されます。次のいずれかのコマンドを入力できます。コマンドを実行するには、 Enter キー。
:q
(:quit
の略):q!
(:quit!
の略):wq
:wq!
(ファイルに書き込み権限がない場合は強制書き込み):x
(:wq
に似ていますが、変更がある場合にのみ書き込みます):exit
(:x
と同じ):qa
(:quitall
の略):cq
を保存せずに終了し、Vimに0以外のエラーを返すようにさせる(すなわちエラーで終了する)ZZ
を入力して保存して終了し(:x
と同じ)またはZQ
を終了するだけで(:q!
と同じ)、 "通常モード"から直接Vimを終了することもできます。 (ここで大文字と小文字が区別されることに注意してください。ZZ
とzz
は同じ意味ではありません。)
Vimは広範囲にわたる助けを持っています - あなたが:help
コマンドでアクセスできる - あなたがすべてのあなたの質問に対する答えと初心者のためのチュートリアルを見つけることができるところ。
コマンドを入力する前に、を押してください。 Esc キー入力したら、 Return 確認するために。
Esc 現在のコマンドを終了し、Vimを 通常モード に切り替えます。あなたが押すなら今 ::
は画面のbottomに表示されます。これにより、実際にコマンドを入力してファイルを編集していないことを確認できます。
ほとんどのコマンドには省略形があり、オプションの部分は括弧で囲まれています:c[ommand]
。
'*'マークの付いたコマンドはVimのみです(Viでは実装されていません)。
安全に終了します(未保存の変更があると失敗します):
:q[uit]
現在のウィンドウを終了します ウィンドウ 。これが最後のウィンドウであればVimを終了します。 current buffer に変更が加えられると、これは失敗します。:qa[ll]
*変更されたバッファがなければ、すべてのウィンドウとVimを終了する。プロンプト終了(保存されていない変更があるかどうかを確認する)
:conf[irm] q[uit]
*終了しますが、変更されたバッファがあるときはPromptを与えます。:conf[irm] xa[ll]
*全ての変更されたバッファを書き込み、そしてVimを終了する。いくつかのバッファに書き込めないときにプロンプトを表示します。変更を書いて(保存して)終了します:
:wq
(変更されていなくても)現在のファイルを書き込み、終了します。ファイルが読み取り専用の場合、またはバッファに名前がない場合、書き込みは失敗します。すべてのウィンドウで:wqa[ll]
*。:wq!
同じですが、読み取り専用ファイルでも書き込みます。すべてのウィンドウで:wqa[ll]!
*。:x[it]
、ZZ
(と 詳細 )。ファイルだけを書きます変更された場合そして終了、すべてのウィンドウで:xa[ll]
*。変更を破棄して終了します:
:q[uit]!
ZQ
*可視バッファに変更があった場合も書き込まずに終了します。隠しバッファが変更されても終了しません。:qa[ll]!
*、:quita[ll][!]
* Vimを終了すると、バッファへのすべての変更(隠しファイルを含む)は失われます。を押す Return コマンドを確定します。
この答えはすべてのVimのwriteとquitのコマンドと引数を参照するわけではありません。実際、それらは Vimのドキュメント で参照されています。
Vimはヘルプを内蔵しています Esc:help
Return それを開く。
この答えは、もともと@dirvineが作成し、他のSOユーザーが編集した other one からヒントを得たものです。私はVimのリファレンス、SOコメント、その他いくつかの情報源からより多くの情報を含めました。 ViとVimの違いも反映されています。
写真は、1000個のUnixコマンドとオプションの価値があります。
私はこれを学期ごとに私の生徒たちに引き寄せます、そして、彼らはその後viをつかむようです。
viは 有限状態機械 だけで3つの状態を持ちます。
起動すると、viはコマンドモードに入ります。このモードでは、短くて文字数の少ないコマンドブラインドを入力できます。あなたは自分がしていることを知っています。これはアマチュア向けではありません。
実際にテキストを編集したい場合は、1文字のコマンドでINSERTモードに入ります。
さて、質問に答えて:終了します。
EXモードからviを終了することができます。
w
およびx
はファイル名パラメーターを受け入れます。あなたがファイル名でviを始めたならば、あなたは再びここでそれを与える必要はありません。
最後に、最も重要なこと:どのようにあなたはEXモードに到達することができますか?
EXモードは、画面の一番下の行に入力できる長いコマンド用です。 COMMANDモードから、コロン、:
を押すと、一番下の行にコロンが表示され、ここに上記のコマンドを入力できます。
INSERTモードから、ESC、すなわちEscapeボタンを押してCOMMANDモードにしてから、EXモードに進む必要があります。
よくわからない場合は、Escキーを押すとコマンドモードになります。
そのため、堅牢な方法はESC - : - x-Enterでファイルを保存して終了します。
Vimの と を保存せずに終了したい場合は、Vimに0以外の終了コードを返させるには、:cq
を使用します。
私はこれをずっと使っています、なぜなら私は!
のための小指のシフトに悩まされることができないからです。私はよくファイルに保存する必要のないものをVimにパイプで送ります。また、チェックインを中止するためにゼロ以外の値で終了しなければならない奇妙なSVNラッパーも動作しています。
これはVimを終了したいという最悪のシナリオのためのもので、あなたがしたことがわからなくても、開いたファイルに何が起こるのか気にする必要はありません。
Ctrl-cEnterEntervi
EnterCtrl-\Ctrl-n:qa!
Enter
これはほとんどの時間あなたを連れ出すべきです。
あなたがこのようなものを必要とするいくつかの興味深いケース:
i
Ctrl-ovg
(挿入モードに入り、次にビジュアルモードに入り、次にオペレーター保留モードに入ります)
Qappend
Enter
i
Ctrl-ogQ
Ctrl-r=
Ctrl-k (この場合はporgesに感謝します)
:set insertmode
(これは Ctrl-\Ctrl-n 通常モードに戻ります)
編集:この答えは上の場合が原因で修正されました。それは従来:
EscEscEsc:qa!
Enter
ただし、Exモードに入っているとうまくいきません。その場合、あなたはする必要があります:
vi
Enter:qa!
Enter
それで、「自分のしたことを知りたくないし、何も保存したくないので、今すぐ外に出したいだけ」という完全なコマンドです。だろう
vi
EnterEscEscEsc:qa!
Enter
Vimをイージーモード(-y
オプションを使って)終了する必要がある場合は、を押すことで通常のVimモードに入ることができます。 Ctrl + L それから通常の終了オプションのどれでもうまくいくでしょう。
Vimは3つの動作モードを持っています:入力モード、コマンドモードとExモード。
入力モード - あなたがタイプしたすべてのもの、すべてのキーストロークがスクリーンにエコーされます。
コマンドモードまたはエスケープモード - このモードで入力したものはすべてコマンドとして解釈されます。
Exモード - これは別のエディタです。それはラインエディタです。 1行ごとに、または一定範囲の行に基づいて機能します。このモードでは、 : 画面の下部にが表示されます。これは元のエディタです。
Vimを終了するには、exモードかコマンドモードのどちらかにいる間に終了することができます。入力モードのときはVimを終了できません。
exモードから抜け出す
コマンドモードになっていることを確認する必要があります。それをするためには、単に押す Esc キー。
を押して元のモードに移動します。 : キー
終了するには、exモードで次のいずれかの組み合わせを使用します。
:q
- quit :q!
- 保存せずに終了:wq
- save&quitまたはwrite&quit :wq!
- wqと同じですが、ファイルのパーミッションが読み取り専用の場合は強制的に書き込みます:x
- write&quit :qa
- quit all。複数のファイルが次のように開かれている場合に便利です。vim abc.txt xyz.txt
コマンドモードを終了
エスケープキーを押します。あなたがコマンドモードにいるなら、あなたはおそらく既にこれをしています。
プレス首都ZZ(shift zz
) - 保存して終了
大文字のZQ(shift zq
)を押します - 保存せずに終了します。
打った後 ESC (または cmd + C 私のコンピューターでは)あなたがヒットする必要があります : コマンドプロンプトが表示されます。それから、quit
を入力します。
あなたの情報が保存されていないためにマシンがあなたに終了を許可しないことに気付くかもしれません。それでもやめたい場合は、次のように入力します。 ! 終了直後(つまり:quit!
)。
WindowsにGitクライアントをインストールすることでVimを手に入れました。 :q
は私のためにVimを終了しないでしょう。 :exit
はしかし….
これに私の 2セント を加えたい。質問は ここ にされました。
Numberを指定したq
コマンドは、その位置で与えられた分割を閉じます。
:q<split position>
または:<split position>q
はその位置で分割を閉じます。
あなたのVimウィンドウのレイアウトは次のようになっているとしましょう。
-------------------------------------------------
| | | |
-------------------------------------------------
| | | |
| | | |
| Split 1 | Split 2 | Split 3 |
| | | |
-------------------------------------------------
q1
コマンドを実行すると、最初の分割が閉じられます。 q2
は2番目の分割を閉じます。
Quitコマンドの分割位置の順序は関係ありません。 :2q
または:q2
は2番目の分割を閉じます。
コマンドに渡す分割位置が現在の分割数より大きい場合は、最後の分割を単純に閉じます。
たとえば、上記のウィンドウ設定で3つの分割しかないところでq100
を実行すると、最後の分割(分割3)が閉じます。
これがVimを終了する方法です。 CtrlキーとZキーを押してからXキーとCキーを押します。
Ctrl -> +Z -> +X -> +C
押す Esc 挿入モードを終了し、:wq
を実行して保存して終了するか、:q
を実行して正常に終了します。 :)