2011-04-21 65 views
103

Intentando crear un nuevo archivo con nerd tree. Golpeé la tecla a para crear un nuevo archivo y me sale el mensaje:vim "modificable" está desactivado

E21: Cannot make changes, 'Modifiable' is off

estoy usando MacVim y Janus (casi fuera de la caja)

Respuesta

168
:set ma 

que es corto para

:set modifiable 

hará una memoria intermedia modificable. Y

:set noma 

hace todo lo contrario.

+3

+1 a esta respuesta. Google muestra esta página cuando busca la forma de desactivar el indicador modificable en un búfer. –

+25

": set ma" funciona para aquellos que tienen prisa (y ": set noma" hace lo contrario) – num1

+0

¿Alguien sabe cómo puedo DESHECHAR lo que eliminé en NERDTree? como 'dd' y luego intenté 'u' y no pasó nada – betoharres

12

No estoy familiarizado con NerdTree pero Supongo que al escribir en en una vista de nerdtree, se interpreta como "Quiero agregar algo en el búfer nerdtree", y ese búfer no es modificable.

Puede verificar esa respuesta vim and NERD Tree extension - adding a file que explica cómo agregar un archivo con Nerdtree.

+9

Doh, era m, luego a. – wesbos

+1

Eso es todo, al revisar la ayuda para NERDTree no hay una asignación 'a', lo que hará que intente agregar texto nuevo. – sidyll

0

En caso de que alguien más pasa a Google para esto, compruebe que no está tratando de abrir un directorio en vim como acabo estaba (d'oh)

+0

Puede abrir directorios en Vim. Por defecto, lanzará Netrw. – htmldrum

1

Ok, esto puede no ser la respuesta más informada como apenas tengo un conocimiento práctico de vim o linux, pero he encontrado una solución a mi problema y podría funcionar para usted. Para ser más específicos, Mi problema era doble:

1) Siempre que trataba de editar algo en este nuevo archivo que he creado, tengo el no puede hacer cambios, 'modificables' está fuera de error y ...

2) después de ejecutar: establecer modificable e intentar guardar, obtendría un error e382 de 'no puedo escribir, buftype está configurado. entonces no pude salvar

Después de verter throuch montones de documentación inútil críptica me di cuenta de esto:

1) encontrar el directorio .vimviews, para mí fue la causa de mi repositorio git, hacer un

ls 

dentro de eso. Tengo algo como esto:

~=+www-halo=+test=+lib=+Halo=+Return2=+HeaderTest.php= 
~=+www-halo=+test=+lib=+Halo=+Service=+LandmarkTest.php= 
~=+www-halo=+test=+lib=+Halo=+Transaction=+AuthnetTest.php= 

Lo cual es totalmente inútil para usted ya que tiene una estructura de archivos diferente. pero busca el archivo que te está dando el problema. (oh btw, estos son, de hecho, nombres de archivo, que no es completamente obvio al mirarlos). encuentre el que tiene el archivo en cuestión y elimine ese lechón: ejemplo:

rm ~=+www-halo=+test=+lib=+Halo=+Return2=+HeaderTest.php= 

Problema resuelto.

+0

También he tenido este problema trabajando con NerdTree. Esto solo funcionó después de salir de la sesión de vim que causó el problema. Supongo que siguió restableciendo esta "vista". – John

0

Si desea pasar un archivo en NERDTree, debe presionar "m" (para el menú) y luego "a". Simplemente ingresar "a" en el buffer de NERDTree se interpretará como "modificar el buffer de NERDTree". Agregando: ma hará modificable el búfer NERDTree, pero esto no creará nuevos archivos para usted, dará lugar a información inconsistente entre lo que NERDTree muestra y la jerarquía de su archivo real.

Cuestiones relacionadas