실행중인 Vim 인스턴스간에 완료 공유


10

내가 사용하는 tmux대신 사용하는 대부분의 vim탭과 분할. vim은 실행중인 인스턴스간에 완료 ( Ctrln및 경유 Ctrlp) 를 공유 할 수 있습니까? 각각이 vims서버와 통신 하는 위치에 설정하는 방법이 vim있습니까?


8
아니요, 실제적인 방법으로 는 할 수 없습니다 . Vim은 수십 개의 버퍼를 완벽하게 처리 할 수 ​​있습니다.
romainl

1
@romainl, vim완성 목록을 읽고 새로 고칠 수있는 "완료 파일"에 무엇을 쓸 수 있습니까?
J. Chomel

답변:


2

데이터베이스가 각 vim 인스턴스 외부에있는 경우 Vim은 동일한 완료 데이터베이스를 사용할 수 있습니다.

예를 들어 ctags완료 또는 youcompleteme외부 프로세스 또는 파일을 사용하는 다른 플러그인을 사용하는 경우 완료는 다소 '공유'됩니다 .

단어 완성은 같은 파일에있는 단어 만 사용하므로 유용하지 않습니다. C-N/C-P

그러나 omnictags완성 사용 ctags(에 의해 건설해야 데이터베이스 exuberant ctags사전) 및 모든 인스턴스간에 공유됩니다.

ctags 완료를 C-X C-O위한 옴니 완료 유형 입니다 C-X C-].


0

에서 :help i_ctrl-n그 빔이 사용하는 것을 보여줍니다 complete전체 단어 옵션을 선택합니다. 에 도움이 completeVim은 인스턴스에 로컬이 아닌 사용 무언가에 유일한 옵션은 사전 파일을 사용하는 것을 보여주기 위해 계속된다. 그런 다음 질문은 모든 vim 인스턴스를 사용하여 이러한 사전 파일을 생성하는 것으로 요약됩니다. 때때로 모든 열린 파일을 구문 분석하여이 작업을 수행 할 수 있습니다. 나는 이것이 성능에 어떤 영향을 미칠지 전혀 모른다.

또 다른 옵션은 완전히 다른 정비사 (ctags 등)를 사용하는 것이지만 실제로는 단순한 자동 완성을위한 것이 아니기 때문에 다른 곳에서는 기능을 중단 할 수 있습니다.

보다 일반적인 참고로, Vim이 사용되는 방식에 더 충실하도록 워크 플로를 약간 변경할 수도 있습니다. 이것은 하나 또는 몇 개의 창을 사용하여 동시에 물건을보고 버퍼를 자주 전환한다는 것을 의미합니다. 스위칭 부분을 매우 잘 수행하는 플러그인은 ctrlP입니다. 버튼을 눌러 활성화하면 다양한 위치에서 파일을 퍼지 검색하여 빠르게 전환 할 수 있습니다. 파일 이름을 기억하는 한.

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