ไวยากรณ์สำหรับการจัดเก็บความคิดเห็นในไฟล์มาร์กอัปเช่นความคิดเห็น CVS $ Id $ ที่ด้านบนของไฟล์คืออะไร ผมพบว่าไม่มีอะไรในโครงการ markdown
ไวยากรณ์สำหรับการจัดเก็บความคิดเห็นในไฟล์มาร์กอัปเช่นความคิดเห็น CVS $ Id $ ที่ด้านบนของไฟล์คืออะไร ผมพบว่าไม่มีอะไรในโครงการ markdown
คำตอบ:
ฉันเชื่อว่าโซลูชันที่นำเสนอก่อนหน้านี้ทั้งหมด (นอกเหนือจากที่ต้องการการใช้งานเฉพาะ) ส่งผลให้ความคิดเห็นที่รวมอยู่ใน HTML ออกแม้ว่าพวกเขาจะไม่แสดง
หากคุณต้องการความคิดเห็นที่เคร่งครัดสำหรับตัวคุณเอง (ผู้อ่านเอกสารที่แปลงแล้วจะไม่สามารถดูได้แม้จะมี "มุมมองแหล่งที่มา") คุณสามารถ (ab) ใช้ป้ายกำกับลิงก์ (สำหรับใช้กับลิงก์สไตล์อ้างอิง) ที่ มีอยู่ในข้อกำหนด Markdown หลัก:
http://daringfireball.net/projects/markdown/syntax#link
นั่นคือ:
[comment]: <> (This is a comment, it will not be included)
[comment]: <> (in the output file unless you use it in)
[comment]: <> (a reference style link.)
หรือคุณสามารถไปต่อ:
[//]: <> (This is also a comment.)
เพื่อปรับปรุงความเข้ากันได้ของแพลตฟอร์ม (และเพื่อบันทึกการกดแป้นหนึ่งครั้ง) คุณยังสามารถใช้#
(ซึ่งเป็นเป้าหมายการเชื่อมโยงหลายมิติที่ถูกต้องตามกฎหมาย) แทน<>
:
[//]: # (This may be the most platform independent comment)
เพื่อความสะดวกในการพกพาสูงสุดสิ่งสำคัญคือต้องแทรกบรรทัดว่างไว้ก่อนและหลังความคิดเห็นประเภทนี้เนื่องจากตัวแยกวิเคราะห์มาร์คดาวน์บางตัวทำงานไม่ถูกต้องเมื่อคำจำกัดความแปรงกับข้อความทั่วไป การวิจัยล่าสุดกับ Babelmark แสดงให้เห็นว่าบรรทัดว่างก่อนและหลังมีความสำคัญทั้งคู่ ตัวแยกวิเคราะห์บางตัวจะแสดงความคิดเห็นหากไม่มีบรรทัดว่างก่อนหน้านี้และตัวแยกวิเคราะห์บางตัวจะแยกบรรทัดต่อไปนี้ออกหากไม่มีบรรทัดว่างหลังจากนั้น
โดยทั่วไปวิธีการนี้ควรทำงานกับตัวแยกวิเคราะห์ Markdown ส่วนใหญ่เนื่องจากเป็นส่วนหนึ่งของข้อกำหนดหลัก (แม้ว่าพฤติกรรมเมื่อมีการกำหนดลิงค์หลายรายการหรือเมื่อมีการกำหนดลิงค์ แต่ไม่เคยใช้จะไม่ได้ระบุอย่างเคร่งครัด)
[//]: # "Comment"
และ[//]: # (Comment)
ดูเหมือนว่าจะใช้งานได้กับการใช้งานที่หลากหลายมากขึ้นเพราะ#
เป็น URI ที่เกี่ยวข้อง ตัวอย่างเช่น GitHub ปฏิเสธ<>
และมองเห็นทั้งบรรทัด นอกจากนี้ยังเป็นที่น่าสังเกตว่าป้ายกำกับลิงก์มักจะต้องแยกออกจากเนื้อหาอื่นด้วยบรรทัดว่าง
ฉันใช้แท็ก HTML มาตรฐานเช่น
<!---
your comment goes here
and here
-->
สังเกตเส้นประสามเส้น ข้อดีคือมันทำงานกับแพนดอคเมื่อสร้าง TeX หรือ HTML เอาท์พุท ข้อมูลเพิ่มเติมสามารถดูได้บนpandoc-หารือเกี่ยวกับกลุ่ม
การวิจัยขนาดเล็กนี้พิสูจน์และปรับแต่ง คำตอบโดยแมกนัส
ไวยากรณ์ที่ไม่ขึ้นกับแพลตฟอร์มที่สุดคือ
(empty line)
[comment]: # (This actually is the most platform independent comment)
เงื่อนไขทั้งสองมีความสำคัญ:
#
(และไม่<>
)ข้อมูลจำเพาะ Markdown ที่เข้มงวดCommonMarkทำงานได้ตามที่ตั้งใจไว้กับไวยากรณ์นี้เท่านั้น (และไม่ใช่กับ<>
และ / หรือบรรทัดว่าง)
เพื่อพิสูจน์สิ่งนี้เราจะใช้ Babelmark2 ซึ่งเขียนโดย John MacFarlane เครื่องมือนี้ตรวจสอบการเรนเดอร์ของซอร์สโค้ดเฉพาะในการใช้งาน Markdown 28 ครั้ง
( +
- ผ่านการทดสอบ, -
- ไม่ผ่าน, ?
- ทิ้งขยะบางส่วนที่ไม่แสดงใน HTML ที่แสดงผล)
<>
13+, 15-<>
20+, 8-<>
20+, 8-#
13+ 1 หรือไม่ 14-#
23+ 1 หรือไม่ 4-#
23+ 1 หรือไม่ 4-นี่เป็นการพิสูจน์ข้อความข้างต้น
การใช้งานเหล่านี้ล้มเหลวทั้งหมด 7 การทดสอบ ไม่มีโอกาสที่จะใช้ความคิดเห็นที่ไม่รวมในการแสดงผลกับพวกเขา
#
เหมาะกับทุกคนยกเว้น GFMและ<>
ทำงานให้กับ GFMแต่ไม่ใช่สำหรับคนอื่น ๆ GFM ที่แย่เกินไปนั้นเป็นทั้งมุมและรสชาติที่เป็นที่นิยมมาก
#
ตั้งแต่วันที่ 21 มกราคม 2016 Cebe ยังไม่สามารถจัดการได้
(...)
ด้วยตัวมันเอง อย่างน้อยใน Visual Studio Code 1.19
%s/^\(.*\)$/[comment]: # (\1)/g
หากคุณกำลังใช้ Jekyll หรือ octopress ต่อไปนี้จะใช้งานได้
{% comment %}
These commments will not include inside the source.
{% endcomment %}
แท็ก Liquid {% comment %}
จะถูกแยกวิเคราะห์ก่อนและนำออกก่อนโปรเซสเซอร์ MarkDown ผู้เข้าชมจะไม่เห็นเมื่อพวกเขาพยายามที่จะดูแหล่งที่มาจากเบราว์เซอร์ของพวกเขา
{#
ความคิดเห็นหลายบรรทัดที่นี่#}
อีกทางเลือกหนึ่งคือการใส่ความคิดเห็นในแท็ก HTML ที่มีสไตล์ ด้วยวิธีนี้คุณสามารถสลับการแสดงผลได้ตามต้องการ ตัวอย่างเช่นกำหนดคลาสความคิดเห็นในสไตล์ชีท CSS ของคุณ
.comment { display: none; }
จากนั้นเพิ่ม MARKDOWN ต่อไปนี้
We do <span class="comment">NOT</span> support comments
ปรากฏดังต่อไปนี้ใน BROWSER
We do support comments
สิ่งนี้ใช้ได้กับ GitHub:
[](Comment text goes here)
HTML ที่ได้จะเป็นดังนี้:
<a href="Comment%20text%20goes%20here"></a>
ลิงค์ไหนว่างเปล่า เห็นได้ชัดว่าคุณสามารถอ่านได้ในแหล่งที่มาของข้อความที่แสดงผล แต่คุณสามารถทำได้บน GitHub ต่อไป
some text [](hidden text) blah blah
มันเป็นเพียงคนเดียวที่ฉันจะทำงานให้ความเห็นในบรรทัดเช่น
[](Comment text goes here)
จำเป็นต้องใช้ผู้ใช้เป็นกลุ่มทันที
<!---
First comment line...
//
_NO_BLANK_LINES_ARE_ALLOWED_
//
_and_try_to_avoid_double_minuses_like_this_: --
//
last comment line.
-->
โปรดดูเพิ่มเติมที่ Critic Markup สนับสนุนโดยเครื่องมือเพิ่มจำนวนมาร์กดาวน์
Comment {>> <<}
Lorem ipsum dolor sit amet.{>>This is a comment<<}
Highlight+Comment {== ==}{>> <<}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. {==Vestibulum at orci magna. Phasellus augue justo, sodales eu pulvinar ac, vulputate eget nulla.==}{>>confusing<<} Mauris massa sem, tempor sed cursus et, semper tincidunt lacus.
วิธีการเกี่ยวกับการใส่ความคิดเห็นในบล็อก R ไม่ใช่ non-eval หรือไม่? กล่าวคือ
```{r echo=FALSE, eval=FALSE}
All the comments!
```
ดูเหมือนว่าจะทำงานได้ดีสำหรับฉัน
cat("# Some Header")
ภายในบล็อคโค้ด "commented-out" และการใช้งานresults = "asis"
และคุณสามารถเพิ่มส่วนที่ถูกคอมเม้นต์ทั้งหมดในโค้ดของคุณที่สามารถเปิด / ปิดได้โดยการสลับeval = FALSE
เนื่องจากการประเมิน R เสร็จสิ้นก่อน การรวบรวม pandoc ขอบคุณสำหรับความคิด!
การเปิดเผย: ฉันเขียนปลั๊กอิน
เนื่องจากคำถามไม่ได้ระบุการใช้งานมาร์คอัปที่เฉพาะเจาะจงฉันต้องการพูดถึงปลั๊กอินความคิดเห็นสำหรับpython-markdownซึ่งใช้สไตล์การแสดงความคิดเห็นแบบเดียวกันกับแพนดอคที่กล่าวถึงข้างต้น
<!--- ... -->
ไม่ทำงานใน Pandoc Markdown (Pandoc 1.12.2.1) ความคิดเห็นยังคงปรากฏใน html ต่อไปนี้ทำงานได้:
Blank line
[^Comment]: Text that will not appear in html source
Blank line
จากนั้นใช้ส่วนขยาย + เชิงอรรถ มันเป็นเชิงอรรถที่ไม่เคยได้รับการอ้างอิง
[#]:
.
ต่อไปนี้ใช้งานได้ดีมาก
<empty line>
[whatever comment text]::
เมธอดนั้นใช้ประโยชน์จากไวยากรณ์เพื่อสร้างลิงก์ผ่านการอ้างอิง
เนื่องจากการอ้างอิงลิงก์ที่สร้างด้วย[1]: http://example.org
จะไม่ถูกเรนเดอร์เช่นเดียวกันกับสิ่งต่อไปนี้จะไม่ถูกเรนเดอร์
<empty line>
[whatever]::
[whatever]:whatever
[whatever]: :
[whatever]: whatever
pandoc
เช่นเดียวกับกรณีของออนไลน์ในปัจจุบันGitlabและGitHub
สำหรับ pandoc วิธีที่ดีในการบล็อกความคิดเห็นคือใช้ yaml metablock ตามที่ผู้เขียน pandocแนะนำ ฉันได้พบว่านี้จะช่วยให้เน้นไวยากรณ์ที่ถูกต้องมากขึ้นของการแสดงความคิดเห็นเมื่อเทียบกับหลายโซลูชั่นที่นำเสนออื่น ๆ อย่างน้อยในสภาพแวดล้อมของฉัน ( vim
, vim-pandoc
และvim-pandoc-syntax
)
ฉันใช้ความคิดเห็น yaml block ร่วมกับความคิดเห็น html-inline เนื่องจากhtml-comments ไม่สามารถซ้อนกันได้ แต่น่าเสียดายที่ไม่มีวิธีการบล็อกความคิดเห็นใน yaml metablockดังนั้นทุกบรรทัดจะต้องมีการแสดงความคิดเห็นเป็นรายบุคคล โชคดีที่ควรมีเพียงหนึ่งบรรทัดในย่อหน้าที่นิ่มนวล
ในฉัน~/.vimrc
ฉันได้ตั้งค่าทางลัดที่กำหนดเองสำหรับความคิดเห็นบล็อก:
nmap <Leader>b }o<Esc>O...<Esc>{ji#<Esc>O---<Esc>2<down>
nmap <Leader>v {jddx}kdd
ฉันใช้,
เป็น<Leader>
คีย์ของฉันดังนั้น,b
และ,v
แสดงความคิดเห็นและยกเลิกการใส่เครื่องหมายย่อหน้าตามลำดับ หากฉันต้องการแสดงความคิดเห็นหลายย่อหน้าฉันj,b
จะจับคู่กับมาโคร (ปกติQ
) และเรียกใช้<number-of-paragraphs><name-of-macro>
(เช่น ( 3Q
)) การทำงานเช่นเดียวกันสำหรับการไม่แสดงความคิดเห็น
kramdown— เอ็นจิ้นมาร์กอัปที่ใช้ Ruby ซึ่งเป็นค่าเริ่มต้นสำหรับ Jekyll และ GitHub Pages— มีการสนับสนุนข้อคิดเห็นในตัวผ่านทางไวยากรณ์ส่วนขยาย :
{::comment}
This text is completely ignored by kramdown - a comment in the text.
{:/comment}
Do you see {::comment}this text{:/comment}?
{::comment}some other comment{:/}
สิ่งนี้มีประโยชน์ในการอนุญาตให้แสดงความคิดเห็นในบรรทัด แต่ข้อเสียของการไม่สามารถพกพาไปยังเอ็นจิ้น Markdown
คุณสามารถลอง
[](
Your comments go here however you cannot leave
// a blank line so fill blank lines with
//
Something
)
คุณสามารถทำได้ (บล็อก YAML):
~~~
# This is a
# multiline
# comment
...
ฉันลองด้วยน้ำยางเอาท์พุทเท่านั้นโปรดยืนยันสำหรับคนอื่น ๆ