2010-01-27 50 views
10

Tôi có một tài liệu cao su với một bó văn bản nguyên văn. Tôi muốn thụt vào từng trường hợp đơn lẻ.Nguyên văn của Latex: làm thế nào để thụt lề từng trường hợp?

Ví dụ:

This is regular text. 
\begin{verbatim} 
This is verbatim text. 
\end{verbatim} 

Tôi muốn "Đây là văn bản nguyên văn" được thụt vào một hoặc hai centimet. Làm thế nào để tôi làm điều này?

Trả lời

5

Bạn có thể bọc tất cả verbatim môi trường của bạn trong quote môi trường:

\begin{quote} 
\begin{verbatim} 
This is indented verbatim text. 
Works for multiple lines, too. 
\end{verbatim} 
\end{quote} 
+0

Điều này có tác dụng phụ không mong muốn của việc thêm một bỏ qua thêm dọc trên văn bản nguyên văn . – zwol

0

Bạn có thể xác định lệnh mới thụt lề theo cách bạn muốn.

Something như thế này:

\newcommand{\myverb}[1]{ \indent{ \begin{verbatim} #1 \end{verbatim} } } 

này nên cho phép bạn làm:

\myverb{ This is verbatim text. } 
+0

Không có cách nào để đặt nội dung nào đó trong tiêu đề của tài liệu? – carl

+0

@cvondrick Tôi không nghĩ vậy, nhưng bạn có thể định nghĩa lớp của riêng bạn. Đó là khó khăn hơn nhiều so với những gì Brian là gợi ý mặc dù. –

+0

đã đồng ý. Tôi sẽ chấp nhận câu trả lời này trừ khi một câu trả lời tốt hơn xuất hiện trong thời gian ngắn. Cảm ơn bạn! – carl

6

này mở rộng câu trả lời ezod của ở trên.

\documentclass{article} 
\usepackage{fancyvrb} 
\newenvironment{qv} 
{\quote\Verbatim} 
{\endVerbatim\endquote} 
\begin{document} 
\begin{qv} 
This text 
is indented. 
\end{qv} 
\end{document} 

EDIT: Một cách khác là chỉ cần thêm tùy chọn xleftmargin-RecustomVerbatimEnvironment trước \begin{document}:

\RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm} 
+0

Nên là ... \ newenvironment {qv} {\ quote \ Verbatim} {\ endVerbatim \ endquote} ... tức là. có lỗi trong đối số thứ ba của \ newenvironment – Aivar

+0

Bạn là chính xác. Tôi đã chỉnh sửa. Kỳ lạ thay, phiên bản gốc đã biên dịch và sản xuất cùng một đầu ra. –

2

Bất kỳ thụt

\catcode`\@=11 
\let \saveverbatime \@xverbatim 
\def \@xverbatim {\leftskip = 1cm\relax\saveverbatime} 
\catcode`\@=12 
+0

Tôi thích câu trả lời này, cảm ơn. –

+0

Tôi cũng muốn sửa đổi các khoảng trống trên và dưới xung quanh nguyên văn. '\ topskip' và' \ footskip' không hoạt động, việc thêm '\ vspace' sẽ làm tăng không gian đầu. Bạn có biết giải pháp cho khoảng cách dưới cùng không? –

1

Câu trả lời dựa trên xác định lại \ @xverbatim là quyền tiếp cận. Thật không may, điều này chỉ hoạt động cho môi trường chuẩn đúng nguyên văn, và rất nhiều người trong những ngày này sử dụng phong cách đúng nguyên văn tốt hơn nhiều. (! Nếu không, hãy bắt đầu làm việc đó)

Đối với một rằng, đây là các trick chiến thắng:

\ makeatletter \ def \ đúng nguyên văn @ startline {\ đúng nguyên văn @ dòng {\ leavevmode \ kern20pt \ thư giãn}} \ makeatother

Đặt điều đó vào phần mở đầu của bạn và mọi môi trường nguyên văn, cũng như mọi tệp \ verbatiminput sẽ được thụt vào.

Những người tuyệt vời, điều này đã khiến tôi mất 30 giây để đọc nguồn ....

Victor.

0

Bạn có thể quan tâm đến điều này vì bạn đang định dạng nhiều mã chương trình. Nếu vậy, hãy xem xét gói listings.

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