דילוג לתוכן

minted ב-Scissor LaTeX

החבילה minted עובדת חלקית ב-Scissor LaTeX: \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 צריכה Python עם Pygments, וצריך להדר את המסמך עם -shell-escape.

מה עובד כאן

תכונהב-Scissor LaTeXהערות
\begin{minted}{lang} ... \end{minted}עובדצבעוני, בלי Python ובלי shell escape.
\mintinline{lang}{code}עובדברוחב קבוע, בלי צבעים.
אפשרויות: [linenos, frame=lines, bgcolor=...]מושמטלא נלקחות בחשבון, בלי הודעה.
\setminted{...}, \usemintedstyle{...}מושמטלא נלקחות בחשבון, בלי הודעה; הצבעים קבועים.
הסביבה listing עם \captionחלקיתהקוד מוצג והכיתוב מודפס כטקסט רגיל, בלי "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 עם שפה:

minted עם JavaScript

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: minted עם JavaScript

אפשרויות מתקבלות ולא נלקחות בחשבון, ולכן לבלוק הזה אין כאן מספרי שורות או מסגרת:

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 לא נלקחות בחשבון

לכיתוב ממוספר, השתמשו ב-figure במקום בסביבה listing של minted. כאן הכיתוב נקרא "Listing 1", ו-\ref נותנת את המספר:

בלוק minted עם כיתוב בתוך figure

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 עם כיתוב בתוך figure

תאימות

  • מהתקנת TeX לכאן: כל בלוק minted מוצג עם צבעים. אפשרויות וסגנונות לא מוחלים; החליפו את \mint ב-\mintinline, והדביקו לתוך המסמך את הקוד מקבצים של \inputminted.
  • מכאן להתקנת TeX: בלוקים של minted מתהדרים שם כש-Python, Pygments ו--shell-escape זמינים. figure סביב בלוק minted מקבלת שם את הכיתוב "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.