说我有2个文件:
foo
bar
baz
和
123
456
f[want autocomplete here]
如果我在第二个文件中输入1
,Sublime会建议123
。但如果我输入f
,它就不会提出任何建议。如果我在第一个文件中,我希望它建议foo
。
看起来这应该很简单(每个缓冲区都可以自动完成,所以搜索所有这些都不会那么难)但是我找不到这样做的插件。
答案 0 :(得分:101)
我已经实现了相同的想法并将其作为一个包发布,因此可以直接从Sublime中使用Package Control进行安装:
按ctrl + shift + p(Windows,Linux)或cmd + shift + p(OS X)打开Command Pallete。开始输入“install”以选择“Package Control:Install Package”,然后搜索AllAutocomplete并选择它。
答案 1 :(得分:16)
我写了一个执行此操作的插件:
import sublime_plugin, sublime
class AutocompleteAll(sublime_plugin.EventListener):
def on_query_completions(self, view, prefix, locations):
window = sublime.active_window()
# get results from each tab
results = [v.extract_completions(prefix) for v in window.views() if v.buffer_id() != view.buffer_id()]
results = [(item,item) for sublist in results for item in sublist] #flatten
results = list(set(results)) # make unique
results.sort() # sort
return results