web-dev-qa-db-ja.com

Sublime Text 2-他のファイルからのオートコンプリート/提案

2つのファイルがあるとします。

foo
bar
baz

そして

123
456
f[want autocomplete here]

2番目のファイルに1と入力すると、Sublimeは123を提案します。しかし、fと入力しても、何も示唆されません。最初のファイルの中にいるのと同じようにfooを提案したいと思います。

これは単純なようです(各バッファーはオートコンプリートであり、すべてを検索するのはそれほど難しくありません)。しかし、これを行うプラグインを見つけることができませんでした。

39
noah

私はこれを行うプラグインを書きました:

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
16
noah

私は同じアイデアを実装してパッケージとして公開したので、パッケージコントロールを使用してSublimeから直接インストールできます。

Ctrl + Shift + Pキー(Windows、Linux)またはcmd + Shift + Pキー(OS X)を押して、コマンドパレットを開きます。 「install」と入力して「Package Control:Install Package」を選択し、次にAllAutocompleteを検索して選択します。

コードはこちら: https://github.com/alienhard/SublimeAllAutocomplete

102
alienhard