vim“수정 가능”이 꺼져 있습니다


147

괴상한 나무로 새 파일을 만들려고합니다. 나는 히트 a새로운 파일을 생성 키를 그리고 난 메시지를 얻을 :

E21: Cannot make changes, 'Modifiable' is off

MacVim과 Janus를 사용하고 있습니다.


2
참고 : m그런 다음 aNERDTree에 새 파일을 추가합니다
Leighton

답변:


233
:set ma

이것은 짧다

:set modifiable

버퍼를 수정 가능하게 만듭니다. 과

:set noma

반대입니다.


3
이 답변에 +1. 버퍼에서 수정 가능한 플래그를 끄는 방법을 검색하면이 페이지가 표시됩니다.
Sebastián Grignoli

NERDTree에서 삭제 한 내용을 어떻게 취소 할 수 있는지 아는 사람이 있습니까? 'dd'와 같은 다음 'u'를 시도했지만 아무 일도 일어나지 않습니다
betoharres

6
또한 :set buftype: " "수정 후 파일을 작성하는 데 사용해야 했습니다 (나중에 메시지는 Cannot write, 'buftype' option is set)
Julien Carsique

18

NerdTree에 익숙하지 않지만 anerdtree 뷰 에 입력 하면 "nerdtree 버퍼에 무언가를 추가하고 싶습니다"로 해석되며 해당 버퍼는 수정할 수 없습니다.

응답 vim 및 NERD 트리 확장명 -Nerdtree로 파일을 추가하는 방법을 설명하는 파일 추가를 확인할 수 있습니다.


10
Doh, 그것은 m이었다.
wesbos

1
NERDTree의 도움말을 확인하면 a매핑 이 없으므로 새 텍스트를 추가하려고 시도합니다.
sidyll


2

좋아, 이것은 vim이나 linux에 대한 실무 지식이 거의 없기 때문에 가장 정통한 대답이 아닐 수도 있지만 내 문제에 대한 해결책을 찾았으므로 도움이 될 수 있습니다. 구체적으로 말하면, 내 문제는 두 가지였습니다.

1) 내가 만든이 새 파일에서 무언가를 편집하려고 할 때마다 '수정 가능'오류가 발생하고 변경할 수 없습니다.

2) : 수정 가능하고 저장하려고하면 '쓰기 할 수 없습니다, buftype이 설정되었습니다. 그래서 나는 저장할 수 없었다.

쓸모없는 암호 문서의 스 캐시 스 캐드를 쏟은 후에 나는 이것을 알아 냈습니다.

1) .vimviews 디렉토리를 찾으십시오. 내 저장소 디렉토리의 루트에 있었고

ls 

그 안에. 나는 이와 같은 것을 얻었다 :

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

파일 구조가 다르기 때문에 전혀 쓸모가 없습니다. 문제를 일으키는 파일을 찾으십시오. (오 btw, 이들은 실제로 파일 이름이며, 파일 이름을 보면 완전히 알 수 없습니다). 문제의 파일이있는 파일을 찾아 그 빨판을 삭제하십시오. 예 :

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

문제 해결됨.


1
NerdTree와 함께 작동하는이 문제도 발생했습니다. 이것은 문제를 일으킨 vim 세션을 종료 한 후에 만 ​​작동했습니다. 이 "보기"를 계속 재설정한다고 생각합니다.
John

2

NERDTree에서 파일을 발생 시키려면 "m"(메뉴의 경우)을 누른 다음 "a"를 눌러야합니다. NERDTree 버퍼에 "a"를 입력하면 "NERDTree 버퍼 수정"으로 해석됩니다. : ma를 추가하면 NERDTree 버퍼를 수정할 수 있지만 새 파일을 만들지 않으므로 NERDTree가 표시하는 내용과 실제 파일 계층간에 정보가 일치하지 않습니다.


0

다른 사람이 구글에 이런 일이 생길 경우, 내가 방금 (d' oh)처럼 vim에서 디렉토리를 열려고하지 않는지 확인하십시오.


1
Vim에서 디렉토리를 열 수 있습니다. 기본적으로 Netrw가 시작됩니다.
htmldrum

예를 들어 디렉토리에서 파일을 선택할 수 있습니다. : cw는 이름을 약간 변경하여 저장합니다.
Karolius

0

나를 위해, 나는 내가 막힌 디렉토리에 파일을 만들려고했던 디렉토리를 포함하여 변경 사항을 숨겼습니다. NERDTree는 여전히 그 디렉토리에 미리 준비된 트리를 보여주었습니다. m존재하지 않는 디렉토리에서 사용 하면 수정 가능한 오류가 발생합니다. r디렉토리가 더 이상 존재하지 않고 왜 수정할 수 없는지 보려면 트리를 새로 고쳐야했습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.