2008-11-12 63 views
12

Tôi muốn thêm các mục vào tài liệu LaTeX. Ví dụ, tôi muốn thêm gợi ý vào tài liệu. Tôi tạo ra một lệnh, vì vậy tôi có thể gọi một cái gì đó tương tự như thế này:Làm thế nào để tạo tự động một danh sách các mục được sử dụng trong một tài liệu LaTeX?

\hint{foocareful}{Be careful with foo!}{foo is a very precious item and can easily be broken. Be careful, especially don't throw foo.} 

Điều này sẽ được định dạng theo cách đặc biệt, giúp người đọc dễ dàng nhận ra nó như một gợi ý. Nó nhận được một nhãn, có thể được tham chiếu trong ví dụ với 'foocareful'.

Trong phụ lục, tôi muốn thêm danh sách tất cả các gợi ý có tham chiếu đến chúng. Một cái gì đó như:

\begin{enumerate} 
    ... 
    \item Be careful with foo! (\pageref{foocareful}) 
    ... 
\end{enumerate} 

Nhưng tự nhiên tôi không muốn duy trì danh sách này bằng tay. Làm thế nào tôi có thể tạo tự động một danh sách như vậy?

Trả lời

9

Một cách để thực hiện việc này là sử dụng gói float. Tôi nghĩ rằng, ít nhất, gói floatrow cũng có thể làm những gì bạn muốn và cũng có thể linh hoạt hơn. Mặc dù vậy, hãy xem bạn đi.

Dưới đây là một ví dụ về một cái gì đó giống như bạn đang cố gắng làm bằng float:

\documentclass{article} 
\usepackage{float} 

\floatstyle{boxed} 
\newfloat{hintbox}{H}{hnt} 
\floatname{hintbox}{Hint} 

\newcommand\hint[2]{% 
    \begin{hintbox} 
    #2 
    \caption{#1} 
    \end{hintbox}} 

\begin{document} 
\section{Hello} 

\hint{Be careful with foo!\label{foocareful}}{% 
    foo is a very precious item and can easily be broken. 
    Be careful, especially don't throw foo.} 

\hint{Don't worry about bar!\label{foocareful}}{% 
    Unlike foo, bar is pretty easily to get along with.} 

\section{End} 

\listof{hintbox}{List of Hints} 

\end{document} 
+0

mà làm việc như mong muốn. Cảm ơn bạn. – Mnementh

+0

Thật tuyệt vời! – tobinharris

+0

Gói rất hữu ích. –

2

Đã không thực hiện việc này trong nhiều năm, nhưng tôi sẽ xem xét mã nguồn LaTeX cho \ tableofcontents và \ listoffigures. Tôi nghĩ rằng cơ chế này là chung chung và bạn có thể mở rộng nó để bao gồm danh sách của riêng bạn.

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