So sánh và đối chiếu các ngôn ngữ đánh dấu nhẹ [đóng]


90

Vui lòng xác định các ngôn ngữ đánh dấu nhẹ phổ biến nhất và so sánh điểm mạnh và điểm yếu của chúng. Những ngôn ngữ này phải là đánh dấu mục đích chung cho văn xuôi kỹ thuật, chẳng hạn như cho tài liệu (ví dụ: Haml không được tính).

Xem thêm: Markdown so với ReStructuredText


Câu trả lời:


115

Tôi biết ba ngôn ngữ chính được sử dụng phổ biến trong cộng đồng công nghệ và lập trình lớn hơn: Dệt may, Markdown và reStructuredText. Cả ba đều có thể được học trong vài giờ hoặc "có cánh" với bảng gian lận gần đó.

Dệt may

  • Được sử dụng bởi Redmine và cộng đồng Ruby
  • 113 câu hỏi hiện được gắn thẻ trên Stack Overflow
  • Nguồn tương tự nhất với HTML, nhưng ít đọc nhất
  • Danh sách lồng nhau dễ nhất của cả ba ngôn ngữ
  • Những người không phải lập trình hoặc không hiểu biết về HTML thì không thể hiểu được
  • Lý tưởng cho các tài liệu ngắn phức tạp (có liên kết, danh sách lồng nhau, mã, HTML tùy chỉnh); ví dụ: tài liệu ngắn, hướng dẫn, blog hoặc nội dung CMS
  • Tham chiếu cú ​​pháp

Markdown

  • Dường như không có "cộng đồng" ngôn ngữ gia đình nhưng ...
  • 1274 câu hỏi được gắn thẻ trên Stack Overflow *
  • Nhấn mạnh khả năng đọc mã nguồn, tương tự như truyền thống email
  • Nhúng HTML đơn giản (bạn chỉ cần gõ các thẻ ra ngoài)
  • Không có cách nào để tạo bảng ngoài việc nhúng HTML
  • Bạn biết điều đó rồi nếu bạn biết Stack Overflow
  • Dễ học nếu bạn đã biết reStructuredText
  • Giải mã địa chỉ email tự động cho định dạng <address@example.com> (với dấu ngoặc nhọn)
  • Tham chiếu cú ​​pháp

reStructuredText (AKA ReST)

  • Phổ biến trong cộng đồng Python
  • 285 câu hỏi được gắn thẻ trên Stack Overflow
  • Một chút khó hiểu về khoảng trắng và căn chỉnh nếu bạn hỏi tôi
  • Các danh sách (đặc biệt là các danh sách lồng nhau) và các đoạn văn dường như luôn gặp nhau
  • Người không phải lập trình viên có thể đọc được
  • Chỉ định dạng có thể xây dựng mục lục (thông qua phần mở rộng trong triển khai tham chiếu Python)
  • Chuyển đổi trực tiếp sang các định dạng khác như PDF và XML
  • Lý tưởng cho các tài liệu lớn với nhiều văn xuôi (ví dụ: một thay thế cho docbook cho hướng dẫn sử dụng)
  • Tham chiếu cú ​​pháp

4
Đối với người dùng ReST, sphinx.pocoo.org trông giống như một công cụ rất tốt cho các bộ sưu tập tài liệu tham khảo có cấu trúc cây lớn.
bentin

6
Tôi không gặp bất kỳ vấn đề nào với danh sách và đoạn văn trong reStructuredText khi tôi cố định mọi thứ trong Emacs. Trong thực tế, chúng hoạt động chính xác như tôi mong chờ họ :-)
Martin Geisler

1
Có những phần mở rộng cho Markdown cho phép soạn bảng trong ASCII.
Jakub Narębski

1
ReST cũng có hỗ trợ công cụ tuyệt vời: Ví dụ: notex.ch dựa trên trình duyệt là một công cụ tốt để thử nghiệm, tìm hiểu và sử dụng ReST (dựa trên phụ trợ sphinx.pocoo.org).
hsk81

31

Bạn cũng có thể coi asciidoc

  • đánh dấu tương đối dễ đọc
  • sử dụng dòng lệnh đơn giản
  • một số người có thể coi nó là tương đối 'kén chọn' (so với linh hoạt) về cú pháp
  • docbook và (x) đầu ra html

2
Thật không may, asciidoc có một cú pháp khủng khiếp cho các mục danh sách có nhiều đoạn văn: Bạn phải phân tách chúng bằng một dòng duy nhất chỉ chứa một dấu cộng (vâng, một "+").
Martin Geisler

4
@Martin: Các mục danh sách nhiều đoạn có thực sự quan trọng không? Nếu bạn cần nhiều hơn một đoạn văn, không phải đề mục / phần thích hợp hơn một danh sách?
Steve S

Ưu điểm lớn nhất của AsciiDoc là nó hỗ trợ nhiều tính năng hơn. Nó có thể tạo sách, có phần đầu, nhiều đầu ra ... powerman.name/doc/asciidoc
Wernight


5

Tôi đang cố gắng bao gồm tất cả các ngôn ngữ đánh dấu nhẹ khác nhau tại đây:

http://www.subspacefield.org/~travis/static_blog_generators.html

Như bạn có thể thấy, nó bắt đầu với "làm thế nào tôi có thể tạo một blog an toàn" - tức là một blog tạo HTML tĩnh và tôi thấy mình bị giam giữ trong các ngôn ngữ đánh dấu, hệ thống tạo mẫu, v.v.

Cập nhật

Tôi chỉ tập trung vào các LWML có triển khai python và chúng ở đây:

http://www.subspacefield.org/~travis/python_lightweight_markup_languages.html

Cho đến nay tôi đã thử đánh dấu và ReST, và tôi thích cái sau tốt hơn cho bất kỳ thứ gì ngoại trừ các đoạn mã HTML được nhúng trong các trang khác. Bảng, giới thiệu chéo, liên kết gián tiếp, v.v.


4

cho tài liệu? làm thế nào về doxygen ?
Tôi đã sử dụng nó cho một số dự án c / c ++ mà tôi cần tài liệu hóa. Thậm chí bạn có thể 'lạm dụng' nó giống như tác giả doxygen sử dụng cho tài liệu doxygen

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.