[BUG]: Plain text with underscores or asterisks gets formatted as Markdown

Aberta
#127 1 comentário 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
Meio dia
Facilidade para iniciantes
45/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
dart, flutter
Domínio
mobile

Direção de pesquisa

The payload names no files or tests, so start in the Flutter client's message rendering path and find where Markdown is parsed for sent messages. Reproduce by sending a message with an unmatched underscore and a partial Markdown opener, which the report says gets formatted. Done means unclosed or stray markers render as plain text while complete Markdown still formats correctly. The issue has no agreed expected behaviour, so confirm the intended rule with the maintainers before changing the parser.

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

Descrição

area: mobile bug good first issue

Context

Messages are rendered with MarkdownBody (flutter_markdown_plus). Ordinary text containing _, * or similar is sometimes treated as Markdown, e.g. snake_case_names, 2*3*4, or a lone _ at the start, so it shows up oddly formatted or with characters missing.

Steps to reproduce

  1. Send my_file_name and other_file_name.
  2. Send 2*3*4 = 24.
  3. Send _not closed.

What to do

  • Find which inputs render incorrectly (add them to a widget test).
  • Fix it, e.g. by restricting the Markdown extensions in use, requiring word boundaries for _ emphasis, or escaping unpaired markers before rendering.
  • Intentional Markdown (**bold**, _italic_, `code`) must still work.

Where to look

mobile/lib/widgets/chat_page_widgets.dart (MarkdownBody around line 228, _markdownStyle).

Linguagem predominante
Dart
Estrelas
9
Forks
5
Merge médio
49min
PRs com merge (30d)
34

Preparar o ambiente

  • Inclui um Dockerfile ou arquivo Docker Compose
  • Sem modelo de pull request
  • Sem guia de contribuição

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.

Mais de CommandLineCoding/Elephant

Todas as issues de CommandLineCoding/Elephant

Issues semelhantes

Mais issues de Dart

Receba novas issues na sua caixa de entrada

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