microsoft / microsoft/TypeScript
Add diff chunk header lines to Git
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Go
- Sterne
- 111k
- Forks
- 14.3k
- Ø Merge
- 1 T. 19 Std.
- Gemergte PRs (30 T.)
- 117
Beschreibung
Search Terms
userdiff xfuncname
Suggestion
Please add regular expressions to https://github.com/git/git/blob/master/userdiff.c such that TypeScript constructs can be identified in a predictable manner by the Git diff algorithm.
Use Cases
When I do a git diff or git add -p that includes TypeScript code, it's nice to see the function and/or class names of the changed lines I am looking at.
Examples
git diff -- *.tsgit add -p -- *.ts
Checklist
My suggestion meets these guidelines:
- This wouldn't be a breaking change in existing TypeScript/JavaScript code
- This wouldn't change the runtime behavior of existing JavaScript code
- This could be implemented without emitting different JS based on the types of the expressions
- This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
- This feature would agree with the rest of TypeScript's Design Goals.
- Particularly "Provide a structuring mechanism for larger pieces of code."
Beitragsleitfaden
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 mit der Durchsicht von Gits userdiff.c, das der Issue als Einstiegspunkt für die Implementierung identifiziert, und untersuche, wie vorhandene Sprachmuster Funktions- oder Klassennamen in Diff-Headern offenlegen. Füge TypeScript-Muster für .ts-Dateien hinzu und überprüfe anschließend, dass git diff und git add -p für die Beispiele im Issue die Namen der relevanten Konstrukte anzeigen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- git, typescript
- Bereich
- tooling
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100