Vim에서 읽기 전용 모드를 종료하려면 어떻게해야합니까?


38

파일을 읽기 전용 모드로 열었습니다. 읽기 전용 모드에서 벗어날 수있는 방법이 있습니까?


당신을 괴롭히는 읽기 전용 모드의 한계는 무엇입니까? Michael이 말한 것처럼 파일을 읽기만하려는 경우 읽기 전용으로 열었더라도 명령에 a !를 추가 w하면 트릭이 수행됩니다.
Bananguin

1
@ user1129682 w는 저장하고 싶을 때마다 느낌표를 표시하는 것을 기억하는 것이 불편 합니다. heh
wrongusername

답변:


43

당신은 이것을 할 수 있습니다 :

:set noro

이것은 읽기 전용 플래그를 설정 해제하지만 기본 파일을 여전히 쓸 수 없다면 vim은 여전히 ​​쓸 수 없습니다.


이것을 되돌리고 다시 읽기 전용으로 돌아가는 방법?
Louis Hong

2
@LouisHong 매우 쉽게 : :set ro.
Philip Kearns

1
쓰기 가능한 파일 view을 열어서 편집하기로 결정한 경우에 적합합니다.
wisbucky

9

chmodvim 내에서 실행할 수 있습니다 :

:!chmod +w %

!쉘 명령을 실행하는 것을 의미 %하며 현재 파일 이름입니다. 파일을 강제로 쓸 수도 있습니다.

:w!

3

Michael Mrozek의 답변 외에도 .vimrc높은 권한으로 열지 않은 파일에 쓸 수 있는 줄을 추가 할 수 있습니다 .

" Allows writing to files with root priviledges
cmap w!! w !sudo tee % > /dev/null

파일이 읽기 전용 인 경우을 입력 :w!!하기 만하면 비밀번호를 묻는 메시지가 표시되고 파일이 성공적으로 작성됩니다.


2

:set noro작업을 수행 하는 동안 다른 vim 인스턴스가 파일을 열 었는지 확인하거나 외부에서 변경 한 경우 파일을 업데이트합니다.

편집 가능하게하고 스왑 파일 (vim으로 파일을 여는 기본 파일)을 확인하려면 edit 명령 (: help edit)을 사용하십시오.

:e

파일이 vim 외부에서도 조작 된 경우 현재 버퍼의 변경 사항을 업데이트합니다 (일반적으로 바람직합니다).


1

조금 늦게, 어쩌면 당신은 이미 당신의 의심을 해결하지만, 저는 여기에, 이동) 나는 의견의에 내가 함께 알고있는 방법 보지 정력을 , 그래서 나는 그것을 추가 :

파일을 편집하고 나면 :w또는 을 누르면 :wq성가신 메시지 " E45 'readonly'옵션이 설정되었습니다 (재정의하려면! 추가) "가 표시됩니다.

E45 읽기 전용 옵션이 설정되었습니다 (재정의하려면! 추가).

입력 할 수 있습니다

:w !sudo tee %

w! 스 도티 %

  • w 버퍼를 쓴다
  • !sudo sudo로 쉘을 호출합니다.
  • teevim :wtee를 사용하여 출력을 출력으로 리디렉션 하고
  • % 현재 파일 이름입니다

그리고 그 트릭을해야합니다. L 키를 눌러야 할 경우 vim에서 파일을 다시로드하라는 메시지가 표시됩니다.

여기에 이미지 설명을 입력하십시오

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