Làm cách nào để thêm chú thích vào Markdown có hương vị GitHub?


273

Tôi chỉ cố gắng thêm chú thích trong GitHub Gist của mình , nhưng nó không hoạt động:

Some long sentence. [^footnote]

[^footnote]: Test, [Link](https://google.com).

Tôi đang làm theo hướng dẫn này và tôi không nghĩ mình đang làm gì sai. Ai đó có thể chỉ ra sai lầm của tôi?


1
fletcher.github.io/peg-multimarkdown Lưu ý: Hiện tại, phần mềm wiki Github hỗ trợ Markdown, nhưng không phải MultiMarkdown Tài liệu này sẽ hoạt động ở đâu?
ta.speot.is

1
@EnricoSusatyo Không phải trong đánh dấu đơn giản, nhưng ví dụ Pandoc hỗ trợ nó
mb21

2
Thật thú vị, đánh dấu của GitLab không hỗ trợ [^footnote]cú pháp, ngay cả trước khi nó được thêm chính thức vào tài liệu
hmijail thương tiếc người từ chức

1
@hmijail bạn đang đề cập đến chú thích của GitLab, không phải Github như OP đã hỏi.
Devy

1
@Devy, vâng, đó là lý do tại sao tôi nói "Đánh dấu của GitLab". Vẫn có thể hữu ích, vì việc triển khai hương vị của GitLab dường như dựa trên hương vị GitHub, và nói chung Markdown, hương vị và cách thực hiện của nó là một mớ hỗn độn. Tóm tắt: "chỉ trong trường hợp thử điều này quá".
hmijail thương tiếc người từ chức

Câu trả lời:


218

GitHub Flavored Markdown không hỗ trợ chú thích, nhưng bạn có thể giả mạo nó bằng tay với các ký tự Unicode hoặc thẻ siêu ký tự, ví dụ <sup>1</sup>.

Course Tất nhiên điều này không lý tưởng, vì bây giờ bạn có trách nhiệm duy trì việc đánh số chú thích của mình. Nó hoạt động hợp lý tốt nếu bạn chỉ có một hoặc hai, mặc dù.


Cảm ơn, tôi cũng thích cách các trang web khác có liên kết chú thích có thể nhấp, nhưng tôi đoán đây có thể là cách duy nhất để làm điều đó trong GitHub.
Enrico Susatyo

6
Bạn cũng có thể sử dụng các số thông thường được đặt trong dấu ngoặc vuông [1], đây là một quy ước khá được thiết lập cho các chú thích văn bản gốc theo kinh nghiệm của tôi. (Trời ơi tại sao tôi không thể ngắt dòng trong các bình luận.) [1] Tức là các chú thích của Pandoc Mandoc trừ đi dấu mũ.
Guildenstern

342

Mở rộng một chút về câu trả lời trước, bạn cũng có thể làm cho các liên kết chú thích có thể nhấp vào đây. Đầu tiên hãy xác định chú thích ở phía dưới như thế này

<a name="myfootnote1">1</a>: Footnote content goes here

Sau đó tham khảo nó ở một nơi khác trong tài liệu như thế này

<sup>[1](#myfootnote1)</sup>

2
Đây là một câu trả lời trung thực tốt đẹp. Nó duy trì làm rõ ý định mà không, IMO , quá nhiều sự phình to cho định dạng.
kayleeFrye_onDeck

3
Sử dụng các tham chiếu không phải là số làm giảm bớt vấn đề được đề cập ở trên về việc duy trì các tham chiếu số liên tiếp - Example [[TPL]](#TPL)... #### Notes...<a name="TPL">[TPL]</a> footnote template
Randall Whitman

4
Đừng bỏ lỡ Phần 2 trong câu trả lời của @ Matteo bên dưới. Tôi rất bối rối với câu trả lời này (cảm ơn) đến nỗi tôi gần như không thèm cuộn xuống. . .
Wardw

177

Mở rộng các câu trả lời trước hơn nữa, bạn có thể thêm một idthuộc tính vào liên kết chú thích của bạn:

 Bla bla <sup id="a1">[1](#f1)</sup>

Sau đó từ trong phần chú thích, liên kết lại với nó.

<b id="f1">1</b> Footnote content here. [↩](#a1)

Điều này sẽ thêm một chút vào cuối nội dung chú thích của bạn, đưa độc giả của bạn trở lại dòng chứa liên kết của chú thích.


8
Thêm một sửa chữa nhỏ cho phản hồi của @ Matteo ở trên, tôi đã phải sử dụng namethay vì idtrong cuộc gọi đến chú thích. Tức là <p>Bla bla <sup name="a1">[1](#f1)</sup>
oldfartdeveloper

2
Cảm ơn @oldfartdeveloper. Dường như cả hai nameidhoạt động cho các tệp README trên github.com .. mặc dù chưa thử nghiệm ý chính.
Matteo

1
Đối với những người tìm thấy câu hỏi và trả lời này vào khoảng năm 2020: Câu trả lời này hoạt động trên GitHub, PLUS nó có tính năng bổ sung: quay trở lại chú thích-liên kết-bạn đã nhấp . Tôi đã tìm thấy một cảnh báo nhỏ (giải thích ở đây) , nhưng đây là câu trả lời cổ xưa.
Seamus

13

Tôi không thể làm cho các giải pháp của Surya và Matteo hoạt động. Ví dụ: "(# f1)" chỉ được hiển thị dưới dạng văn bản và không trở thành một liên kết. Tuy nhiên, giải pháp của họ đã đưa tôi đến giải pháp hơi khác nhau. (Tôi cũng định dạng chú thích và liên kết trở lại bản siêu âm gốc một chút khác nhau.)

Trong phần nội dung của văn bản:

Yadda yadda<a href="#note1" id="note1ref"><sup>1</sup></a>

Cuối tài liệu:

<a id="note1" href="#note1ref"><sup>1</sup></a>Here is the footnote text.

Nhấp vào siêu ký tự trong phần chú thích sẽ trả về siêu ký tự trong văn bản gốc.


Hấp dẫn. Bạn đã sử dụng HTML trong đó @Matteo đã sử dụng GFM. Tôi đã có thể làm cho giải pháp của anh ấy để làm việc, nhưng nó đòi hỏi một chút khó khăn . Bạn có nghĩ rằng đây là một sự cố trong công cụ kết xuất của GitHub không?
Seamus

Tôi không có ý tưởng, @Seamus. Khi tôi nhớ lại, đã có một chút thử nghiệm và lỗi khi tôi đang cố gắng tìm ra nó.
Sao Hỏa

1
Đó là một giải pháp thông minh. Và vâng - đó vẫn là nơi chúng ta đang ở ngày hôm nay - thử và sai :)
Seamus

12

Mặc dù tôi không biết nếu nó chính thức được ghi lại ở bất cứ đâu, bạn có thể ghi chú chân trang trong Github.

  1. Đánh dấu vị trí bạn muốn chèn liên kết chân trang với một số được đặt trong dấu ngoặc vuông, IE [1]

  2. Ở dưới cùng của bài đăng, tạo một tham chiếu của điểm đánh dấu được đánh số và theo sau là dấu hai chấm và liên kết, IE [1]: http://www.example.com/link1

Và một khi bạn xem trước nó, nó sẽ được hiển thị dưới dạng các liên kết được đánh số trong phần thân bài.


5
Điều này không tạo ra một danh sách các liên kết ở cuối tài liệu của bạn. Giống như trên các trang Wikipedia.
milosa

nên có một dấu hai chấm sau dấu ngoặc vuông?
sAguinaga

17
Đây không phải là một chú thích, đây là một liên kết.
David Moles

bước #1không hoạt động như một liên kết trên đánh dấu github (tháng 12 năm 2018).
ruhong

7

Đối với các ghi chú ngắn, việc cung cấp một phần tử neo với thuộc tính tiêu đề sẽ tạo ra một "tooltip".

<a title="Note text goes here."><sup>n</sup></a>

Mặt khác, đối với các ghi chú liên quan nhiều hơn, có vẻ như đặt cược tốt nhất của bạn đang duy trì các liên kết được đặt tên theo cách thủ công.


1
Điều này không hoạt động trong trang đánh dấu GitHub Enterprise 2.8
yegeniy

4

Điều này làm việc cho tôi:

blablabla [<sup>1</sup>](#1)blablabla

chú thích: tham chiếu đến blablabla <a class="anchor" id="1"></a>


3

Tôi đã sử dụng một biến thể của giải pháp Mateo. Tôi đang sử dụng điều này trong các tệp Rmd ​​được viết bằng github có hương vị github (gfm) cho một trang web được hỗ trợ Jekyll nhưng các tệp Rmd ​​tương tự đang được sử dụng để tạo pdf trong các ngữ cảnh khác nhau. Các tệp Rmd ​​nặng về toán học và toán học được hiển thị với MathJax trên trang web. Vì vậy, tôi cần một giải pháp hoạt động với gfm được xử lý thông qua Jekyll, hoạt động với pandoc-> pdflatex và tương thích với MathJax.

đoạn trích từ tệp Rmd ​​(là gfm)

Here is a paragraph with an footnote <span id="a1">[[1]](#f1)</span>.

Footnotes
=========

1. <span id="f1"></span> This is a footnote. [$\hookleftarrow$](#a1)

$\hookleftarrow$là latex, hoạt động với tôi vì tôi luôn bật MathJax. Tôi sử dụng nó để đảm bảo nó hiển thị chính xác trong pdf của tôi. Tôi đặt chú thích của mình trong ngoặc vuông vì siêu ký tự gây nhầm lẫn nếu tôi đặt chú thích cho một số phép toán nội tuyến.

Đây là hoạt động: https://eeholmes.github.io/posts/2016-5-18-FI-recursion-1/

Những ghi chú có thể được đặt ở bất cứ đâu trong Rmd. Tôi đang đưa vào một danh sách ở cuối để chúng là những chú thích về mặt kỹ thuật.


Hơi tiếp xúc với câu hỏi của OP nhưng cuối cùng tôi thực sự thích "giải pháp hoạt động với gfm được xử lý qua Jekyll, hoạt động với pandoc-> pdflatex và tương thích với MathJax". Ví dụ gọn gàng.
Boweeb


0

Mặc dù câu hỏi là về Markdown có hương vị GitHub, tôi nghĩ rằng điều đáng nói là vào năm 2013 , GitHub hỗ trợ AsciiDoc có tính năng tích hợp sẵn này. Bạn chỉ cần đổi tên tệp của mình bằng một .adocphần mở rộng và sử dụng:

A statement.footnote:[Clarification about this statement.]

A bold statement!footnote:disclaimer[Opinions are my own.]

Another bold statement.footnote:disclaimer[]

Tài liệu cùng với kết quả cuối cùng là ở đây .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.