OS의 X에 트리거 될 때 작동합니다, 나는 다음과 같은 명령을 사용하여 포함하는 시스템에 대한 ctags를 세트를 생성 디렉토리, 여기에 시스템 전체 헤더 파일을 생성하는 모든 ctags를 넣습니다 (조건부로로드하는 ROS 및 CPP에 대한 내용도 있지만 여기 또는 여기에 없습니다).빔 자동 완성은 팝업 수동
어쨌든. ctags 파일은 내 .vimrc에 올바르게 설정되어 있으므로 vim에서 ctags를 확실히 볼 수는 있지만 어떤 이유로 전체 기호를 작성한 다음 백 스페이스를 시작하면 자동 완료 팝업은 #include
개의 헤더 파일의 결과 만 표시합니다. 예를 들어 프로젝트에서 내가 #include <string.h>
이고, 그 다음에 strlen()
을 호출하려고하고 활성 vim 버퍼에 str
을 입력하기 시작하면 현재 vim 버퍼에있는 심볼에 대한 결과 만 얻습니다. 그러나 strlen
을 입력 한 다음 한두 개의 문자를 백 스페이스로 시작하고 <C-n>
을 누르면 팝업 메뉴에 포함 된 다른 헤더 파일의 일치 항목이 채워집니다.
편집 : 방금 "s"를 누른 다음 <C-n>
을 누르면 해당 기능이 작동합니다. 그래서 문제는 팝업 메뉴가 수동으로 시작될 때만 작동하는 것으로 보입니다. 어느 날
추가 정보 (아래 참조)는 플러그인 문제가 있다고 생각합니다 :
completeopt
이completeopt=menuone,menu,preview,longest
내가 OmniCppComplete이로 설정되어, 내가 방해 할 수도있을 것 같군요 행동. 현재 이 아니며은 조건부로 C++ 파일로만로드됩니다. .vimrc에서 OmniCppComplete 설정을 편집하고 게시하려면 그냥 묻습니다.
또한 AutoComplPop이 설치되어 있지만 설정을 완료하지 않았으므로 기본 설정으로 실행됩니다. 플러그인을 실제로 조사하지 않았으므로 일부 동작이 결과를 방해 할 수 있는지 전혀 모릅니다.
나는 빔에 솔직히 꽤 새로운 해요, 난 그냥 임의의 플러그인 또는 내의 .vimrc 설정을 할 수 있는지,이 문제를 디버깅을 시작 할 생각이 없다.
이 문제는 AutoComplPop에 C 및 C++ 파일에 대해 정의 된 기본 제공 동작이 없으며 그 내용이 무엇이든간에 ''을 사용하여 다시 실패하는 것으로 보입니다. ''는 C 파일에서 사용할 때 패턴을 찾을 수 없다는 오류를 반환하므로, 지금은 단지 AutoComplopop을 비활성화하고 최소한의 결과에만 ''을 사용하고 있습니다. 나는 더 많은 연구와 실험을해야 할 것이다. 저를 올바른 방향으로 가리켜 주셔서 감사합니다! –
''은 사용자 정의 함수를 호출하지 않으므로 오류가 발생합니다. 나는 ACP도 사용한다. JavaScript를 지원하지 않았으므로 수정했습니다. 실제로, 나는 그 당시의 멍청한 놈에 대해서조차도 꽤 쉽습니다. [here] (https://github.com/romainl/dotvim/blob/master/bundle/autocomplpop/plugin/acp.vim#L33)와 같은 위치의 다른 곳을 참조하십시오. –
romainl
링크를 제공해 주셔서 감사합니다. 그래도 나는'vim runtime에 C 파일의 주어진 패턴에 응답하는 함수가 존재하지 않는다고 가정하고 있는데,''라는 에러가 나타났습니다. AutoComplopop을 configs에 기반하여 제작할 수 없는지 알 수 있습니다. 꽤 사소한 것 같습니다. 나의 유일한 질문은'acp # meetsForJavaScriptOmni'를 어떻게 만들었습니까? 내가 이해하는 모든 것. –