MagicStack / MagicStack/MagicPython
Syntax Highlighting regex+format strings (rf)
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- JavaScript
- Estrellas
- 1.4k
- Forks
- 98
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
- Editor name and version: VSCode 1.75.1
- Platform: macOS
- Color scheme: Dark+ (default)
- MagicPython version: 1.1.0
- A sreenshot:

- 5-10 lines of surrounding code:
myString = "baz"
MYCONST = "qux"
myDict = {
"foo": "bar"
}
correctColoring = rf"(?=[\w]+){myString}{MYCONST}[\d]+"
incorrectDictionary = rf"(?=[\w]+){myDict['foo']}[\d]+"
regularFString = f"word{myDict['foo']}number"
This is a followup to #186. After upgrading to 1.1.0, I'm very excited that rf strings support both regex style and format string. In the attached screenshot, behold how correctly varied correctColoring is. However, any dictionary or class inside of the {} in an rf string is not colored correctly. See how myDict['foo'] varies between incorrectDictionary and regularFString. The square brackets should be purple, and 'foo' orange, but instead it is all absorbed into red.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con los ejemplos de rf-string de este issue y compara el comportamiento del resaltado de myDict['foo'] con el ejemplo normal de f-string. Revisa la implementación relacionada con el seguimiento del issue #186, reproduce el coloreado incorrecto en VSCode y considera el issue resuelto cuando las expresiones de diccionario o de clase dentro de los campos de formato de rf-string se resalten de forma coherente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python, vscode
- Área
- tooling
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100