सामग्री पर जाएँ

LaTeX में कोड लिस्टिंग

कोड को verbatim, lstlisting या minted एनवायरनमेंट में रखें, या लाइन के अंदर \verb|...| इस्तेमाल करें; Scissor LaTeX उसे मोनोस्पेस फ़ॉन्ट में ठीक वैसा ही सेट करता है जैसा टाइप किया गया, और भाषा का नाम देने पर सिंटैक्स को रंग देता है।

verbatim

verbatim के अंदर कुछ भी इंटरप्रेट नहीं होता: बैकस्लैश, ब्रेस, $ और % जैसे हैं वैसे प्रिंट होते हैं, और लाइन ब्रेक और स्पेस बने रहते हैं। कोड या टर्मिनल आउटपुट दिखाने का यह सबसे आसान तरीक़ा है।

एक verbatim ब्लॉक

\begin{verbatim}
for i in range(44):
    print(i)   # $ and \textbf stay as typed
\end{verbatim}

लाइन के अंदर कोड: \verb

\verb किसी वाक्य के अंदर कोड का छोटा टुकड़ा दिखाता है। \verb के ठीक बाद का अक्षर डिलिमिटर होता है; ऐसा अक्षर चुनें जो कोड में न हो, जैसे | या +।

\verb और \texttt से लाइन के अंदर कोड

Call \verb|total(xs)| to add the list, or type \verb+x_1 = 44+.
For plain words in a monospaced font, \texttt{main.tex} is enough.
Scissor LaTeX द्वारा टाइपसेट: \verb और \texttt से लाइन के अंदर कोड

\texttt{...} सिर्फ़ फ़ॉन्ट बदलता है: वहाँ _ और % जैसे ख़ास अक्षरों को अब भी एस्केप करना पड़ता है, जबकि \verb उन्हें जैसे हैं वैसे ले लेता है।

listings: भाषा के साथ lstlisting

listings पैकेज आपको lstlisting देता है। language=... के साथ कोड को सिंटैक्स रंग मिलते हैं।

language=Python के साथ lstlisting

LaTeXप्रीएम्बल: \usepackage{listings}एडिटर में खोलें (नए टैब में खुलता है)
\begin{lstlisting}[language=Python]
def total(xs):
    """Add up the numbers in xs."""
    return sum(xs)

print(total([40, 4]))  # 44
\end{lstlisting}
Scissor LaTeX द्वारा टाइपसेट: language=Python के साथ lstlisting

\lstinline|code| लाइन के अंदर वाला रूप है, \verb की तरह।

minted

minted भाषा को आर्ग्युमेंट के रूप में लेता है। TeX इंस्टॉलेशन में इसे Python और -shell-escape ऑप्शन चाहिए; Scissor LaTeX में यह दोनों के बिना काम करता है।

भाषा के साथ minted

LaTeXप्रीएम्बल: \usepackage{minted}एडिटर में खोलें (नए टैब में खुलता है)
\begin{minted}{rust}
fn main() {
    let answer = 40 + 4;
    println!("{}", answer);
}
\end{minted}
Inline: \mintinline{rust}{let x = 44;}
Scissor LaTeX द्वारा टाइपसेट: भाषा के साथ minted

क्या पढ़ा जाता है

कमांडScissor LaTeX मेंनोट
verbatim, verbatim*काम करता है
\verb, \verb*काम करता है
lstlistingआंशिकlanguage= पढ़ा जाता है; बाकी हर ऑप्शन (numbers, caption, frame, basicstyle, firstline ...) नज़रअंदाज़ होता है।
\lstinlineकाम करता हैलाइन के अंदर सिंटैक्स रंग नहीं।
\lstset{...}छोड़ दिया जाता हैयहाँ सेट की गई भाषा इस्तेमाल नहीं होती; हर लिस्टिंग पर language= दें।
mintedआंशिकभाषा पढ़ी जाती है; linenos और frame जैसे ऑप्शन नज़रअंदाज़ होते हैं।
\mintinline{lang}{code}काम करता हैलाइन के अंदर सिंटैक्स रंग नहीं।
Verbatim, BVerbatim (fancyvrb)आंशिकverbatim की तरह दिखता है; ऑप्शन नज़रअंदाज़ होते हैं।
\lstinputlisting{file}, \inputminted{lang}{file}सपोर्टेड नहींएक मैसेज के साथ छोड़ दिया जाता है; कोड को डॉक्यूमेंट में पेस्ट करें।
\lstnewenvironment, \newmintedसपोर्टेड नहीं

आम भाषाओं के लिए सिंटैक्स रंग उपलब्ध हैं, उनमें Python, C, C++, Java, JavaScript, TypeScript, Rust, Go, Ruby, R, Julia, MATLAB, SQL, Bash, HTML, CSS, JSON, YAML, TeX और LaTeX शामिल हैं। भाषा के नाम में छोटे-बड़े अक्षरों का फ़र्क नहीं पड़ता, इसलिए Python और python एक ही हैं। जो नाम पहचाना नहीं जाता, उससे सादा मोनोस्पेस कोड मिलता है।

फ़ाइल से कोड

TeX इंस्टॉलेशन में \lstinputlisting और \inputminted किसी दूसरी फ़ाइल से कोड पढ़ते हैं। Scissor LaTeX उन्हें छोड़ देता है और समस्याएँ टैब में यह बताता है:

\lstinputlisting छोड़ दिया जाता है

LaTeXप्रीएम्बल: \usepackage{listings}एडिटर में खोलें (नए टैब में खुलता है)
The script below is not shown:
\lstinputlisting[language=Python]{scripts/total.py}
Paste the code into an lstlisting environment instead.

समस्याएँ टैब: 1 included file is not part of this conversion

TeX इंस्टॉलेशन से क्या अलग है

पैकेज पेजों के लिए देखें listings और minted। पूरे मैनुअल CTAN पर हैं: listings, minted और fancyvrb।

सवाल और जवाब

LaTeX में कोड ब्लॉक कैसे जोड़ें?

कोड को \begin{verbatim} ... \end{verbatim} में रखें, या सिंटैक्स रंगों के लिए [language=Python] के साथ lstlisting में।

क्या minted शेल एस्केप के बिना काम करता है?

Scissor LaTeX में, हाँ: minted एनवायरनमेंट Python या -shell-escape के बिना रंगीन होते हैं। TeX इंस्टॉलेशन में minted को अब भी दोनों चाहिए।

मेरी लिस्टिंग के लाइन नंबर क्यों गायब हैं?

Scissor LaTeX listings के numbers=left और बाकी लेआउट ऑप्शन नज़रअंदाज़ करता है। सिर्फ़ भाषा पढ़ी जाती है।

इस पेज का हर उदाहरण साइट बनते समय Scissor LaTeX टाइपसेट करता है। पिछला अपडेट: 2026-11-07।