মূল অংশে যান

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 নম্বরটি দেয়:

একটি figure-এর ভেতরে ক্যাপশনসহ 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 টাইপসেট করেছে: একটি figure-এর ভেতরে ক্যাপশনসহ 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।