1

Ich möchte die Auto-Vervollständigung Panel, und ich successed in Sublime-Text 3 mit der API on_query_completions, aber ich scheiterte in Sublime-Text2 mit dem gleichen Code.Der Unterschied zwischen st2 und st3 über on_query_completions

Der Code:

import sublime, sublime_plugin 

class CCAutoComplete(sublime_plugin.EventListener): 
    def on_query_completions(self, view, prefix, locations): 
     flag = sublime.INHIBIT_WORD_COMPLETIONS | sublime.INHIBIT_EXPLICIT_COMPLETIONS 
     result = ([["abv","abv"],["abcd123","abcd"]],flag) 
     return result 
+0

Sie Fehler in der Konsole erhalten Sie? Haben Sie versucht, das 2D-Array ohne Flags zu senden? – Enteleform

+0

Versuchen Sie auch, Tupel anstelle von Arrays zu verwenden. '[(" abv "," abv "), (" abcd123 "," abcd ")]'. Das ist es, was ich in meinen nächsten [** CustomCompletions **] (https://forum.sublimetext.com/uploads/default/original/3X/5/d/5ddc69fc0d6ea71b0a30156da7a1e94f7ceec905.gif) Release verwende, obwohl ich nicht getestet habe es in ST2. – Enteleform

+1

Ich versuche Tupel anstelle von Arrays zu verwenden. [("abv", "abv"), ("abcd123", "abcd")]. Und ich habe Erfolg! Danke. – chenhehe

Antwort

0

eine Reihe von Tupeln für die Fertigstellung Werte Verwenden Sie anstelle eines 2D-Array:

[("abv","abv"),("abcd123","abcd")]