Bu makale, bir LaTeX belgesinde programlama dili kaynak kodunu biçimlendirmek ve vurgulamak için minted paketinin nasıl kullanılacağını bir örnekle başlayarak gösterir:
\documentclass{article}\usepackage{minted}\begin{document}\begin{minted}{python}import numpy as npdef incmatrix(genl1,genl2): m = len(genl1) n = len(genl2) M = None #to become the incidence matrix VT = np.zeros((n*m,1), int) #dummy variable #compute the bitwise xor matrix M1 = bitxormatrix(genl1) M2 = np.triu(bitxormatrix(genl2),1) for i in range(m-1): for j in range(i+1, m): [r,c] = np.where(M2 == M1[i,j]) for k in range(len(r)): VT[(i)*n + r[k]] = 1; VT[(i)*n + c[k]] = 1; VT[(j)*n + r[k]] = 1; VT[(j)*n + c[k]] = 1; if M is None: M = np.copy(VT) else: M = np.concatenate((M, VT), 1) VT = np.zeros((n*m,1), int) return M\end{minted}\end{document}
Bu örnek aşağıdaki çıktıyı üretir:
Burada iki önemli komut vardır. Önsözde (preamble) paket şu yazılarak içe aktarılır:
\usepackage{minted}
ardından \begin{minted}{python} ve \end{minted} etiketleri, metni eş aralıklı yazı tipleriyle olduğu gibi (verbatim) yazdıran ve ayrıca yorumlara, anahtar sözcüklere ve fonksiyonlara renk uygulayan bir ortamı sınırlar. python parametresi, kaynak kodun yazıldığı programlama dilidir. minted, yapılandırma dosyalarının yanı sıra 150’den fazla programlama ve işaretleme dilini destekler; desteklenen dillerin listesi için başvuru kılavuzuna bakın.Not: minted’in yerel LaTeX dağıtımınızla çalışması için Pygments adlı ek bir programın kurulu olması gerekir. Overleaf, sizi bunu kurma ve belgenizi derlemek için özel komutlar çalıştırma zahmetinden kurtarabilir — Overleaf’te minted kullanan belgeler “kutudan çıktığı gibi” çalışır.
Aşağıdaki örnekte gösterildiği gibi minted ortamı, dizilen kodun görsel sunumunu değiştirecek şekilde yapılandırılabilir. Burada minted ortamı, key=value biçiminde virgülle ayrılmış birkaç parametre kullanır:
\documentclass{article}\usepackage{minted}\usepackage{xcolor} % to access the named colour LightGray\definecolor{LightGray}{gray}{0.9}\begin{document}\begin{minted}[frame=lines,framesep=2mm,baselinestretch=1.2,bgcolor=LightGray,fontsize=\footnotesize,linenos]{python}import numpy as npdef incmatrix(genl1,genl2): m = len(genl1) n = len(genl2) M = None #to become the incidence matrix VT = np.zeros((n*m,1), int) #dummy variable #compute the bitwise xor matrix M1 = bitxormatrix(genl1) M2 = np.triu(bitxormatrix(genl2),1) for i in range(m-1): for j in range(i+1, m): [r,c] = np.where(M2 == M1[i,j]) for k in range(len(r)): VT[(i)*n + r[k]] = 1; VT[(i)*n + c[k]] = 1; VT[(j)*n + r[k]] = 1; VT[(j)*n + c[k]] = 1; if M is None: M = np.copy(VT) else: M = np.concatenate((M, VT), 1) VT = np.zeros((n*m,1), int) return M\end{minted}\end{document}
Bu örnek aşağıdaki çıktıyı üretir:
Bu örnekte kullanılan parametreler şunlardır:
frame=lines: kodu çerçevelemek için biri üstte biri altta olmak üzere iki çizgi çizer. Diğer olası değerler leftline, topline, bottomline ve single’dır.
framesep=2mm: çerçeve aralığı 2mm olarak ayarlanır. Diğer uzunluk birimleri de kullanılabilir.
baselinestretch=1.2: kodun satır aralığı 1.2 olarak ayarlanır.
bgcolor=LightGray: arka plan rengi LightGray olarak ayarlanır. Bunun çalışması için xcolor paketini içe aktarmanız gerekir. Renklerle çalışma hakkında daha fazla bilgi için LaTeX’te renk kullanımı makalesine bakın.
fontsize=\footnotesize: yazı tipi boyutu footnotesize olarak ayarlanır. Başka herhangi bir yazı tipi boyutu da ayarlanabilir.
linenos: satır numaralarını etkinleştirir.
Yararlı olabilecek diğer seçenekler şunlardır:
mathescape: kod yorumlarında matematik modunu etkinleştirir.
rulecolor: çerçevenin rengini değiştirir.
showspaces: boşlukları görünür kılmak için özel bir karakteri etkinleştirir.
Kod genellikle bir kaynak dosyada saklanır; bu nedenle aşağıdaki örnekte gösterildiği gibi kodu bir dosyadan otomatik olarak içe aktaran bir komut oldukça kullanışlıdır:
\documentclass{article}\usepackage{minted}\title{Importing files using minted}\begin{document}The next code will be directly imported from a file:\inputminted{octave}{BitXorMatrix.m}\end{document}
Bu örnek aşağıdaki çıktıyı üretir:\inputminted{octave}{BitXorMatrix.m} komutu kodu BitXorMatrix.m dosyasından içe aktarır; octave parametresi LaTeX’e kodun programlama dilini bildirir. Bu komut, dosyanın yalnızca bir kısmını içe aktarmak için iki ek parametre alabilir; örneğin 2. satırdan 12. satıra kadar olan kodu içe aktarmak için komut şu hale gelir:
Yalnızca tek bir kod satırı girmeniz gerekiyorsa, sözdizimi bir sonraki örnekte gösterilen \mint komutu işinizi görecektir.
One-line code formatting also works with \texttt{minted}. For example, a small fragment of HTML like this:\mint{html}|<h2>Something <b>here</b></h2>|\noindent can be formatted correctly.
Bu örnek aşağıdaki çıktıyı üretir:Süslü parantezler arasındaki parametre programlama dilini (bu örnekte html işaretleme dili) belirler; biçimlendirilecek asıl metin ise ’|’ karakteriyle sınırlandırılır.
Kendi sunucunuzda barındırılan Overleaf ile ilgili sorunlar
Overleaf’i dağıtmak için sandbox derlemesi ve bir overleaf sunucusu kullanıyorsanız minted düzgün çalışmayabilir. Ayrıntılı bilgi için şuraya bakabilirsiniz: issues/131. minted’in çalışması için arm komut profilini ve bazı sistem çağrılarını etkinleştirmeniz gerekir.
Son değiştirilme tarihi 4 Ekim 2026
Bu sayfa yararlı mıydı?
Assistant
Responses are generated using AI and may contain mistakes.