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

Scissor LaTeX में minted

Scissor LaTeX में minted पैकेज आंशिक रूप से काम करता है: \begin{minted}{python} और \mintinline बिना Python या -shell-escape के, तय स्कीम वाले सिंटैक्स रंगों के साथ काम करते हैं; linenos जैसे ऑप्शन, \setminted, \usemintedstyle, listing कैप्शन, \mint और \inputminted सपोर्टेड नहीं हैं।

पैकेज क्या करता है

minted Pygments लाइब्रेरी से सोर्स कोड रंगीन करता है। आप \begin{minted}{python} ... \end{minted} लिखते हैं, या वाक्य के अंदर \mintinline{python}{code}। linenos और frame=lines जैसे ऑप्शन लेआउट बदलते हैं, \setminted इन्हें पूरे डॉक्यूमेंट के लिए सेट करता है, और \usemintedstyle एक रंग थीम चुनता है। TeX इंस्टॉलेशन में minted को Pygments के साथ Python चाहिए, और डॉक्यूमेंट -shell-escape के साथ कम्पाइल करना पड़ता है।

यहाँ क्या काम करता है

फ़ीचरScissor LaTeX मेंटिप्पणी
\begin{minted}{lang} ... \end{minted}काम करता हैरंगीन, बिना Python या shell escape के।
\mintinline{lang}{code}काम करता हैमोनोस्पेस, बिना रंग के।
ऑप्शन: [linenos, frame=lines, bgcolor=...]छोड़ दिया जाता हैबिना संदेश के नज़रअंदाज़।
\setminted{...}, \usemintedstyle{...}छोड़ दिया जाता हैबिना संदेश के नज़रअंदाज़; रंग तय हैं।
\caption के साथ listing एनवायरनमेंटआंशिककोड दिखता है और कैप्शन "Listing 1" के बिना सादे टेक्स्ट के रूप में छपता है; उसका \ref "??" दिखाता है।
\mint{lang}|code|सपोर्टेड नहींसंदेश के साथ छोड़ दिया जाता है; भाषा और कोड सादे टेक्स्ट के रूप में छपते हैं।
\inputminted{lang}{file}सपोर्टेड नहींसंदेश के साथ छोड़ दिया जाता है।
\newminted, \newmintinlineसपोर्टेड नहींसंदेश के साथ छोड़ दिए जाते हैं, और आर्ग्युमेंट छप जाते हैं।

भाषाओं के नाम listings जैसे ही हैं: Python, C, C++, Java, JavaScript, Rust, Go, R, MATLAB, SQL, Bash, HTML, TeX और बहुत-सी और, छोटे या बड़े अक्षरों में।

उदाहरण

भाषा के साथ एक minted ब्लॉक:

JavaScript के साथ minted

LaTeXप्रीएम्बल: \usepackage{minted}एडिटर में खोलें (नए टैब में खुलता है)
\begin{minted}{javascript}
// greet a list of people
const people = ["Erika", "Hans", "John"];
for (const name of people) {
  console.log(`Hello, ${name}!`);
}
\end{minted}
Scissor LaTeX द्वारा टाइपसेट: JavaScript के साथ minted

ऑप्शन स्वीकार होते हैं और नज़रअंदाज़ होते हैं, इसलिए यहाँ इस ब्लॉक में न लाइन नंबर हैं, न फ़्रेम:

linenos और frame नज़रअंदाज़ होते हैं

LaTeXप्रीएम्बल: \usepackage{minted}एडिटर में खोलें (नए टैब में खुलता है)
\begin{minted}[linenos, frame=lines]{rust}
fn main() {
    let total: u32 = (1..=8).sum();
    println!("{}", total + 8); // 44
}
\end{minted}
Scissor LaTeX द्वारा टाइपसेट: linenos और frame नज़रअंदाज़ होते हैं

नंबर वाले कैप्शन के लिए minted के listing एनवायरनमेंट की जगह figure इस्तेमाल करें। यहाँ कैप्शन "Listing 1" बनता है, और \ref नंबर देता है:

फ़िगर के अंदर कैप्शन वाला minted ब्लॉक

LaTeXप्रीएम्बल: \usepackage{minted}एडिटर में खोलें (नए टैब में खुलता है)
\begin{figure}[h]
\begin{minted}{python}
print(sum(range(44)))
\end{minted}
\caption{Adding the numbers below 44}
\label{lst:sum}
\end{figure}
Listing~\ref{lst:sum} prints 946.
Scissor LaTeX द्वारा टाइपसेट: फ़िगर के अंदर कैप्शन वाला minted ब्लॉक

कम्पैटिबिलिटी

  • TeX इंस्टॉलेशन से यहाँ: हर minted ब्लॉक रंगों के साथ दिखता है। ऑप्शन और स्टाइल लागू नहीं होते; \mint को \mintinline से बदलें और \inputminted फ़ाइलों का कोड डॉक्यूमेंट में पेस्ट करें।
  • यहाँ से TeX इंस्टॉलेशन पर: Python, Pygments और -shell-escape उपलब्ध हों तो minted ब्लॉक वहाँ कम्पाइल होते हैं। वहाँ minted ब्लॉक के चारों ओर का figure "Figure 1" कैप्शन पाता है।

पूरा मैनुअल CTAN पर है: ctan.org/pkg/minted। यह भी देखें: LaTeX में कोड लिस्टिंग।

सवाल और जवाब

क्या minted बिना shell escape के काम करता है?

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

minted इस्तेमाल करूँ या listings?

यहाँ दोनों एक जैसे काम करते हैं: भाषा पढ़ी जाती है और बाकी ऑप्शन नज़रअंदाज़ होते हैं। अगर डॉक्यूमेंट को कहीं और भी बिना shell escape के कम्पाइल होना है, तो listings ज़्यादा सुरक्षित विकल्प है।

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