MagicStack / MagicStack/MagicPython

Grammar could support the walrus operator

Ouverte
#204 0 commentaires 4 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
JavaScript
Étoiles
1.4k
Forks
98
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

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**: ![批注 2020-04-11 222317](https://user-images.githubusercontent.com/62426149/79046371-314cef00-7c43-11ea-89cd-8ec7dac5c2c7.png)
![批注 2020-04-11 222406](https://user-images.githubusercontent.com/62426149/79046374-33af4900-7c43-11ea-92bf-5da3e622da99.png)
* **5-10 lines of surrounding code**:
```python
if m := x
```

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

L’issue ne nomme aucun fichier source ni aucun test. Commencez par localiser la grammaire Python et les règles de portée des tokens responsables de `:=`, puis comparez les portées produites pour `if m := x` avec l’unique token walrus-operator attendu ; c’est terminé lorsque l’opérateur est mis en évidence de manière cohérente et que ses signes deux-points et égal ne sont plus des tokens séparés.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
javascript, python
Domaine
tooling
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.