2012-01-31 14 views
38

Decir que tengo 2 archivos:Sublime Text 2 - Auto-completa/sugieren de otros archivos

foo 
bar 
baz 

y

123 
456 
f[want autocomplete here] 

Si escribo 1 en el segundo archivo, Sublime sugerirá 123. Pero si escribo f, no sugerirá nada. Quiero que sugiera foo como lo haría si estuviera dentro del primer archivo.

Parece que esto debería ser simple (cada buffer puede autocompletarse, por lo que buscarlos no puede ser tan difícil) pero no he podido encontrar un complemento que lo haga.

+0

Ha intentado preguntar en los foros [] (http://www.sublimetext.com/forum/)? Creo que he visto esa pregunta allí antes. –

Respuesta

16

escribí un plugin que hace esto:

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 
98

He aplicado la misma idea y lo publicó como un paquete para que pueda ser instalado directamente desde dentro de Sublime con el control del paquete:

Press ctrl + shift + p (Windows, Linux) o cmd + shift + p (OS X) para abrir Command Pallete. Comience a escribir 'instalar' para seleccionar 'Package Control: Install Package', luego busque AllAutocomplete y selecciónelo.

Código está aquí: https://github.com/alienhard/SublimeAllAutocomplete

+0

¡Guau! Eso funciona genial Se ha encontrado un error: no detecta y autocompleta los nombres de las clases si la clase tiene '' -'' en él. Todo lo demás funciona bien. – Rafal

+2

@Rafal Me alegra que te guste. Para hacer que los nombres funcionen con guiones, es posible que deba eliminarlos de word_separators en su archivo de Preferencias (abrir desde el menú Preferencias> Configuraciones-Usuario). Si crees que has encontrado un error, abre un problema en https://github.com/alienhard/SublimeAllAutocomplete. – alienhard

+1

"Lo he implementado". @alienhard responde como un rey. ¡Gracias! –

Cuestiones relacionadas