Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Multiple headings on a single line without newline are broken between MD and RT modes

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

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
52/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
html, markdown, typescript
Domaine
frontend, web-dev

Piste de recherche

Reproduisez l’aller-retour avec le HTML inline de h1 et h2, puis examinez markdown-serializer.ts, en particulier defaultMarkdownSerializerNodes.heading et customMarkdownSerializerNodes.html_block. C’est terminé lorsque le passage entre Markdown et Rich Text préserve les deux titres au lieu de les fusionner en une seule balise non valide.

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

Description

bug commonmark html

Describe the bug
When multiple heading HTML tags are inlined without a newline at the end of the line, switching between Markdown and Rich Text mode will mangle the resulting headings into a single invalid tag, breaking the output.

To Reproduce
Steps to reproduce the behavior:

In Markdown mode, paste the following HTML into the editor. Ensure there are no newlines.

<h1>Heading1</h1><h2>Heading2</h2>

Switch to Rich Text mode and back to Markdown mode

You'll now see <h1Heading1h1h2>Heading2</h1Heading1h1h2>

Expected behavior
I expect the round-trip to preserve the headings as they were at the start.

Hunches:

When a heading in pure HTML is serialized, if it doesn't have a newline at the end, it goes through the heading: method of defaultMarkdownSerializerNodes in markdown-serializer.ts. If it has a newline at the end, it'll instead go through html_block() of customMarkdownSerializerNodes in the same file.

Screenshots
heading-merge-bug

Desktop (please
complete the following information):

  • OS: Windows 10
  • Browser Chrome
  • Version 103
Langage dominant
TypeScript
Étoiles
441
Forks
61
Merge moyen
20 h 35 min
PR mergées (30 j)
18

Préparer son environnement

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.

Autres issues de StackExchange/Stacks-Editor

Toutes les issues de StackExchange/Stacks-Editor

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

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