2012-04-20 36 views
15

Tôi có "sổ dự án" sử dụng số \documentclass{report} của LaTeX ("báo cáo" giống như phiên bản nhỏ gọn hơn \documentclass{book}). Tôi muốn đưa vào cuốn sách này một phụ lục với tài liệu API doxygen tạo ra cho phần mềm trong dự án.Bao gồm đầu ra LaTeX của doxygen dưới dạng phụ lục cho tài liệu lớn hơn

Tôi đã đạt được điều này bằng cách đặt tùy chọn cấu hình của Doxygen LATEX_HEADERLATEX_FOOTER thành tệp trống. Điều này làm cho mủ dẫn/refman.tex có lệnh cấp cao nhất như: \section{\-Namespace \-Index}, lúc này tôi có thể quấn này với một tài liệu cấp cao nhất như:

\documentclass{report} 
\usepackage{doxygen.sty} 
% the "import" package helps to find Doxygen files in the latex/ subdirectory 
\usepackage{import} 
% [...] title page and the rest of the book 

\appendix 
\chapter{API reference (generated by Doxygen) 
subimport{latex/}{refman.tex} 

% [...] final stuff 
\end{document} 

này hoạt động khá tốt và tôi nhận được doxygen.sty với doxygen đặc biệt này invocation:

doxygen -w latex /dev/null /dev/null doxygen.sty 

Một vấn đề là điều này đặt tiêu đề "autogenerated" trên toàn bộ tài liệu (không chỉ phụ lục doxygen). Tôi có thể loại bỏ điều này bằng cách chỉnh sửa doxygen.sty (Tôi cũng đổi tên nó để bao gồm, thực sự) và nhận xét ra khối bắt đầu bằng % Setup fancy headings.

Tại thời điểm này tôi có thứ gì đó có thể sống, nhưng tôi muốn tiến thêm một bước nữa: kiểu "doxygen" sửa đổi rất nhiều khía cạnh khác của kiểu tài liệu LaTeX và tôi thích nó hơn.

Vì vậy, câu hỏi của tôi là (ở hai mức độ xuất sắc):

  1. Điều gì sẽ là một tập tối thiểu của LaTeX lệnh để đưa vào một tập tin doxygen.sty mà độc đáo sẽ làm cho các phụ lục doxygen nhưng không can thiệp với phần còn lại của tài liệu LaTeX?

  2. Thậm chí tốt hơn, có ai tìm ra một cách để làm

    \usepackage{doxygen_standalone} 
    % [... until you need doxygen] 
    \begin{doxygen} 
    % the stuff you need to insert your auto-generated doxygen API docs, 
    % for example the \subimport{latex/}{refman.tex} that I showed above 
    \end{doxygen} 
    

phương pháp cuối cùng này là một trong những tôi sẽ xem xét rất sạch sẽ.

Tôi hy vọng có một câu trả lời thực sự đơn giản, chẳng hạn như "điều này đã tồn tại trong doxygen.sty dưới dạng tùy chọn và bạn đã bỏ lỡ!"

+2

Tôi có cùng một câu hỏi. Bất cứ ai có thể bình luận? Xem thêm bài đăng của tôi cho [SO tại đây] (http://stackoverflow.com/questions/12219578/individual-function-docs-in-latex-using-doxygen). – garyp

+1

Tôi đã bao gồm PDF doxygen tạo ra bằng cách sử dụng gói pdfpages. – Anna

+0

Nó không thực sự đến gần với một câu trả lời đúng, nhưng một cách có thể là để xác định những lệnh bạn muốn hoàn nguyên và sử dụng \ renewcommand hoặc \ forgetcommand để loại bỏ chúng. Tôi tưởng tượng bạn có thể cũng có thể sử dụng \ includeonly để chọn lọc có được những gì bạn muốn mà không có các lệnh. –

Trả lời

1

đổi tên doxygen.sty để mydoxygen.sty, sau đó sửa đổi nó bằng cách chèn \ newenvironment {doxygen} {... hầu hết doxygen.sty goes here ...} {}

Các vấn đề liên quan