MagicStack / MagicStack/MagicPython
Grammar could support the walrus operator
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- JavaScript
- Sterne
- 1.4k
- Forks
- 98
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
From @BornForFever in https://github.com/microsoft/vscode/issues/94999
The walrus operator `:=`(an operator to allow you to make assignments in an expression, see [PEP 572](https://www.python.org/dev/peps/pep-0572)) is highlighted as 2 different colors. And I tried inspecting tokens and scopes, and found that `:` and `=` were treated as 2 tokens.
* **Editor name and version**: VS Code 1.44
* **Platform**: any
* **Color scheme**: Well illustrated with [Atom One Darker](https://github.com/christopherafbjur/vscode-theme-onedarker)
* **MagicPython version**: commit 0b09c1fca238d22e15ac5712d03f9bf6da626f9c
* **A sreenshot**: 

* **5-10 lines of surrounding code**:
```python
if m := x
```
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
In der Issue wird weder eine Quelldatei noch ein Test genannt. Beginne damit, die Python-Grammatik und die Token-Scope-Regeln zu finden, die für `:=` verantwortlich sind, und vergleiche anschließend die erzeugten Scopes für `if m := x` mit dem vorgesehenen einzelnen walrus-operator-Token; fertig ist es, wenn der Operator konsistent hervorgehoben wird und sein Doppelpunkt und Gleichheitszeichen nicht mehr separate Tokens sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, python
- Bereich
- tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100