مواد پر جائیں

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 numbers=left اور listings کے دوسرے ترتیب والے آپشنز نظر انداز کرتا ہے۔ صرف زبان پڑھی جاتی ہے۔

اس صفحے کی ہر مثال سائٹ بنتے وقت Scissor LaTeX ٹائپ سیٹ کرتا ہے۔ آخری بار اپ ڈیٹ: 2026-11-07۔