microsoft / microsoft/TypeScript-Sublime-Plugin
Plugin slows down Sublime Text
Nessuno ha ancora preso questa issue.
- Lingua principale
- JavaScript
- Stelle
- 1.7k
- Fork
- 236
- Merge medio
- 21g 13h
- PR unite (30g)
- 1
Descrizione
Typescript plugin extremely slows down text typing and selection performance on large files like tsserver.js. Slowing down appears even after renaming that file to .txt and opening as Plain Text. This is very annoying when you need to view large logs or csv files.
This behavior is reproducible in clean portable installation of Sublime Text with only TypeScript plugin installed even without opened project and tsconfig.json.
Disabling plugin via Package Control makes Sublime smooth again. Can using *_async api help here? Or is there any setting to disable processing non-js/ts files?
System Info
| Item | Value |
|---|---|
| CPUs | Intel(R) Core(TM) i5-4430 CPU @ 3.00GHz (4 x 3000) |
| Memory (System) | 15.93GB (9.38GB free) |
| System | Windows 10.0.17763.475 (x64) |
| Sublime | v3.2.1 build 3207 x64 stable channel |
| Typescript plugin | v3.4.1 |
Plugin Event Profile
This list shows how much time each plugin has taken to respond to each event:
on_activated:
Default.pane: 0.001s total, mean: 0.000s, max: 0.001s
TypeScript.typescript.listeners.listeners: 1.334s total, mean: 0.056s, max: 0.265s
on_close:
Default.pane: 0.000s total, mean: 0.000s, max: 0.000s
TypeScript.typescript.listeners.listeners: 0.164s total, mean: 0.055s, max: 0.163s
on_deactivated:
Default.history_list: 0.011s total, mean: 0.000s, max: 0.002s
on_hover:
Default.symbol: 0.004s total, mean: 0.000s, max: 0.001s
TypeScript.typescript.listeners.listeners: 3.556s total, mean: 0.155s, max: 0.691s
on_load:
Default.detect_indentation: 0.003s total, mean: 0.002s, max: 0.003s
TypeScript.typescript.listeners.listeners: 0.000s total, mean: 0.000s, max: 0.000s
Default.exec: 0.003s total, mean: 0.001s, max: 0.002s
on_modified:
TypeScript.typescript.listeners.listeners: 36.134s total, mean: 0.317s, max: 1.174s
on_pre_close:
Default.history_list: 0.000s total, mean: 0.000s, max: 0.000s
on_selection_modified:
TypeScript.typescript.listeners.listeners: 88.955s total, mean: 0.217s, max: 1.569s
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia profilando i TypeScript plugin listeners per on_modified e on_selection_modified quando vengono aperti file di grandi dimensioni come tsserver.js come Plain Text. Confronta il comportamento con il plugin disabilitato e verifica se si applica la *_async EventListener API di Sublime Text o il filtraggio per tipo di file. Il lavoro è completato quando la digitazione e la selezione rimangono reattive nei file .txt, di log o CSV di grandi dimensioni senza compromettere il comportamento dei file TypeScript.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript, typescript
- Ambito
- performance, tooling
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100