Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Second code span not recognised after an unclosed backtick string and another code span

オープン
#458 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

@TanbirRamim がすでに取り組んでいます。

2026年9月25日 から。

  • #459 @TanbirRamim による — オープン

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
68/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
java
領域
tooling

調査の方向性

Start with the Java Parser and HtmlRenderer example in the issue and reproduce the three input strings against current main. Add regression coverage for the unclosed double-backtick input alongside the neighbouring code spans, and verify that the rendered HTML matches the expected output.

索引モデルが issue の本文から書いたものです。

説明

Steps to reproduce the problem (provide example Markdown if applicable):

`` `a` `c`

The same through the API, with two neighbouring inputs that render correctly, to show the trigger:

import org.commonmark.parser.Parser;
import org.commonmark.renderer.html.HtmlRenderer;

public class Main {
    public static void main(String[] args) {
        Parser parser = Parser.builder().build();
        HtmlRenderer renderer = HtmlRenderer.builder().build();
        for (String md : new String[] {"`` `a` `c`", "`` `a`", "`a` `c`"}) {
            System.out.print(md + "  ->  " + renderer.render(parser.parse(md)));
        }
    }
}

Expected behavior:

<p>`` <code>a</code> <code>c</code></p>

This is what the reference implementation, commonmark.js 0.31.2, gives for all three inputs: the `` has no
closing double backtick and stays literal, and both `a` and `c` are code spans (spec 0.31.2, Code spans).

Actual behavior:

<p>`` <code>a</code> `c`</p>

The full output of the program above:

`` `a` `c`  ->  <p>`` <code>a</code> `c`</p>
`` `a`  ->  <p>`` <code>a</code></p>
`a` `c`  ->  <p><code>a</code> <code>c</code></p>

The second code span, `c`, is left as text. It takes all three parts: with only the unclosed `` and one
code span, or with the two code spans and no unclosed string, the output is correct. Text between the parts changes
nothing, and every further code span of the same length stays text too: `a` `c` `e` after the unclosed string
gives <code>a</code> `c` `e`.

Tested on commonmark 0.30.0 from Maven Central and on current main (b89e72f).

BTW, this was found by an automated program that writes property-based tests for various open source projects using hegel (but it has been reviewed by hand before reporting). We've also potentially found (but not yet hand validated) 51 other bugs in commonmark-java. You can see the tests at https://github.com/hegeldev/hegel-zoo/tree/main/targets/java/commonmark-java. Let us know if you would like us to file the other bugs found and/or contribute the tests. NB the tests are currently LLM generated and probably not yet suitable for inclusion as is, but we're happy to help get them into a better state if you want them.

主要言語
Java
スター
2.7k
フォーク
336
PR マージ指標
30日以内にマージされた PR はありません

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

commonmark/commonmark-java のほかの issue

commonmark/commonmark-java の issue をすべて見る

似ている issue

Java の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。