Vim을 일시적으로 종료하고 되돌아가는 방법


302

Vim을 종료하고 종료 :q한 후 편집을 계속하려면 어떻게해야합니까?

답변:


570

* nix의 맛에 터미널 Vim이 있다고 가정 :

실행중인 Vim을 일시 중지하려면

Ctrl + Z

프로세스를 일시 중단하고 쉘로 돌아갑니다.

fg

(에 가져다 재개 F 광석 g 당신의 중단 빔 라운드).

새 쉘을 시작하려면

다음을 사용하여 서브 쉘을 시작하십시오.

:sh

(에 의해 구성됨)

:set shell?

또는

:!bash

뒤에 :

Ctrl+ D(또는 exit, 왜 그렇게 많이 입력합니까?)

껍질을 죽이고 Vim으로 돌아갑니다.


5
ps전경 프로세스를 보려면 unix.stackexchange.com/questions/6115/…
Vlad Vinnikov

1
파일을 편집하는 동안 서버를 계속 실행하려면 어떻게해야합니까? 예를 들어, 내가한다고 가정하고 nodemon app.js(nodemon이 파일 편집에서 서버를 새로 고침) vim 편집으로 돌아가고 싶습니다. 두 개의 별도 터미널 창 없이도 할 수 있습니까?
Costa

5
또는 jobs더 읽기 쉬운 제목으로 전경 프로세스를 방문하십시오. 그런 다음 예 fg %2를 들어 두 번째를 선택하십시오.
isomorphismes

이것이 작동하지 않고 control-z'실행 취소'로 작동하는 경우 vimrc가 있는지 확인하십시오 behave mswin. 그것이 제거되고 control-z작동
한다면

3
Windows에서 입력하면 vim으로 돌아갈 수 있습니다exit
JonnyRaa

107

당신은 :sh당신의 기본 쉘을 종료 $ exit하고 쉘 프롬프트에서 입력 하면 Vim으로 돌아갑니다 사용할 수 있습니다.


1
나는 이것을 더 열심히지지 할 수 있으면 좋겠다. 이것이 바로 쉘이 존재하는 이유입니다.
랜디 모리스

8
공평하게 말하면 때로는 하위 쉘 환경이 아닌 동일한 환경을 원할 때가 있습니다. 따라서 Vim을 완전히 종료 할 때 환경 변수에 대한 변경 사항을 찾으려면 CTRL-z / : sus를 원할 것입니다.
Tango Bravo

실수로 터미널을 닫지 않기 위해 $ ps전화 $ exit하기 전에 vim 하위 쉘에 있는지 여부를 찾는 데 사용할 수 있습니다 . 이것을 여기 에서 찾았 습니다 (웹 사이트에 언급 된 프롬프트 표시기를 시도하지 않았습니다).
Daniel

34

다음을 통해 일시적으로 쉘 모드로 전환 할 수 있습니다.

:! <command>

와 같은

:! ls

14

유닉스 시스템을 사용하는 경우 Ctrl+ Z는 Vim을 일시 중단하고 쉘을 제공합니다.

fg돌아가려면 입력하십시오 . Vim은 편집 중에 스왑 파일을 만들고 Vim을 일시 중단해도 해당 파일은 삭제되지 않습니다 (결국 Vim을 종료하지는 않음). 벙어리 터미널에서이 방법은 vi를 사용하는 편집 컴파일 편집 사이클에 매우 표준입니다 . 방금 gVim 이 타이핑을 최소화 한다는 것을 알았습니다 Z.



5

Vim을 종료하고 돌아올 때 모든 것을 동일하게 유지하는 몇 가지 방법이 있습니다. Vim 자체에는이를 수행 할 수있는 다양한 방법을 설명하는 매우 유용한 문서가 있습니다. vim 내에서 다음 명령을 사용하여 관련 도움말 페이지에 액세스 할 수 있습니다.:help usr_21

간략한 요약을 제공하기 위해 세션을 그대로 유지 한 채 종료하는 방법은 다음과 같습니다.

  1. 일시 중지 및 재개-실제로 Vim을 종료하지는 않습니다. 필요할 때까지 백그라운드에서 세션을 숨기면됩니다. 컴퓨터를 재설정하거나 Vim에 kill 명령을 실행하면 세션이 손실됩니다. 다른 작업으로 일시적으로 전환하려고 할 때 유용하지만,이 경우에는 GNU Screen 유틸리티를 대신 사용하는 것이 좋습니다.

  2. 세션-이것은 Vim 인스턴스간에 세션을 저장하는 진정한 방법입니다. Vim을 완전히 종료하더라도 돌아올 때 세션이 제공됩니다. 이것은 아마도 당신이 찾고있는 것입니다.


5

사용자 Zen 의 답변 을 확장하기 위해 ~/.vimrc파일에 다음 줄을 추가하여 Bash와 Vim 사이를 빠르게 전환 할 수 있습니다.

noremap <C-d> :sh<cr>

5 년 후 저는 Cd를 사용하는 것이 Vim 기본 동작을 덮어 쓰기 때문에 좋지 않은 조언이라고 언급하고 싶습니다. 기본적으로 ctrl-d scoll 창이 버퍼에서쪽으로 향합니다. 참조 vimdoc.sourceforge.net/htmldoc/scroll.html#CTRL-D
Xaa는

3

fg가장 최근에 일시 중단 된 프로그램을 넣고 다시 시작하십시오.


3

Neovim을 사용 하는 경우 다음을 수행 할 수 있습니다.

  • :terminal 터미널 창을 불러옵니다.
  • 터미널 일을
  • exit터미널 프로세스를 종료하려면 입력
  • Neovim으로 돌아가려면 아무 키나 누르십시오

0

마우스를 조금이라도 사용하지 않아도되는 경우 :

  • 터미널을 시작하십시오.
  • 파일을 선택하고
  • 탭 열기를 선택하십시오 .

터미널에 Vim을 실행할 수있는 새 탭이 생성됩니다. 이제 마우스를 사용하여 터미널을 오 가십시오. 항상 입력 :shell하고 종료 하는 대신 이것을 선호합니다 .

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