Ya he buscado mucho esto y cada respuesta es sobre Vim en Linux. ¿Hay alguna manera de guardar un archivo de solo lectura directamente desde Vim en Windows?
microsoft-windows
save
Durga Swaroop
fuente
fuente
:w!
no funciona. Dice que no se puede abrir el archivo para leer. Aunque puedo hacer exactamente lo mismo fuera de vim.gvim
comoRun as Administrator
? Quizás resolvería su propósito ... o de lo contrario podría ser posible que otra aplicación bloquee el archivo ...run as administrator
completar su subproceso que involucra tareas administrativas que hacer ... Eche un vistazo a windows.microsoft.com/en-in/windows/… .... de lo contrario, desactive laUAC
configuración ... .:w!
no vuela y debe ejecutar gVim como administrador o Vim en un símbolo del sistema que se ejecutó como administrador.Puedes usar mi plugin SudoEdit .
fuente
Hay otra posibilidad que no se ha abordado en las otras respuestas: vim se negará a guardar un archivo si está abierto y bloqueado por otra aplicación de Windows. Muchas aplicaciones comunes de Windows (Office, por ejemplo) bloquean los archivos que abren. Si este es el problema, no hay problemas con los permisos o: w! Te ayudará. Simplemente necesita cerrar el archivo en la otra aplicación, y luego podrá guardarlo desde vim. Es lamentable que vim no indique claramente esta situación al usuario.
fuente
Para win7: Inicio> Ejecutar> Cmd (como administrador), y ejecute estos comandos para que el árbol de directorios pueda ser escrito por el administrador:
fuente
Ejecute gVim como administrador, por ejemplo, haciendo clic con el botón derecho o usando el atajo de teclado Shift+ F10en el atajo de gVim en el menú Inicio y seleccionando Ejecutar como administrador .
Abra el archivo que desea editar y guarde los cambios con
:w
normalidad.fuente
Uso gvim para editar
C:\Windows\System32\drivers\etc\hosts
después de configurar sus permisos en "control total", el truco consistía en configurar "heredar permisos" en "no" primero. Luego comenzó a funcionar sin el "!". También había corridoattrib
pero eso no fue efectivo.fuente
:sudoedit
funciona en windows? Lo siento, no puedo verificarlo.Escriba
:f "newfilename"
en modo de comando y luego al salir:w
para guardar con el nuevo nombre de archivo.fuente