2013-03-29 2 views
2

예를 들어 파이썬 스코프의 경우. (점)을 입력하면 자동 완성 팝업이 표시됩니다.점의 자동 완성 수행


내가 질문을 확장 할 수 있습니다 언급 @skuroda 해결하기 : ST의

자동 완성은 "auto_complete": true이 (가 기본적으로 설정되어) 환경 설정에 설정되어있는 경우를 누르면 모든 문자에 트리거됩니다. 나는 이것이 가장 까다로운 것을 발견했다. 왜냐하면 나는 그것이 눌려진 하나의 키로 방아쇠를 당기길 원하지 않는다. 그래서 나는 그것을 꺼냈다.

html_completions.py은 현재의 이전 문자인지 확인하고 완료 목록을 제공하지만 자동 완성 동작을 변경하거나 트리거하는 항목을 설정하지 않습니다.

OTOH는 auto_complete_triggers 선호도가하지만 auto_complete 선호도에 의존하기 때문에 즉, 나를 위해 문제가 해결되지 않습니다 auto_complete 환경 설정이 허위, 정의 트리거로 설정

  • 경우 auto_complete_triggers하지 않습니다 true로 설정되어있는 경우 트리거 완료
  • , 다시 나는 누르면 어떤 키에 자동 완성 기능을 얻을뿐 아니라 대부분의 파이썬 인식 편집자는

또 다른 ACC처럼 점에 eptable 솔루션은 예를 들어 4 자와 같이 일부 임계 값을 정의 할 수 있다면 자동 완료가 자동으로 눌려진 단일 키에 표시되지 않지만 예를 들어 4 자 이후에 표시됩니다.

+1

가능성이 없습니다 - 중복 된 질문보기 : http://stackoverflow.com/questions/15684193/how-to-prevent-dot-from-cancelling-autocomplete-in-sublime-text-2 – MattDMo

+0

Thanks @MattDMo . 이 기능을 허용하는 타사 패키지에 대해 알고 계시나요? 아니면이 기능을 파이썬을 통해 어떻게 든 액세스 할 수 있습니까? – theta

+1

이 기능이 하드 코딩되어있는 것처럼 보이므로 API에서 무시할 수있는 항목이 없습니다. SublimeCodeIntel은 빌트인 자동 완성 기능을 크게 확장하기위한 훌륭한 플러그인이며 설치하는 것이 좋습니다. ** ** API를 통해 완전히 보지 못했습니다. 거대하고 관련 libs는 파이썬이 아니기 때문에 그렇게하는 방법이있을 수 있습니다. 그러나 아직 알지 못합니다. – MattDMo

답변

1

임계 값 효과를 얻기 위해 간단한 플러그인을 작성할 수 있습니다.

import sublime 
import sublime_plugin 

class MyEventListener(sublime_plugin.EventListener): 
    def on_query_completions(self, view, prefix, locations): 
     if len(prefix) < 4: 
      return ([], sublime.INHIBIT_WORD_COMPLETIONS | sublime.INHIBIT_EXPLICIT_COMPLETIONS) 
     else: 

      return [] 

또한 구문 별 설정 (Preferences -> Settings - More -> Syntax Specific - User)에 다음을 추가하십시오. 도트 연산자로 원하는 동작을 제공해야한다고 생각합니다.

"auto_complete_selector": "- source, comment", 
"auto_complete_triggers": [ {"selector": "source.python", "characters": "."} ] 

두 솔루션을 최소한으로 테스트 했으므로 무엇인가 명확하게 할 수 있는지 알려 주시기 바랍니다.

+0

감사합니다.플러그인 솔루션이 작동하지 않는 것 같아요. 왜 우리가 그 이유를 알 것 같아요. 추가 목록을 제공하지는 않지만, ST 제안을 덮어 쓰지는 않습니다.) 그러나, "auto_complete_selector": "- source, comment" , 정확히 내가 원하는 것입니다. :)이 환경 설정에 대한 몇 가지 문서를 가르쳐 주시겠습니까? – theta

+0

음, 플러그인은 4 문자가 삽입 된 후에 팝업을 불러 와야합니다 (일반적인 ST 완료시). 어쨌든, 나는이 물건들을 우연히 다른 설정으로 놀아 보았습니다. 불행히도,이 물건은 잘 문서화되지 않습니다. 이 두 설정은 기본 환경 설정에 설명되어 있습니다. 슬프게도, 그것은 사물을 수정하는 방법을 발견하는 가장 좋은 방법입니다. 플러그인 물건들조차도 잘 문서화되어 있지 않습니다. 좀 더 나은 문서가있는 위키를보고 싶습니다. 비공식 문서가 얼마나 자주 업데이트되는지 잘 모르겠습니다. – skuroda

+0

네, 저도 그렇게 생각했습니다. ST는 확장 성이 뛰어나지 만, 문서화는 매우 낮은 우선 순위에있다. 다행스럽게도 중요한 사용자 집단은 위키 지식베이스와 별개로 위키를 만들 것입니다. – theta