나는 보통 screen
각 프로젝트마다 세션을 설정했다 . Vim은 창 0에 있으며 쉘 세션에 창 1을 사용합니다. 적절한 REPL이있는 언어로 코딩하는 경우 일반적으로 창 2에서 실행합니다. 물론이 작업을 수행 할 필요는 없습니다 screen
. 다른 터미널 창이나 멀티탭 터미널의 탭으로 수행 할 수 있습니다. 나는 찾을 수 있습니까 screen
다른 대안보다 더 안정 : 터미널 응용 프로그램이 충돌하는 경우, 당신은 당신의 여전히 실행에 다른 단자와 재 연결을 시작할 수 있습니다 screen
세션. screen
일단 배우면 (vim 자체처럼) 탐색하는 것이 매우 빠릅니다.
나는 대부분 rebasing 또는 merging과 같은 복잡한 버전 제어 활동을 위해 쉘 세션을 사용합니다. vim의 명령 줄 (예 : :!git commit % -m 'Added info about
screen .'
) 또는 도망자 애드온 을 사용하여 더 간단한 작업을 수행 할 수 있습니다 . 나는 도망자 :Gmove
(vim과 git 인덱스에서 현재 버퍼의 이름을 바꿉니다)와 :Gdiff
(이력에서 이전 지점으로 현재 버퍼에서 vimdiff를 호출합니다) 특히 유용합니다. 스크래치 버퍼에 커밋 메시지를 작성하고 코드의 여러 부분에서 텍스트를 복사 한 다음 커밋하는 것과 같은 작업을 수행 할 수도 있습니다.:%!git commit -F /dev/stdin
또한 기능 / 통합 테스트에 쉘 세션을 사용하여 작업중인 대상에 해당하는 경우 (예 : 명령 줄 유틸리티를 작성하는 경우) 사용합니다.
당신이 작업을 할 수 있습니다 각 언어에 필요한 다른 부가있을 것 같습니다하지만 Vim의 quickfix 기능, 디버깅에 유용합니다. 또한지도로 시작하는 기능 키 또는 키 시퀀스로, 호출 다양한 기술을 사용하는 것 \
또는 ,
, 또는 사용자 정의 명령을 사용하거나 버퍼가 저장 될 때 자동으로 호출됩니다. 지금까지 나는 이것을 정말로 귀찮게하지 않았으며, 예를 들어 단위 테스트 또는 보푸라기 결과를 스크래치 버퍼로 읽습니다 :r !python -m doctest whatever.py
. 코드를 수정하고 스크래치 버퍼로 다시 전환 u
한 다음 실행 취소 한 다음 :r
위 화살표 (대부분)를 눌러 해당 명령을 다시 가져옵니다. 그러나 어떤 언어로 작업 하느냐에 따라 애드온을 찾는 것이 좋습니다.
C, java 등 인기있는 컴파일 언어의 :make
경우 빌드를 수행하고 빠른 수정 목록에 대한 지원이 잘 설정되어 있습니다. 그러면 :copen
quickfix 버퍼를 표시 할 수 있습니다 . 한 줄에 하나씩 오류 목록이 표시됩니다. Enter한 줄을 치면 다른 창이 해당 파일의 해당 지점으로 이동합니다.
한 번에 여러 프로젝트로 작업하는 경우 :lmake
오류 목록을 위치 목록에 저장하도록 정렬 할 수 있습니다 .이 목록은 빠른 수정 목록과 비슷하지만 단일 창이 아닌 단일 창과 연결됩니다. vim 인스턴스. :lopen
현재 창의 위치 목록이 열립니다.