新しいファイルとして保存し、Vimで元のファイルで作業を続ける方法は?


362

:savコマンドを使用するたびに、新しい名前でファイルが保存され、Vimで新しいファイルが開かれます。

ファイルを新しい名前で保存して、元のファイルを開いたままにして編集することはできますか?


13
私は反対の質問をしました。
派手な

4
@cambunctious私も。私はググリングしていてvim "save as"、この質問は私が:saveas期待したとおりに機能するものが存在することを教えてくれました:新しい名前で既存のファイルを保存し、新しいファイルを開きます。
ジャクトース

回答:


526

:wファイル名を指定してコマンドを使用します。

:w other_filename

78
さらに、:w %:h/other_filename開いているファイルと同じディレクトリにあるファイル名に書き込むために使用します。
loevborg 2013年

2
@Ioevborgそうでないのはいつですか?私はあなたのコメントを読まずに単に:w fnameと振る舞いがデフォルトのようです。
Blake、

10
@ Cokemonkey11現在のファイルの場所を作業ディレクトリと同じにすることは、vimのデフォルトの動作ではありません。おそらく、あなたのためにこれをやっているvimrcファイルに何かがあるでしょう。さらに詳しい情報は、こちらvim.wikia.com/wiki/Set_working_directory_to_the_current_file
Derek

8
:「H /%」元のファイルがあった場所のファイルは、あなたがVimを開いたときにいたディレクトリにない保存されます....私はちょうどなしていることが確認
RVC

7
は、現在のファイルではなく、:w other_filenameデータother_filename のみにデータを書き込むことを言及すると便利です。
Ram Patra 2017年

270

答えてくれてありがとう。Vimには「SAVE AS」の方法が2つあることを知っています。

hello.txtを編集していると仮定します。

  • :w world.txt は、hello.txtのコンテンツをファイルworld.txtに書き込み、vimでhello.txtを開いたバッファーとして保持します。
  • :sav world.txtはまずhello.txtのコンテンツをファイルworld.txtに書き込み、次にバッファhello.txtを閉じ、最後に現在のバッファとしてworld.txtを開きます。

27
:sav初期バッファを閉じず、非表示にします。デフォルトでは、非表示のバッファーはアンロードされますが、これはオーバーライドできます(「hidden」または「bufhidden」オプションを使用)。
ZyX 2012年

7
だから、ええと... :sav私が知っている「名前を付けて保存」に近いです。
skytreader 2014

8
Vimのヘルプから::sav[eas][!] [++opt] {file}だから、:sav あるため短縮:saveas。一方、:wはのショートカットです:[range]w[rite][!] [++opt] {file}。そして、すべてがマニュアルにあり、上/下のほんの数行です。
Atcold 2014年


3

次のコマンドは、新しいウィンドウにコピーを作成します。したがって、元のファイルと新しいファイルの両方を引き続き表示できます。

:w {newfilename} | sp #
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.