diff --git a/epub2md/html_converter.py b/epub2md/html_converter.py index 910402a..d7210e5 100644 --- a/epub2md/html_converter.py +++ b/epub2md/html_converter.py @@ -890,6 +890,8 @@ class Renderer: ref_id = f"fnref-{num:03d}" + (f"-{len(refs) + 1}" if refs else "") refs.append((self.file, ref_id)) target = url_path(rel_link(self.file, self.endnotes_file)) + "#" + note.label + if self.in_table_html: # Markdown is not rendered inside an HTML block + return [("r", f'{num}')] return [("r", f'[{num}]({target})')] if note not in self.chapter_notes: self.chapter_notes.append(note) diff --git a/tests/test_qa_regressions.py b/tests/test_qa_regressions.py index dfcbac0..12d82aa 100644 --- a/tests/test_qa_regressions.py +++ b/tests/test_qa_regressions.py @@ -74,3 +74,15 @@ def test_note_referenced_from_html_table_and_text_has_target(convert): assert 'href="#fn-001"' in text and "Text[^fn-001]." in text assert re.search(r'id="fn-001"', text), text assert run.report["output_link_check"]["broken_count"] == 0 + + +def _html_table(text: str) -> str: + return text[text.index("