Jak zapisać plik, nad którym pracujesz, jako nowy plik?


10

Czasami chcę przetestować zmiany w pliku przed nadpisaniem oryginału. Czy mogę zapisać edytowany plik w nowym pliku?


Odpowiedzią nie na temat byłoby zasugerowanie VCS. Na przykład przydatny może być indeks git
johannes

Odpowiedzi:


17

Możesz podać parametr do polecenia :wlub, :writeaby zapisać w innym pliku. Na przykład, aby zapisać bieżący bufor w /tmp/data.txt:

:w /tmp/data.txt

Należy jednak pamiętać, że nie powoduje to przełączenia bufora na inny plik. Więc jeśli będziesz kontynuować edycję i po prostu :wto zrobisz, zapisuje się to w bieżącym pliku, a nie w drugim. Aby przełączyć na inny plik, użyj :editpolecenia:

:e /tmp/data.txt

Aby wykonać ten krok, zapisz w innym pliku i przejdź do niego, użyj :saveaspolecenia:

:sav /tmp/data.txt

5

Vim ma „tryb kopii zapasowej”, który można włączyć za pomocą :set backuplub :set patchmode. W tym trybie Vim automatycznie zachowuje kopię zapasową zapisanych plików.

Na przykład, jeśli wydajesz :set patchmode=.origi edytujesz istniejący plik somefile.txt, to kiedy wydasz :wnormalnie, Vim zachowa kopię starego pliku jako somefile.txt.origi zapisze nową zawartość jako somefile.txt.



0

Po prostu podaj nową ścieżkę do pliku w :wpoleceniu -:w newfile.foo

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.