2009-07-09 3 views
3

나는 일반적으로 vim을 사용하여 내 개발을 수행하기 위해 다른 컴퓨터에 ssh ("Emacs 사용"을 게시하지 마십시오). 그러나, 나는 vim이 매우 느린 것을 느낀다. 나의 인터넷이 느리다.실제 파일 대신 파일의 캐시에서 vim 작업을 사용하는 방법은 무엇입니까?

EDIT : 로컬 컴퓨터에서 터미널을 사용하고 vim scp : // host/file 명령으로 원격 파일을 엽니 다. 그러나이 작업을 수행 할 때마다 입력 한 모든 키 입력으로 vim이 네트워크로 이동하여 작업 속도가 크게 저하됩니다. 대신, vim이 원격 파일을 읽고, 로컬 편집을하게하고, : w 명령을 실행할 때만 네트워크로 가길 원합니다. write-back 캐시 옵션과 같이 생각하십시오.

나는 코모도 편집 (Komodo Edit)이이 기능을 제공한다는 것을 알고있다.

+0

이 질문에 혼란 스럽습니다. 터미널 내부에서 vim을 실행중인 경우 vim이 원격 시스템에서 실행 중입니다. 연결 속도가 느리면 vim으로 무엇을하고 있는지 상관 없습니다. 속도가 느려질 것입니다. 원격 파일을 편집하는 로컬 vim 실행 파일에 대해 이야기하고 있다면, 그 질문에 명확하게 설명해야합니다. –

답변

6

:help netrw 또는 The Vim Script page를 참조하십시오.

+2

대용량 파일에서'scp : //'가 느려지므로'rsync : //'를 추가하고 싶습니다. – Hasturkun

+2

이것은 netrw 플러그인을 통해 이루어집니다 : 이전 버전의 vim에서는 수동으로 설치해야했습니다. PC에 설치된 응용 프로그램을 제어 할 수없는 경우 관련성이 있습니다. – DrAl

1

Vim에는 netrw라고하는 플러그인이 있습니다 (가장 최근의 vim에서는 표준이라고 생각합니다). 이것은 기본적으로 내가 믿기를 원하는 것입니다 : 원격 서버에서 파일을 투명하게 복사하여 파일을 열 수 있습니다.

:e scp://[email protected]//path/to/document 

당신은 this serverfault question에서 더 많은 정보를 찾을 수 있습니다

당신은 다음과 같이 직접 정력에 SSH에서 편집 할 수 있습니다

0

sshfs은 매우 유용합니다. sftp를 통해 원격 디렉토리를 마운트 한 다음 vim (또는 다른 모든 것)을 로컬에서 실행할 수 있습니다. 현재 우분투에서는 sudo apt-get install sshfs 수 있습니다.

0

vim 자체에서 vim을 사용할 수 있는지는 잘 모르겠지만 Linux를 사용하는 경우 sshfs에 관심이있을 수 있습니다. FUSE (Filesystem in Userspace)를 사용하여 ssh를 사용하여 원격 디렉토리를 로컬 디렉토리에 마운트합니다. 그런 다음이 원격 디렉토리를 사용자의 로컬 컴퓨터에있는 것처럼 사용할 수 있습니다. 그것은 매우 견고하고 신뢰할 수 있습니다 (ssh 세션이 닫히면 자동으로 다시 연결되며 사용자는이를 알지 못할 것입니다 ...).

나는 거의 매일 사용하며 소프트웨어의 훌륭한 부분입니다.

0

:e scp [email protected]:/path/file

빔에 :help netrw:help ssh를 참조하십시오.

1

vim scp : ///를 열었을 때 속도가 느리고 모든 키 입력에 네트워크 트래픽이있는 경우 분명히 잘못된 것입니다. Vim은 저장시에만 네트워크 트래픽을 생성해야합니다.

아마도 자동 저장 기능이 켜져 있습니까? 만약 그렇다면 - 원격 파일을 끄거나 방해를 덜하시오.

+0

어떻게 자동 저장 기능을 끄시겠습니까? – ftrotter

+0

': help autosave'는 "noautosave"를 제안합니다. –