Sphinx và phần còn lại có thể được sử dụng như công cụ tài liệu chung, trong kinh nghiệm của tôi. Không có gì về Sphinx mà bắt buộc bạn chỉ sử dụng nó cho các dự án dựa trên Python. Ví dụ, trong công việc của tôi, tôi đã sử dụng nó để xây dựng một hướng dẫn sử dụng và một tham chiếu API XML-RPC. Trong cả hai trường hợp, tôi không sử dụng cho sphinx.ext.autodoc
hoặc các tính năng bổ sung cụ thể khác của Python. Tài liệu được viết "bằng tay", với hầu hết các chỉ thị ReST chung chung, chứ không phải chỉ thị đặc biệt do Sphinx cung cấp. Đối với những gì nó có giá trị, tôi vẫn chưa cần thiết để tạo ra một chỉ thị ReST tùy chỉnh cho tài liệu không Python.
Thậm chí nếu bạn đang làm việc với dự án PHP, tôi nghĩ bạn sẽ thấy Nhân sư hữu ích. Ví dụ hầu hết các chỉ thị được cung cấp bởi the module specific markup thực sự là khá chung chung. Tôi không thấy lý do tại sao bạn không thể hoặc sẽ không sử dụng các cấu trúc này để ghi lại nội dung từ các ngôn ngữ khác ngoài Python. Tương tự như vậy, Sphinx làm cho nó khá dễ dàng để show code examples in other languages. Thậm chí còn có một giá trị cấu hình để thay đổi mặc định thành bất kỳ ngôn ngữ nào mà Pygments hỗ trợ (bao gồm cả PHP). Nếu bạn cảm thấy đặc biệt đầy tham vọng, bạn thậm chí có thể create a Sphinx extension để lấy thứ gì đó có liên quan từ mã PHP của bạn.
Tất cả những gì đã nói, hãy nhớ xem xét đối tượng cho dự án tài liệu của bạn. Trong khi tôi nghĩ Sphinx là một công cụ tuyệt vời và muốn giới thiệu nó cho một loạt các dự án tài liệu, nếu khán giả của bạn đang mong đợi một cái gì đó khác, hãy chú ý đến điều đó. Ví dụ, nếu bạn đang viết tư liệu cho một dự án Java, phần lớn khán giả của bạn có thể mong đợi các tài liệu kiểu Javadoc. Nếu bạn đi chệch khỏi kỳ vọng đó, hãy đảm bảo rằng nó không chỉ cho các cú đá (ví dụ, nó cung cấp cho bạn các tài liệu tốt hơn bạn muốn) và chuẩn bị (ngắn gọn) làm cho trường hợp cho những gì bạn đã làm khác (ví dụ: Câu trả lời hoặc giới thiệu câu hỏi thường gặp).
Cuối cùng, mọi tài liệu đều tốt hơn không có tài liệu, bất kể công cụ được sử dụng để tạo chúng. Sử dụng bất kỳ công cụ nào giúp bạn, nếu đó là sự khác biệt giữa việc đưa ra thứ gì đó ở đó và không.
sẽ không cho tôi thêm các liên kết khác để tham khảo: http://docutils.sourceforge.net/rst.html http://www.sphinxsearch.com/ – messedup