Подтвердить что ты не робот

Sublime Text 2 - Автозаполнение/предложение из других файлов

Скажем, у меня есть 2 файла:

foo
bar
baz

и

123
456
f[want autocomplete here]

Если я напечатаю 1 во втором файле, Sublime предложит 123. Но если я наберу f, он ничего не предложит. Я хочу, чтобы он предложил foo, как если бы я был в первом файле.

Кажется, что это должно быть простым (каждый буфер может автозаполняться, поэтому поиск всех из них не может быть таким трудным), но я не смог найти плагин, который делает это.

4b9b3361

Ответ 1

Я написал плагин, который делает это:

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

Ответ 2

Я реализовал ту же идею и опубликовал ее как пакет, поэтому он может быть установлен непосредственно из Sublime с помощью управления пакетами:

Нажмите ctrl + shift + p (Windows, Linux) или cmd + shift + p (OS X), чтобы открыть Пакет команд. Начните вводить "install", чтобы выбрать "Package Control: Install Package", затем найдите AllAutocomplete и выберите его.

Код находится здесь: https://github.com/alienhard/SublimeAllAutocomplete