Vim command for "edit a copy of this file"
Asked Answered
F

2

39

A pattern I seem to be following right now is:

  • edit a file until I like it
  • :w another-file to use it as a starting point for another-file
  • :e another-file to polish up another-file

Is there an existing ex command to do the latter two steps at once? Something like :writeAndEdit another-file?

I can fake one using vimscript, I just want to know if there's an existing command.

Flitter answered 28/4, 2011 at 21:0 Comment(3)
Good question. I use that method too, and it's very error prone.Albaugh
Vim questions belong here. This was voted on in meta long ago.Unlatch
What I used to do was :w newfile and then :[UPARROW][HOME][DEL]e[ENTER] which takes the last command and changes it from a :w to an :e so that your chance of a typo is much less. Still two steps just less error prone. Now that I know about saveas I will be using that but I thought I would mention it here because the idea could be useful for other tasks.Elene
S
53

Could :saveas do the job?

:sav[eas][!] [++opt] {file}
            Save the current buffer under the name {file} and set
            the filename of the current buffer to {file}.  The
            previous name is used for the alternate file name.
Stambul answered 28/4, 2011 at 21:17 Comment(0)
A
11

You are less likely to overwrite your original file if you open the new file first and then copy the original file into the buffer.

:e another-file
:r original-file

I found an answer for you. Type :help saveas and enjoy!

:sav[eas][!] [++opt] {file} Save the current buffer under the name {file} and set the filename of the current buffer to {file}. The previous name is used for the alternate file name. The [!] is needed to overwrite an existing file. When 'filetype' is empty filetype detection is done with the new name, before the file is written. When the write was successful 'readonly' is reset. {not in Vi}

Albaugh answered 28/4, 2011 at 21:10 Comment(1)
@Flitter not according to the timestamps, it looks like Judge was 1s quicker!Alltime

© 2022 - 2024 — McMap. All rights reserved.