microsoft / microsoft/TypeScript-Sublime-Plugin
Separate TS completion from Sublime completion
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- JavaScript
- Estrellas
- 1.7k
- Forks
- 236
- Merge medio
- 21 d 13 h
- PR fusionados (30 d)
- 1
Descripción
I've been using Sublime/TextMate for many years, and am very accustomed to the way tab completion works in those editors. It will fuzzy search the symbol you're typing against every other symbol in the current document, and cycle through them when you hit <tab>.
For instance, consider that I have some symbol somewhere in the current document: arbitraryFunctionName. Here are some situations where I expect tab completion to work, but it doesn't:
importing
import afn<tab>
import arbitraryFunctionName from './afn<tab>
Commenting
/* This is some documentation for afn<tab>
Creating new objects
const something = {
afn<tab>
In each of these cases, I'd expect hitting <tab> to replace afn with arbitraryFunctionName; however, when Sublime's syntax is set to TypeScript, it merely inserts spaces.
Is there a way to separate tab completion from TypeScript completion? Perhaps <tab> could work the same way Sublime does in other languages, but <return> could select the given option in TypeScript's suggestions menu, and <esc> could reject them. Or, perhaps TypeScript takes over <tab> and <esc> could adapt Sublime's default tab behavior. (<esc> is the key that TextMate used for this style of completion.)
Is there a way to differentiate between completion powered by TypeScript's language services and Sublime's default algorithm? If not, can there be?
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza rastreando cómo el manejo de la tecla Tab de Sublime se conecta con la completion de TypeScript language-service y cómo se gestionan actualmente Return y Escape. Compara el comportamiento solicitado para imports, comentarios y propiedades de objetos con el flujo de completion existente. Se considera terminado cuando los dos comportamientos de completion están separados, con resultados claramente definidos para Tab, Return y Escape.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- javascript, typescript
- Área
- tooling
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100