2010-01-27 9 views
10

मेरे पास वर्बैटिम टेक्स्ट का एक गुच्छा वाला लेटेक्स दस्तावेज़ है। मैं इनमें से प्रत्येक एक उदाहरण को इंडेंट करना चाहता हूं।लेटेक्स का शब्दशः: प्रत्येक उदाहरण को कैसे इंडेंट करें?

उदाहरण के लिए:

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

मैं चाहता हूँ एक या दो सेंटीमीटर इंडेंट किए जाने की "यह शब्दशः पाठ है।" मैं यह कैसे करु?

उत्तर

5

आप quote वातावरण में अपने सभी verbatim वातावरण लपेट सकता है:

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

इस क्रियात्मक पाठ के ऊपर एक अतिरिक्त ऊर्ध्वाधर स्किप जोड़ने का अवांछनीय दुष्प्रभाव है । – zwol

0

आप एक नया आदेश परिभाषित कर सकते हैं जो इंडेंट करता है कि आपको कैसा लगता है।

कुछ इस तरह:

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

यह देना चाहिए आप कार्य करें:

\myverb{ This is verbatim text. } 
+0

दस्तावेज़ के शीर्षलेख में कुछ सेट करने का कोई तरीका नहीं है? – carl

+0

@cvondrick मुझे ऐसा नहीं लगता है, लेकिन आप अपनी खुद की कक्षा को परिभाषित कर सकते हैं। यद्यपि ब्रायन क्या सुझाव दे रहा है उससे कहीं अधिक कठिन है। –

+0

सहमत हुए। मैं इस जवाब को तब तक स्वीकार करूंगा जब तक कि एक बेहतर व्यक्ति जल्द ही नहीं आ जाता। धन्यवाद! – carl

6

यह ezod के जवाब फैली ऊपर।

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

संपादित करें: एक और तरीका है बस \begin{document} से पहले RecustomVerbatimEnvironment को xleftmargin विकल्प जोड़ने के लिए है:

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

होना चाहिए ... \ newenvironment {qv} {\ quote \ Verbatim} {\ endVerbatim \ endquote} ... यानी। \ newenvironment – Aivar

+0

पर तीसरे तर्क में गलती है आप सही हैं। मैंने संपादित किया आश्चर्यजनक रूप से, मूल संस्करण ने एक ही आउटपुट संकलित और उत्पादन किया था। –

2

किसी भी मांगपत्र

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

मुझे यह जवाब पसंद है, धन्यवाद। –

+0

मैं verbatim के चारों ओर ऊपरी और निचले रिक्त स्थान भी संशोधित करना चाहता हूं। '\ topskip' और' \ footskip' काम नहीं करते हैं, '\ vspace' जोड़कर हेड स्पेस बढ़ जाता है। क्या आप नीचे की दूरी के लिए एक समाधान जानते हैं? –

1

\ @xverbatim को पुनर्परिभाषित करने के आधार पर जवाब सही है दृष्टिकोण। दुर्भाग्यवश, यह केवल मानक क्रियात्मक वातावरण के लिए काम करता है, और आजकल बहुत से लोग वर्बैटिम शैली का उपयोग करते हैं जो बहुत बेहतर है।

\ makeatletter \ डीईएफ़ \ शब्दशः @ startline {\ शब्दशः @ लाइन {\ leavevmode \ kern20pt \:

(! आप नहीं करते हैं, यह कर शुरू) है कि एक के लिए, यहाँ जीतने चाल है आराम करें}} \ makeatother

अपने प्रीम्बल में, और प्रत्येक क्रियात्मक वातावरण में रखें, साथ ही प्रत्येक \ verbatiminput फ़ाइल को अच्छी तरह से इंडेंट किया जाएगा।

शीश लोग, यह मेरे स्रोत पढ़ने के 30 सेकंड ....

विक्टर ले लिया।

0

आपको इसमें रुचि हो सकती है क्योंकि आप बहुत सारे प्रोग्राम कोड स्वरूपित कर रहे हैं। यदि ऐसा है, तो listings पैकेज पर विचार करें।

संबंधित मुद्दे