microsoft / microsoft/TypeScript-Sublime-Plugin
Plugin slows down Sublime Text
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- JavaScript
- Sterne
- 1.7k
- Forks
- 236
- Ø Merge
- 21 T. 13 Std.
- Gemergte PRs (30 T.)
- 1
Beschreibung
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
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die TypeScript plugin listeners für on_modified und on_selection_modified zu profilieren, wenn große Dateien wie tsserver.js als Plain Text geöffnet werden. Vergleiche das Verhalten mit deaktiviertem Plugin und untersuche, ob Sublime Texts *_async EventListener API oder die Dateitypfilterung greift. Als erledigt gilt die Aufgabe, wenn die Eingabe und die Auswahl in großen .txt-, Log- oder CSV-Dateien reaktionsfähig bleiben, ohne das Verhalten bei TypeScript-Dateien zu beeinträchtigen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, typescript
- Bereich
- performance, tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100