MagicStack / MagicStack/MagicPython

Grammar could support the walrus operator

Aberta
#204 0 comentários 4 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Linguagem predominante
JavaScript
Estrelas
1.4k
Forks
98
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

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
```

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Nenhum arquivo-fonte ou teste é nomeado na issue. Comece localizando a gramática do Python e as regras de escopo de tokens responsáveis por `:=` e, em seguida, compare os escopos produzidos para `if m := x` com o único token de walrus-operator pretendido; estará concluído quando o operador for destacado de forma consistente e seus sinais de dois-pontos e igual não forem mais tokens separados.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
javascript, python
Domínio
tooling
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.